From 44e32d3b32c98cb1aa16ec5ea8e5b48b29e58b55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karl=20D=C3=BC=C3=BCna?= Date: Wed, 19 Aug 2015 17:13:35 +0300 Subject: [PATCH] easy-xapi-utils --- easy-xapi-utils/easy-xapi-utils-tests.ts | 43 ++++++++++++++++++++++++ easy-xapi-utils/easy-xapi-utils.d.ts | 16 +++++++++ 2 files changed, 59 insertions(+) create mode 100644 easy-xapi-utils/easy-xapi-utils-tests.ts create mode 100644 easy-xapi-utils/easy-xapi-utils.d.ts diff --git a/easy-xapi-utils/easy-xapi-utils-tests.ts b/easy-xapi-utils/easy-xapi-utils-tests.ts new file mode 100644 index 000000000..d80a7976c --- /dev/null +++ b/easy-xapi-utils/easy-xapi-utils-tests.ts @@ -0,0 +1,43 @@ +/** + * Created by karl on 14/07/15. + */ + +/// +/// +/// + +import express = require('express'); +import eXapi = require('easy-xapi'); +import eUtils = require('easy-xapi-utils'); + +eXapi.init({ + jSend: { + partial: true + } +}); + +var xApi = eXapi.create({ + root: __dirname, + log: { + name: 'Log', + level: 'info' + }, + port: 3000, + name: 'test', + mount: function (app) { + app.get('/', eUtils.isLoggedIn(), function (req, res) { + res.send('ok'); + }); + app.get('/role', eUtils.isLoggedIn('admin'), function (req, res) { + res.send('ok'); + }); + app.get('/', eUtils.isLoggedOut(), function (req, res) { + res.send('ok'); + }); + app.get('/role', eUtils.hasRole('guest'), function (req, res) { + res.send('ok'); + }); + } +}); + +xApi.listen(); diff --git a/easy-xapi-utils/easy-xapi-utils.d.ts b/easy-xapi-utils/easy-xapi-utils.d.ts new file mode 100644 index 000000000..637829098 --- /dev/null +++ b/easy-xapi-utils/easy-xapi-utils.d.ts @@ -0,0 +1,16 @@ +// Type definitions for easy-xapi-utils +// Project: https://github.com/DeadAlready/easy-xapi-utils +// Definitions by: Karl Düüna +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// +/// +/// + +declare module "easy-xapi-utils" { + import express = require('express'); + + export function isLoggedIn(role?: string): express.RequestHandler; + export function isLoggedOut(): express.RequestHandler; + export function hasRole(role: string): express.RequestHandler; +}