monkey-front-core 0.0.412 → 0.0.413
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/esm2020/lib/core/interfaces/index.mjs +4 -1
- package/esm2020/lib/core/interfaces/monkeyecx-interface.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-pagination.mjs +2 -0
- package/esm2020/lib/core/interfaces/monkeyecx-store.mjs +2 -0
- package/esm2020/lib/core/model/index.mjs +2 -1
- package/esm2020/lib/core/model/monkeyecx-links.model.mjs +8 -0
- package/esm2020/lib/core/services/index.mjs +5 -4
- package/esm2020/lib/core/services/store/index.mjs +2 -0
- package/esm2020/lib/core/services/store/monkeyecx-store.service.mjs +190 -0
- package/fesm2015/monkey-front-core.mjs +199 -1
- package/fesm2015/monkey-front-core.mjs.map +1 -1
- package/fesm2020/monkey-front-core.mjs +193 -1
- package/fesm2020/monkey-front-core.mjs.map +1 -1
- package/lib/core/interfaces/index.d.ts +3 -0
- package/lib/core/interfaces/monkeyecx-interface.d.ts +9 -0
- package/lib/core/interfaces/monkeyecx-pagination.d.ts +25 -0
- package/lib/core/interfaces/monkeyecx-store.d.ts +31 -0
- package/lib/core/model/index.d.ts +1 -0
- package/lib/core/model/monkeyecx-links.model.d.ts +4 -0
- package/lib/core/services/index.d.ts +4 -3
- package/lib/core/services/store/index.d.ts +1 -0
- package/lib/core/services/store/monkeyecx-store.service.d.ts +51 -0
- package/monkey-front-core-0.0.413.tgz +0 -0
- package/package.json +1 -1
- package/monkey-front-core-0.0.412.tgz +0 -0
|
@@ -9,8 +9,10 @@ export * from './monkeyecx-filter';
|
|
|
9
9
|
export * from './monkeyecx-handled-error-response';
|
|
10
10
|
export * from './monkeyecx-header-credentials';
|
|
11
11
|
export * from './monkeyecx-intercom-options';
|
|
12
|
+
export * from './monkeyecx-interface';
|
|
12
13
|
export * from './monkeyecx-me-credentials';
|
|
13
14
|
export * from './monkeyecx-navigation';
|
|
15
|
+
export * from './monkeyecx-pagination';
|
|
14
16
|
export * from './monkeyecx-program';
|
|
15
17
|
export * from './monkeyecx-releases';
|
|
16
18
|
export * from './monkeyecx-request-in-progress';
|
|
@@ -21,6 +23,7 @@ export * from './monkeyecx-saved-state';
|
|
|
21
23
|
export * from './monkeyecx-scroll-options';
|
|
22
24
|
export * from './monkeyecx-service-credentials';
|
|
23
25
|
export * from './monkeyecx-storage';
|
|
26
|
+
export * from './monkeyecx-store';
|
|
24
27
|
export * from './monkeyecx-support-options';
|
|
25
28
|
export * from './monkeyecx-token-credentials';
|
|
26
29
|
export * from './monkeyecx-translate-options';
|
|
@@ -28,4 +31,4 @@ export * from './request-download';
|
|
|
28
31
|
export * from './request-queue';
|
|
29
32
|
export * from './request-upload';
|
|
30
33
|
export * from './schedules';
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvaW50ZXJmYWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1hdXRoLWNyZWRlbnRpYWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtY29tcGFueSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LWNvbXBhbnktcGVuZGVuY2llcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LWNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LWNvbmZpZy1ib290c3RyYXAnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1jb3VudHJ5LXNlY3VyaXR5JztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtZXJyb3ItcmVzcG9uc2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1maWx0ZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1oYW5kbGVkLWVycm9yLXJlc3BvbnNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtaGVhZGVyLWNyZWRlbnRpYWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtaW50ZXJjb20tb3B0aW9ucyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LWludGVyZmFjZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LW1lLWNyZWRlbnRpYWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtbmF2aWdhdGlvbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXBhZ2luYXRpb24nO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1wcm9ncmFtJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtcmVsZWFzZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1yZXF1ZXN0LWluLXByb2dyZXNzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtcmVxdWVzdC1wYWdlZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXJlc3BvbnNlLWxpbmtzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtcmVzcG9uc2UtcGFnZWQnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1zYXZlZC1zdGF0ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXNjcm9sbC1vcHRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtc2VydmljZS1jcmVkZW50aWFscyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXN0b3JhZ2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1zdG9yZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXN1cHBvcnQtb3B0aW9ucyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXRva2VuLWNyZWRlbnRpYWxzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtdHJhbnNsYXRlLW9wdGlvbnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtZG93bmxvYWQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtcXVldWUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtdXBsb2FkJztcclxuZXhwb3J0ICogZnJvbSAnLi9zY2hlZHVsZXMnO1xyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9pbnRlcmZhY2VzL21vbmtleWVjeC1pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4SW50ZXJmYWNlIHtcclxuICBjcmVhdGVkQXQ6IHN0cmluZztcclxuXHJcbiAgY3JlYXRlVXNlcklkOiBzdHJpbmc7XHJcblxyXG4gIGNyZWF0ZVVzZXJJcDogc3RyaW5nO1xyXG5cclxuICB1cGRhdGVkQXQ6IHN0cmluZztcclxuXHJcbiAgbGFzdFVzZXJJZDogc3RyaW5nO1xyXG5cclxuICBsYXN0VXNlcklwOiBzdHJpbmc7XHJcblxyXG4gIF9saW5rczogYW55O1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXBhZ2luYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvaW50ZXJmYWNlcy9tb25rZXllY3gtcGFnaW5hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGluayB9IGZyb20gJy4uL21vZGVsJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4UGFnaW5hdGlvbiB7XHJcbiAgYWN0aW9uOiAnbmV4dCc7XHJcbn1cclxuXHJcbmludGVyZmFjZSBNb25rZXlFY3hUeXBlZExpbmsgZXh0ZW5kcyBMaW5rIHtcclxuICB1cmw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hQYWdpbmF0aW9uRGF0YSB7XHJcbiAgW2tleTogc3RyaW5nXTogTW9ua2V5RWN4VHlwZWRMaW5rO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeFBhZ2luYXRpb25Tb3J0RmllbGQge1xyXG4gIHR5cGU/OiBzdHJpbmc7XHJcbiAgZm9ybWF0Pzogc3RyaW5nO1xyXG4gIGRpcmVjdGlvbjogJ2Rlc2MnIHwgJ2FzYyc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4UGFnaW5hdGlvblNvcnREYXRhIHtcclxuICBba2V5OiBzdHJpbmddOiBNb25rZXlFY3hQYWdpbmF0aW9uU29ydEZpZWxkO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeFBhZ2Uge1xyXG4gIHNpemU6IG51bWJlcjtcclxuICB0b3RhbEVsZW1lbnRzOiBudW1iZXI7XHJcbiAgdG90YWxQYWdlczogbnVtYmVyO1xyXG4gIG51bWJlcjogbnVtYmVyO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL2ludGVyZmFjZXMvbW9ua2V5ZWN4LXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IExpbmsgfSBmcm9tICcuLi9tb2RlbCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeENvbmZpZ1N0b3JlIHtcclxuICBhY3Rpb25zPzoge307XHJcbiAgc2VsZWN0b3JzPzoge307XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29sbGVjdGlvblN0b3JlIGV4dGVuZHMgTW9ua2V5RWN4Q29uZmlnU3RvcmUge1xyXG4gIGFjdGlvbnM6IHtcclxuICAgIHVwZGF0ZUNvbnRyb2w6IEFjdGlvbjtcclxuICAgIHVwZGF0ZUxpbmtzOiBBY3Rpb247XHJcbiAgICB1cGRhdGVQYWdlOiBBY3Rpb247XHJcbiAgICB1cGRhdGVBbGw6IEFjdGlvbjtcclxuICAgIGNsZWFyOiBBY3Rpb247XHJcbiAgfTtcclxuICBzZWxlY3RvcnM6IHtcclxuICAgIHBhZ2luYXRpb25IYXNEaWZmZXJlbmNlOiBGdW5jdGlvbjtcclxuICAgIHNlbGVjdFBhZ2luYXRpb246IEZ1bmN0aW9uO1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4RW50aXR5U3RvcmUgZXh0ZW5kcyBNb25rZXlFY3hDb25maWdTdG9yZSB7XHJcbiAgYWN0aW9uczoge1xyXG4gICAgdXBkYXRlQ29udHJvbDogQWN0aW9uO1xyXG4gICAgdXBkYXRlT25lOiBBY3Rpb247XHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb250cm9sU3RvcmUge1xyXG4gIFtrZXk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hMaW5rcyB7XHJcbiAgW2tleTogc3RyaW5nXTogTGluaztcclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './monkeyecx-model';
|
|
2
|
-
|
|
2
|
+
export * from './monkeyecx-links.model';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvbW9kZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtbW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vbmtleWVjeC1saW5rcy5tb2RlbCc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { MonkeyEcxModel } from './monkeyecx-model';
|
|
2
|
+
export class MonkeyEcxLinksModel extends MonkeyEcxModel {
|
|
3
|
+
constructor(data) {
|
|
4
|
+
super();
|
|
5
|
+
this._links = data?._links;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWxpbmtzLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL21vZGVsL21vbmtleWVjeC1saW5rcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGNBQWM7SUFDckQsWUFBWSxJQUFVO1FBQ3BCLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQzdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vbmtleUVjeE1vZGVsIH0gZnJvbSAnLi9tb25rZXllY3gtbW9kZWwnO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1vbmtleUVjeExpbmtzTW9kZWwgZXh0ZW5kcyBNb25rZXlFY3hNb2RlbCB7XHJcbiAgY29uc3RydWN0b3IoZGF0YT86IGFueSkge1xyXG4gICAgc3VwZXIoKTtcclxuXHJcbiAgICB0aGlzLl9saW5rcyA9IGRhdGE/Ll9saW5rcztcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -3,6 +3,7 @@ export * from './auth';
|
|
|
3
3
|
export * from './commons/monkeyecx-commons.service';
|
|
4
4
|
export * from './config/monkeyecx-config.module';
|
|
5
5
|
export * from './config/monkeyecx-config.service';
|
|
6
|
+
export * from './config/monkeyecx-currency-config.service';
|
|
6
7
|
export * from './config/monkeyecx-error-config.service';
|
|
7
8
|
export * from './config/monkeyecx-feature-toggle.service';
|
|
8
9
|
export * from './config/monkeyecx-i18n-config.service';
|
|
@@ -10,16 +11,16 @@ export * from './config/monkeyecx-logs-config.service';
|
|
|
10
11
|
export * from './config/monkeyecx-maintenance-config.service';
|
|
11
12
|
export * from './config/monkeyecx-security-console-config.service';
|
|
12
13
|
export * from './config/monkeyecx-service-worker-config.service';
|
|
13
|
-
export * from './config/monkeyecx-currency-config.service';
|
|
14
14
|
export * from './error';
|
|
15
15
|
export * from './logged';
|
|
16
|
-
export * from './pagination';
|
|
17
|
-
export * from './monkeyecx-service.service';
|
|
18
16
|
export * from './monkeyecx-handling.service';
|
|
17
|
+
export * from './monkeyecx-service.service';
|
|
18
|
+
export * from './pagination';
|
|
19
19
|
export * from './request-download';
|
|
20
20
|
export * from './request-paged';
|
|
21
21
|
export * from './request-queue';
|
|
22
22
|
export * from './routes';
|
|
23
23
|
export * from './schedules';
|
|
24
24
|
export * from './storage';
|
|
25
|
-
|
|
25
|
+
export * from './store';
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWxlcnRzJztcclxuZXhwb3J0ICogZnJvbSAnLi9hdXRoJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21tb25zL21vbmtleWVjeC1jb21tb25zLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9tb25rZXllY3gtY29uZmlnLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL21vbmtleWVjeC1jb25maWcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL21vbmtleWVjeC1jdXJyZW5jeS1jb25maWcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL21vbmtleWVjeC1lcnJvci1jb25maWcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL21vbmtleWVjeC1mZWF0dXJlLXRvZ2dsZS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb25maWcvbW9ua2V5ZWN4LWkxOG4tY29uZmlnLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZy9tb25rZXllY3gtbG9ncy1jb25maWcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL21vbmtleWVjeC1tYWludGVuYW5jZS1jb25maWcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnL21vbmtleWVjeC1zZWN1cml0eS1jb25zb2xlLWNvbmZpZy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb25maWcvbW9ua2V5ZWN4LXNlcnZpY2Utd29ya2VyLWNvbmZpZy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9lcnJvcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbG9nZ2VkJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25rZXllY3gtaGFuZGxpbmcuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXNlcnZpY2Uuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC1kb3dubG9hZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC1wYWdlZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC1xdWV1ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcm91dGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9zY2hlZHVsZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0b3JhZ2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0b3JlJztcclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './monkeyecx-store.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvc3RvcmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9ua2V5ZWN4LXN0b3JlLnNlcnZpY2UnO1xyXG4iXX0=
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { take } from 'rxjs/operators';
|
|
3
|
+
import { MonkeyEcxCoreService } from '../../decorators';
|
|
4
|
+
import { MonkeyEcxLinksModel } from '../../model';
|
|
5
|
+
import { MonkeyEcxCommonsService } from '../commons';
|
|
6
|
+
/**
|
|
7
|
+
* Classe genérica que recebe duas interfaces como tipos genéricos.
|
|
8
|
+
*
|
|
9
|
+
* @typeparam T deve ser a mesma interface utilizada na Entity da Store
|
|
10
|
+
* @typeparam K faz referência ao tipo de configuração.
|
|
11
|
+
*
|
|
12
|
+
* @description interfaces de configuração:
|
|
13
|
+
* ```
|
|
14
|
+
* MonkeyEcxCollectionStore e MonkeyEcxEntityStore
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export class MonkeyEcxCommonsStoreService extends MonkeyEcxCommonsService {
|
|
18
|
+
constructor(monkeyecxService, tokenStorage, store, config) {
|
|
19
|
+
super(monkeyecxService, tokenStorage);
|
|
20
|
+
this.store = store;
|
|
21
|
+
const { actions, selectors } = config;
|
|
22
|
+
this.action = actions;
|
|
23
|
+
this.selector = selectors;
|
|
24
|
+
}
|
|
25
|
+
handleResponseData(resp, identifier, updatePagination = true) {
|
|
26
|
+
try {
|
|
27
|
+
let data;
|
|
28
|
+
if (resp?._embedded) {
|
|
29
|
+
const { _embedded, _links, page } = resp;
|
|
30
|
+
const key = Object.keys(_embedded)[0];
|
|
31
|
+
data = _embedded[key];
|
|
32
|
+
if (updatePagination) {
|
|
33
|
+
this.updateLinks?.(_links, identifier);
|
|
34
|
+
}
|
|
35
|
+
this.updatePage?.(page, identifier);
|
|
36
|
+
}
|
|
37
|
+
else
|
|
38
|
+
data = resp;
|
|
39
|
+
this.update?.(data, identifier);
|
|
40
|
+
}
|
|
41
|
+
catch (e) {
|
|
42
|
+
throw new Error(`MECX Core - Method handleResponseData -> ${e}`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
async paginationHasDifference(url, identifier) {
|
|
46
|
+
try {
|
|
47
|
+
const { action, store, selector } = this;
|
|
48
|
+
const { hasDifference, hasField } = (await store
|
|
49
|
+
.select(selector.paginationHasDifference({ identifier, url }))
|
|
50
|
+
.pipe(take(1))
|
|
51
|
+
.toPromise());
|
|
52
|
+
if (hasDifference && hasField) {
|
|
53
|
+
store.dispatch(action.clear({ identifier }));
|
|
54
|
+
}
|
|
55
|
+
return { hasDifference };
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
throw new Error(`MECX Core - Method paginationHasDifference -> ${e}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
updateControl(ctrl) {
|
|
62
|
+
try {
|
|
63
|
+
this.store.dispatch(this.action.updateControl({
|
|
64
|
+
ctrl
|
|
65
|
+
}));
|
|
66
|
+
}
|
|
67
|
+
catch (e) {
|
|
68
|
+
throw new Error(`MECX Core - Method updateControl -> ${e}`);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
mappingData(args, identifier) {
|
|
72
|
+
try {
|
|
73
|
+
const handle = (item) => {
|
|
74
|
+
let id = '';
|
|
75
|
+
const { href } = new MonkeyEcxLinksModel(item)?.getAction('self') || {
|
|
76
|
+
href: ''
|
|
77
|
+
};
|
|
78
|
+
if (href) {
|
|
79
|
+
id = href.split('/').pop() || '';
|
|
80
|
+
}
|
|
81
|
+
return {
|
|
82
|
+
...item,
|
|
83
|
+
identifier,
|
|
84
|
+
id
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
if (args instanceof Array) {
|
|
88
|
+
return args.map((item) => {
|
|
89
|
+
return handle(item);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return handle(args);
|
|
93
|
+
}
|
|
94
|
+
catch (e) {
|
|
95
|
+
throw new Error(`MECX Core - Method mappingData -> ${e}`);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
update(args, identifier) {
|
|
99
|
+
try {
|
|
100
|
+
let typeAction = 'updateOne';
|
|
101
|
+
if (args instanceof Array) {
|
|
102
|
+
typeAction = 'updateAll';
|
|
103
|
+
}
|
|
104
|
+
this.store.dispatch(this.action[typeAction]({
|
|
105
|
+
data: this.mappingData(args, identifier)
|
|
106
|
+
}));
|
|
107
|
+
}
|
|
108
|
+
catch (e) {
|
|
109
|
+
throw new Error(`MECX Core - Method update -> ${e}`);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
updatePage(args, identifier) {
|
|
113
|
+
try {
|
|
114
|
+
this.store.dispatch(this.action.updatePage({
|
|
115
|
+
data: {
|
|
116
|
+
[identifier]: args
|
|
117
|
+
}
|
|
118
|
+
}));
|
|
119
|
+
}
|
|
120
|
+
catch (e) {
|
|
121
|
+
throw new Error(`MECX Core - Method updatePage -> ${e}`);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
updateLinks(args, identifier) {
|
|
125
|
+
try {
|
|
126
|
+
this.store.dispatch(this.action.updateLinks({
|
|
127
|
+
data: {
|
|
128
|
+
[identifier]: args
|
|
129
|
+
}
|
|
130
|
+
}));
|
|
131
|
+
}
|
|
132
|
+
catch (e) {
|
|
133
|
+
throw new Error(`MECX Core - Method updateLinks -> ${e}`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
async loadData(url, identifier, updatePagination = true) {
|
|
137
|
+
this.updateControl({ isLoading: true });
|
|
138
|
+
try {
|
|
139
|
+
const data = await this.monkeyecxService?.get(url).toPromise();
|
|
140
|
+
this.handleResponseData(data, identifier, updatePagination);
|
|
141
|
+
}
|
|
142
|
+
catch (e) {
|
|
143
|
+
throw new Error(`${e?.message}`);
|
|
144
|
+
}
|
|
145
|
+
this.updateControl({ isLoading: false });
|
|
146
|
+
}
|
|
147
|
+
async loadPageData(pagination, identifier) {
|
|
148
|
+
const { store, selector } = this;
|
|
149
|
+
const data = await store
|
|
150
|
+
.select(selector.selectPagination({ identifier }))
|
|
151
|
+
.pipe(take(1))
|
|
152
|
+
.toPromise();
|
|
153
|
+
const { action } = pagination;
|
|
154
|
+
const { href } = new MonkeyEcxLinksModel({ _links: data }).getAction(action) || {
|
|
155
|
+
href: ''
|
|
156
|
+
};
|
|
157
|
+
if (href) {
|
|
158
|
+
this.loadData(href, identifier);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* @description Neste método precisamos incluir a lógica para conferir se precisa limpar a
|
|
163
|
+
* entidade ou não
|
|
164
|
+
* E depois precisa invocar o método loadData
|
|
165
|
+
* @param (url, identifier) ou de acordo com a action criada
|
|
166
|
+
* @example
|
|
167
|
+
* ```
|
|
168
|
+
* const hasDifference = .....
|
|
169
|
+
* if(hasDifference) {
|
|
170
|
+
* store.dispatch(clear)
|
|
171
|
+
* }
|
|
172
|
+
*
|
|
173
|
+
* this.loadData(...)
|
|
174
|
+
* ```
|
|
175
|
+
*/
|
|
176
|
+
load(args) {
|
|
177
|
+
throw new Error('MECX Core - Method load not implemented.');
|
|
178
|
+
}
|
|
179
|
+
loadPage(args) {
|
|
180
|
+
throw new Error('MECX Core - Method loadPage not implemented.');
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
__decorate([
|
|
184
|
+
MonkeyEcxCoreService({
|
|
185
|
+
requestInProgress: {
|
|
186
|
+
showProgress: true
|
|
187
|
+
}
|
|
188
|
+
})
|
|
189
|
+
], MonkeyEcxCommonsStoreService.prototype, "loadData", null);
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LXN0b3JlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvc2VydmljZXMvc3RvcmUvbW9ua2V5ZWN4LXN0b3JlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV0QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBSXJEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLE9BQWdCLDRCQUdwQixTQUFRLHVCQUF1QjtJQUsvQixZQUNFLGdCQUFrQyxFQUNsQyxZQUEwQyxFQUNuQyxLQUFZLEVBQ25CLE1BQVM7UUFFVCxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFIL0IsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUluQixNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztRQUV0QyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQztJQUM1QixDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBUyxFQUFFLFVBQWtCLEVBQUUsZ0JBQWdCLEdBQUcsSUFBSTtRQUMvRSxJQUFJO1lBQ0YsSUFBSSxJQUFPLENBQUM7WUFFWixJQUFJLElBQUksRUFBRSxTQUFTLEVBQUU7Z0JBQ25CLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztnQkFDekMsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLElB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LElBQUksRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJO1lBQzlFLElBQUksRUFBRSxFQUFFO1NBQ1QsQ0FBQztRQUVGLElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7Ozs7O09BY0c7SUFDSSxJQUFJLENBQUUsSUFBUztRQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVNLFFBQVEsQ0FBRSxJQUFTO1FBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBQ0Y7QUFwREM7SUFMQyxvQkFBb0IsQ0FBQztRQUNwQixpQkFBaUIsRUFBRTtZQUNqQixZQUFZLEVBQUUsSUFBSTtTQUNuQjtLQUNGLENBQUM7NERBWUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNb25rZXlFY3hDb25maWdTdG9yZSwgTW9ua2V5RWN4Q29udHJvbFN0b3JlLCBNb25rZXlFY3hMaW5rcyB9IGZyb20gJy4uLy4uJztcbmltcG9ydCB7IE1vbmtleUVjeENvcmVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBNb25rZXlFY3hQYWdlLCBNb25rZXlFY3hQYWdpbmF0aW9uIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBNb25rZXlFY3hMaW5rc01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWwnO1xuaW1wb3J0IHsgTW9ua2V5RWN4Q29tbW9uc1NlcnZpY2UgfSBmcm9tICcuLi9jb21tb25zJztcbmltcG9ydCB7IE1vbmtleUVjeFNlcnZpY2UgfSBmcm9tICcuLi9tb25rZXllY3gtc2VydmljZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeFRva2VuU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zdG9yYWdlJztcblxuLyoqXG4gKiBDbGFzc2UgZ2Vuw6lyaWNhIHF1ZSByZWNlYmUgZHVhcyBpbnRlcmZhY2VzIGNvbW8gdGlwb3MgZ2Vuw6lyaWNvcy5cbiAqXG4gKiBAdHlwZXBhcmFtIFQgZGV2ZSBzZXIgYSBtZXNtYSBpbnRlcmZhY2UgdXRpbGl6YWRhIG5hIEVudGl0eSBkYSBTdG9yZVxuICogQHR5cGVwYXJhbSBLIGZheiByZWZlcsOqbmNpYSBhbyB0aXBvIGRlIGNvbmZpZ3VyYcOnw6NvLlxuICpcbiAqIEBkZXNjcmlwdGlvbiBpbnRlcmZhY2VzIGRlIGNvbmZpZ3VyYcOnw6NvOlxuICogYGBgXG4gKiBNb25rZXlFY3hDb2xsZWN0aW9uU3RvcmUgZSBNb25rZXlFY3hFbnRpdHlTdG9yZVxuICogYGBgXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNb25rZXlFY3hDb21tb25zU3RvcmVTZXJ2aWNlPFxuICBULFxuICBLIGV4dGVuZHMgTW9ua2V5RWN4Q29uZmlnU3RvcmVcbj4gZXh0ZW5kcyBNb25rZXlFY3hDb21tb25zU2VydmljZSB7XG4gIHByaXZhdGUgYWN0aW9uOiBhbnk7XG5cbiAgcHJpdmF0ZSBzZWxlY3RvcjogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIG1vbmtleWVjeFNlcnZpY2U6IE1vbmtleUVjeFNlcnZpY2UsXG4gICAgdG9rZW5TdG9yYWdlOiBNb25rZXlFY3hUb2tlblN0b3JhZ2VTZXJ2aWNlLFxuICAgIHB1YmxpYyBzdG9yZTogU3RvcmUsXG4gICAgY29uZmlnOiBLXG4gICkge1xuICAgIHN1cGVyKG1vbmtleWVjeFNlcnZpY2UsIHRva2VuU3RvcmFnZSk7XG4gICAgY29uc3QgeyBhY3Rpb25zLCBzZWxlY3RvcnMgfSA9IGNvbmZpZztcblxuICAgIHRoaXMuYWN0aW9uID0gYWN0aW9ucztcbiAgICB0aGlzLnNlbGVjdG9yID0gc2VsZWN0b3JzO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVSZXNwb25zZURhdGEocmVzcDogYW55LCBpZGVudGlmaWVyOiBzdHJpbmcsIHVwZGF0ZVBhZ2luYXRpb24gPSB0cnVlKSB7XG4gICAgdHJ5IHtcbiAgICAgIGxldCBkYXRhOiBUO1xuXG4gICAgICBpZiAocmVzcD8uX2VtYmVkZGVkKSB7XG4gICAgICAgIGNvbnN0IHsgX2VtYmVkZGVkLCBfbGlua3MsIHBhZ2UgfSA9IHJlc3A7XG4gICAgICAgIGNvbnN0IGtleSA9IE9iamVjdC5rZXlzKF9lbWJlZGRlZClbMF07XG5cbiAgICAgICAgZGF0YSA9IF9lbWJlZGRlZFtrZXldO1xuXG4gICAgICAgIGlmICh1cGRhdGVQYWdpbmF0aW9uKSB7XG4gICAgICAgICAgdGhpcy51cGRhdGVMaW5rcz8uKF9saW5rcywgaWRlbnRpZmllcik7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnVwZGF0ZVBhZ2U/LihwYWdlLCBpZGVudGlmaWVyKTtcbiAgICAgIH0gZWxzZSBkYXRhID0gcmVzcDtcblxuICAgICAgdGhpcy51cGRhdGU/LihkYXRhLCBpZGVudGlmaWVyKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1FQ1ggQ29yZSAtIE1ldGhvZCBoYW5kbGVSZXNwb25zZURhdGEgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBwYWdpbmF0aW9uSGFzRGlmZmVyZW5jZSh1cmw6IHN0cmluZywgaWRlbnRpZmllcjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgYWN0aW9uLCBzdG9yZSwgc2VsZWN0b3IgfSA9IHRoaXM7XG5cbiAgICAgIGNvbnN0IHsgaGFzRGlmZmVyZW5jZSwgaGFzRmllbGQgfSA9IDxhbnk+KFxuICAgICAgICBhd2FpdCBzdG9yZVxuICAgICAgICAgIC5zZWxlY3Qoc2VsZWN0b3IucGFnaW5hdGlvbkhhc0RpZmZlcmVuY2UoeyBpZGVudGlmaWVyLCB1cmwgfSkpXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAudG9Qcm9taXNlKClcbiAgICAgICk7XG5cbiAgICAgIGlmIChoYXNEaWZmZXJlbmNlICYmIGhhc0ZpZWxkKSB7XG4gICAgICAgIHN0b3JlLmRpc3BhdGNoKGFjdGlvbi5jbGVhcih7IGlkZW50aWZpZXIgfSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4geyBoYXNEaWZmZXJlbmNlIH07XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNRUNYIENvcmUgLSBNZXRob2QgcGFnaW5hdGlvbkhhc0RpZmZlcmVuY2UgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVDb250cm9sKGN0cmw6IE1vbmtleUVjeENvbnRyb2xTdG9yZSkge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICB0aGlzLmFjdGlvbi51cGRhdGVDb250cm9sKHtcbiAgICAgICAgICBjdHJsXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTUVDWCBDb3JlIC0gTWV0aG9kIHVwZGF0ZUNvbnRyb2wgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBtYXBwaW5nRGF0YShhcmdzOiBUIHwgVFtdLCBpZGVudGlmaWVyOiBzdHJpbmcpOiBUIHwgVFtdIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgaGFuZGxlID0gKGl0ZW06IFQpID0+IHtcbiAgICAgICAgbGV0IGlkID0gJyc7XG4gICAgICAgIGNvbnN0IHsgaHJlZiB9ID0gbmV3IE1vbmtleUVjeExpbmtzTW9kZWwoaXRlbSk/LmdldEFjdGlvbignc2VsZicpIHx8IHtcbiAgICAgICAgICBocmVmOiAnJ1xuICAgICAgICB9O1xuXG4gICAgICAgIGlmIChocmVmKSB7XG4gICAgICAgICAgaWQgPSBocmVmLnNwbGl0KCcvJykucG9wKCkgfHwgJyc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgaWRlbnRpZmllcixcbiAgICAgICAgICBpZFxuICAgICAgICB9O1xuICAgICAgfTtcblxuICAgICAgaWYgKGFyZ3MgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgICByZXR1cm4gYXJncy5tYXAoKGl0ZW06IFQpID0+IHtcbiAgICAgICAgICByZXR1cm4gaGFuZGxlKGl0ZW0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGhhbmRsZShhcmdzKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1FQ1ggQ29yZSAtIE1ldGhvZCBtYXBwaW5nRGF0YSAtPiAke2V9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZT8oYXJnczogVCB8IFRbXSwgaWRlbnRpZmllcjogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIGxldCB0eXBlQWN0aW9uID0gJ3VwZGF0ZU9uZSc7XG5cbiAgICAgIGlmIChhcmdzIGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAgICAgdHlwZUFjdGlvbiA9ICd1cGRhdGVBbGwnO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICB0aGlzLmFjdGlvblt0eXBlQWN0aW9uXSh7XG4gICAgICAgICAgZGF0YTogdGhpcy5tYXBwaW5nRGF0YShhcmdzLCBpZGVudGlmaWVyKVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1FQ1ggQ29yZSAtIE1ldGhvZCB1cGRhdGUgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVQYWdlPyhhcmdzOiBNb25rZXlFY3hQYWdlLCBpZGVudGlmaWVyOiBzdHJpbmcpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgdGhpcy5hY3Rpb24udXBkYXRlUGFnZSh7XG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgW2lkZW50aWZpZXJdOiBhcmdzXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1FQ1ggQ29yZSAtIE1ldGhvZCB1cGRhdGVQYWdlIC0+ICR7ZX1gKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgdXBkYXRlTGlua3M/KGFyZ3M6IE1vbmtleUVjeExpbmtzLCBpZGVudGlmaWVyOiBzdHJpbmcpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgdGhpcy5hY3Rpb24udXBkYXRlTGlua3Moe1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIFtpZGVudGlmaWVyXTogYXJnc1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNRUNYIENvcmUgLSBNZXRob2QgdXBkYXRlTGlua3MgLT4gJHtlfWApO1xuICAgIH1cbiAgfVxuXG4gIEBNb25rZXlFY3hDb3JlU2VydmljZSh7XG4gICAgcmVxdWVzdEluUHJvZ3Jlc3M6IHtcbiAgICAgIHNob3dQcm9ncmVzczogdHJ1ZVxuICAgIH1cbiAgfSlcbiAgcHJvdGVjdGVkIGFzeW5jIGxvYWREYXRhKHVybDogc3RyaW5nLCBpZGVudGlmaWVyOiBzdHJpbmcsIHVwZGF0ZVBhZ2luYXRpb24gPSB0cnVlKSB7XG4gICAgdGhpcy51cGRhdGVDb250cm9sKHsgaXNMb2FkaW5nOiB0cnVlIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCB0aGlzLm1vbmtleWVjeFNlcnZpY2U/LmdldDxhbnk+KHVybCkudG9Qcm9taXNlKCk7XG4gICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlRGF0YShkYXRhLCBpZGVudGlmaWVyLCB1cGRhdGVQYWdpbmF0aW9uKTtcbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHtlPy5tZXNzYWdlfWApO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlQ29udHJvbCh7IGlzTG9hZGluZzogZmFsc2UgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgbG9hZFBhZ2VEYXRhKHBhZ2luYXRpb246IE1vbmtleUVjeFBhZ2luYXRpb24sIGlkZW50aWZpZXI6IHN0cmluZykge1xuICAgIGNvbnN0IHsgc3RvcmUsIHNlbGVjdG9yIH0gPSB0aGlzO1xuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBzdG9yZVxuICAgICAgLnNlbGVjdChzZWxlY3Rvci5zZWxlY3RQYWdpbmF0aW9uKHsgaWRlbnRpZmllciB9KSlcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAudG9Qcm9taXNlKCk7XG5cbiAgICBjb25zdCB7IGFjdGlvbiB9ID0gcGFnaW5hdGlvbjtcbiAgICBjb25zdCB7IGhyZWYgfSA9IG5ldyBNb25rZXlFY3hMaW5rc01vZGVsKHsgX2xpbmtzOiBkYXRhIH0pLmdldEFjdGlvbihhY3Rpb24pIHx8IHtcbiAgICAgIGhyZWY6ICcnXG4gICAgfTtcblxuICAgIGlmIChocmVmKSB7XG4gICAgICB0aGlzLmxvYWREYXRhKGhyZWYsIGlkZW50aWZpZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb24gTmVzdGUgbcOpdG9kbyBwcmVjaXNhbW9zIGluY2x1aXIgYSBsw7NnaWNhIHBhcmEgY29uZmVyaXIgc2UgcHJlY2lzYSBsaW1wYXIgYVxuICAgKiBlbnRpZGFkZSBvdSBuw6NvXG4gICAqIEUgZGVwb2lzIHByZWNpc2EgaW52b2NhciBvIG3DqXRvZG8gbG9hZERhdGFcbiAgICogQHBhcmFtICh1cmwsIGlkZW50aWZpZXIpIG91IGRlIGFjb3JkbyBjb20gYSBhY3Rpb24gY3JpYWRhXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYFxuICAgKiBjb25zdCBoYXNEaWZmZXJlbmNlID0gLi4uLi5cbiAgICogaWYoaGFzRGlmZmVyZW5jZSkge1xuICAgKiAgICBzdG9yZS5kaXNwYXRjaChjbGVhcilcbiAgICogfVxuICAgKlxuICAgKiB0aGlzLmxvYWREYXRhKC4uLilcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgbG9hZD8oYXJnczogYW55KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNRUNYIENvcmUgLSBNZXRob2QgbG9hZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICBwdWJsaWMgbG9hZFBhZ2U/KGFyZ3M6IGFueSkge1xuICAgIHRocm93IG5ldyBFcnJvcignTUVDWCBDb3JlIC0gTWV0aG9kIGxvYWRQYWdlIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxufVxuIl19
|
|
@@ -2679,6 +2679,13 @@ class MonkeyEcxModel {
|
|
|
2679
2679
|
}
|
|
2680
2680
|
}
|
|
2681
2681
|
|
|
2682
|
+
class MonkeyEcxLinksModel extends MonkeyEcxModel {
|
|
2683
|
+
constructor(data) {
|
|
2684
|
+
super();
|
|
2685
|
+
this._links = data === null || data === void 0 ? void 0 : data._links;
|
|
2686
|
+
}
|
|
2687
|
+
}
|
|
2688
|
+
|
|
2682
2689
|
class MonkeyEcxRequestPagedHandling {
|
|
2683
2690
|
constructor(url, pagedParams, links, samePage = false) {
|
|
2684
2691
|
this.samePage = false;
|
|
@@ -5204,6 +5211,197 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
5204
5211
|
}]
|
|
5205
5212
|
}], ctorParameters: function () { return [{ type: MonkeyEcxService }, { type: MonkeyEcxLoggedHandlingService }]; }, propDecorators: { doCall: [], doGenericCall: [] } });
|
|
5206
5213
|
|
|
5214
|
+
/**
|
|
5215
|
+
* Classe genérica que recebe duas interfaces como tipos genéricos.
|
|
5216
|
+
*
|
|
5217
|
+
* @typeparam T deve ser a mesma interface utilizada na Entity da Store
|
|
5218
|
+
* @typeparam K faz referência ao tipo de configuração.
|
|
5219
|
+
*
|
|
5220
|
+
* @description interfaces de configuração:
|
|
5221
|
+
* ```
|
|
5222
|
+
* MonkeyEcxCollectionStore e MonkeyEcxEntityStore
|
|
5223
|
+
* ```
|
|
5224
|
+
*/
|
|
5225
|
+
class MonkeyEcxCommonsStoreService extends MonkeyEcxCommonsService {
|
|
5226
|
+
constructor(monkeyecxService, tokenStorage, store, config) {
|
|
5227
|
+
super(monkeyecxService, tokenStorage);
|
|
5228
|
+
this.store = store;
|
|
5229
|
+
const { actions, selectors } = config;
|
|
5230
|
+
this.action = actions;
|
|
5231
|
+
this.selector = selectors;
|
|
5232
|
+
}
|
|
5233
|
+
handleResponseData(resp, identifier, updatePagination = true) {
|
|
5234
|
+
var _a, _b, _c;
|
|
5235
|
+
try {
|
|
5236
|
+
let data;
|
|
5237
|
+
if (resp === null || resp === void 0 ? void 0 : resp._embedded) {
|
|
5238
|
+
const { _embedded, _links, page } = resp;
|
|
5239
|
+
const key = Object.keys(_embedded)[0];
|
|
5240
|
+
data = _embedded[key];
|
|
5241
|
+
if (updatePagination) {
|
|
5242
|
+
(_a = this.updateLinks) === null || _a === void 0 ? void 0 : _a.call(this, _links, identifier);
|
|
5243
|
+
}
|
|
5244
|
+
(_b = this.updatePage) === null || _b === void 0 ? void 0 : _b.call(this, page, identifier);
|
|
5245
|
+
}
|
|
5246
|
+
else
|
|
5247
|
+
data = resp;
|
|
5248
|
+
(_c = this.update) === null || _c === void 0 ? void 0 : _c.call(this, data, identifier);
|
|
5249
|
+
}
|
|
5250
|
+
catch (e) {
|
|
5251
|
+
throw new Error(`MECX Core - Method handleResponseData -> ${e}`);
|
|
5252
|
+
}
|
|
5253
|
+
}
|
|
5254
|
+
paginationHasDifference(url, identifier) {
|
|
5255
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
5256
|
+
try {
|
|
5257
|
+
const { action, store, selector } = this;
|
|
5258
|
+
const { hasDifference, hasField } = (yield store
|
|
5259
|
+
.select(selector.paginationHasDifference({ identifier, url }))
|
|
5260
|
+
.pipe(take(1))
|
|
5261
|
+
.toPromise());
|
|
5262
|
+
if (hasDifference && hasField) {
|
|
5263
|
+
store.dispatch(action.clear({ identifier }));
|
|
5264
|
+
}
|
|
5265
|
+
return { hasDifference };
|
|
5266
|
+
}
|
|
5267
|
+
catch (e) {
|
|
5268
|
+
throw new Error(`MECX Core - Method paginationHasDifference -> ${e}`);
|
|
5269
|
+
}
|
|
5270
|
+
});
|
|
5271
|
+
}
|
|
5272
|
+
updateControl(ctrl) {
|
|
5273
|
+
try {
|
|
5274
|
+
this.store.dispatch(this.action.updateControl({
|
|
5275
|
+
ctrl
|
|
5276
|
+
}));
|
|
5277
|
+
}
|
|
5278
|
+
catch (e) {
|
|
5279
|
+
throw new Error(`MECX Core - Method updateControl -> ${e}`);
|
|
5280
|
+
}
|
|
5281
|
+
}
|
|
5282
|
+
mappingData(args, identifier) {
|
|
5283
|
+
try {
|
|
5284
|
+
const handle = (item) => {
|
|
5285
|
+
var _a;
|
|
5286
|
+
let id = '';
|
|
5287
|
+
const { href } = ((_a = new MonkeyEcxLinksModel(item)) === null || _a === void 0 ? void 0 : _a.getAction('self')) || {
|
|
5288
|
+
href: ''
|
|
5289
|
+
};
|
|
5290
|
+
if (href) {
|
|
5291
|
+
id = href.split('/').pop() || '';
|
|
5292
|
+
}
|
|
5293
|
+
return Object.assign(Object.assign({}, item), { identifier,
|
|
5294
|
+
id });
|
|
5295
|
+
};
|
|
5296
|
+
if (args instanceof Array) {
|
|
5297
|
+
return args.map((item) => {
|
|
5298
|
+
return handle(item);
|
|
5299
|
+
});
|
|
5300
|
+
}
|
|
5301
|
+
return handle(args);
|
|
5302
|
+
}
|
|
5303
|
+
catch (e) {
|
|
5304
|
+
throw new Error(`MECX Core - Method mappingData -> ${e}`);
|
|
5305
|
+
}
|
|
5306
|
+
}
|
|
5307
|
+
update(args, identifier) {
|
|
5308
|
+
try {
|
|
5309
|
+
let typeAction = 'updateOne';
|
|
5310
|
+
if (args instanceof Array) {
|
|
5311
|
+
typeAction = 'updateAll';
|
|
5312
|
+
}
|
|
5313
|
+
this.store.dispatch(this.action[typeAction]({
|
|
5314
|
+
data: this.mappingData(args, identifier)
|
|
5315
|
+
}));
|
|
5316
|
+
}
|
|
5317
|
+
catch (e) {
|
|
5318
|
+
throw new Error(`MECX Core - Method update -> ${e}`);
|
|
5319
|
+
}
|
|
5320
|
+
}
|
|
5321
|
+
updatePage(args, identifier) {
|
|
5322
|
+
try {
|
|
5323
|
+
this.store.dispatch(this.action.updatePage({
|
|
5324
|
+
data: {
|
|
5325
|
+
[identifier]: args
|
|
5326
|
+
}
|
|
5327
|
+
}));
|
|
5328
|
+
}
|
|
5329
|
+
catch (e) {
|
|
5330
|
+
throw new Error(`MECX Core - Method updatePage -> ${e}`);
|
|
5331
|
+
}
|
|
5332
|
+
}
|
|
5333
|
+
updateLinks(args, identifier) {
|
|
5334
|
+
try {
|
|
5335
|
+
this.store.dispatch(this.action.updateLinks({
|
|
5336
|
+
data: {
|
|
5337
|
+
[identifier]: args
|
|
5338
|
+
}
|
|
5339
|
+
}));
|
|
5340
|
+
}
|
|
5341
|
+
catch (e) {
|
|
5342
|
+
throw new Error(`MECX Core - Method updateLinks -> ${e}`);
|
|
5343
|
+
}
|
|
5344
|
+
}
|
|
5345
|
+
loadData(url, identifier, updatePagination = true) {
|
|
5346
|
+
var _a;
|
|
5347
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
5348
|
+
this.updateControl({ isLoading: true });
|
|
5349
|
+
try {
|
|
5350
|
+
const data = yield ((_a = this.monkeyecxService) === null || _a === void 0 ? void 0 : _a.get(url).toPromise());
|
|
5351
|
+
this.handleResponseData(data, identifier, updatePagination);
|
|
5352
|
+
}
|
|
5353
|
+
catch (e) {
|
|
5354
|
+
throw new Error(`${e === null || e === void 0 ? void 0 : e.message}`);
|
|
5355
|
+
}
|
|
5356
|
+
this.updateControl({ isLoading: false });
|
|
5357
|
+
});
|
|
5358
|
+
}
|
|
5359
|
+
loadPageData(pagination, identifier) {
|
|
5360
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
5361
|
+
const { store, selector } = this;
|
|
5362
|
+
const data = yield store
|
|
5363
|
+
.select(selector.selectPagination({ identifier }))
|
|
5364
|
+
.pipe(take(1))
|
|
5365
|
+
.toPromise();
|
|
5366
|
+
const { action } = pagination;
|
|
5367
|
+
const { href } = new MonkeyEcxLinksModel({ _links: data }).getAction(action) || {
|
|
5368
|
+
href: ''
|
|
5369
|
+
};
|
|
5370
|
+
if (href) {
|
|
5371
|
+
this.loadData(href, identifier);
|
|
5372
|
+
}
|
|
5373
|
+
});
|
|
5374
|
+
}
|
|
5375
|
+
/**
|
|
5376
|
+
* @description Neste método precisamos incluir a lógica para conferir se precisa limpar a
|
|
5377
|
+
* entidade ou não
|
|
5378
|
+
* E depois precisa invocar o método loadData
|
|
5379
|
+
* @param (url, identifier) ou de acordo com a action criada
|
|
5380
|
+
* @example
|
|
5381
|
+
* ```
|
|
5382
|
+
* const hasDifference = .....
|
|
5383
|
+
* if(hasDifference) {
|
|
5384
|
+
* store.dispatch(clear)
|
|
5385
|
+
* }
|
|
5386
|
+
*
|
|
5387
|
+
* this.loadData(...)
|
|
5388
|
+
* ```
|
|
5389
|
+
*/
|
|
5390
|
+
load(args) {
|
|
5391
|
+
throw new Error('MECX Core - Method load not implemented.');
|
|
5392
|
+
}
|
|
5393
|
+
loadPage(args) {
|
|
5394
|
+
throw new Error('MECX Core - Method loadPage not implemented.');
|
|
5395
|
+
}
|
|
5396
|
+
}
|
|
5397
|
+
__decorate([
|
|
5398
|
+
MonkeyEcxCoreService({
|
|
5399
|
+
requestInProgress: {
|
|
5400
|
+
showProgress: true
|
|
5401
|
+
}
|
|
5402
|
+
})
|
|
5403
|
+
], MonkeyEcxCommonsStoreService.prototype, "loadData", null);
|
|
5404
|
+
|
|
5207
5405
|
class MonkeyEcxFeatureByProgramDirective {
|
|
5208
5406
|
constructor(cdr, elementRef, monkeyConfigService) {
|
|
5209
5407
|
this.cdr = cdr;
|
|
@@ -5753,5 +5951,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
5753
5951
|
* Generated bundle index. Do not edit.
|
|
5754
5952
|
*/
|
|
5755
5953
|
|
|
5756
|
-
export { AlertsComponent, AlertsModule, ClosedToMaintenanceComponent, ClosedToMaintenanceModule, CurrencyConfigComponent, CurrencyConfigModule, decoratorsUtils as DecoratorsUtils, Link, MonkeyEcxAlertsService, MonkeyEcxAuthGuard, MonkeyEcxAuthGuardByRole, MonkeyEcxAuthGuardCompany, MonkeyEcxAuthGuardLogin, MonkeyEcxAuthenticationService, MonkeyEcxBlobSecurePipe, MonkeyEcxCommonsService, MonkeyEcxConfigModule, MonkeyEcxConfigService, MonkeyEcxCookieStorageService, MonkeyEcxCoreCharts, MonkeyEcxCoreClearDecorators, MonkeyEcxCoreLog, MonkeyEcxCoreService, MonkeyEcxCoreServiceConstructor, MonkeyEcxCoreServicePaged, MonkeyEcxCoreServiceQueue, MonkeyEcxCurrencyConfigService, MonkeyEcxDirectivesModule, MonkeyEcxDiscoveryParamsService, MonkeyEcxDisplayFirstNamePipe, MonkeyEcxDisplayInitialsPipe, MonkeyEcxDisplaySupportPhone, MonkeyEcxDragDropDirective, MonkeyEcxErrorConfigService, MonkeyEcxErrorHandlingModule, MonkeyEcxErrorHandlingService, MonkeyEcxFeatureByProgramDirective, MonkeyEcxFeatureDirective, MonkeyEcxFeatureToggleService, MonkeyEcxFormatAddressPipe, MonkeyEcxFormatBeaufityJSONPipe, MonkeyEcxFormatCurrency, MonkeyEcxFormatCurrencyPipe, MonkeyEcxFormatDateGroupPipe, MonkeyEcxFormatDateTimelapsePipe, MonkeyEcxFormatDateUnixTimelapsePipe, MonkeyEcxFormatDocumentPipe, MonkeyEcxFormatDocumentTypePipe, MonkeyEcxFormatNumberPipe, MonkeyEcxFormatPhonePipe, MonkeyEcxFormatSizePipe, MonkeyEcxFormatTaxPipe, MonkeyEcxFormatUpper, MonkeyEcxFormatValue, MonkeyEcxFormatZipCodePipe, MonkeyEcxHandlingService, MonkeyEcxHttpConfigErrorInterceptor, MonkeyEcxHttpConfigHeaderInterceptor, MonkeyEcxHttpConfigInterceptorModule, MonkeyEcxHttpConfigLoadingInProgressInterceptor, MonkeyEcxHttpConfigQueueInterceptor, MonkeyEcxHttpErrorHandlingService, MonkeyEcxLoggedHandlingService, MonkeyEcxLogsConfigService, MonkeyEcxMaintenanceConfigService, MonkeyEcxModel, MonkeyEcxOnlyAlphaNumericDirective, MonkeyEcxOnlyNumbersDirective, MonkeyEcxOthersErrorsHandlingService, MonkeyEcxPaginationService, MonkeyEcxPipesModule, MonkeyEcxPopoverDirective, MonkeyEcxPopoverOptionsDirective, MonkeyEcxProgressBarComponent, MonkeyEcxProgressBarModule, MonkeyEcxProgressBarService, MonkeyEcxRequestDownloadHandlingService, MonkeyEcxRequestDownloadedHandlingService, MonkeyEcxRequestPagedHandling, MonkeyEcxRequestQueueHandlingService, MonkeyEcxRequestQueueModalHandlingService, MonkeyEcxRequestScheduleService, MonkeyEcxSecurityConsoleConfigService, MonkeyEcxSecurityDirective, MonkeyEcxService, MonkeyEcxServiceDownload, MonkeyEcxServiceUpload, MonkeyEcxServiceWorkerConfigService, MonkeyEcxSpecificationSearch, MonkeyEcxTextTruncatePipe, MonkeyEcxTokenStorageService, MonkeyEcxTooltipDirective, MonkeyEcxTruncateQtdPipe, MonkeyEcxUtils, MonkeyEcxi18nConfigService, MonkeyFrontCoreModule, OpSearch, POPOVER_OPTIONS, statics as Statics, validateUtils as ValidateUtils, Validators, VersionChangedComponent, VersionChangedModule, comboValidator, dateRangeValidator, dateStartEndValidator, dateValidator, documentValidator, emailValidator, passwordConfirmValidator, registerValidator, requiredWithTrimValidator, index as store, trueValidator, urlValidator, valueGreaterThanZero, zipCodeValidator };
|
|
5954
|
+
export { AlertsComponent, AlertsModule, ClosedToMaintenanceComponent, ClosedToMaintenanceModule, CurrencyConfigComponent, CurrencyConfigModule, decoratorsUtils as DecoratorsUtils, Link, MonkeyEcxAlertsService, MonkeyEcxAuthGuard, MonkeyEcxAuthGuardByRole, MonkeyEcxAuthGuardCompany, MonkeyEcxAuthGuardLogin, MonkeyEcxAuthenticationService, MonkeyEcxBlobSecurePipe, MonkeyEcxCommonsService, MonkeyEcxCommonsStoreService, MonkeyEcxConfigModule, MonkeyEcxConfigService, MonkeyEcxCookieStorageService, MonkeyEcxCoreCharts, MonkeyEcxCoreClearDecorators, MonkeyEcxCoreLog, MonkeyEcxCoreService, MonkeyEcxCoreServiceConstructor, MonkeyEcxCoreServicePaged, MonkeyEcxCoreServiceQueue, MonkeyEcxCurrencyConfigService, MonkeyEcxDirectivesModule, MonkeyEcxDiscoveryParamsService, MonkeyEcxDisplayFirstNamePipe, MonkeyEcxDisplayInitialsPipe, MonkeyEcxDisplaySupportPhone, MonkeyEcxDragDropDirective, MonkeyEcxErrorConfigService, MonkeyEcxErrorHandlingModule, MonkeyEcxErrorHandlingService, MonkeyEcxFeatureByProgramDirective, MonkeyEcxFeatureDirective, MonkeyEcxFeatureToggleService, MonkeyEcxFormatAddressPipe, MonkeyEcxFormatBeaufityJSONPipe, MonkeyEcxFormatCurrency, MonkeyEcxFormatCurrencyPipe, MonkeyEcxFormatDateGroupPipe, MonkeyEcxFormatDateTimelapsePipe, MonkeyEcxFormatDateUnixTimelapsePipe, MonkeyEcxFormatDocumentPipe, MonkeyEcxFormatDocumentTypePipe, MonkeyEcxFormatNumberPipe, MonkeyEcxFormatPhonePipe, MonkeyEcxFormatSizePipe, MonkeyEcxFormatTaxPipe, MonkeyEcxFormatUpper, MonkeyEcxFormatValue, MonkeyEcxFormatZipCodePipe, MonkeyEcxHandlingService, MonkeyEcxHttpConfigErrorInterceptor, MonkeyEcxHttpConfigHeaderInterceptor, MonkeyEcxHttpConfigInterceptorModule, MonkeyEcxHttpConfigLoadingInProgressInterceptor, MonkeyEcxHttpConfigQueueInterceptor, MonkeyEcxHttpErrorHandlingService, MonkeyEcxLinksModel, MonkeyEcxLoggedHandlingService, MonkeyEcxLogsConfigService, MonkeyEcxMaintenanceConfigService, MonkeyEcxModel, MonkeyEcxOnlyAlphaNumericDirective, MonkeyEcxOnlyNumbersDirective, MonkeyEcxOthersErrorsHandlingService, MonkeyEcxPaginationService, MonkeyEcxPipesModule, MonkeyEcxPopoverDirective, MonkeyEcxPopoverOptionsDirective, MonkeyEcxProgressBarComponent, MonkeyEcxProgressBarModule, MonkeyEcxProgressBarService, MonkeyEcxRequestDownloadHandlingService, MonkeyEcxRequestDownloadedHandlingService, MonkeyEcxRequestPagedHandling, MonkeyEcxRequestQueueHandlingService, MonkeyEcxRequestQueueModalHandlingService, MonkeyEcxRequestScheduleService, MonkeyEcxSecurityConsoleConfigService, MonkeyEcxSecurityDirective, MonkeyEcxService, MonkeyEcxServiceDownload, MonkeyEcxServiceUpload, MonkeyEcxServiceWorkerConfigService, MonkeyEcxSpecificationSearch, MonkeyEcxTextTruncatePipe, MonkeyEcxTokenStorageService, MonkeyEcxTooltipDirective, MonkeyEcxTruncateQtdPipe, MonkeyEcxUtils, MonkeyEcxi18nConfigService, MonkeyFrontCoreModule, OpSearch, POPOVER_OPTIONS, statics as Statics, validateUtils as ValidateUtils, Validators, VersionChangedComponent, VersionChangedModule, comboValidator, dateRangeValidator, dateStartEndValidator, dateValidator, documentValidator, emailValidator, passwordConfirmValidator, registerValidator, requiredWithTrimValidator, index as store, trueValidator, urlValidator, valueGreaterThanZero, zipCodeValidator };
|
|
5757
5955
|
//# sourceMappingURL=monkey-front-core.mjs.map
|