@knovator/pagecreator-node 0.0.1
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/README.md +11 -0
- package/package.json +40 -0
- package/src/constants/index.d.ts +16 -0
- package/src/constants/index.js +30 -0
- package/src/constants/index.js.map +1 -0
- package/src/controllers/PageController.d.ts +4 -0
- package/src/controllers/PageController.js +61 -0
- package/src/controllers/PageController.js.map +1 -0
- package/src/controllers/TileController.d.ts +4 -0
- package/src/controllers/TileController.js +45 -0
- package/src/controllers/TileController.js.map +1 -0
- package/src/controllers/UserController.d.ts +2 -0
- package/src/controllers/UserController.js +174 -0
- package/src/controllers/UserController.js.map +1 -0
- package/src/controllers/WidgetController.d.ts +8 -0
- package/src/controllers/WidgetController.js +130 -0
- package/src/controllers/WidgetController.js.map +1 -0
- package/src/index.d.ts +8 -0
- package/src/index.js +29 -0
- package/src/index.js.map +1 -0
- package/src/models/Page.d.ts +3 -0
- package/src/models/Page.js +16 -0
- package/src/models/Page.js.map +1 -0
- package/src/models/Tile.d.ts +3 -0
- package/src/models/Tile.js +29 -0
- package/src/models/Tile.js.map +1 -0
- package/src/models/Widget.d.ts +3 -0
- package/src/models/Widget.js +41 -0
- package/src/models/Widget.js.map +1 -0
- package/src/models/index.d.ts +4 -0
- package/src/models/index.js +11 -0
- package/src/models/index.js.map +1 -0
- package/src/plugins/softDelete.d.ts +7 -0
- package/src/plugins/softDelete.js +64 -0
- package/src/plugins/softDelete.js.map +1 -0
- package/src/routes/PageRoute.d.ts +3 -0
- package/src/routes/PageRoute.js +27 -0
- package/src/routes/PageRoute.js.map +1 -0
- package/src/routes/TileRoute.d.ts +3 -0
- package/src/routes/TileRoute.js +28 -0
- package/src/routes/TileRoute.js.map +1 -0
- package/src/routes/UserRoute.d.ts +3 -0
- package/src/routes/UserRoute.js +21 -0
- package/src/routes/UserRoute.js.map +1 -0
- package/src/routes/WidgetRoute.d.ts +3 -0
- package/src/routes/WidgetRoute.js +46 -0
- package/src/routes/WidgetRoute.js.map +1 -0
- package/src/services/dbService.d.ts +8 -0
- package/src/services/dbService.js +60 -0
- package/src/services/dbService.js.map +1 -0
- package/src/types/IRequest.d.ts +6 -0
- package/src/types/IRequest.js +3 -0
- package/src/types/IRequest.js.map +1 -0
- package/src/types/IResponse.d.ts +6 -0
- package/src/types/IResponse.js +3 -0
- package/src/types/IResponse.js.map +1 -0
- package/src/types/Router.d.ts +4 -0
- package/src/types/Router.js +3 -0
- package/src/types/Router.js.map +1 -0
- package/src/types/common.d.ts +60 -0
- package/src/types/common.js +3 -0
- package/src/types/common.js.map +1 -0
- package/src/types/enums.d.ts +11 -0
- package/src/types/enums.js +18 -0
- package/src/types/enums.js.map +1 -0
- package/src/types/index.d.ts +5 -0
- package/src/types/index.js +9 -0
- package/src/types/index.js.map +1 -0
- package/src/utils/defaults.d.ts +2 -0
- package/src/utils/defaults.js +23 -0
- package/src/utils/defaults.js.map +1 -0
- package/src/utils/responseHandlers.d.ts +6 -0
- package/src/utils/responseHandlers.js +57 -0
- package/src/utils/responseHandlers.js.map +1 -0
- package/src/utils/validate.d.ts +4 -0
- package/src/utils/validate.js +24 -0
- package/src/utils/validate.js.map +1 -0
- package/src/utils/validations/page.d.ts +5 -0
- package/src/utils/validations/page.js +50 -0
- package/src/utils/validations/page.js.map +1 -0
- package/src/utils/validations/tile.d.ts +5 -0
- package/src/utils/validations/tile.js +35 -0
- package/src/utils/validations/tile.js.map +1 -0
- package/src/utils/validations/user.d.ts +3 -0
- package/src/utils/validations/user.js +12 -0
- package/src/utils/validations/user.js.map +1 -0
- package/src/utils/validations/widget.d.ts +7 -0
- package/src/utils/validations/widget.js +96 -0
- package/src/utils/validations/widget.js.map +1 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defaults = void 0;
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
|
+
exports.defaults = {
|
|
6
|
+
logger: console,
|
|
7
|
+
catchAsync: (fn, modal = '') => (req, res, next) => {
|
|
8
|
+
Promise.resolve(fn(req, res, next)).catch((err) => {
|
|
9
|
+
let message = err.message;
|
|
10
|
+
if (message.match(constants_1.REGEXS.OBJECTID_CAST_FAILED)) {
|
|
11
|
+
message = `${modal} not found with given id!`;
|
|
12
|
+
}
|
|
13
|
+
// this.logger.error(err.message);
|
|
14
|
+
res.status(constants_1.internalServerError).json({
|
|
15
|
+
code: constants_1.RESPONSE_CODES.ERROR,
|
|
16
|
+
message,
|
|
17
|
+
data: undefined,
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
},
|
|
21
|
+
collections: [],
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../../../libs/node/src/utils/defaults.ts"],"names":[],"mappings":";;;AAEA,4CAA2E;AAE9D,QAAA,QAAQ,GAAY;IAC/B,MAAM,EAAE,OAAc;IACtB,UAAU,EACR,CAAC,EAAO,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE,CACxB,CAAC,GAAa,EAAE,GAAc,EAAE,IAAkB,EAAE,EAAE;QACpD,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAChD,IAAI,OAAO,GAAI,GAAa,CAAC,OAAO,CAAC;YACrC,IAAI,OAAO,CAAC,KAAK,CAAC,kBAAM,CAAC,oBAAoB,CAAC,EAAE;gBAC9C,OAAO,GAAG,GAAG,KAAK,2BAA2B,CAAC;aAC/C;YACD,kCAAkC;YAClC,GAAG,CAAC,MAAM,CAAC,+BAAmB,CAAC,CAAC,IAAI,CAAC;gBACnC,IAAI,EAAE,0BAAc,CAAC,KAAK;gBAC1B,OAAO;gBACP,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IACH,WAAW,EAAE,EAAsB;CACpC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IResponse } from '../types';
|
|
2
|
+
export declare const failureResponse: (data: any, res: IResponse) => IResponse;
|
|
3
|
+
export declare const successResponse: (data: any, res: IResponse) => IResponse;
|
|
4
|
+
export declare const createdDocumentResponse: (data: any, res: IResponse) => IResponse;
|
|
5
|
+
export declare const recordNotFound: (res: IResponse) => IResponse;
|
|
6
|
+
export declare const inValidParam: (message: any, res: IResponse) => IResponse;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.inValidParam = exports.recordNotFound = exports.createdDocumentResponse = exports.successResponse = exports.failureResponse = void 0;
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
|
+
const failureResponse = (data, res) => {
|
|
6
|
+
let i = 0;
|
|
7
|
+
if (data.name === 'ValidationError') {
|
|
8
|
+
Object.keys(data.errors).forEach((key) => {
|
|
9
|
+
if (i !== 1) {
|
|
10
|
+
data.message = data.errors[key].message;
|
|
11
|
+
}
|
|
12
|
+
i++;
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
res.message = data.message;
|
|
16
|
+
return res.status(constants_1.validationError).json({
|
|
17
|
+
code: constants_1.RESPONSE_CODES.ERROR,
|
|
18
|
+
message: data.message ? data.message : data,
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
exports.failureResponse = failureResponse;
|
|
22
|
+
const successResponse = (data, res) => {
|
|
23
|
+
return res.status(constants_1.success).json({
|
|
24
|
+
code: constants_1.RESPONSE_CODES.DEFAULT,
|
|
25
|
+
message: res.message,
|
|
26
|
+
data: data,
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
exports.successResponse = successResponse;
|
|
30
|
+
const createdDocumentResponse = (data, res) => {
|
|
31
|
+
return res.status(constants_1.create).json({
|
|
32
|
+
code: constants_1.RESPONSE_CODES.DEFAULT,
|
|
33
|
+
message: res.message,
|
|
34
|
+
data: data,
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
exports.createdDocumentResponse = createdDocumentResponse;
|
|
38
|
+
const recordNotFound = (res) => {
|
|
39
|
+
return res.status(constants_1.success).json({
|
|
40
|
+
code: constants_1.RESPONSE_CODES.DEFAULT,
|
|
41
|
+
message: res.message,
|
|
42
|
+
data: {},
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
exports.recordNotFound = recordNotFound;
|
|
46
|
+
const inValidParam = (message, res) => {
|
|
47
|
+
/* eslint-disable no-useless-escape */
|
|
48
|
+
message = message.replace(/\"/g, '');
|
|
49
|
+
res.message = message;
|
|
50
|
+
return res.status(constants_1.validationError).json({
|
|
51
|
+
code: constants_1.RESPONSE_CODES.ERROR,
|
|
52
|
+
message: message,
|
|
53
|
+
data: undefined,
|
|
54
|
+
});
|
|
55
|
+
};
|
|
56
|
+
exports.inValidParam = inValidParam;
|
|
57
|
+
//# sourceMappingURL=responseHandlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responseHandlers.js","sourceRoot":"","sources":["../../../../../libs/node/src/utils/responseHandlers.ts"],"names":[],"mappings":";;;AAAA,4CAAgF;AAGzE,MAAM,eAAe,GAAG,CAAC,IAAS,EAAE,GAAc,EAAE,EAAE;IAC5D,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE;QACpC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACxC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;aACxC;YACD,CAAC,EAAE,CAAC;QACL,CAAC,CAAC,CAAC;KACH;IACD,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC3B,OAAO,GAAG,CAAC,MAAM,CAAC,2BAAe,CAAC,CAAC,IAAI,CAAC;QACvC,IAAI,EAAE,0BAAc,CAAC,KAAK;QAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;KAC3C,CAAC,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,eAAe,mBAe1B;AAEK,MAAM,eAAe,GAAG,CAAC,IAAS,EAAE,GAAc,EAAE,EAAE;IAC5D,OAAO,GAAG,CAAC,MAAM,CAAC,mBAAO,CAAC,CAAC,IAAI,CAAC;QAC/B,IAAI,EAAE,0BAAc,CAAC,OAAO;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,IAAI;KACV,CAAC,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEK,MAAM,uBAAuB,GAAG,CAAC,IAAS,EAAE,GAAc,EAAE,EAAE;IACpE,OAAO,GAAG,CAAC,MAAM,CAAC,kBAAM,CAAC,CAAC,IAAI,CAAC;QAC9B,IAAI,EAAE,0BAAc,CAAC,OAAO;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,IAAI;KACV,CAAC,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,uBAAuB,2BAMlC;AAEK,MAAM,cAAc,GAAG,CAAC,GAAc,EAAE,EAAE;IAChD,OAAO,GAAG,CAAC,MAAM,CAAC,mBAAO,CAAC,CAAC,IAAI,CAAC;QAC/B,IAAI,EAAE,0BAAc,CAAC,OAAO;QAC5B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,EAAE;KACR,CAAC,CAAC;AACJ,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB;AAEK,MAAM,YAAY,GAAG,CAAC,OAAY,EAAE,GAAc,EAAE,EAAE;IAC5D,sCAAsC;IACtC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrC,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;IACtB,OAAO,GAAG,CAAC,MAAM,CAAC,2BAAe,CAAC,CAAC,IAAI,CAAC;QACvC,IAAI,EAAE,0BAAc,CAAC,KAAK;QAC1B,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,SAAS;KACf,CAAC,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,YAAY,gBASvB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const defaults_1 = require("./defaults");
|
|
5
|
+
const responseHandlers_1 = require("./responseHandlers");
|
|
6
|
+
const validate = (validator) => {
|
|
7
|
+
return function (req, res, next) {
|
|
8
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
9
|
+
try {
|
|
10
|
+
req.body = yield validator.validateAsync(req.body);
|
|
11
|
+
next();
|
|
12
|
+
}
|
|
13
|
+
catch (err) {
|
|
14
|
+
defaults_1.defaults.logger.error('ValidationError', err);
|
|
15
|
+
if (err.isJoi)
|
|
16
|
+
(0, responseHandlers_1.inValidParam)(err.message, res);
|
|
17
|
+
else
|
|
18
|
+
(0, responseHandlers_1.failureResponse)(err.message, res);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
exports.default = validate;
|
|
24
|
+
//# sourceMappingURL=validate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../../libs/node/src/utils/validate.ts"],"names":[],"mappings":";;;AAIA,yCAAsC;AACtC,yDAAmE;AAEnE,MAAM,QAAQ,GAAG,CAAC,SAAc,EAAE,EAAE;IAClC,OAAO,UAAgB,GAAa,EAAE,GAAc,EAAE,IAAkB;;YACtE,IAAI;gBACF,GAAG,CAAC,IAAI,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnD,IAAI,EAAE,CAAC;aACR;YAAC,OAAO,GAAG,EAAE;gBACZ,mBAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;gBAC9C,IAAK,GAAuB,CAAC,KAAK;oBAChC,IAAA,+BAAY,EAAE,GAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;;oBACvC,IAAA,kCAAe,EAAE,GAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;aACnD;QACH,CAAC;KAAA,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.list = exports.update = exports.create = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const models_1 = require("../../models");
|
|
7
|
+
const dbService_1 = require("../../services/dbService");
|
|
8
|
+
const constants_1 = require("../../constants");
|
|
9
|
+
const checkUnique = (value) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
10
|
+
let result;
|
|
11
|
+
try {
|
|
12
|
+
// throws error if document not found
|
|
13
|
+
result = yield (0, dbService_1.getOne)(models_1.Page, {
|
|
14
|
+
code: value,
|
|
15
|
+
});
|
|
16
|
+
// eslint-disable-next-line no-empty
|
|
17
|
+
}
|
|
18
|
+
catch (e) { }
|
|
19
|
+
if (result) {
|
|
20
|
+
throw new Error(constants_1.VALIDATION.WIDGET_EXISTS);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
exports.create = joi_1.default.object({
|
|
24
|
+
name: joi_1.default.string().required(),
|
|
25
|
+
code: joi_1.default
|
|
26
|
+
.string()
|
|
27
|
+
.uppercase()
|
|
28
|
+
.replace(/\s+/g, '_')
|
|
29
|
+
.external(checkUnique)
|
|
30
|
+
.required(),
|
|
31
|
+
widgets: joi_1.default.array().items(joi_1.default.string()).optional(),
|
|
32
|
+
});
|
|
33
|
+
exports.update = joi_1.default.object({
|
|
34
|
+
name: joi_1.default.string().optional(),
|
|
35
|
+
widgets: joi_1.default.array().items(joi_1.default.string()).optional(),
|
|
36
|
+
});
|
|
37
|
+
exports.list = joi_1.default.object({
|
|
38
|
+
search: joi_1.default.string().allow('').replace(/\s+/g, '_').optional().default(''),
|
|
39
|
+
options: joi_1.default
|
|
40
|
+
.object({
|
|
41
|
+
// sort: joi.alternatives().try(joi.object(), joi.string()).optional(),
|
|
42
|
+
populate: joi_1.default.array().items().optional().default([]),
|
|
43
|
+
offset: joi_1.default.number().optional(),
|
|
44
|
+
page: joi_1.default.number().optional(),
|
|
45
|
+
limit: joi_1.default.number().optional(),
|
|
46
|
+
pagination: joi_1.default.boolean().default(false),
|
|
47
|
+
})
|
|
48
|
+
.default({}),
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../../../libs/node/src/utils/validations/page.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,yCAAoC;AACpC,wDAAkD;AAClD,+CAA6C;AAG7C,MAAM,WAAW,GAAG,CAAO,KAAa,EAAiB,EAAE;IACzD,IAAI,MAAM,CAAC;IACX,IAAI;QACF,qCAAqC;QACrC,MAAM,GAAG,MAAM,IAAA,kBAAM,EAAC,aAAI,EAAE;YAC1B,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;QACH,oCAAoC;KACrC;IAAC,OAAO,CAAC,EAAE,GAAE;IACd,IAAI,MAAM,EAAE;QACV,MAAM,IAAI,KAAK,CAAC,sBAAU,CAAC,aAAa,CAAC,CAAC;KAC3C;AACH,CAAC,CAAA,CAAC;AAEW,QAAA,MAAM,GAAG,aAAG,CAAC,MAAM,CAAc;IAC5C,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,aAAG;SACN,MAAM,EAAE;SACR,SAAS,EAAE;SACX,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,QAAQ,CAAC,WAAW,CAAC;SACrB,QAAQ,EAAE;IACb,OAAO,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,aAAG,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAEU,QAAA,MAAM,GAAG,aAAG,CAAC,MAAM,CAAc;IAC5C,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,OAAO,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,aAAG,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAEU,QAAA,IAAI,GAAG,aAAG,CAAC,MAAM,CAAC;IAC7B,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1E,OAAO,EAAE,aAAG;SACT,MAAM,CAAC;QACN,uEAAuE;QACvE,QAAQ,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC7B,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,UAAU,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;KACzC,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;CACf,CAAC,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.list = exports.update = exports.create = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const types_1 = require("../../types");
|
|
7
|
+
exports.create = joi_1.default.object({
|
|
8
|
+
widgetId: joi_1.default.string().required(),
|
|
9
|
+
title: joi_1.default.string().required(),
|
|
10
|
+
altText: joi_1.default.string().optional(),
|
|
11
|
+
link: joi_1.default.string().required(),
|
|
12
|
+
sequence: joi_1.default.number().optional(),
|
|
13
|
+
img: joi_1.default.string().optional(),
|
|
14
|
+
tileType: joi_1.default
|
|
15
|
+
.string()
|
|
16
|
+
.valid(...Object.values(types_1.TileTypes))
|
|
17
|
+
.optional()
|
|
18
|
+
.default(types_1.TileTypes.Web),
|
|
19
|
+
});
|
|
20
|
+
exports.update = joi_1.default.object({
|
|
21
|
+
widgetId: joi_1.default.string().required(),
|
|
22
|
+
title: joi_1.default.string().required(),
|
|
23
|
+
altText: joi_1.default.string().optional(),
|
|
24
|
+
link: joi_1.default.string().required(),
|
|
25
|
+
sequence: joi_1.default.number().optional(),
|
|
26
|
+
img: joi_1.default.string().optional(),
|
|
27
|
+
tileType: joi_1.default
|
|
28
|
+
.string()
|
|
29
|
+
.valid(...Object.values(types_1.TileTypes))
|
|
30
|
+
.optional(),
|
|
31
|
+
});
|
|
32
|
+
exports.list = joi_1.default.object({
|
|
33
|
+
search: joi_1.default.string().allow('').replace(/\s+/g, '_').default(''),
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=tile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tile.js","sourceRoot":"","sources":["../../../../../../libs/node/src/utils/validations/tile.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AACtB,uCAAqD;AAExC,QAAA,MAAM,GAAG,aAAG,CAAC,MAAM,CAAc;IAC5C,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,QAAQ,EAAE,aAAG;SACV,MAAM,EAAE;SACR,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAC;SAClC,QAAQ,EAAE;SACV,OAAO,CAAC,iBAAS,CAAC,GAAG,CAAC;CAC1B,CAAC,CAAC;AAEU,QAAA,MAAM,GAAG,aAAG,CAAC,MAAM,CAAc;IAC5C,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,QAAQ,EAAE,aAAG;SACV,MAAM,EAAE;SACR,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAS,CAAC,CAAC;SAClC,QAAQ,EAAE;CACd,CAAC,CAAC;AAEU,QAAA,IAAI,GAAG,aAAG,CAAC,MAAM,CAAC;IAC7B,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAChE,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getPageData = exports.getWidgetData = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
exports.getWidgetData = joi_1.default.object({
|
|
7
|
+
code: joi_1.default.string().required(),
|
|
8
|
+
});
|
|
9
|
+
exports.getPageData = joi_1.default.object({
|
|
10
|
+
code: joi_1.default.string().required(),
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../../../../libs/node/src/utils/validations/user.ts"],"names":[],"mappings":";;;;AAAA,sDAAsB;AAET,QAAA,aAAa,GAAG,aAAG,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAEU,QAAA,WAAW,GAAG,aAAG,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import joi from 'joi';
|
|
2
|
+
import { IWidgetSchema } from '../../types';
|
|
3
|
+
export declare const create: joi.ObjectSchema<IWidgetSchema>;
|
|
4
|
+
export declare const update: joi.ObjectSchema<IWidgetSchema>;
|
|
5
|
+
export declare const list: joi.ObjectSchema<any>;
|
|
6
|
+
export declare const partialUpdate: joi.ObjectSchema<any>;
|
|
7
|
+
export declare const getCollectionData: joi.ObjectSchema<any>;
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCollectionData = exports.partialUpdate = exports.list = exports.update = exports.create = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const joi_1 = tslib_1.__importDefault(require("joi"));
|
|
6
|
+
const models_1 = require("../../models");
|
|
7
|
+
const defaults_1 = require("../defaults");
|
|
8
|
+
const constants_1 = require("../../constants");
|
|
9
|
+
const dbService_1 = require("../../services/dbService");
|
|
10
|
+
const types_1 = require("../../types");
|
|
11
|
+
const checkUnique = (value) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
12
|
+
let result;
|
|
13
|
+
try {
|
|
14
|
+
// throws error if document found
|
|
15
|
+
result = yield (0, dbService_1.getOne)(models_1.Widget, {
|
|
16
|
+
code: value,
|
|
17
|
+
});
|
|
18
|
+
// eslint-disable-next-line no-empty
|
|
19
|
+
}
|
|
20
|
+
catch (e) { }
|
|
21
|
+
if (result) {
|
|
22
|
+
throw new Error(constants_1.VALIDATION.WIDGET_EXISTS);
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
exports.create = joi_1.default.object({
|
|
26
|
+
name: joi_1.default.string().required(),
|
|
27
|
+
selectionTitle: joi_1.default.string().required(),
|
|
28
|
+
code: joi_1.default
|
|
29
|
+
.string()
|
|
30
|
+
.uppercase()
|
|
31
|
+
.replace(/\s+/g, '_')
|
|
32
|
+
.external(checkUnique)
|
|
33
|
+
.required(),
|
|
34
|
+
isActive: joi_1.default.boolean().default(true).optional(),
|
|
35
|
+
autoPlay: joi_1.default.boolean().default(false).optional(),
|
|
36
|
+
webPerRow: joi_1.default.number().allow(null).optional(),
|
|
37
|
+
mobilePerRow: joi_1.default.number().allow(null).optional(),
|
|
38
|
+
tabletPerRow: joi_1.default.number().allow(null).optional(),
|
|
39
|
+
collectionName: joi_1.default.string().optional(),
|
|
40
|
+
collectionItems: joi_1.default.array().items(joi_1.default.string()).optional(),
|
|
41
|
+
widgetType: joi_1.default
|
|
42
|
+
.string()
|
|
43
|
+
.custom((value) => {
|
|
44
|
+
if (Object.keys(types_1.WidgetType).includes(value)) {
|
|
45
|
+
return value;
|
|
46
|
+
}
|
|
47
|
+
const collectionIndex = defaults_1.defaults.collections.findIndex((collection) => collection.collectionName === value);
|
|
48
|
+
if (collectionIndex > -1) {
|
|
49
|
+
return value;
|
|
50
|
+
}
|
|
51
|
+
throw new Error(`${value} is not a valid widget type`);
|
|
52
|
+
})
|
|
53
|
+
.optional()
|
|
54
|
+
.default(types_1.WidgetType.Image),
|
|
55
|
+
selectionType: joi_1.default
|
|
56
|
+
.string()
|
|
57
|
+
.valid(...Object.values(types_1.SelectionTypes))
|
|
58
|
+
.optional()
|
|
59
|
+
.default(types_1.SelectionTypes.FixedCard),
|
|
60
|
+
});
|
|
61
|
+
exports.update = joi_1.default.object({
|
|
62
|
+
name: joi_1.default.string().required(),
|
|
63
|
+
selectionTitle: joi_1.default.string().required(),
|
|
64
|
+
isActive: joi_1.default.boolean().optional(),
|
|
65
|
+
webPerRow: joi_1.default.number().allow(null).optional(),
|
|
66
|
+
mobilePerRow: joi_1.default.number().allow(null).optional(),
|
|
67
|
+
tabletPerRow: joi_1.default.number().allow(null).optional(),
|
|
68
|
+
autoPlay: joi_1.default.boolean().default(false).optional(),
|
|
69
|
+
collectionItems: joi_1.default.array().items(joi_1.default.string()).optional(),
|
|
70
|
+
selectionType: joi_1.default
|
|
71
|
+
.string()
|
|
72
|
+
.valid(...Object.values(types_1.SelectionTypes))
|
|
73
|
+
.optional(),
|
|
74
|
+
});
|
|
75
|
+
exports.list = joi_1.default.object({
|
|
76
|
+
search: joi_1.default.string().allow('').optional().default(''),
|
|
77
|
+
options: joi_1.default
|
|
78
|
+
.object({
|
|
79
|
+
// sort: joi.alternatives().try(joi.object(), joi.string()).optional(),
|
|
80
|
+
// populate: joi.array().items().optional(),
|
|
81
|
+
offset: joi_1.default.number().optional(),
|
|
82
|
+
page: joi_1.default.number().optional(),
|
|
83
|
+
limit: joi_1.default.number().optional(),
|
|
84
|
+
})
|
|
85
|
+
.default({}),
|
|
86
|
+
isActive: joi_1.default.boolean().optional(),
|
|
87
|
+
all: joi_1.default.boolean().default(false),
|
|
88
|
+
});
|
|
89
|
+
exports.partialUpdate = joi_1.default.object({
|
|
90
|
+
isActive: joi_1.default.boolean().optional(),
|
|
91
|
+
});
|
|
92
|
+
exports.getCollectionData = joi_1.default.object({
|
|
93
|
+
collectionName: joi_1.default.string().required(),
|
|
94
|
+
search: joi_1.default.string().allow('').optional().default(''),
|
|
95
|
+
});
|
|
96
|
+
//# sourceMappingURL=widget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../../../../libs/node/src/utils/validations/widget.ts"],"names":[],"mappings":"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"}
|