express-ext 0.1.28 → 0.1.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/LoadController.js +7 -6
- package/lib/LoadSearchController.js +8 -6
- package/lib/LowCodeController.js +1 -0
- package/lib/index.js +28 -2
- package/package.json +1 -1
- package/src/LoadController.ts +2 -1
- package/src/LoadSearchController.ts +4 -2
- package/src/LowCodeController.ts +1 -0
- package/src/index.ts +28 -3
package/lib/LoadController.js
CHANGED
|
@@ -52,8 +52,8 @@ var LoadController = (function () {
|
|
|
52
52
|
return LoadController;
|
|
53
53
|
}());
|
|
54
54
|
exports.LoadController = LoadController;
|
|
55
|
-
var
|
|
56
|
-
function
|
|
55
|
+
var ItemController = (function () {
|
|
56
|
+
function ItemController(log, loadData, name, param, max, maxName) {
|
|
57
57
|
this.log = log;
|
|
58
58
|
this.loadData = loadData;
|
|
59
59
|
this.param = param;
|
|
@@ -63,10 +63,10 @@ var QueryController = (function () {
|
|
|
63
63
|
this.load = this.load.bind(this);
|
|
64
64
|
this.query = this.query.bind(this);
|
|
65
65
|
}
|
|
66
|
-
|
|
66
|
+
ItemController.prototype.query = function (req, res) {
|
|
67
67
|
return this.load(req, res);
|
|
68
68
|
};
|
|
69
|
-
|
|
69
|
+
ItemController.prototype.load = function (req, res) {
|
|
70
70
|
var _this = this;
|
|
71
71
|
var v = this.param ? req.params[this.name] : req.query[this.name];
|
|
72
72
|
if (!v) {
|
|
@@ -85,6 +85,7 @@ var QueryController = (function () {
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
};
|
|
88
|
-
return
|
|
88
|
+
return ItemController;
|
|
89
89
|
}());
|
|
90
|
-
exports.
|
|
90
|
+
exports.ItemController = ItemController;
|
|
91
|
+
exports.ItemHandler = ItemController;
|
|
@@ -67,12 +67,13 @@ var LoadSearchController = (function (_super) {
|
|
|
67
67
|
return LoadSearchController;
|
|
68
68
|
}(LoadController_1.LoadController));
|
|
69
69
|
exports.LoadSearchController = LoadSearchController;
|
|
70
|
-
var
|
|
71
|
-
__extends(
|
|
72
|
-
function
|
|
70
|
+
var QueryController = (function (_super) {
|
|
71
|
+
__extends(QueryController, _super);
|
|
72
|
+
function QueryController(log, query, config, dates, numbers, array) {
|
|
73
73
|
var _this = _super.call(this, log, query) || this;
|
|
74
74
|
_this.query = query;
|
|
75
75
|
_this.search = _this.search.bind(_this);
|
|
76
|
+
_this.array = array;
|
|
76
77
|
if (config) {
|
|
77
78
|
if (typeof config === 'boolean') {
|
|
78
79
|
_this.csv = config;
|
|
@@ -96,7 +97,7 @@ var ViewController = (function (_super) {
|
|
|
96
97
|
}
|
|
97
98
|
return _this;
|
|
98
99
|
}
|
|
99
|
-
|
|
100
|
+
QueryController.prototype.search = function (req, res) {
|
|
100
101
|
var _this = this;
|
|
101
102
|
var s = search_1.fromRequest(req, search_1.buildArray(this.array, this.fields, this.excluding));
|
|
102
103
|
var l = search_1.getParameters(s, this.config);
|
|
@@ -105,6 +106,7 @@ var ViewController = (function (_super) {
|
|
|
105
106
|
.then(function (result) { return search_1.jsonResult(res, result, _this.csv, l.fields, _this.config); })
|
|
106
107
|
.catch(function (err) { return http_1.handleError(err, res, _this.log); });
|
|
107
108
|
};
|
|
108
|
-
return
|
|
109
|
+
return QueryController;
|
|
109
110
|
}(LoadController_1.LoadController));
|
|
110
|
-
exports.
|
|
111
|
+
exports.QueryController = QueryController;
|
|
112
|
+
exports.QueryHandler = QueryController;
|
package/lib/LowCodeController.js
CHANGED
|
@@ -51,6 +51,7 @@ var LowcodeController = (function (_super) {
|
|
|
51
51
|
return LowcodeController;
|
|
52
52
|
}(GenericController_1.GenericController));
|
|
53
53
|
exports.LowcodeController = LowcodeController;
|
|
54
|
+
exports.LowcodeHandler = LowcodeController;
|
|
54
55
|
var Controller = (function (_super) {
|
|
55
56
|
__extends(Controller, _super);
|
|
56
57
|
function Controller(log, lowCodeService, build, validate, config, dates, numbers) {
|
package/lib/index.js
CHANGED
|
@@ -17,8 +17,7 @@ exports.LoadSearchHandler = LoadSearchController_1.LoadSearchController;
|
|
|
17
17
|
var LogController_1 = require("./LogController");
|
|
18
18
|
exports.LogHandler = LogController_1.LogController;
|
|
19
19
|
var LowCodeController_1 = require("./LowCodeController");
|
|
20
|
-
exports.
|
|
21
|
-
exports.LowCodeController = LowCodeController_1.Controller;
|
|
20
|
+
exports.Handler = LowCodeController_1.Controller;
|
|
22
21
|
var SearchController_1 = require("./SearchController");
|
|
23
22
|
exports.SearchHandler = SearchController_1.SearchController;
|
|
24
23
|
__export(require("./health"));
|
|
@@ -71,3 +70,30 @@ function allow(access) {
|
|
|
71
70
|
};
|
|
72
71
|
}
|
|
73
72
|
exports.allow = allow;
|
|
73
|
+
var SavedController = (function () {
|
|
74
|
+
function SavedController(log, service, item, id) {
|
|
75
|
+
this.log = log;
|
|
76
|
+
this.service = service;
|
|
77
|
+
this.item = item;
|
|
78
|
+
this.id = (id && id.length > 0 ? id : 'id');
|
|
79
|
+
this.save = this.save.bind(this);
|
|
80
|
+
this.load = this.load.bind(this);
|
|
81
|
+
}
|
|
82
|
+
SavedController.prototype.save = function (req, res) {
|
|
83
|
+
var id = req.params[this.id];
|
|
84
|
+
var itemId = req.params[this.item];
|
|
85
|
+
this.service.save(id, itemId).then(function (data) {
|
|
86
|
+
res.status(200).json(data).end();
|
|
87
|
+
})
|
|
88
|
+
.catch(function (err) { return console.log(err); });
|
|
89
|
+
};
|
|
90
|
+
SavedController.prototype.load = function (req, res) {
|
|
91
|
+
var id = req.params[this.id];
|
|
92
|
+
this.service.load(id).then(function (data) {
|
|
93
|
+
res.status(200).json(data).send();
|
|
94
|
+
})
|
|
95
|
+
.catch(function (err) { return console.log(err); });
|
|
96
|
+
};
|
|
97
|
+
return SavedController;
|
|
98
|
+
}());
|
|
99
|
+
exports.SavedController = SavedController;
|
package/package.json
CHANGED
package/src/LoadController.ts
CHANGED
|
@@ -55,7 +55,7 @@ export class LoadController<T, ID> {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
// tslint:disable-next-line:max-classes-per-file
|
|
58
|
-
export class
|
|
58
|
+
export class ItemController<T> {
|
|
59
59
|
constructor(protected log: Log, private loadData: (keyword: string, max?: number) => Promise<T>, name?: string, protected param?: boolean, max?: number, maxName?: string) {
|
|
60
60
|
this.name = (name && name.length > 0 ? name : 'keyword');
|
|
61
61
|
this.max = (max && max > 0 ? max : 20);
|
|
@@ -86,3 +86,4 @@ export class QueryController<T> {
|
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
|
+
export {ItemController as ItemHandler};
|
|
@@ -67,7 +67,7 @@ export class LoadSearchController<T, ID, S extends Filter> extends LoadControlle
|
|
|
67
67
|
.catch(err => handleError(err, res, this.log));
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
|
-
export class
|
|
70
|
+
export class QueryController<T, ID, S extends Filter> extends LoadController<T, ID> {
|
|
71
71
|
config?: SearchConfig;
|
|
72
72
|
csv?: boolean;
|
|
73
73
|
dates?: string[];
|
|
@@ -75,9 +75,10 @@ export class ViewController<T, ID, S extends Filter> extends LoadController<T, I
|
|
|
75
75
|
fields?: string;
|
|
76
76
|
excluding?: string;
|
|
77
77
|
array?: string[];
|
|
78
|
-
constructor(log: Log, protected query: Query<T, ID, S>, config?: SearchConfig|boolean, dates?: string[], numbers?: string[]) {
|
|
78
|
+
constructor(log: Log, protected query: Query<T, ID, S>, config?: SearchConfig|boolean, dates?: string[], numbers?: string[], array?: string[]) {
|
|
79
79
|
super(log, query);
|
|
80
80
|
this.search = this.search.bind(this);
|
|
81
|
+
this.array = array;
|
|
81
82
|
if (config) {
|
|
82
83
|
if (typeof config === 'boolean') {
|
|
83
84
|
this.csv = config;
|
|
@@ -108,3 +109,4 @@ export class ViewController<T, ID, S extends Filter> extends LoadController<T, I
|
|
|
108
109
|
.catch(err => handleError(err, res, this.log));
|
|
109
110
|
}
|
|
110
111
|
}
|
|
112
|
+
export {QueryController as QueryHandler};
|
package/src/LowCodeController.ts
CHANGED
|
@@ -46,6 +46,7 @@ export class LowcodeController<T, ID, S extends Filter> extends GenericControlle
|
|
|
46
46
|
.catch(err => handleError(err, res, this.log));
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
+
export {LowcodeController as LowcodeHandler};
|
|
49
50
|
export class Controller<T, ID, S extends Filter> extends GenericController<T, ID> {
|
|
50
51
|
config?: SearchConfig;
|
|
51
52
|
csv?: boolean;
|
package/src/index.ts
CHANGED
|
@@ -19,9 +19,7 @@ export {GenericController as GenericHandler};
|
|
|
19
19
|
export {SearchController as SearchHandler};
|
|
20
20
|
export {LoadSearchController as LoadSearchHandler};
|
|
21
21
|
export {GenericSearchController as GenericSearchHandler};
|
|
22
|
-
export {Controller as
|
|
23
|
-
// export {Controller as Handler};
|
|
24
|
-
export {Controller as LowCodeController};
|
|
22
|
+
export {Controller as Handler};
|
|
25
23
|
export {Service as LowCodeService};
|
|
26
24
|
|
|
27
25
|
export * from './health';
|
|
@@ -81,3 +79,30 @@ export function allow(access: AccessConfig): (req: Request, res: Response, next:
|
|
|
81
79
|
next();
|
|
82
80
|
};
|
|
83
81
|
}
|
|
82
|
+
export interface SavedService<T> {
|
|
83
|
+
load(id: string): Promise<T[]>;
|
|
84
|
+
save(id: string, itemId: string): Promise<number>;
|
|
85
|
+
}
|
|
86
|
+
export class SavedController<T> {
|
|
87
|
+
constructor(public log: (msg: string) => void, public service: SavedService<T>, public item: string, id?: string) {
|
|
88
|
+
this.id = (id && id.length > 0 ? id : 'id');
|
|
89
|
+
this.save = this.save.bind(this);
|
|
90
|
+
this.load = this.load.bind(this);
|
|
91
|
+
}
|
|
92
|
+
id: string;
|
|
93
|
+
save(req: Request, res: Response) {
|
|
94
|
+
const id = req.params[this.id];
|
|
95
|
+
const itemId = req.params[this.item];
|
|
96
|
+
this.service.save(id, itemId).then(data => {
|
|
97
|
+
res.status(200).json(data).end();
|
|
98
|
+
})
|
|
99
|
+
.catch(err => console.log(err));
|
|
100
|
+
}
|
|
101
|
+
load(req: Request, res: Response) {
|
|
102
|
+
const id = req.params[this.id];
|
|
103
|
+
this.service.load(id).then(data => {
|
|
104
|
+
res.status(200).json(data).send();
|
|
105
|
+
})
|
|
106
|
+
.catch(err => console.log(err));
|
|
107
|
+
}
|
|
108
|
+
}
|