@knovator/pagecreator-node 1.2.2 → 1.2.4
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 +458 -458
- package/package.json +3 -2
- package/src/constants/index.d.ts +20 -20
- package/src/constants/index.js +33 -33
- package/src/controllers/PageController.d.ts +4 -4
- package/src/controllers/PageController.js +83 -83
- package/src/controllers/TabController.d.ts +4 -4
- package/src/controllers/TabController.js +45 -45
- package/src/controllers/UserController.d.ts +2 -2
- package/src/controllers/UserController.js +64 -64
- package/src/controllers/WidgetController.d.ts +10 -10
- package/src/controllers/WidgetController.js +328 -328
- package/src/index.d.ts +8 -8
- package/src/index.js +47 -47
- package/src/models/Item.d.ts +30 -30
- package/src/models/Item.js +49 -49
- package/src/models/Page.d.ts +30 -30
- package/src/models/Page.js +23 -22
- package/src/models/Page.js.map +1 -1
- package/src/models/SrcSet.d.ts +30 -30
- package/src/models/SrcSet.js +16 -16
- package/src/models/Tab.d.ts +30 -30
- package/src/models/Tab.js +27 -27
- package/src/models/Widget.d.ts +30 -30
- package/src/models/Widget.js +62 -62
- package/src/models/index.d.ts +6 -6
- package/src/models/index.js +18 -18
- package/src/plugins/softDelete.d.ts +7 -7
- package/src/plugins/softDelete.js +63 -63
- package/src/routes/PageRoute.d.ts +3 -3
- package/src/routes/PageRoute.js +29 -29
- package/src/routes/UserRoute.d.ts +3 -3
- package/src/routes/UserRoute.js +22 -22
- package/src/routes/WidgetRoute.d.ts +3 -3
- package/src/routes/WidgetRoute.js +67 -67
- package/src/services/dataService.d.ts +9 -9
- package/src/services/dataService.js +402 -402
- package/src/services/dbService.d.ts +16 -16
- package/src/services/dbService.js +88 -87
- package/src/services/dbService.js.map +1 -1
- package/src/types/IRequest.d.ts +6 -6
- package/src/types/IRequest.js +2 -2
- package/src/types/IResponse.d.ts +6 -6
- package/src/types/IResponse.js +2 -2
- package/src/types/Router.d.ts +4 -4
- package/src/types/Router.js +2 -2
- package/src/types/common.d.ts +143 -142
- package/src/types/common.js +2 -2
- package/src/types/enums.d.ts +14 -14
- package/src/types/enums.js +20 -20
- package/src/types/index.d.ts +5 -5
- package/src/types/index.js +8 -8
- package/src/utils/defaults.d.ts +7 -7
- package/src/utils/defaults.js +40 -40
- package/src/utils/helper.d.ts +7 -7
- package/src/utils/helper.js +224 -224
- package/src/utils/redis.d.ts +3 -3
- package/src/utils/redis.js +58 -58
- package/src/utils/responseHandlers.d.ts +6 -6
- package/src/utils/responseHandlers.js +56 -56
- package/src/utils/validate.d.ts +4 -4
- package/src/utils/validate.js +23 -23
- package/src/utils/validations/page.d.ts +7 -7
- package/src/utils/validations/page.js +52 -50
- package/src/utils/validations/page.js.map +1 -1
- package/src/utils/validations/tab.d.ts +6 -6
- package/src/utils/validations/tab.js +25 -25
- package/src/utils/validations/user.d.ts +3 -3
- package/src/utils/validations/user.js +12 -12
- package/src/utils/validations/widget.d.ts +9 -9
- package/src/utils/validations/widget.js +152 -152
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { Model, FilterQuery, QueryOptions, ProjectionType, HydratedDocument, QueryWithHelpers } from 'mongoose';
|
|
2
|
-
import { EntityType, IModel
|
|
3
|
-
export declare function create<T
|
|
4
|
-
export declare function update<T
|
|
5
|
-
export declare function remove<T
|
|
6
|
-
export declare function deleteAll<T
|
|
7
|
-
export declare function getAll<T
|
|
8
|
-
export declare function list<T
|
|
9
|
-
export declare function getOne<T
|
|
10
|
-
export declare function bulkInsert<T
|
|
11
|
-
export declare function checkUnique<T extends EntityType>({ Modal, uniqueField, errorMessage, value }: {
|
|
12
|
-
Modal: Model<T>;
|
|
13
|
-
uniqueField: keyof T;
|
|
14
|
-
value: any;
|
|
15
|
-
errorMessage: string;
|
|
16
|
-
}): Promise<void>;
|
|
1
|
+
import { Model, FilterQuery, QueryOptions, ProjectionType, HydratedDocument, QueryWithHelpers } from 'mongoose';
|
|
2
|
+
import { EntityType, IModel } from '../types';
|
|
3
|
+
export declare function create<T>(Modal: Model<T>, data: Partial<T>): Promise<HydratedDocument<T>>;
|
|
4
|
+
export declare function update<T>(Modal: Model<T>, query: FilterQuery<T>, data: Partial<T>): Promise<HydratedDocument<T> | undefined>;
|
|
5
|
+
export declare function remove<T>(Modal: Model<T>, query: FilterQuery<T>): Promise<HydratedDocument<T>>;
|
|
6
|
+
export declare function deleteAll<T>(Modal: Model<T>, query: FilterQuery<T>): Promise<import("mongodb").DeleteResult>;
|
|
7
|
+
export declare function getAll<T>(Modal: Model<T>, query?: FilterQuery<T>, options?: QueryOptions<T>, projection?: ProjectionType<T>): QueryWithHelpers<Array<HydratedDocument<T>>, HydratedDocument<T>, {}, T>;
|
|
8
|
+
export declare function list<T>(Modal: IModel<T>, where: FilterQuery<T>, options: QueryOptions<T>): Promise<any>;
|
|
9
|
+
export declare function getOne<T>(Modal: Model<T>, query: FilterQuery<T>, projection?: ProjectionType<T>): Promise<HydratedDocument<T>>;
|
|
10
|
+
export declare function bulkInsert<T>(Modal: Model<T>, docs: T[]): Promise<Array<HydratedDocument<T>>>;
|
|
11
|
+
export declare function checkUnique<T extends EntityType>({ Modal, uniqueField, errorMessage, value }: {
|
|
12
|
+
Modal: Model<T>;
|
|
13
|
+
uniqueField: keyof T;
|
|
14
|
+
value: any;
|
|
15
|
+
errorMessage: string;
|
|
16
|
+
}): Promise<void>;
|
|
@@ -1,88 +1,89 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.checkUnique = exports.bulkInsert = exports.getOne = exports.list = exports.getAll = exports.deleteAll = exports.remove = exports.update = exports.create = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
// create
|
|
6
|
-
function create(Modal, data) {
|
|
7
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
8
|
-
const modalInstance = new Modal(data);
|
|
9
|
-
return yield modalInstance.save();
|
|
10
|
-
});
|
|
11
|
-
}
|
|
12
|
-
exports.create = create;
|
|
13
|
-
// update
|
|
14
|
-
function update(Modal, query, data) {
|
|
15
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
-
yield getOne(Modal, query);
|
|
17
|
-
const result = yield Modal.findOneAndUpdate(query, data, {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkUnique = exports.bulkInsert = exports.getOne = exports.list = exports.getAll = exports.deleteAll = exports.remove = exports.update = exports.create = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
// create
|
|
6
|
+
function create(Modal, data) {
|
|
7
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
8
|
+
const modalInstance = new Modal(data);
|
|
9
|
+
return (yield modalInstance.save());
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
exports.create = create;
|
|
13
|
+
// update
|
|
14
|
+
function update(Modal, query, data) {
|
|
15
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
yield getOne(Modal, query);
|
|
17
|
+
const result = (yield Modal.findOneAndUpdate(query, data, {
|
|
18
|
+
new: true,
|
|
19
|
+
}));
|
|
20
|
+
return result || undefined;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
exports.update = update;
|
|
24
|
+
// soft-delete
|
|
25
|
+
function remove(Modal, query) {
|
|
26
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const modalInstance = yield getOne(Modal, query);
|
|
28
|
+
return (yield modalInstance.remove());
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
exports.remove = remove;
|
|
32
|
+
// delete-all
|
|
33
|
+
function deleteAll(Modal, query) {
|
|
34
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
return Modal.deleteMany(query);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
exports.deleteAll = deleteAll;
|
|
39
|
+
// get-all
|
|
40
|
+
function getAll(Modal, query = {}, options, projection
|
|
41
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
42
|
+
) {
|
|
43
|
+
return Modal.find(query, projection, options);
|
|
44
|
+
}
|
|
45
|
+
exports.getAll = getAll;
|
|
46
|
+
// list
|
|
47
|
+
function list(Modal, where, options) {
|
|
48
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
try {
|
|
50
|
+
const documents = Modal.paginate(where, options);
|
|
51
|
+
return documents;
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
throw new Error(error.message);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
exports.list = list;
|
|
59
|
+
// get-one
|
|
60
|
+
function getOne(Modal, query, projection) {
|
|
61
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
const modalInstance = (yield Modal.findOne(query, projection));
|
|
63
|
+
if (!modalInstance)
|
|
64
|
+
throw new Error(`Record not found ${Modal.name ? `in ${Modal.name}` : ''}`);
|
|
65
|
+
return modalInstance;
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
exports.getOne = getOne;
|
|
69
|
+
// bulk-insert
|
|
70
|
+
function bulkInsert(Modal, docs) {
|
|
71
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
return (yield Modal.insertMany(docs));
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
exports.bulkInsert = bulkInsert;
|
|
76
|
+
function checkUnique({ Modal, uniqueField, errorMessage, value }) {
|
|
77
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
const query = { [uniqueField]: value };
|
|
79
|
+
let result;
|
|
80
|
+
try {
|
|
81
|
+
result = yield getOne(Modal, query);
|
|
82
|
+
}
|
|
83
|
+
catch (error) { }
|
|
84
|
+
if (result)
|
|
85
|
+
throw new Error(errorMessage);
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
exports.checkUnique = checkUnique;
|
|
88
89
|
//# sourceMappingURL=dbService.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dbService.js","sourceRoot":"","sources":["../../../../../libs/node/src/services/dbService.ts"],"names":[],"mappings":";;;;AAUA,SAAS;AACT,SAAsB,MAAM,CAC1B,KAAe,EACf,IAAgB;;QAEhB,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"dbService.js","sourceRoot":"","sources":["../../../../../libs/node/src/services/dbService.ts"],"names":[],"mappings":"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"}
|
package/src/types/IRequest.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Request } from 'express';
|
|
2
|
-
export interface IRequest extends Request {
|
|
3
|
-
i18n?: {
|
|
4
|
-
t: (key: string) => string;
|
|
5
|
-
};
|
|
6
|
-
}
|
|
1
|
+
import { Request } from 'express';
|
|
2
|
+
export interface IRequest extends Request {
|
|
3
|
+
i18n?: {
|
|
4
|
+
t: (key: string) => string;
|
|
5
|
+
};
|
|
6
|
+
}
|
package/src/types/IRequest.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=IRequest.js.map
|
package/src/types/IResponse.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Response } from 'express';
|
|
2
|
-
export interface IResponse extends Response {
|
|
3
|
-
message?: string;
|
|
4
|
-
data?: unknown;
|
|
5
|
-
code?: number;
|
|
6
|
-
}
|
|
1
|
+
import { Response } from 'express';
|
|
2
|
+
export interface IResponse extends Response {
|
|
3
|
+
message?: string;
|
|
4
|
+
data?: unknown;
|
|
5
|
+
code?: number;
|
|
6
|
+
}
|
package/src/types/IResponse.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=IResponse.js.map
|
package/src/types/Router.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Router } from 'express';
|
|
2
|
-
export interface IRouter extends Router {
|
|
3
|
-
descriptor: (text: string) => void;
|
|
4
|
-
}
|
|
1
|
+
import { Router } from 'express';
|
|
2
|
+
export interface IRouter extends Router {
|
|
3
|
+
descriptor: (text: string) => void;
|
|
4
|
+
}
|
package/src/types/Router.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=Router.js.map
|
package/src/types/common.d.ts
CHANGED
|
@@ -1,142 +1,143 @@
|
|
|
1
|
-
/// <reference types="express-serve-static-core" />
|
|
2
|
-
import { Document, Model, Models, Types, FilterQuery, QueryOptions, HydratedDocument } from 'mongoose';
|
|
3
|
-
import { ItemsType, WidgetTypes, ItemTypes } from '.';
|
|
4
|
-
export type TypesType = {
|
|
5
|
-
value: string;
|
|
6
|
-
label: string;
|
|
7
|
-
};
|
|
8
|
-
export type LanguageSchemaFieldType = {
|
|
9
|
-
[key: string]: string;
|
|
10
|
-
};
|
|
11
|
-
export interface iConfig {
|
|
12
|
-
logger: any;
|
|
13
|
-
catchAsync: (fn: any, modal?: string) => (req: any, res: any, next: any) => void;
|
|
14
|
-
collections: CollectionItem[];
|
|
15
|
-
}
|
|
16
|
-
export interface IPageSchema extends Document {
|
|
17
|
-
name: string;
|
|
18
|
-
code: string;
|
|
19
|
-
slug: string;
|
|
20
|
-
canDel: boolean;
|
|
21
|
-
widgets: string[];
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
export type
|
|
114
|
-
export
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
1
|
+
/// <reference types="express-serve-static-core" />
|
|
2
|
+
import { Document, Model, Models, Types, FilterQuery, QueryOptions, HydratedDocument } from 'mongoose';
|
|
3
|
+
import { ItemsType, WidgetTypes, ItemTypes } from '.';
|
|
4
|
+
export type TypesType = {
|
|
5
|
+
value: string;
|
|
6
|
+
label: string;
|
|
7
|
+
};
|
|
8
|
+
export type LanguageSchemaFieldType = {
|
|
9
|
+
[key: string]: string;
|
|
10
|
+
};
|
|
11
|
+
export interface iConfig {
|
|
12
|
+
logger: any;
|
|
13
|
+
catchAsync: (fn: any, modal?: string) => (req: any, res: any, next: any) => void;
|
|
14
|
+
collections: CollectionItem[];
|
|
15
|
+
}
|
|
16
|
+
export interface IPageSchema extends Document {
|
|
17
|
+
name: string;
|
|
18
|
+
code: string;
|
|
19
|
+
slug: string;
|
|
20
|
+
canDel: boolean;
|
|
21
|
+
widgets: string[];
|
|
22
|
+
filterQuery: string;
|
|
23
|
+
}
|
|
24
|
+
export interface ITabSchema extends Document {
|
|
25
|
+
name: string;
|
|
26
|
+
names: LanguageSchemaFieldType;
|
|
27
|
+
widgetId: typeof Types.ObjectId;
|
|
28
|
+
collectionItems: string[];
|
|
29
|
+
}
|
|
30
|
+
export interface ISrcSetSchema extends Document {
|
|
31
|
+
width: number;
|
|
32
|
+
height: number;
|
|
33
|
+
screenSize: number;
|
|
34
|
+
itemId: typeof Types.ObjectId;
|
|
35
|
+
}
|
|
36
|
+
export interface IWidgetSchema extends Document {
|
|
37
|
+
items: any;
|
|
38
|
+
name: string;
|
|
39
|
+
code: string;
|
|
40
|
+
autoPlay: boolean;
|
|
41
|
+
isActive: boolean;
|
|
42
|
+
widgetTitle: string;
|
|
43
|
+
widgetTitles: LanguageSchemaFieldType;
|
|
44
|
+
webPerRow: number;
|
|
45
|
+
mobilePerRow: number;
|
|
46
|
+
tabletPerRow: number;
|
|
47
|
+
itemsType: ItemsType;
|
|
48
|
+
widgetType: WidgetTypes;
|
|
49
|
+
collectionName: string;
|
|
50
|
+
collectionItems: string[];
|
|
51
|
+
tabs: {
|
|
52
|
+
name: string;
|
|
53
|
+
names?: LanguageSchemaFieldType;
|
|
54
|
+
collectionItems: string[];
|
|
55
|
+
}[];
|
|
56
|
+
backgroundColor: string;
|
|
57
|
+
textContent: string;
|
|
58
|
+
htmlContent: string;
|
|
59
|
+
canDel: boolean;
|
|
60
|
+
}
|
|
61
|
+
export interface IItemSchema extends Document {
|
|
62
|
+
widgetId: typeof Types.ObjectId;
|
|
63
|
+
title: string;
|
|
64
|
+
titles: LanguageSchemaFieldType;
|
|
65
|
+
subtitle: string;
|
|
66
|
+
subtitles: LanguageSchemaFieldType;
|
|
67
|
+
altText: string;
|
|
68
|
+
altTexts: LanguageSchemaFieldType;
|
|
69
|
+
link: string;
|
|
70
|
+
sequence: number;
|
|
71
|
+
itemType: ItemTypes;
|
|
72
|
+
img: any;
|
|
73
|
+
imgs: any;
|
|
74
|
+
srcset?: SrcSetItem[];
|
|
75
|
+
}
|
|
76
|
+
export interface SrcSetItem {
|
|
77
|
+
screenSize: number;
|
|
78
|
+
width: number;
|
|
79
|
+
height: number;
|
|
80
|
+
}
|
|
81
|
+
export type CollectionItem = {
|
|
82
|
+
title: string;
|
|
83
|
+
collectionName: string;
|
|
84
|
+
filters?: {
|
|
85
|
+
[key: string]: string | number | boolean;
|
|
86
|
+
};
|
|
87
|
+
searchColumns?: string[];
|
|
88
|
+
match?: ObjectType;
|
|
89
|
+
aggregations?: any[];
|
|
90
|
+
searchLimit?: number;
|
|
91
|
+
};
|
|
92
|
+
export type RedisConfig = {
|
|
93
|
+
HOST: string;
|
|
94
|
+
PORT: number;
|
|
95
|
+
PASSWORD?: string;
|
|
96
|
+
USER?: string;
|
|
97
|
+
DB?: number;
|
|
98
|
+
};
|
|
99
|
+
export interface IConfig {
|
|
100
|
+
logger: any;
|
|
101
|
+
catchAsync: (fn: any, modal?: string) => (req: any, res: any, next: any) => void;
|
|
102
|
+
getModals: (req: Express.Request) => Models;
|
|
103
|
+
collections: CollectionItem[];
|
|
104
|
+
customWidgetTypes: {
|
|
105
|
+
label: string;
|
|
106
|
+
value: string;
|
|
107
|
+
imageOnly?: boolean;
|
|
108
|
+
collectionsOnly?: boolean;
|
|
109
|
+
}[];
|
|
110
|
+
redis?: string | RedisConfig;
|
|
111
|
+
languages?: LanguageType[];
|
|
112
|
+
}
|
|
113
|
+
export type EntityType = IWidgetSchema | IItemSchema | IPageSchema | ISrcSetSchema | ITabSchema;
|
|
114
|
+
export type ReturnDocument = EntityType;
|
|
115
|
+
export interface IModel<T> extends Model<T> {
|
|
116
|
+
paginate: (query: FilterQuery<T>, options?: QueryOptions) => Promise<HydratedDocument<ReturnDocument>[]>;
|
|
117
|
+
}
|
|
118
|
+
export type ObjectType = {
|
|
119
|
+
[key: string]: string | number | boolean | null | undefined | string[] | number[] | ObjectType | ObjectType[] | any;
|
|
120
|
+
};
|
|
121
|
+
export interface IDefaultValidations {
|
|
122
|
+
createdBy: string;
|
|
123
|
+
updatedBy: string;
|
|
124
|
+
deletedBy: string;
|
|
125
|
+
deletedAt: string;
|
|
126
|
+
}
|
|
127
|
+
export interface IWidgetDataSchema {
|
|
128
|
+
_id: string;
|
|
129
|
+
code: string;
|
|
130
|
+
collectionName: string;
|
|
131
|
+
collectionItems: string[];
|
|
132
|
+
tabs: {
|
|
133
|
+
name: string;
|
|
134
|
+
collectionItems: string[];
|
|
135
|
+
}[];
|
|
136
|
+
}
|
|
137
|
+
export type IWidgetData = {
|
|
138
|
+
[key: string]: IWidgetDataSchema;
|
|
139
|
+
};
|
|
140
|
+
export type LanguageType = {
|
|
141
|
+
code: string;
|
|
142
|
+
name: string;
|
|
143
|
+
};
|
package/src/types/common.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=common.js.map
|
package/src/types/enums.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export declare enum ItemsType {
|
|
2
|
-
Image = "Image"
|
|
3
|
-
}
|
|
4
|
-
export declare enum WidgetTypes {
|
|
5
|
-
FixedCard = "FixedCard",
|
|
6
|
-
Carousel = "Carousel",
|
|
7
|
-
Tabs = "Tabs",
|
|
8
|
-
Text = "Text",
|
|
9
|
-
HTML = "HTML"
|
|
10
|
-
}
|
|
11
|
-
export declare enum ItemTypes {
|
|
12
|
-
Web = "Web",
|
|
13
|
-
Mobile = "Mobile"
|
|
14
|
-
}
|
|
1
|
+
export declare enum ItemsType {
|
|
2
|
+
Image = "Image"
|
|
3
|
+
}
|
|
4
|
+
export declare enum WidgetTypes {
|
|
5
|
+
FixedCard = "FixedCard",
|
|
6
|
+
Carousel = "Carousel",
|
|
7
|
+
Tabs = "Tabs",
|
|
8
|
+
Text = "Text",
|
|
9
|
+
HTML = "HTML"
|
|
10
|
+
}
|
|
11
|
+
export declare enum ItemTypes {
|
|
12
|
+
Web = "Web",
|
|
13
|
+
Mobile = "Mobile"
|
|
14
|
+
}
|