@en-solutions/tgm-client-sdk 1.8.6 → 1.9.2
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/esm2022/lib/models/api/grid.models.mjs +6 -0
- package/esm2022/lib/models/api/plugin.models.mjs +3 -0
- package/esm2022/lib/models/index.mjs +3 -1
- package/esm2022/lib/services/api/asset-lifecycle.service.mjs +7 -4
- package/esm2022/lib/services/api/export.service.mjs +14 -1
- package/esm2022/lib/services/api/grid.service.mjs +80 -0
- package/esm2022/lib/services/api/index.mjs +3 -1
- package/esm2022/lib/services/api/plugin.service.mjs +49 -0
- package/fesm2022/en-solutions-tgm-client-sdk.mjs +148 -5
- package/fesm2022/en-solutions-tgm-client-sdk.mjs.map +1 -1
- package/lib/models/api/grid.models.d.ts +55 -0
- package/lib/models/api/plugin.models.d.ts +20 -0
- package/lib/models/index.d.ts +2 -0
- package/lib/services/api/asset-lifecycle.service.d.ts +2 -1
- package/lib/services/api/export.service.d.ts +4 -0
- package/lib/services/api/grid.service.d.ts +54 -0
- package/lib/services/api/index.d.ts +2 -0
- package/lib/services/api/plugin.service.d.ts +25 -0
- package/package.json +1 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grid Management plugin models — distribution network nodes/links and live status.
|
|
3
|
+
* Mirrors the backend `ca.ensolutions.tgm.grid` entities and DTOs.
|
|
4
|
+
*/
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9hcGkvZ3JpZC5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHcmlkIE1hbmFnZW1lbnQgcGx1Z2luIG1vZGVscyDigJQgZGlzdHJpYnV0aW9uIG5ldHdvcmsgbm9kZXMvbGlua3MgYW5kIGxpdmUgc3RhdHVzLlxuICogTWlycm9ycyB0aGUgYmFja2VuZCBgY2EuZW5zb2x1dGlvbnMudGdtLmdyaWRgIGVudGl0aWVzIGFuZCBEVE9zLlxuICovXG5cbmV4cG9ydCB0eXBlIEdyaWROb2RlVHlwZSA9XG4gIHwgJ1NVQlNUQVRJT04nXG4gIHwgJ0RJU1RSSUJVVElPTl9TVUJTVEFUSU9OJ1xuICB8ICdUUkFOU0ZPUk1FUidcbiAgfCAnRkVFREVSJ1xuICB8ICdMSU5FJ1xuICB8ICdTV0lUQ0gnXG4gIHwgJ1JJTkdfTUFJTl9VTklUJ1xuICB8ICdCVVNCQVInXG4gIHwgJ1BPTEUnXG4gIHwgJ01FVEVSJ1xuICB8ICdPVEhFUic7XG5cbmV4cG9ydCB0eXBlIEdyaWRMaW5rVHlwZSA9XG4gIHwgJ09WRVJIRUFEX0xJTkUnXG4gIHwgJ1VOREVSR1JPVU5EX0NBQkxFJ1xuICB8ICdUUkFOU0ZPUk1FUl9MSU5LJ1xuICB8ICdCVVNCQVJfTElOSydcbiAgfCAnT1RIRVInO1xuXG4vKiogTGl2ZSBhdmFpbGFiaWxpdHkgc3RhdGUgb2YgYSBncmlkIGVsZW1lbnQuICovXG5leHBvcnQgdHlwZSBPcGVyYXRpb25hbFN0YXRlID0gJ1VQJyB8ICdERUdSQURFRCcgfCAnRE9XTicgfCAnSU1QQUNURUQnIHwgJ1VOS05PV04nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdyaWROb2RlIHtcbiAgaWQ/OiBudW1iZXI7XG4gIG5hbWU6IHN0cmluZztcbiAgbm9kZVR5cGU6IEdyaWROb2RlVHlwZTtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGxhdGl0dWRlPzogbnVtYmVyO1xuICBsb25naXR1ZGU/OiBudW1iZXI7XG4gIHZvbHRhZ2VMZXZlbEt2PzogbnVtYmVyO1xuICByYXRlZENhcGFjaXR5S3ZhPzogbnVtYmVyO1xuICBwYXJlbnROb2RlSWQ/OiBudW1iZXI7XG4gIG9wZXJhdGlvbmFsU3RhdGU/OiBPcGVyYXRpb25hbFN0YXRlO1xuICBzdGF0ZVNpbmNlPzogc3RyaW5nO1xuICBsYXN0VGVsZW1ldHJ5QXQ/OiBzdHJpbmc7XG4gIGNvbXBvbmVudElkPzogbnVtYmVyO1xuICBsb2NhdGlvbklkPzogbnVtYmVyO1xuICBkZXZpY2VHYXRld2F5SWQ/OiBudW1iZXI7XG4gIGFpcE5ldHdvcmtOb2RlSWQ/OiBudW1iZXI7XG4gIGN1c3RvbUZpZWxkcz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIGNyZWF0ZWRBdD86IHN0cmluZztcbiAgdXBkYXRlZEF0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdyaWRMaW5rIHtcbiAgaWQ/OiBudW1iZXI7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGZyb21Ob2RlSWQ6IG51bWJlcjtcbiAgdG9Ob2RlSWQ6IG51bWJlcjtcbiAgbGlua1R5cGU/OiBHcmlkTGlua1R5cGU7XG4gIG9wZXJhdGlvbmFsU3RhdGU/OiBPcGVyYXRpb25hbFN0YXRlO1xuICBsZW5ndGhLbT86IG51bWJlcjtcbiAgdm9sdGFnZUxldmVsS3Y/OiBudW1iZXI7XG4gIGNyZWF0ZWRBdD86IHN0cmluZztcbiAgdXBkYXRlZEF0Pzogc3RyaW5nO1xufVxuXG4vKiogQSBub2RlJ3MgbGl2ZSBzdGF0dXMgYXMgcmV0dXJuZWQgYnkgR0VUIC9hcGkvZ3JpZC9zdGF0dXMgYW5kIHB1c2hlZCBvbiAvdG9waWMvZ3JpZC9zdGF0dXMuICovXG5leHBvcnQgaW50ZXJmYWNlIEdyaWROb2RlU3RhdHVzIHtcbiAgaWQ6IG51bWJlcjtcbiAgbmFtZTogc3RyaW5nO1xuICBub2RlVHlwZTogR3JpZE5vZGVUeXBlO1xuICBsYXRpdHVkZT86IG51bWJlcjtcbiAgbG9uZ2l0dWRlPzogbnVtYmVyO1xuICB2b2x0YWdlTGV2ZWxLdj86IG51bWJlcjtcbiAgb3BlcmF0aW9uYWxTdGF0ZTogT3BlcmF0aW9uYWxTdGF0ZTtcbiAgcGFyZW50Tm9kZUlkPzogbnVtYmVyO1xuICBsYXN0VGVsZW1ldHJ5QXQ/OiBzdHJpbmc7XG4gIGFjdGl2ZUFsZXJ0U2V2ZXJpdHk/OiAnSU5GTycgfCAnV0FSTklORycgfCAnQ1JJVElDQUwnIHwgJ0VNRVJHRU5DWScgfCBudWxsO1xuICByZWFjaGFibGU6IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Plugin framework models — installable per-tenant modules. */
|
|
2
|
+
export {};
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbW9kZWxzL2FwaS9wbHVnaW4ubW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdFQUFnRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKiBQbHVnaW4gZnJhbWV3b3JrIG1vZGVscyDigJQgaW5zdGFsbGFibGUgcGVyLXRlbmFudCBtb2R1bGVzLiAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIFBsdWdpblN0YXR1cyB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdmVyc2lvbjogc3RyaW5nO1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICByZXF1aXJlZExpY2Vuc2VGZWF0dXJlPzogc3RyaW5nIHwgbnVsbDtcbiAgbWVudU1vZHVsZUlkPzogc3RyaW5nIHwgbnVsbDtcbiAgaW5zdGFsbGVkOiBib29sZWFuO1xuICBzdGF0dXM6ICdJTlNUQUxMRUQnIHwgJ0RJU0FCTEVEJyB8ICdOT1RfSU5TVEFMTEVEJyB8IHN0cmluZztcbiAgaW5zdGFsbGVkQXQ/OiBzdHJpbmcgfCBudWxsO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluc3RhbGxlZFBsdWdpbiB7XG4gIGlkPzogbnVtYmVyO1xuICBwbHVnaW5JZDogc3RyaW5nO1xuICB2ZXJzaW9uPzogc3RyaW5nO1xuICBzdGF0dXM6ICdJTlNUQUxMRUQnIHwgJ0RJU0FCTEVEJztcbiAgaW5zdGFsbGVkQXQ/OiBzdHJpbmc7XG4gIGluc3RhbGxlZEJ5Pzogc3RyaW5nO1xufVxuIl19
|
|
@@ -40,4 +40,6 @@ export * from './api/cortex-insight.models';
|
|
|
40
40
|
export * from './api/aip.models';
|
|
41
41
|
export * from './api/reservoir-websocket.models';
|
|
42
42
|
export * from './api/cms.models';
|
|
43
|
-
|
|
43
|
+
export * from './api/grid.models';
|
|
44
|
+
export * from './api/plugin.models';
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYXNlLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2VudW1zJztcbmV4cG9ydCAqIGZyb20gJy4vYXV0aCc7XG5leHBvcnQgKiBmcm9tICcuL2FkbWluJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL2NvbXBhbnkubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL3VuaXQubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL2NvbXBvbmVudC5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvaW5zcGVjdGlvbi5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvZmFpbHVyZS5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvaW50ZXJ2ZW50aW9uLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9tYWludGVuYW5jZS1yZWNvcmQubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL21hdGVyaWFsLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9zZW5zb3IubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL3Byb2plY3QubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL2RvY3VtZW50Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9jb21wbGlhbmNlLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9lbmVyZ3kubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL3dhcnJhbnR5Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9mbGVldC5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkva25vd2xlZGdlLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9xdWFsaXR5Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS93b3JrZmxvdy5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvY3VzdG9tLWZpZWxkLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS91c2VyLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9taXNjLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9yZXNlcnZvaXIubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vY2hhdC9jaGF0Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9tZWRpYS5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvY2F0Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9tYWludGVuYW5jZS5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi92aWRlby92aWRlby1jYWxsLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL3JlYWx0aW1lL3JlYWx0aW1lLWV2ZW50Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS93b3JrLXBlcm1pdC5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvbG90by5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvZGlhZ25vc3RpYy1yZXBvcnQubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL2NvcnRleC1ub2RlLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9jb3J0ZXgtZWRnZS5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvY29ydGV4LWV2ZW50Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9jb3J0ZXgtaW5zaWdodC5tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGkvYWlwLm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9yZXNlcnZvaXItd2Vic29ja2V0Lm1vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2FwaS9jbXMubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL2dyaWQubW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vYXBpL3BsdWdpbi5tb2RlbHMnO1xuIl19
|
|
@@ -19,7 +19,9 @@ export class AssetLifecycleService {
|
|
|
19
19
|
return this.http.get(`${this.basePath}/component/${componentId}`);
|
|
20
20
|
}
|
|
21
21
|
update(lifecycleId, data) {
|
|
22
|
-
|
|
22
|
+
// Use the standard CRUD endpoint — the custom PATCH /asset-lifecycle/:id returns 200 but does
|
|
23
|
+
// not persist. PUT /api/asset-lifecycles/:id saves correctly (matches getAll/createRecord).
|
|
24
|
+
return this.http.put(`/api/asset-lifecycles/${lifecycleId}`, data);
|
|
23
25
|
}
|
|
24
26
|
transition(lifecycleId, newStage) {
|
|
25
27
|
return this.http.post(`${this.basePath}/${lifecycleId}/transition`, null, {
|
|
@@ -64,9 +66,10 @@ export class AssetLifecycleService {
|
|
|
64
66
|
getStageEnums() {
|
|
65
67
|
return this.http.get(`${this.basePath}/enums/stages`);
|
|
66
68
|
}
|
|
67
|
-
/** Create a lifecycle record via the collection endpoint
|
|
69
|
+
/** Create a lifecycle record via the standard collection endpoint. The backend expects a FLAT
|
|
70
|
+
* payload — wrapping it in { data } makes Spring ignore every field and persist an empty record. */
|
|
68
71
|
createRecord(data) {
|
|
69
|
-
return this.http.post('/api/asset-lifecycles',
|
|
72
|
+
return this.http.post('/api/asset-lifecycles', data);
|
|
70
73
|
}
|
|
71
74
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AssetLifecycleService, deps: [{ token: i1.TgmHttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
72
75
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AssetLifecycleService, providedIn: 'root' });
|
|
@@ -75,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
75
78
|
type: Injectable,
|
|
76
79
|
args: [{ providedIn: 'root' }]
|
|
77
80
|
}], ctorParameters: () => [{ type: i1.TgmHttpClient }] });
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbGlmZWN5Y2xlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2FwaS9hc3NldC1saWZlY3ljbGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLHFCQUFxQjtJQUdaO0lBRlosUUFBUSxHQUFHLGtCQUFrQixDQUFDO0lBRXRDLFlBQW9CLElBQW1CO1FBQW5CLFNBQUksR0FBSixJQUFJLENBQWU7SUFBRyxDQUFDO0lBRTNDLE1BQU0sQ0FBQyxNQUErQztRQUNwRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFnQyx1QkFBdUIsRUFBRTtZQUMzRSxNQUFNLEVBQUUsTUFBYTtTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQW1CLEVBQUUsSUFBNkI7UUFDdkQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBOEIsR0FBRyxJQUFJLENBQUMsUUFBUSxjQUFjLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFRCxjQUFjLENBQUMsV0FBbUI7UUFDaEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBOEIsR0FBRyxJQUFJLENBQUMsUUFBUSxjQUFjLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVELE1BQU0sQ0FBQyxXQUFtQixFQUFFLElBQTZCO1FBQ3ZELDhGQUE4RjtRQUM5Riw0RkFBNEY7UUFDNUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBOEIseUJBQXlCLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFRCxVQUFVLENBQUMsV0FBbUIsRUFBRSxRQUFnQjtRQUM5QyxPQUFPLElBQUksQ0FBQyxJ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J0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGdtSHR0cENsaWVudCB9IGZyb20gJy4uLy4uL2NvcmUvaHR0cC1jbGllbnQuc2VydmljZSc7XG5pbXBvcnQgeyBBcGlSZXNwb25zZSwgUGFnZWRSZXNwb25zZSwgUGFnaW5hdGlvblBhcmFtcyB9IGZyb20gJy4uLy4uL21vZGVscy9iYXNlLm1vZGVscyc7XG5pbXBvcnQgeyBBc3NldExpZmVjeWNsZSwgTGlmZWN5Y2xlRXZlbnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBpL21haW50ZW5hbmNlLm1vZGVscyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXNzZXRMaWZlY3ljbGVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBiYXNlUGF0aCA9ICcvYXNzZXQtbGlmZWN5Y2xlJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IFRnbUh0dHBDbGllbnQpIHt9XG5cbiAgZ2V0QWxsKHBhcmFtcz86IFBhZ2luYXRpb25QYXJhbXMgJiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogT2JzZXJ2YWJsZTxQYWdlZFJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFBhZ2VkUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGU+PignL2FwaS9hc3NldC1saWZlY3ljbGVzJywge1xuICAgICAgcGFyYW1zOiBwYXJhbXMgYXMgYW55LFxuICAgIH0pO1xuICB9XG5cbiAgY3JlYXRlKGNvbXBvbmVudElkOiBudW1iZXIsIGRhdGE6IFBhcnRpYWw8QXNzZXRMaWZlY3ljbGU+KTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZT4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGU+PihgJHt0aGlzLmJhc2VQYXRofS9jb21wb25lbnQvJHtjb21wb25lbnRJZH1gLCBkYXRhKTtcbiAgfVxuXG4gIGdldEJ5Q29tcG9uZW50KGNvbXBvbmVudElkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4oYCR7dGhpcy5iYXNlUGF0aH0vY29tcG9uZW50LyR7Y29tcG9uZW50SWR9YCk7XG4gIH1cblxuICB1cGRhdGUobGlmZWN5Y2xlSWQ6IG51bWJlciwgZGF0YTogUGFydGlhbDxBc3NldExpZmVjeWNsZT4pOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4ge1xuICAgIC8vIFVzZSB0aGUgc3RhbmRhcmQgQ1JVRCBlbmRwb2ludCDigJQgdGhlIGN1c3RvbSBQQVRDSCAvYXNzZXQtbGlmZWN5Y2xlLzppZCByZXR1cm5zIDIwMCBidXQgZG9lc1xuICAgIC8vIG5vdCBwZXJzaXN0LiBQVVQgL2FwaS9hc3NldC1saWZlY3ljbGVzLzppZCBzYXZlcyBjb3JyZWN0bHkgKG1hdGNoZXMgZ2V0QWxsL2NyZWF0ZVJlY29yZCkuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQ8QXBpUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGU+PihgL2FwaS9hc3NldC1saWZlY3ljbGVzLyR7bGlmZWN5Y2xlSWR9YCwgZGF0YSk7XG4gIH1cblxuICB0cmFuc2l0aW9uKGxpZmVjeWNsZUlkOiBudW1iZXIsIG5ld1N0YWdlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZT4+KGAke3RoaXMuYmFzZVBhdGh9LyR7bGlmZWN5Y2xlSWR9L3RyYW5zaXRpb25gLCBudWxsLCB7XG4gICAgICBwYXJhbXM6IHsgbmV3U3RhZ2UgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGFzc2VzcyhsaWZlY3ljbGVJZDogbnVtYmVyLCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZT4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGU+PihgJHt0aGlzLmJhc2VQYXRofS8ke2xpZmVjeWNsZUlkfS9hc3Nlc3NgLCBkYXRhKTtcbiAgfVxuXG4gIGNhbGN1bGF0ZU1ldHJpY3MobGlmZWN5Y2xlSWQ6IG51bWJlcik6IE9ic2VydmFibGU8QXBpUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGU+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4oYCR7dGhpcy5iYXNlUGF0aH0vJHtsaWZlY3ljbGVJZH0vY2FsY3VsYXRlLW1ldHJpY3NgLCBudWxsKTtcbiAgfVxuXG4gIGNhbGN1bGF0ZURlcHJlY2lhdGlvbihsaWZlY3ljbGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZT4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGU+PihgJHt0aGlzLmJhc2VQYXRofS8ke2xpZmVjeWNsZUlkfS9jYWxjdWxhdGUtZGVwcmVjaWF0aW9uYCwgbnVsbCk7XG4gIH1cblxuICBnZXRFdmVudHMobGlmZWN5Y2xlSWQ6IG51bWJlciwgcGFyYW1zPzogUGFnaW5hdGlvblBhcmFtcyk6IE9ic2VydmFibGU8UGFnZWRSZXNwb25zZTxMaWZlY3ljbGVFdmVudD4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxQYWdlZFJlc3BvbnNlPExpZmVjeWNsZUV2ZW50Pj4oYCR7dGhpcy5iYXNlUGF0aH0vJHtsaWZlY3ljbGVJZH0vZXZlbnRzYCwge1xuICAgICAgcGFyYW1zOiBwYXJhbXMgYXMgYW55LFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0QnlTdGFnZShzdGFnZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZVtdPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlW10+PihgJHt0aGlzLmJhc2VQYXRofS9ieS1zdGFnZWAsIHtcbiAgICAgIHBhcmFtczogeyBzdGFnZSB9LFxuICAgIH0pO1xuICB9XG5cbiAgZ2V0QXBwcm9hY2hpbmdFbmRPZkxpZmUobW9udGhzQWhlYWQ/OiBudW1iZXIpOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlW10+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpUmVzcG9uc2U8QXNzZXRMaWZlY3ljbGVbXT4+KGAke3RoaXMuYmFzZVBhdGh9L2FwcHJvYWNoaW5nLWVuZC1vZi1saWZlYCwge1xuICAgICAgcGFyYW1zOiBtb250aHNBaGVhZCAhPSBudWxsID8geyBtb250aHNBaGVhZCB9IDoge30sXG4gICAgfSk7XG4gIH1cblxuICBnZXRMb3dIZWFsdGgodGhyZXNob2xkPzogbnVtYmVyKTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZVtdPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlW10+PihgJHt0aGlzLmJhc2VQYXRofS9sb3ctaGVhbHRoYCwge1xuICAgICAgcGFyYW1zOiB0aHJlc2hvbGQgIT0gbnVsbCA/IHsgdGhyZXNob2xkIH0gOiB7fSxcbiAgICB9KTtcbiAgfVxuXG4gIGdldFJlY29tbWVuZGVkUmVwbGFjZW1lbnQoKTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZVtdPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlW10+PihgJHt0aGlzLmJhc2VQYXRofS9yZWNvbW1lbmRlZC1yZXBsYWNlbWVudGApO1xuICB9XG5cbiAgZ2V0RGFzaGJvYXJkKCk6IE9ic2VydmFibGU8QXBpUmVzcG9uc2U8YW55Pj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPGFueT4+KGAke3RoaXMuYmFzZVBhdGh9L2Rhc2hib2FyZGApO1xuICB9XG5cbiAgZ2V0U3RhZ2VFbnVtcygpOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPHN0cmluZ1tdPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPHN0cmluZ1tdPj4oYCR7dGhpcy5iYXNlUGF0aH0vZW51bXMvc3RhZ2VzYCk7XG4gIH1cblxuICAvKiogQ3JlYXRlIGEgbGlmZWN5Y2xlIHJlY29yZCB2aWEgdGhlIHN0YW5kYXJkIGNvbGxlY3Rpb24gZW5kcG9pbnQuIFRoZSBiYWNrZW5kIGV4cGVjdHMgYSBGTEFUXG4gICAqICBwYXlsb2FkIOKAlCB3cmFwcGluZyBpdCBpbiB7IGRhdGEgfSBtYWtlcyBTcHJpbmcgaWdub3JlIGV2ZXJ5IGZpZWxkIGFuZCBwZXJzaXN0IGFuIGVtcHR5IHJlY29yZC4gKi9cbiAgY3JlYXRlUmVjb3JkKGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPEFzc2V0TGlmZWN5Y2xlPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlSZXNwb25zZTxBc3NldExpZmVjeWNsZT4+KCcvYXBpL2Fzc2V0LWxpZmVjeWNsZXMnLCBkYXRhKTtcbiAgfVxufVxuIl19
|
|
@@ -7,6 +7,19 @@ export class ExportService {
|
|
|
7
7
|
constructor(http) {
|
|
8
8
|
this.http = http;
|
|
9
9
|
}
|
|
10
|
+
// ================== DASHBOARD ==================
|
|
11
|
+
/** Export the dashboard KPIs as CSV (period in days, default 30). */
|
|
12
|
+
exportDashboardCsv(periodDays = 30) {
|
|
13
|
+
return this.http.download(`${this.basePath}/dashboard`, {
|
|
14
|
+
params: { format: 'csv', periodDays },
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
/** Export the dashboard KPIs as Excel (period in days, default 30). */
|
|
18
|
+
exportDashboardExcel(periodDays = 30) {
|
|
19
|
+
return this.http.download(`${this.basePath}/dashboard`, {
|
|
20
|
+
params: { format: 'excel', periodDays },
|
|
21
|
+
});
|
|
22
|
+
}
|
|
10
23
|
exportInspectionsExcel(ids) {
|
|
11
24
|
return this.http.download(`${this.basePath}/inspections/excel`, {
|
|
12
25
|
params: ids?.length ? { ids: ids.join(',') } : undefined,
|
|
@@ -213,4 +226,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
213
226
|
type: Injectable,
|
|
214
227
|
args: [{ providedIn: 'root' }]
|
|
215
228
|
}], ctorParameters: () => [{ type: i1.TgmHttpClient }] });
|
|
216
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2FwaS9leHBvcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0MsTUFBTSxPQUFPLGFBQWE7SUFHSjtJQUZaLFFBQVEsR0FBRyxTQUFTLENBQUM7SUFFN0IsWUFBb0IsSUFBbUI7UUFBbkIsU0FBSSxHQUFKLElBQUksQ0FBZTtJQUFHLENBQUM7SUFFM0Msc0JBQXNCLENBQUMsR0FBYztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLEVBQUU7WUFDOUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBYztRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsa0JBQWtCLEVBQUU7WUFDNUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBYztRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsa0JBQWtCLEVBQUU7WUFDNUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsd0JBQXdCLENBQUMsR0FBYztRQUNyQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsc0JBQXNCLEVBQUU7WUFDaEUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsR0FBYztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLEVBQUU7WUFDOUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsR0FBYztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLEVBQUU7WUFDOUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsR0FBYztRQUNoQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEs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LEdBQUcsSUFBSSxDQUFDLFFBQVEsd0JBQXdCLEVBQUU7WUFDbEUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQseUJBQXlCLENBQUMsR0FBYztRQUN0QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsd0JBQXdCLEVBQUU7WUFDbEUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQXpQVSxhQUFhOzRHQUFiLGFBQWEsY0FEQSxNQUFNOzs0RkFDbkIsYUFBYTtrQkFEekIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUZ21IdHRwQ2xpZW50IH0gZnJvbSAnLi4vLi4vY29yZS9odHRwLWNsaWVudC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBFeHBvcnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBiYXNlUGF0aCA9ICcvZXhwb3J0JztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IFRnbUh0dHBDbGllbnQpIHt9XG5cbiAgZXhwb3J0SW5zcGVjdGlvbnNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vaW5zcGVjdGlvbnMvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEluc3BlY3Rpb25zQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9pbnNwZWN0aW9ucy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEluc3BlY3Rpb25zUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9pbnNwZWN0aW9ucy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEludGVydmVudGlvbnNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vaW50ZXJ2ZW50aW9ucy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0SW50ZXJ2ZW50aW9uc0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vaW50ZXJ2ZW50aW9ucy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEludGVydmVudGlvbnNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2ludGVydmVudGlvbnMvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRGYWlsdXJlc0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9mYWlsdXJlcy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0RmFpbHVyZXNDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2ZhaWx1cmVzL2NzdmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0RmFpbHVyZXNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2ZhaWx1cmVzL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0Q29tcG9uZW50c0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9jb21wb25lbnRzL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRVbml0c0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS91bml0cy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT0gR2F0ZSBTeXN0ZW1zID09PT09PT09PT09PT09PT09PT09XG5cbiAgZXhwb3J0R2F0ZVN5c3RlbXNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vZ2F0ZS1zeXN0ZW1zL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRHYXRlU3lzdGVtc0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vZ2F0ZS1zeXN0ZW1zL2NzdmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0R2F0ZVN5c3RlbXNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2dhdGUtc3lzdGVtcy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09IEZpc2ggTW9uaXRvcmluZyA9PT09PT09PT09PT09PT09PT09PVxuXG4gIGV4cG9ydEZpc2hNb25pdG9yaW5nRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2Zpc2gtbW9uaXRvcmluZy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0RmlzaE1vbml0b3JpbmdDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2Zpc2gtbW9uaXRvcmluZy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEZpc2hNb25pdG9yaW5nUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9maXNoLW1vbml0b3JpbmcvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PSBCYXRoeW1ldHJpYyBTdXJ2ZXlzID09PT09PT09PT09PT09PT09PT09XG5cbiAgZXhwb3J0QmF0aHltZXRyaWNTdXJ2ZXlzRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2JhdGh5bWV0cmljLXN1cnZleXMvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEJhdGh5bWV0cmljU3VydmV5c0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vYmF0aHltZXRyaWMtc3VydmV5cy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEJhdGh5bWV0cmljU3VydmV5c1BkZihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vYmF0aHltZXRyaWMtc3VydmV5cy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09IExhYm9yYXRvcnkgUmVzdWx0cyA9PT09PT09PT09PT09PT09PT09PVxuXG4gIGV4cG9ydExhYm9yYXRvcnlSZXN1bHRzRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2xhYm9yYXRvcnktcmVzdWx0cy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0TGFib3JhdG9yeVJlc3VsdHNDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2xhYm9yYXRvcnktcmVzdWx0cy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydExhYm9yYXRvcnlSZXN1bHRzUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9sYWJvcmF0b3J5LXJlc3VsdHMvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PSBNYW51YWwgUmVhZGluZ3MgPT09PT09PT09PT09PT09PT09PT1cblxuICBleHBvcnRNYW51YWxSZWFkaW5nc0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9tYW51YWwtcmVhZGluZ3MvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydE1hbnVhbFJlYWRpbmdzQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9tYW51YWwtcmVhZGluZ3MvY3N2YCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRNYW51YWxSZWFkaW5nc1BkZihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vbWFudWFsLXJlYWRpbmdzL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT0gT3BlcmF0aW9uYWwgT2JzZXJ2YXRpb25zID09PT09PT09PT09PT09PT09PT09XG5cbiAgZXhwb3J0T3BlcmF0aW9uYWxPYnNlcnZhdGlvbnNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vb3BlcmF0aW9uYWwtb2JzZXJ2YXRpb25zL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRPcGVyYXRpb25hbE9ic2VydmF0aW9uc0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vb3BlcmF0aW9uYWwtb2JzZXJ2YXRpb25zL2NzdmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0T3BlcmF0aW9uYWxPYnNlcnZhdGlvbnNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L29wZXJhdGlvbmFsLW9ic2VydmF0aW9ucy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09IFJlZ3VsYXRvcnkgVXBkYXRlcyA9PT09PT09PT09PT09PT09PT09PVxuXG4gIGV4cG9ydFJlZ3VsYXRvcnlVcGRhdGVzRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L3JlZ3VsYXRvcnktdXBkYXRlcy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0UmVndWxhdG9yeVVwZGF0ZXNDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L3JlZ3VsYXRvcnktdXBkYXRlcy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydFJlZ3VsYXRvcnlVcGRhdGVzUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9yZWd1bGF0b3J5LXVwZGF0ZXMvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PSBBSSBTY2VuYXJpb3MgPT09PT09PT09PT09PT09PT09PT1cblxuICBleHBvcnRBSVNjZW5hcmlvc0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9haS1zY2VuYXJpb3MvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEFJU2NlbmFyaW9zQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9haS1zY2VuYXJpb3MvY3N2YCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRBSVNjZW5hcmlvc1BkZihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vYWktc2NlbmFyaW9zL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT0gQWxlcnQgRGVmaW5pdGlvbnMgPT09PT09PT09PT09PT09PT09PT1cblxuICBleHBvcnRBbGVydERlZmluaXRpb25zRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2FsZXJ0LWRlZmluaXRpb25zL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRBbGVydERlZmluaXRpb25zQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9hbGVydC1kZWZpbml0aW9ucy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEFsZXJ0RGVmaW5pdGlvbnNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2FsZXJ0LWRlZmluaXRpb25zL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2FwaS9leHBvcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFLM0MsTUFBTSxPQUFPLGFBQWE7SUFHSjtJQUZaLFFBQVEsR0FBRyxTQUFTLENBQUM7SUFFN0IsWUFBb0IsSUFBbUI7UUFBbkIsU0FBSSxHQUFKLElBQUksQ0FBZTtJQUFHLENBQUM7SUFFM0Msa0RBQWtEO0lBRWxELHFFQUFxRTtJQUNyRSxrQkFBa0IsQ0FBQyxVQUFVLEdBQUcsRUFBRTtRQUNoQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsWUFBWSxFQUFFO1lBQ3RELE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO1NBQ3RDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx1RUFBdUU7SUFDdkUsb0JBQW9CLENBQUMsVUFBVSxHQUFHLEVBQUU7UUFDbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLFlBQVksRUFBRTtZQUN0RCxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRTtTQUN4QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsR0FBYztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLEVBQUU7WUFDOUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBYztRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsa0JBQWtCLEVBQUU7WUFDNUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBYztRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsa0JBQWtCLEVBQUU7WUFDNUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsd0JBQXdCLENBQUMsR0FBYztRQUNyQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsc0JBQXNCLEVBQUU7WUFDaEUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsc0JBQXNCLENBQUMsR0FBYztRQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsb0JBQW9CLEVBQUU7WUFDOUQsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdB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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUZ21IdHRwQ2xpZW50IH0gZnJvbSAnLi4vLi4vY29yZS9odHRwLWNsaWVudC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBFeHBvcnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBiYXNlUGF0aCA9ICcvZXhwb3J0JztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IFRnbUh0dHBDbGllbnQpIHt9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09IERBU0hCT0FSRCA9PT09PT09PT09PT09PT09PT1cblxuICAvKiogRXhwb3J0IHRoZSBkYXNoYm9hcmQgS1BJcyBhcyBDU1YgKHBlcmlvZCBpbiBkYXlzLCBkZWZhdWx0IDMwKS4gKi9cbiAgZXhwb3J0RGFzaGJvYXJkQ3N2KHBlcmlvZERheXMgPSAzMCk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vZGFzaGJvYXJkYCwge1xuICAgICAgcGFyYW1zOiB7IGZvcm1hdDogJ2NzdicsIHBlcmlvZERheXMgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBFeHBvcnQgdGhlIGRhc2hib2FyZCBLUElzIGFzIEV4Y2VsIChwZXJpb2QgaW4gZGF5cywgZGVmYXVsdCAzMCkuICovXG4gIGV4cG9ydERhc2hib2FyZEV4Y2VsKHBlcmlvZERheXMgPSAzMCk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vZGFzaGJvYXJkYCwge1xuICAgICAgcGFyYW1zOiB7IGZvcm1hdDogJ2V4Y2VsJywgcGVyaW9kRGF5cyB9LFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0SW5zcGVjdGlvbnNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vaW5zcGVjdGlvbnMvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEluc3BlY3Rpb25zQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9pbnNwZWN0aW9ucy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEluc3BlY3Rpb25zUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9pbnNwZWN0aW9ucy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEludGVydmVudGlvbnNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vaW50ZXJ2ZW50aW9ucy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0SW50ZXJ2ZW50aW9uc0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vaW50ZXJ2ZW50aW9ucy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEludGVydmVudGlvbnNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2ludGVydmVudGlvbnMvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRGYWlsdXJlc0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9mYWlsdXJlcy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0RmFpbHVyZXNDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2ZhaWx1cmVzL2NzdmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0RmFpbHVyZXNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2ZhaWx1cmVzL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0Q29tcG9uZW50c0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9jb21wb25lbnRzL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRVbml0c0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS91bml0cy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT0gR2F0ZSBTeXN0ZW1zID09PT09PT09PT09PT09PT09PT09XG5cbiAgZXhwb3J0R2F0ZVN5c3RlbXNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vZ2F0ZS1zeXN0ZW1zL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRHYXRlU3lzdGVtc0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vZ2F0ZS1zeXN0ZW1zL2NzdmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0R2F0ZVN5c3RlbXNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2dhdGUtc3lzdGVtcy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09IEZpc2ggTW9uaXRvcmluZyA9PT09PT09PT09PT09PT09PT09PVxuXG4gIGV4cG9ydEZpc2hNb25pdG9yaW5nRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2Zpc2gtbW9uaXRvcmluZy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0RmlzaE1vbml0b3JpbmdDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2Zpc2gtbW9uaXRvcmluZy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEZpc2hNb25pdG9yaW5nUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9maXNoLW1vbml0b3JpbmcvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PSBCYXRoeW1ldHJpYyBTdXJ2ZXlzID09PT09PT09PT09PT09PT09PT09XG5cbiAgZXhwb3J0QmF0aHltZXRyaWNTdXJ2ZXlzRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2JhdGh5bWV0cmljLXN1cnZleXMvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEJhdGh5bWV0cmljU3VydmV5c0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vYmF0aHltZXRyaWMtc3VydmV5cy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEJhdGh5bWV0cmljU3VydmV5c1BkZihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vYmF0aHltZXRyaWMtc3VydmV5cy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09IExhYm9yYXRvcnkgUmVzdWx0cyA9PT09PT09PT09PT09PT09PT09PVxuXG4gIGV4cG9ydExhYm9yYXRvcnlSZXN1bHRzRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2xhYm9yYXRvcnktcmVzdWx0cy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0TGFib3JhdG9yeVJlc3VsdHNDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2xhYm9yYXRvcnktcmVzdWx0cy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydExhYm9yYXRvcnlSZXN1bHRzUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9sYWJvcmF0b3J5LXJlc3VsdHMvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PSBNYW51YWwgUmVhZGluZ3MgPT09PT09PT09PT09PT09PT09PT1cblxuICBleHBvcnRNYW51YWxSZWFkaW5nc0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9tYW51YWwtcmVhZGluZ3MvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydE1hbnVhbFJlYWRpbmdzQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9tYW51YWwtcmVhZGluZ3MvY3N2YCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRNYW51YWxSZWFkaW5nc1BkZihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vbWFudWFsLXJlYWRpbmdzL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT0gT3BlcmF0aW9uYWwgT2JzZXJ2YXRpb25zID09PT09PT09PT09PT09PT09PT09XG5cbiAgZXhwb3J0T3BlcmF0aW9uYWxPYnNlcnZhdGlvbnNFeGNlbChpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vb3BlcmF0aW9uYWwtb2JzZXJ2YXRpb25zL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRPcGVyYXRpb25hbE9ic2VydmF0aW9uc0NzdihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vb3BlcmF0aW9uYWwtb2JzZXJ2YXRpb25zL2NzdmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0T3BlcmF0aW9uYWxPYnNlcnZhdGlvbnNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L29wZXJhdGlvbmFsLW9ic2VydmF0aW9ucy9wZGZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09IFJlZ3VsYXRvcnkgVXBkYXRlcyA9PT09PT09PT09PT09PT09PT09PVxuXG4gIGV4cG9ydFJlZ3VsYXRvcnlVcGRhdGVzRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L3JlZ3VsYXRvcnktdXBkYXRlcy9leGNlbGAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0UmVndWxhdG9yeVVwZGF0ZXNDc3YoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L3JlZ3VsYXRvcnktdXBkYXRlcy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydFJlZ3VsYXRvcnlVcGRhdGVzUGRmKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9yZWd1bGF0b3J5LXVwZGF0ZXMvcGRmYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PSBBSSBTY2VuYXJpb3MgPT09PT09PT09PT09PT09PT09PT1cblxuICBleHBvcnRBSVNjZW5hcmlvc0V4Y2VsKGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9haS1zY2VuYXJpb3MvZXhjZWxgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEFJU2NlbmFyaW9zQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9haS1zY2VuYXJpb3MvY3N2YCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRBSVNjZW5hcmlvc1BkZihpZHM/OiBudW1iZXJbXSk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZG93bmxvYWQoYCR7dGhpcy5iYXNlUGF0aH0vYWktc2NlbmFyaW9zL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT0gQWxlcnQgRGVmaW5pdGlvbnMgPT09PT09PT09PT09PT09PT09PT1cblxuICBleHBvcnRBbGVydERlZmluaXRpb25zRXhjZWwoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2FsZXJ0LWRlZmluaXRpb25zL2V4Y2VsYCwge1xuICAgICAgcGFyYW1zOiBpZHM/Lmxlbmd0aCA/IHsgaWRzOiBpZHMuam9pbignLCcpIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBleHBvcnRBbGVydERlZmluaXRpb25zQ3N2KGlkcz86IG51bWJlcltdKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kb3dubG9hZChgJHt0aGlzLmJhc2VQYXRofS9hbGVydC1kZWZpbml0aW9ucy9jc3ZgLCB7XG4gICAgICBwYXJhbXM6IGlkcz8ubGVuZ3RoID8geyBpZHM6IGlkcy5qb2luKCcsJykgfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIGV4cG9ydEFsZXJ0RGVmaW5pdGlvbnNQZGYoaWRzPzogbnVtYmVyW10pOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRvd25sb2FkKGAke3RoaXMuYmFzZVBhdGh9L2FsZXJ0LWRlZmluaXRpb25zL3BkZmAsIHtcbiAgICAgIHBhcmFtczogaWRzPy5sZW5ndGggPyB7IGlkczogaWRzLmpvaW4oJywnKSB9IDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BaseCrudService } from './base-crud.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../core/http-client.service";
|
|
5
|
+
import * as i2 from "../../core/websocket.service";
|
|
6
|
+
/** CRUD for grid nodes (`/api/grid/nodes`). Requires the grid-management plugin. */
|
|
7
|
+
export class GridNodeService extends BaseCrudService {
|
|
8
|
+
resourcePath = '/api/grid/nodes';
|
|
9
|
+
constructor(http) {
|
|
10
|
+
super(http);
|
|
11
|
+
}
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridNodeService, deps: [{ token: i1.TgmHttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
13
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridNodeService, providedIn: 'root' });
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridNodeService, decorators: [{
|
|
16
|
+
type: Injectable,
|
|
17
|
+
args: [{ providedIn: 'root' }]
|
|
18
|
+
}], ctorParameters: () => [{ type: i1.TgmHttpClient }] });
|
|
19
|
+
/** CRUD for grid links/edges (`/api/grid/links`). */
|
|
20
|
+
export class GridLinkService extends BaseCrudService {
|
|
21
|
+
resourcePath = '/api/grid/links';
|
|
22
|
+
constructor(http) {
|
|
23
|
+
super(http);
|
|
24
|
+
}
|
|
25
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridLinkService, deps: [{ token: i1.TgmHttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
26
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridLinkService, providedIn: 'root' });
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridLinkService, decorators: [{
|
|
29
|
+
type: Injectable,
|
|
30
|
+
args: [{ providedIn: 'root' }]
|
|
31
|
+
}], ctorParameters: () => [{ type: i1.TgmHttpClient }] });
|
|
32
|
+
/**
|
|
33
|
+
* Real-time distribution-grid view: the status snapshot that powers the map plus a live STOMP feed.
|
|
34
|
+
*
|
|
35
|
+
* Typical usage:
|
|
36
|
+
* ```ts
|
|
37
|
+
* grid.status().subscribe(r => this.render(r.data)); // initial map render
|
|
38
|
+
* grid.liveStatus().subscribe(snapshot => this.render(snapshot)); // live updates
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export class GridService {
|
|
42
|
+
http;
|
|
43
|
+
ws;
|
|
44
|
+
base = '/api/grid';
|
|
45
|
+
static TOPIC_STATUS = '/topic/grid/status';
|
|
46
|
+
constructor(http, ws) {
|
|
47
|
+
this.http = http;
|
|
48
|
+
this.ws = ws;
|
|
49
|
+
}
|
|
50
|
+
/** Live status snapshot of every node (for the initial map render). */
|
|
51
|
+
status() {
|
|
52
|
+
return this.http.get(`${this.base}/status`);
|
|
53
|
+
}
|
|
54
|
+
/** All links/edges (for drawing the topology). */
|
|
55
|
+
links() {
|
|
56
|
+
return this.http.get(`${this.base}/links`);
|
|
57
|
+
}
|
|
58
|
+
/** Admin: recompute and persist live states, then broadcast over WebSocket. */
|
|
59
|
+
recompute() {
|
|
60
|
+
return this.http.post(`${this.base}/status/recompute`, {});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Live stream of full status snapshots pushed on `/topic/grid/status`.
|
|
64
|
+
* Ensure {@link WebSocketService.connect} has been called once after login.
|
|
65
|
+
*/
|
|
66
|
+
liveStatus() {
|
|
67
|
+
return this.ws.subscribe(GridService.TOPIC_STATUS);
|
|
68
|
+
}
|
|
69
|
+
/** Live stream for a single node pushed on `/topic/grid/node/{id}`. */
|
|
70
|
+
liveNode(nodeId) {
|
|
71
|
+
return this.ws.subscribe(`/topic/grid/node/${nodeId}`);
|
|
72
|
+
}
|
|
73
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridService, deps: [{ token: i1.TgmHttpClient }, { token: i2.WebSocketService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
74
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridService, providedIn: 'root' });
|
|
75
|
+
}
|
|
76
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridService, decorators: [{
|
|
77
|
+
type: Injectable,
|
|
78
|
+
args: [{ providedIn: 'root' }]
|
|
79
|
+
}], ctorParameters: () => [{ type: i1.TgmHttpClient }, { type: i2.WebSocketService }] });
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hcGkvZ3JpZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBSXRELG9GQUFvRjtBQUVwRixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxlQUF5QjtJQUNsRCxZQUFZLEdBQUcsaUJBQWlCLENBQUM7SUFDM0MsWUFBWSxJQUFtQjtRQUM3QixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZCxDQUFDO3dHQUpVLGVBQWU7NEdBQWYsZUFBZSxjQURGLE1BQU07OzRGQUNuQixlQUFlO2tCQUQzQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7QUFRbEMscURBQXFEO0FBRXJELE1BQU0sT0FBTyxlQUFnQixTQUFRLGVBQXlCO0lBQ2xELFlBQVksR0FBRyxpQkFBaUIsQ0FBQztJQUMzQyxZQUFZLElBQW1CO1FBQzdCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNkLENBQUM7d0dBSlUsZUFBZTs0R0FBZixlQUFlLGNBREYsTUFBTTs7NEZBQ25CLGVBQWU7a0JBRDNCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztBQVFsQzs7Ozs7Ozs7R0FRRztBQUVILE1BQU0sT0FBTyxXQUFXO0lBSUY7SUFBNkI7SUFIekMsSUFBSSxHQUFHLFdBQVcsQ0FBQztJQUMzQixNQUFNLENBQVUsWUFBWSxHQUFHLG9CQUFvQixDQUFDO0lBRXBELFlBQW9CLElBQW1CLEVBQVUsRUFBb0I7UUFBakQsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUFVLE9BQUUsR0FBRixFQUFFLENBQWtCO0lBQUcsQ0FBQztJQUV6RSx1RUFBdUU7SUFDdkUsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWdDLEdBQUcsSUFBSSxDQUFDLElBQUksU0FBUyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELGtEQUFrRDtJQUNsRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBMEIsR0FBRyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFtQyxHQUFHLElBQUksQ0FBQyxJQUFJLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQy9GLENBQUM7SUFFRDs7O09BR0c7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBbUIsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCx1RUFBdUU7SUFDdkUsUUFBUSxDQUFDLE1BQWM7UUFDckIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBaUIsb0JBQW9CLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDekUsQ0FBQzt3R0FoQ1UsV0FBVzs0R0FBWCxXQUFXLGNBREUsTUFBTTs7NEZBQ25CLFdBQVc7a0JBRHZCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGdtSHR0cENsaWVudCB9IGZyb20gJy4uLy4uL2NvcmUvaHR0cC1jbGllbnQuc2VydmljZSc7XG5pbXBvcnQgeyBXZWJTb2NrZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS93ZWJzb2NrZXQuc2VydmljZSc7XG5pbXBvcnQgeyBCYXNlQ3J1ZFNlcnZpY2UgfSBmcm9tICcuL2Jhc2UtY3J1ZC5zZXJ2aWNlJztcbmltcG9ydCB7IEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Jhc2UubW9kZWxzJztcbmltcG9ydCB7IEdyaWRMaW5rLCBHcmlkTm9kZSwgR3JpZE5vZGVTdGF0dXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBpL2dyaWQubW9kZWxzJztcblxuLyoqIENSVUQgZm9yIGdyaWQgbm9kZXMgKGAvYXBpL2dyaWQvbm9kZXNgKS4gUmVxdWlyZXMgdGhlIGdyaWQtbWFuYWdlbWVudCBwbHVnaW4uICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEdyaWROb2RlU2VydmljZSBleHRlbmRzIEJhc2VDcnVkU2VydmljZTxHcmlkTm9kZT4ge1xuICBwcm90ZWN0ZWQgcmVzb3VyY2VQYXRoID0gJy9hcGkvZ3JpZC9ub2Rlcyc7XG4gIGNvbnN0cnVjdG9yKGh0dHA6IFRnbUh0dHBDbGllbnQpIHtcbiAgICBzdXBlcihodHRwKTtcbiAgfVxufVxuXG4vKiogQ1JVRCBmb3IgZ3JpZCBsaW5rcy9lZGdlcyAoYC9hcGkvZ3JpZC9saW5rc2ApLiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlua1NlcnZpY2UgZXh0ZW5kcyBCYXNlQ3J1ZFNlcnZpY2U8R3JpZExpbms+IHtcbiAgcHJvdGVjdGVkIHJlc291cmNlUGF0aCA9ICcvYXBpL2dyaWQvbGlua3MnO1xuICBjb25zdHJ1Y3RvcihodHRwOiBUZ21IdHRwQ2xpZW50KSB7XG4gICAgc3VwZXIoaHR0cCk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZWFsLXRpbWUgZGlzdHJpYnV0aW9uLWdyaWQgdmlldzogdGhlIHN0YXR1cyBzbmFwc2hvdCB0aGF0IHBvd2VycyB0aGUgbWFwIHBsdXMgYSBsaXZlIFNUT01QIGZlZWQuXG4gKlxuICogVHlwaWNhbCB1c2FnZTpcbiAqIGBgYHRzXG4gKiBncmlkLnN0YXR1cygpLnN1YnNjcmliZShyID0+IHRoaXMucmVuZGVyKHIuZGF0YSkpOyAgIC8vIGluaXRpYWwgbWFwIHJlbmRlclxuICogZ3JpZC5saXZlU3RhdHVzKCkuc3Vic2NyaWJlKHNuYXBzaG90ID0+IHRoaXMucmVuZGVyKHNuYXBzaG90KSk7IC8vIGxpdmUgdXBkYXRlc1xuICogYGBgXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgR3JpZFNlcnZpY2Uge1xuICBwcml2YXRlIGJhc2UgPSAnL2FwaS9ncmlkJztcbiAgc3RhdGljIHJlYWRvbmx5IFRPUElDX1NUQVRVUyA9ICcvdG9waWMvZ3JpZC9zdGF0dXMnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogVGdtSHR0cENsaWVudCwgcHJpdmF0ZSB3czogV2ViU29ja2V0U2VydmljZSkge31cblxuICAvKiogTGl2ZSBzdGF0dXMgc25hcHNob3Qgb2YgZXZlcnkgbm9kZSAoZm9yIHRoZSBpbml0aWFsIG1hcCByZW5kZXIpLiAqL1xuICBzdGF0dXMoKTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxHcmlkTm9kZVN0YXR1c1tdPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPEdyaWROb2RlU3RhdHVzW10+PihgJHt0aGlzLmJhc2V9L3N0YXR1c2ApO1xuICB9XG5cbiAgLyoqIEFsbCBsaW5rcy9lZGdlcyAoZm9yIGRyYXdpbmcgdGhlIHRvcG9sb2d5KS4gKi9cbiAgbGlua3MoKTogT2JzZXJ2YWJsZTxBcGlSZXNwb25zZTxHcmlkTGlua1tdPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFwaVJlc3BvbnNlPEdyaWRMaW5rW10+PihgJHt0aGlzLmJhc2V9L2xpbmtzYCk7XG4gIH1cblxuICAvKiogQWRtaW46IHJlY29tcHV0ZSBhbmQgcGVyc2lzdCBsaXZlIHN0YXRlcywgdGhlbiBicm9hZGNhc3Qgb3ZlciBXZWJTb2NrZXQuICovXG4gIHJlY29tcHV0ZSgpOiBPYnNlcnZhYmxlPEFwaVJlc3BvbnNlPHsgY2hhbmdlZDogbnVtYmVyIH0+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFwaVJlc3BvbnNlPHsgY2hhbmdlZDogbnVtYmVyIH0+PihgJHt0aGlzLmJhc2V9L3N0YXR1cy9yZWNvbXB1dGVgLCB7fSk7XG4gIH1cblxuICAvKipcbiAgICogTGl2ZSBzdHJlYW0gb2YgZnVsbCBzdGF0dXMgc25hcHNob3RzIHB1c2hlZCBvbiBgL3RvcGljL2dyaWQvc3RhdHVzYC5cbiAgICogRW5zdXJlIHtAbGluayBXZWJTb2NrZXRTZXJ2aWNlLmNvbm5lY3R9IGhhcyBiZWVuIGNhbGxlZCBvbmNlIGFmdGVyIGxvZ2luLlxuICAgKi9cbiAgbGl2ZVN0YXR1cygpOiBPYnNlcnZhYmxlPEdyaWROb2RlU3RhdHVzW10+IHtcbiAgICByZXR1cm4gdGhpcy53cy5zdWJzY3JpYmU8R3JpZE5vZGVTdGF0dXNbXT4oR3JpZFNlcnZpY2UuVE9QSUNfU1RBVFVTKTtcbiAgfVxuXG4gIC8qKiBMaXZlIHN0cmVhbSBmb3IgYSBzaW5nbGUgbm9kZSBwdXNoZWQgb24gYC90b3BpYy9ncmlkL25vZGUve2lkfWAuICovXG4gIGxpdmVOb2RlKG5vZGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxHcmlkTm9kZVN0YXR1cz4ge1xuICAgIHJldHVybiB0aGlzLndzLnN1YnNjcmliZTxHcmlkTm9kZVN0YXR1cz4oYC90b3BpYy9ncmlkL25vZGUvJHtub2RlSWR9YCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -101,4 +101,6 @@ export { AuditEntryService } from './audit-entry.service';
|
|
|
101
101
|
export { ThresholdAlertRuleService } from './threshold-alert-rule.service';
|
|
102
102
|
export { CmsContentTypeService, CmsDataService } from './cms.service';
|
|
103
103
|
export { CmsMenuHelper } from './cms-menu.helper';
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2FwaS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckYsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSwwQkFBMEIsRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JJLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxpQ0FBaUMsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9JLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSxN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RSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBK0IsTUFBTSxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEJhc2VDcnVkU2VydmljZSB9IGZyb20gJy4vYmFzZS1jcnVkLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlVc2FnZVNlcnZpY2UgfSBmcm9tICcuL2FpLXVzYWdlLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tcGFueVNlcnZpY2UgfSBmcm9tICcuL2NvbXBhbnkuc2VydmljZSc7XG5leHBvcnQgeyBVbml0U2VydmljZSB9IGZyb20gJy4vdW5pdC5zZXJ2aWNlJztcbmV4cG9ydCB7IENvbXBvbmVudFNlcnZpY2UsIENvbXBvbmVudEdyb3VwU2VydmljZSwgU3ViQXNzZW1ibHlTZXJ2aWNlIH0gZnJvbSAnLi9jb21wb25lbnQuc2VydmljZSc7XG5leHBvcnQgeyBJbnNwZWN0aW9uU2VydmljZSwgSW5zcGVjdGlvbkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tICcuL2luc3BlY3Rpb24uc2VydmljZSc7XG5leHBvcnQgeyBGYWlsdXJlU2VydmljZSwgRmFpbHVyZUNhdXNlU2VydmljZSwgRmFpbHVyZUFjdGlvblNlcnZpY2UsIENvcnJlY3RpdmVBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9mYWlsdXJlLnNlcnZpY2UnO1xuZXhwb3J0IHsgSW50ZXJ2ZW50aW9uU2VydmljZSB9IGZyb20gJy4vaW50ZXJ2ZW50aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgTWFpbnRlbmFuY2VSZWNvcmRTZXJ2aWNlIH0gZnJvbSAnLi9tYWludGVuYW5jZS1yZWNvcmQuc2VydmljZSc7XG5leHBvcnQgeyBJbnRlcnZlbnRpb25SZXF1ZXN0U2VydmljZSB9IGZyb20gJy4vaW50ZXJ2ZW50aW9uLXJlcXVlc3Quc2VydmljZSc7XG5leHBvcnQgeyBNYXRlcmlhbEl0ZW1TZXJ2aWNlLCBNYXRlcmlhbEl0ZW1IaXN0b3J5U2VydmljZSwgTWF0ZXJpYWxDYXRlZ29yeVNlcnZpY2UsIFNwYXJlUGFydFNlcnZpY2UgfSBmcm9tICcuL21hdGVyaWFsLWl0ZW0uc2VydmljZSc7XG5leHBvcnQgeyBNYXRlcmlhbENvbnN1bWFibGVTZXJ2aWNlLCBNYXRlcmlhbENvbnN1bWFibGVDYXRlZ29yeVNlcnZpY2UsIE1hdGVyaWFsQ29uc3VtYWJsZUhpc3RvcnlTZXJ2aWNlIH0gZnJvbSAnLi9tYXRlcmlhbC1jb25zdW1hYmxlLnNlcnZpY2UnO1xuZXhwb3J0IHsgTWF0ZXJpYWxJbnN0cnVtZW50U2VydmljZSwgTWF0ZXJpYWxJbnN0cnVtZW50SGlzdG9yeVNlcnZpY2UgfSBmcm9tICcuL21hdGVyaWFsLWluc3RydW1lbnQuc2VydmljZSc7XG5leHBvcnQgeyBNYXRlcmlhbFRvb2xpbmdTZXJ2aWNlLCBNYXRlcmlhbFRvb2xpbmdDYXRlZ29yeVNlcnZpY2UsIE1hdGVyaWFsVG9vbGluZ0hpc3RvcnlTZXJ2aWNlIH0gZnJvbSAnLi9tYXRlcmlhbC10b29saW5nLnNlcnZpY2UnO1xuZXhwb3J0IHsgU2Vuc29yU2VydmljZSB9IGZyb20gJy4vc2Vuc29yLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi9hbGVydC5zZXJ2aWNlJztcbmV4cG9ydCB7IFByb2plY3RTZXJ2aWNlIH0gZnJvbSAnLi9wcm9qZWN0LnNlcnZpY2UnO1xuZXhwb3J0IHsgQ2FwZXhQcm9qZWN0U2VydmljZSB9IGZyb20gJy4vY2FwZXgtcHJvamVjdC5zZXJ2aWNlJztcbmV4cG9ydCB7IEJ1ZGdldFNlcnZpY2UgfSBmcm9tICcuL2J1ZGdldC5zZXJ2aWNlJztcbmV4cG9ydCB7IEJpZFNlcnZpY2UgfSBmcm9tICcuL2JpZC5zZXJ2aWNlJztcbmV4cG9ydCB7IFRnRmlsZVNlcnZpY2UsIFRnRm9sZGVyU2VydmljZSwgRHJhd2luZ1NlcnZpY2UsIERyYXdpbmdDYXRlZ29yeVNlcnZpY2UgfSBmcm9tICcuL2RvY3VtZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tcGxpYW5jZU9ibGlnYXRpb25TZXJ2aWNlLCBDb21wbGlhbmNlU3VibWlzc2lvblNlcnZpY2UsIEVudmlyb25tZW50YWxQZXJtaXRTZXJ2aWNlLCBDZXJ0aWZpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vY29tcGxpYW5jZS5zZXJ2aWNlJztcbmV4cG9ydCB7IEFuY2lsbGFyeVNlcnZpY2VDcnVkU2VydmljZSwgR3JpZENvbm5lY3Rpb25TZXJ2aWNlLCBDdXJ0YWlsbWVudEV2ZW50U2VydmljZSwgT3V0YWdlRXZlbnRTZXJ2aWNlLCBPcGVyYXRpbmdFdmVudFNlcnZpY2UsIFNpdGVBc3Nlc3NtZW50U2VydmljZSB9IGZyb20gJy4vZW5lcmd5LnNlcnZpY2UnO1xuZXhwb3J0IHsgV2FycmFudHlDb250cmFjdFNlcnZpY2UsIFdhcnJhbnR5Q2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi93YXJyYW50eS5zZXJ2aWNlJztcbmV4cG9ydCB7IFZlaGljbGVTZXJ2aWNlLCBEcml2ZXJTZXJ2aWNlLCBWZWhpY2xlVHJpcFNlcnZpY2UsIFZlaGljbGVJbnNwZWN0aW9uU2VydmljZSwgVmVoaWNsZU1haW50ZW5hbmNlU2VydmljZSwgRnVlbFJlY29yZFNlcnZpY2UsIEdlb2ZlbmNlU2VydmljZSwgR2VvZmVuY2VFdmVudFNlcnZpY2UsIEdwc0xvY2F0aW9uU2VydmljZSwgVHJhY2tlZEVudGl0eVNlcnZpY2UgfSBmcm9tICcuL2ZsZWV0LnNlcnZpY2UnO1xuZXhwb3J0IHsgU2xhQnJlYWNoUmVjb3JkU2VydmljZSB9IGZyb20gJy4vc2xhLnNlcnZpY2UnO1xuZXhwb3J0IHsgUmVwb3J0aW5nU2VydmljZSB9IGZyb20gJy4vcmVwb3J0aW5nLnNlcnZpY2UnO1xuZXhwb3J0IHsgQnVsa09wZXJhdGlvblNlcnZpY2UgfSBmcm9tICcuL2J1bGstb3BlcmF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtcbiAgQXJ0aWNsZVNlcnZpY2UsIEFydGljbGVDYXRlZ29yeVNlcnZpY2UsIEFydGljbGVUb3BpY1NlcnZpY2UsXG4gIEJlc3RQcmFjdGljZVNlcnZpY2UsIEJlc3RQcmFjdGljZUNhdGVnb3J5U2VydmljZSxcbiAgRmFxU2VydmljZSwgRmFxQ2F0ZWdvcnlTZXJ2aWNlLFxuICBMZXNzb25MZWFybmVkU2VydmljZSxcbiAgUmVzb3VyY2VTZXJ2aWNlLCBSZXNvdXJjZUNhdGVnb3J5U2VydmljZSwgUmVzb3VyY2VUb3BpY1NlcnZpY2UsXG4gIE1vZHVsZVNlcnZpY2UsIE1vZHVsZUxlYXJuaW5nU2VydmljZSwgTW9kdWxlVmlkZW9TZXJ2aWNlLFxuICBMZWFybmluZ01vZHVsZUNhdGVnb3J5U2VydmljZSwgVXNlckxlYXJuaW5nU2VydmljZSxcbiAgVHJhaW5pbmdDZXJ0aWZpY2F0ZVNlcnZpY2UsXG59IGZyb20gJy4va25vd2xlZGdlLnNlcnZpY2UnO1xuZXhwb3J0IHsgUm9vdENhdXNlQW5hbHlzaXNTZXJ2aWNlLCBTeXN0ZW1pY1Jpc2tBc3Nlc3NtZW50U2VydmljZSB9IGZyb20gJy4vcXVhbGl0eS5zZXJ2aWNlJztcbmV4cG9ydCB7IEFwcHJvdmFsV29ya2Zsb3dTZXJ2aWNlIGFzIFdvcmtmbG93U2VydmljZSB9IGZyb20gJy4vd29ya2Zsb3cuc2VydmljZSc7XG5leHBvcnQgeyBDdXN0b21GaWVsZERlZmluaXRpb25TZXJ2aWNlLCBDdXN0b21GaWVsZFNlcnZpY2UsIEN1c3RvbUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi9jdXN0b20tZmllbGQuc2VydmljZSc7XG5leHBvcnQgeyBVc2VyU2VydmljZSwgVXNlclByb2ZpbGVTZXJ2aWNlLCBVc2VyTm90aWZpY2F0aW9uU2VydmljZSwgUm9sZVNlcnZpY2UsIFByb2ZpbGVTZXJ2aWNlLCBQcm9maWxlUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuL3VzZXIuc2VydmljZSc7XG5leHBvcnQgeyBDb21tdW5pdHlQb3N0U2VydmljZSwgQ29tbXVuaXR5Q29tbWVudFNlcnZpY2UsIEZlZWRiYWNrU2VydmljZSB9IGZyb20gJy4vY29tbXVuaXR5LnNlcnZpY2UnO1xuZXhwb3J0IHsgRXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9ldmVudC5zZXJ2aWNlJztcbmV4cG9ydCB7IExvY2F0aW9uU2VydmljZSB9IGZyb20gJy4vbG9jYXRpb24uc2VydmljZSc7XG5leHBvcnQgeyBEZXBhcnRtZW50U2VydmljZSB9IGZyb20gJy4vZGVwYXJ0bWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7IFJvb21TZXJ2aWNlIH0gZnJvbSAnLi9yb29tLnNlcnZpY2UnO1xuZXhwb3J0IHsgVXBsb2FkU2VydmljZSB9IGZyb20gJy4vdXBsb2FkLnNlcnZpY2UnO1xuZXhwb3J0IHsgU2VhcmNoU2VydmljZSB9IGZyb20gJy4vc2VhcmNoLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlTZXJ2aWNlIH0gZnJvbSAnLi9haS5zZXJ2aWNlJztcbmV4cG9ydCB7IEFnZW50U2VydmljZSB9IGZyb20gJy4vYWdlbnQuc2VydmljZSc7XG5leHBvcnQgeyBTYW5kYm94U2VydmljZSB9IGZyb20gJy4vc2FuZGJveC5zZXJ2aWNlJztcbmV4cG9ydCB7IEV4dGVuc2lvblNlcnZpY2UgfSBmcm9tICcuL2V4dGVuc2lvbi5zZXJ2aWNlJztcbmV4cG9ydCB7IERhc2hib2FyZFNlcnZpY2UgfSBmcm9tICcuL2Rhc2hib2FyZC5zZXJ2aWNlJztcbmV4cG9ydCB7IEV4cG9ydFNlcnZpY2UgfSBmcm9tICcuL2V4cG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB7IFRvZG9TZXJ2aWNlIH0gZnJvbSAnLi90b2RvLnNlcnZpY2UnO1xuZXhwb3J0IHsgVGlja2V0U2VydmljZSB9IGZyb20gJy4vdGlja2V0LnNlcnZpY2UnO1xuZXhwb3J0IHsgTm90ZVNlcnZpY2UgfSBmcm9tICcuL25vdGUuc2VydmljZSc7XG5leHBvcnQgeyBMb2dTZXJ2aWNlIH0gZnJvbSAnLi9sb2cuc2VydmljZSc7XG5leHBvcnQgeyBMb2dpbkhpc3RvcnlTZXJ2aWNlIH0gZnJvbSAnLi9sb2dpbi1oaXN0b3J5LnNlcnZpY2UnO1xuZXhwb3J0IHtcbiAgR2F0ZVN5c3RlbVNlcnZpY2UsIEFsZXJ0RGVmaW5pdGlvblNlcnZpY2UsIE1hbnVhbFJlYWRpbmdTZXJ2aWNlLFxuICBMYWJvcmF0b3J5UmVzdWx0U2VydmljZSwgRmlzaE1vbml0b3JpbmdTZXJ2aWNlLCBSZWd1bGF0b3J5VXBkYXRlU2VydmljZSxcbiAgT3BlcmF0aW9uYWxPYnNlcnZhdGlvblNlcnZpY2UsIEJhdGh5bWV0cmljU3VydmV5U2VydmljZSwgQUlTY2VuYXJpb1NlcnZpY2UsXG4gIFJlc2Vydm9pclRpbWVTZXJpZXNTZXJ2aWNlLCBHYXRlQ29udHJvbFNlcnZpY2UsXG4gIEVsZXZhdGlvblN0b3JhZ2VDdXJ2ZVNlcnZpY2UsIFNlZGltZW50UmVtb3ZhbE9wZXJhdGlvblNlcnZpY2UsIFNlZGltZW50TWFuYWdlbWVudFBsYW5TZXJ2aWNlLFxufSBmcm9tICcuL3Jlc2Vydm9pci5zZXJ2aWNlJztcbmV4cG9ydCB7XG4gIEpvYlRpdGxlU2VydmljZSwgQ291bnRyeVNlcnZpY2UsIFN1cHBsaWVyU2VydmljZSwgRm9udFNlcnZpY2UsXG4gIEZvcm1TZXJ2aWNlLCBGb3JtQ2F0ZWdvcnlTZXJ2aWNlLCBJbmNpZGVudFNlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlLFxuICBLcGlFdmVudFNlcnZpY2UsIFR1cmJpbmVUeXBlU2VydmljZSwgVGVybXNPZlVzZVNlcnZpY2UsXG4gIFVuaXRTaHV0ZG93bkhpc3RvcnlTZXJ2aWNlLCBQcm9wZXJ0eVNlcnZpY2UsIFByb3BlcnRpZXNHcm91cFNlcnZpY2UsXG4gIFByb3BlcnRpZXNUZW1wbGF0ZVNlcnZpY2UsIE1lYXN1cmVtZW50U2VydmljZSwgTWlIaXN0b3J5U2VydmljZSxcbiAgTWlSZXF1ZXN0U2VydmljZSwgUmVjaGFyZ2VSZXF1ZXN0U2VydmljZSwgUmVmdXJiaXNobWVudFNlcnZpY2UsXG4gIExvZ2luUmVxdWVzdFNlcnZpY2UsIE1haW50ZW5hbmNlSnNhU2VydmljZSwgSnNhSXRlbVNlcnZpY2UsXG4gIEpzYVN0ZXBTZXJ2aWNlLCBDb21wb25lbnRDaGVja2xpc3RTZXJ2aWNlLCBDb21wb25lbnRDaGVja2xpc3RHcm91cFNlcnZpY2UsXG4gIENvbXBvbmVudENoZWNrbGlzdFRlbXBsYXRlU2VydmljZSxcbn0gZnJvbSAnLi9taXNjLWNydWQuc2VydmljZSc7XG5leHBvcnQgeyBDbGllbnRBcnRpY2xlU2VydmljZSB9IGZyb20gJy4vY2xpZW50LWFydGljbGUuc2VydmljZSc7XG5leHBvcnQge1xuICBDb25kaXRpb25Bc3Nlc3NtZW50VGVzdFNlcnZpY2UsXG4gIENhdFBsYW5uaW5nRXF1aXBtZW50SXRlbVNlcnZpY2UsXG4gIENhdFBlcnNvbm5lbEFzc2lnbm1lbnRTZXJ2aWNlLFxuICBDYXRFeGVjdXRpb25SZXN1bHRTZXJ2aWNlLFxuICBDYXRTaWduT2ZmU2VydmljZSxcbiAgQ2F0QXR0YWNobWVudFNlcnZpY2UsXG59IGZyb20gJy4vY2F0LnNlcnZpY2UnO1xuZXhwb3J0IHsgTWFpbnRlbmFuY2VQbGFuU2VydmljZSB9IGZyb20gJy4vbWFpbnRlbmFuY2UtcGxhbi5zZXJ2aWNlJztcbmV4cG9ydCB7IFJlY3VycmluZ0V2ZW50U2VydmljZSB9IGZyb20gJy4vcmVjdXJyaW5nLWV2ZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgVGltZUVudHJ5U2VydmljZSB9IGZyb20gJy4vdGltZS1lbnRyeS5zZXJ2aWNlJztcbmV4cG9ydCB7IFNsYVBvbGljeVNlcnZpY2UgfSBmcm9tICcuL3NsYS1wb2xpY3kuc2VydmljZSc7XG5leHBvcnQgeyBBc3NldExpZmVjeWNsZVNlcnZpY2UgfSBmcm9tICcuL2Fzc2V0LWxpZmVjeWNsZS5zZXJ2aWNlJztcbmV4cG9ydCB7IEluYWN0aXZlQ29tcG9uZW50U2VydmljZSB9IGZyb20gJy4vaW5hY3RpdmUtY29tcG9uZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tcG9uZW50TG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9jb21wb25lbnQtbG9jYXRpb24uc2VydmljZSc7XG5leHBvcnQgeyBDb21wb25lbnRJbmZvU2VydmljZSB9IGZyb20gJy4vY29tcG9uZW50LWluZm8uc2VydmljZSc7XG5leHBvcnQgeyBDb21wYW55TWF0ZXJpYWxUeXBlU2VydmljZSB9IGZyb20gJy4vY29tcGFueS1tYXRlcmlhbC10eXBlLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tcGFueU1hdGVyaWFsU2VydmljZSB9IGZyb20gJy4vY29tcGFueS1tYXRlcmlhbC5zZXJ2aWNlJztcbmV4cG9ydCB7IFdhcmVob3VzZVNlcnZpY2UsIFdhcmVob3VzZVN0b2NrU2VydmljZSB9IGZyb20gJy4vd2FyZWhvdXNlLnNlcnZpY2UnO1xuZXhwb3J0IHsgUHVyY2hhc2VPcmRlclNlcnZpY2UsIEdvb2RzUmVjZWlwdFNlcnZpY2UsIFN0b2NrTW92ZW1lbnRTZXJ2aWNlLCBTdG9ja0NvdW50U2VydmljZSB9IGZyb20gJy4vcHJvY3VyZW1lbnQuc2VydmljZSc7XG5leHBvcnQgeyBMaWNlbnNlU2VydmljZSB9IGZyb20gJy4vbGljZW5zZS5zZXJ2aWNlJztcbmV4cG9ydCB7IFdvcmtQZXJtaXRTZXJ2aWNlIH0gZnJvbSAnLi93b3JrLXBlcm1pdC5zZXJ2aWNlJztcbmV4cG9ydCB7IERpYWdub3N0aWNSZXBvcnRTZXJ2aWNlIH0gZnJvbSAnLi9kaWFnbm9zdGljLXJlcG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB7IEN1c3RvbVNlcnZpY2UgfSBmcm9tICcuL2N1c3RvbS5zZXJ2aWNlJztcbmV4cG9ydCB7IERpZ2l0YWxUd2luU2VydmljZSwgTW9kZWxTZXJ2aWNlLCBNb2RlbEZpbGVTZXJ2aWNlLCBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4vZGlnaXRhbC10d2luLnNlcnZpY2UnO1xuZXhwb3J0IHsgRHluYW1pY0NydWRTZXJ2aWNlIH0gZnJvbSAnLi9keW5hbWljLWNydWQuc2VydmljZSc7XG5leHBvcnQgeyBVcGxvYWRXaXRoUmVmT3B0aW9ucyB9IGZyb20gJy4vdXBsb2FkLnNlcnZpY2UnO1xuZXhwb3J0IHsgV29ya09yZGVyU2VydmljZSB9IGZyb20gJy4vd29yay1vcmRlci5zZXJ2aWNlJztcbmV4cG9ydCB7IFBsYW50RGF0YVNlcnZpY2UgfSBmcm9tICcuL3BsYW50LWRhdGEuc2VydmljZSc7XG5leHBvcnQgeyBSZXNlcnZvaXJEYXRhU2VydmljZSB9IGZyb20gJy4vcmVzZXJ2b2lyLWRhdGEuc2VydmljZSc7XG5leHBvcnQgeyBBaUZlZWRiYWNrU2VydmljZSB9IGZyb20gJy4vYWktZmVlZGJhY2suc2VydmljZSc7XG5leHBvcnQgeyBEZXZpY2VHYXRld2F5U2VydmljZSB9IGZyb20gJy4vZGV2aWNlLWdhdGV3YXkuc2VydmljZSc7XG5leHBvcnQgeyBPdXRhZ2VSZXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuL291dGFnZS1yZXNvdXJjZS5zZXJ2aWNlJztcbmV4cG9ydCB7IEVuZXJneVByb2R1Y3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9lbmVyZ3ktcHJvZHVjdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCB7IEVuZXJneUFuYWx5dGljc1NlcnZpY2UgfSBmcm9tICcuL2VuZXJneS1hbmFseXRpY3Muc2VydmljZSc7XG5leHBvcnQgeyBNZWFzdXJlbWVudFVuaXRTZXJ2aWNlIH0gZnJvbSAnLi9tZWFzdXJlbWVudC11bml0LnNlcnZpY2UnO1xuZXhwb3J0IHsgUHJvcGVydHlUZW1wbGF0ZVNlcnZpY2UgfSBmcm9tICcuL3Byb3BlcnR5LXRlbXBsYXRlLnNlcnZpY2UnO1xuZXhwb3J0IHtcbiAgQWlwU2V0dGluZ3NTZXJ2aWNlLCBBaXBBc3Nlc3NtZW50U2VydmljZSwgSW52ZXN0bWVudE9wdGlvblNlcnZpY2UsXG4gIEFpcFBsYW5TZXJ2aWNlLCBBaXBTY2VuYXJpb1NlcnZpY2UsIEFpcEFuYWx5c2lzU2VydmljZSxcbiAgQWlwUmVzb3VyY2VDb25zdHJhaW50U2VydmljZSwgQWlwTmV0d29ya05vZGVTZXJ2aWNlLCBBaXBQZXJmb3JtYW5jZVJlY29yZFNlcnZpY2UsXG59IGZyb20gJy4vYWlwLnNlcnZpY2UnO1xuZXhwb3J0IHtcbiAgRGVmZXJyYWxFdmFsdWF0aW9uU2VydmljZSwgRGVmZXJyYWxDb25zdHJhaW50UnVsZVNlcnZpY2UsIERlZmVycmFsRGVjaXNpb25TZXJ2aWNlLFxufSBmcm9tICcuL2RlZmVycmFsLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29ydGV4U2VydmljZSB9IGZyb20gJy4vY29ydGV4LnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29ydGV4Tm9kZVNlcnZpY2UgfSBmcm9tICcuL2NvcnRleC1ub2RlLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29ydGV4RXZlbnRTZXJ2aWNlIH0gZnJvbSAnLi9jb3J0ZXgtZXZlbnQuc2VydmljZSc7XG5leHBvcnQgeyBDb3J0ZXhJbnNpZ2h0U2VydmljZSB9IGZyb20gJy4vY29ydGV4LWluc2lnaHQuc2VydmljZSc7XG5leHBvcnQgeyBBaXBSaXNrQW5hbHlzaXNTZXJ2aWNlIH0gZnJvbSAnLi9haXAtYW5hbHlzaXMuc2VydmljZSc7XG5leHBvcnQgeyBBaXBGaW5hbmNpYWxTZXJ2aWNlIH0gZnJvbSAnLi9haXAtZmluYW5jaWFsLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlwV29ya2Zsb3dTZXJ2aWNlIH0gZnJvbSAnLi9haXAtd29ya2Zsb3cuc2VydmljZSc7XG5leHBvcnQgeyBBaXBSZXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuL2FpcC1yZXNvdXJjZS5zZXJ2aWNlJztcbmV4cG9ydCB7IEFpcE5ldHdvcmtBbmFseXNpc1NlcnZpY2UgfSBmcm9tICcuL2FpcC1uZXR3b3JrLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlwR2VvZ3JhcGhpY1NlcnZpY2UgfSBmcm9tICcuL2FpcC1nZW9ncmFwaGljLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlwUGVyZm9ybWFuY2VTZXJ2aWNlIH0gZnJvbSAnLi9haXAtcGVyZm9ybWFuY2Uuc2VydmljZSc7XG5leHBvcnQgeyBBbm9tYWx5RGV0ZWN0aW9uU2VydmljZSB9IGZyb20gJy4vYW5vbWFseS1kZXRlY3Rpb24uc2VydmljZSc7XG5leHBvcnQgeyBTY2hlZHVsZWRSZXBvcnRTZXJ2aWNlIH0gZnJvbSAnLi9zY2hlZHVsZWQtcmVwb3J0LnNlcnZpY2UnO1xuZXhwb3J0IHsgRW50aXR5Q29tbWVudFNlcnZpY2UgfSBmcm9tICcuL2VudGl0eS1jb21tZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgQXVkaXRFbnRyeVNlcnZpY2UgfSBmcm9tICcuL2F1ZGl0LWVudHJ5LnNlcnZpY2UnO1xuZXhwb3J0IHsgVGhyZXNob2xkQWxlcnRSdWxlU2VydmljZSB9IGZyb20gJy4vdGhyZXNob2xkLWFsZXJ0LXJ1bGUuc2VydmljZSc7XG5leHBvcnQgeyBDbXNDb250ZW50VHlwZVNlcnZpY2UsIENtc0RhdGFTZXJ2aWNlIH0gZnJvbSAnLi9jbXMuc2VydmljZSc7XG5leHBvcnQgeyBDbXNNZW51SGVscGVyLCBDbXNNZW51SXRlbSwgQ21zTWVudVNlY3Rpb24gfSBmcm9tICcuL2Ntcy1tZW51LmhlbHBlcic7XG4iXX0=
|
|
104
|
+
export { GridService, GridNodeService, GridLinkService } from './grid.service';
|
|
105
|
+
export { PluginService } from './plugin.service';
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2FwaS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckYsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSwwQkFBMEIsRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JJLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxpQ0FBaUMsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9JLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSxN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ZFNlcnZpY2UgfSBmcm9tICcuL2Jhc2UtY3J1ZC5zZXJ2aWNlJztcbmV4cG9ydCB7IEFpVXNhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9haS11c2FnZS5zZXJ2aWNlJztcbmV4cG9ydCB7IENvbXBhbnlTZXJ2aWNlIH0gZnJvbSAnLi9jb21wYW55LnNlcnZpY2UnO1xuZXhwb3J0IHsgVW5pdFNlcnZpY2UgfSBmcm9tICcuL3VuaXQuc2VydmljZSc7XG5leHBvcnQgeyBDb21wb25lbnRTZXJ2aWNlLCBDb21wb25lbnRHcm91cFNlcnZpY2UsIFN1YkFzc2VtYmx5U2VydmljZSB9IGZyb20gJy4vY29tcG9uZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgSW5zcGVjdGlvblNlcnZpY2UsIEluc3BlY3Rpb25Db21wb25lbnRTZXJ2aWNlIH0gZnJvbSAnLi9pbnNwZWN0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgRmFpbHVyZVNlcnZpY2UsIEZhaWx1cmVDYXVzZVNlcnZpY2UsIEZhaWx1cmVBY3Rpb25TZXJ2aWNlLCBDb3JyZWN0aXZlQWN0aW9uU2VydmljZSB9IGZyb20gJy4vZmFpbHVyZS5zZXJ2aWNlJztcbmV4cG9ydCB7IEludGVydmVudGlvblNlcnZpY2UgfSBmcm9tICcuL2ludGVydmVudGlvbi5zZXJ2aWNlJztcbmV4cG9ydCB7IE1haW50ZW5hbmNlUmVjb3JkU2VydmljZSB9IGZyb20gJy4vbWFpbnRlbmFuY2UtcmVjb3JkLnNlcnZpY2UnO1xuZXhwb3J0IHsgSW50ZXJ2ZW50aW9uUmVxdWVzdFNlcnZpY2UgfSBmcm9tICcuL2ludGVydmVudGlvbi1yZXF1ZXN0LnNlcnZpY2UnO1xuZXhwb3J0IHsgTWF0ZXJpYWxJdGVtU2VydmljZSwgTWF0ZXJpYWxJdGVtSGlzdG9yeVNlcnZpY2UsIE1hdGVyaWFsQ2F0ZWdvcnlTZXJ2aWNlLCBTcGFyZVBhcnRTZXJ2aWNlIH0gZnJvbSAnLi9tYXRlcmlhbC1pdGVtLnNlcnZpY2UnO1xuZXhwb3J0IHsgTWF0ZXJpYWxDb25zdW1hYmxlU2VydmljZSwgTWF0ZXJpYWxDb25zdW1hYmxlQ2F0ZWdvcnlTZXJ2aWNlLCBNYXRlcmlhbENvbnN1bWFibGVIaXN0b3J5U2VydmljZSB9IGZyb20gJy4vbWF0ZXJpYWwtY29uc3VtYWJsZS5zZXJ2aWNlJztcbmV4cG9ydCB7IE1hdGVyaWFsSW5zdHJ1bWVudFNlcnZpY2UsIE1hdGVyaWFsSW5zdHJ1bWVudEhpc3RvcnlTZXJ2aWNlIH0gZnJvbSAnLi9tYXRlcmlhbC1pbnN0cnVtZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgTWF0ZXJpYWxUb29saW5nU2VydmljZSwgTWF0ZXJpYWxUb29saW5nQ2F0ZWdvcnlTZXJ2aWNlLCBNYXRlcmlhbFRvb2xpbmdIaXN0b3J5U2VydmljZSB9IGZyb20gJy4vbWF0ZXJpYWwtdG9vbGluZy5zZXJ2aWNlJztcbmV4cG9ydCB7IFNlbnNvclNlcnZpY2UgfSBmcm9tICcuL3NlbnNvci5zZXJ2aWNlJztcbmV4cG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4vYWxlcnQuc2VydmljZSc7XG5leHBvcnQgeyBQcm9qZWN0U2VydmljZSB9IGZyb20gJy4vcHJvamVjdC5zZXJ2aWNlJztcbmV4cG9ydCB7IENhcGV4UHJvamVjdFNlcnZpY2UgfSBmcm9tICcuL2NhcGV4LXByb2plY3Quc2VydmljZSc7XG5leHBvcnQgeyBCdWRnZXRTZXJ2aWNlIH0gZnJvbSAnLi9idWRnZXQuc2VydmljZSc7XG5leHBvcnQgeyBCaWRTZXJ2aWNlIH0gZnJvbSAnLi9iaWQuc2VydmljZSc7XG5leHBvcnQgeyBUZ0ZpbGVTZXJ2aWNlLCBUZ0ZvbGRlclNlcnZpY2UsIERyYXdpbmdTZXJ2aWNlLCBEcmF3aW5nQ2F0ZWdvcnlTZXJ2aWNlIH0gZnJvbSAnLi9kb2N1bWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7IENvbXBsaWFuY2VPYmxpZ2F0aW9uU2VydmljZSwgQ29tcGxpYW5jZVN1Ym1pc3Npb25TZXJ2aWNlLCBFbnZpcm9ubWVudGFsUGVybWl0U2VydmljZSwgQ2VydGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvbXBsaWFuY2Uuc2VydmljZSc7XG5leHBvcnQgeyBBbmNpbGxhcnlTZXJ2aWNlQ3J1ZFNlcnZpY2UsIEdyaWRDb25uZWN0aW9uU2VydmljZSwgQ3VydGFpbG1lbnRFdmVudFNlcnZpY2UsIE91dGFnZUV2ZW50U2VydmljZSwgT3BlcmF0aW5nRXZlbnRTZXJ2aWNlLCBTaXRlQXNzZXNzbWVudFNlcnZpY2UgfSBmcm9tICcuL2VuZXJneS5zZXJ2aWNlJztcbmV4cG9ydCB7IFdhcnJhbnR5Q29udHJhY3RTZXJ2aWNlLCBXYXJyYW50eUNsYWltU2VydmljZSB9IGZyb20gJy4vd2FycmFudHkuc2VydmljZSc7XG5leHBvcnQgeyBWZWhpY2xlU2VydmljZSwgRHJpdmVyU2VydmljZSwgVmVoaWNsZVRyaXBTZXJ2aWNlLCBWZWhpY2xlSW5zcGVjdGlvblNlcnZpY2UsIFZlaGljbGVNYWludGVuYW5jZVNlcnZpY2UsIEZ1ZWxSZWNvcmRTZXJ2aWNlLCBHZW9mZW5jZVNlcnZpY2UsIEdlb2ZlbmNlRXZlbnRTZXJ2aWNlLCBHcHNMb2NhdGlvblNlcnZpY2UsIFRyYWNrZWRFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi9mbGVldC5zZXJ2aWNlJztcbmV4cG9ydCB7IFNsYUJyZWFjaFJlY29yZFNlcnZpY2UgfSBmcm9tICcuL3NsYS5zZXJ2aWNlJztcbmV4cG9ydCB7IFJlcG9ydGluZ1NlcnZpY2UgfSBmcm9tICcuL3JlcG9ydGluZy5zZXJ2aWNlJztcbmV4cG9ydCB7IEJ1bGtPcGVyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9idWxrLW9wZXJhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCB7XG4gIEFydGljbGVTZXJ2aWNlLCBBcnRpY2xlQ2F0ZWdvcnlTZXJ2aWNlLCBBcnRpY2xlVG9waWNTZXJ2aWNlLFxuICBCZXN0UHJhY3RpY2VTZXJ2aWNlLCBCZXN0UHJhY3RpY2VDYXRlZ29yeVNlcnZpY2UsXG4gIEZhcVNlcnZpY2UsIEZhcUNhdGVnb3J5U2VydmljZSxcbiAgTGVzc29uTGVhcm5lZFNlcnZpY2UsXG4gIFJlc291cmNlU2VydmljZSwgUmVzb3VyY2VDYXRlZ29yeVNlcnZpY2UsIFJlc291cmNlVG9waWNTZXJ2aWNlLFxuICBNb2R1bGVTZXJ2aWNlLCBNb2R1bGVMZWFybmluZ1NlcnZpY2UsIE1vZHVsZVZpZGVvU2VydmljZSxcbiAgTGVhcm5pbmdNb2R1bGVDYXRlZ29yeVNlcnZpY2UsIFVzZXJMZWFybmluZ1NlcnZpY2UsXG4gIFRyYWluaW5nQ2VydGlmaWNhdGVTZXJ2aWNlLFxufSBmcm9tICcuL2tub3dsZWRnZS5zZXJ2aWNlJztcbmV4cG9ydCB7IFJvb3RDYXVzZUFuYWx5c2lzU2VydmljZSwgU3lzdGVtaWNSaXNrQXNzZXNzbWVudFNlcnZpY2UgfSBmcm9tICcuL3F1YWxpdHkuc2VydmljZSc7XG5leHBvcnQgeyBBcHByb3ZhbFdvcmtmbG93U2VydmljZSBhcyBXb3JrZmxvd1NlcnZpY2UgfSBmcm9tICcuL3dvcmtmbG93LnNlcnZpY2UnO1xuZXhwb3J0IHsgQ3VzdG9tRmllbGREZWZpbml0aW9uU2VydmljZSwgQ3VzdG9tRmllbGRTZXJ2aWNlLCBDdXN0b21Gb3JtU2VydmljZSB9IGZyb20gJy4vY3VzdG9tLWZpZWxkLnNlcnZpY2UnO1xuZXhwb3J0IHsgVXNlclNlcnZpY2UsIFVzZXJQcm9maWxlU2VydmljZSwgVXNlck5vdGlmaWNhdGlvblNlcnZpY2UsIFJvbGVTZXJ2aWNlLCBQcm9maWxlU2VydmljZSwgUHJvZmlsZVBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi91c2VyLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tbXVuaXR5UG9zdFNlcnZpY2UsIENvbW11bml0eUNvbW1lbnRTZXJ2aWNlLCBGZWVkYmFja1NlcnZpY2UgfSBmcm9tICcuL2NvbW11bml0eS5zZXJ2aWNlJztcbmV4cG9ydCB7IEV2ZW50U2VydmljZSB9IGZyb20gJy4vZXZlbnQuc2VydmljZSc7XG5leHBvcnQgeyBMb2NhdGlvblNlcnZpY2UgfSBmcm9tICcuL2xvY2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgRGVwYXJ0bWVudFNlcnZpY2UgfSBmcm9tICcuL2RlcGFydG1lbnQuc2VydmljZSc7XG5leHBvcnQgeyBSb29tU2VydmljZSB9IGZyb20gJy4vcm9vbS5zZXJ2aWNlJztcbmV4cG9ydCB7IFVwbG9hZFNlcnZpY2UgfSBmcm9tICcuL3VwbG9hZC5zZXJ2aWNlJztcbmV4cG9ydCB7IFNlYXJjaFNlcnZpY2UgfSBmcm9tICcuL3NlYXJjaC5zZXJ2aWNlJztcbmV4cG9ydCB7IEFpU2VydmljZSB9IGZyb20gJy4vYWkuc2VydmljZSc7XG5leHBvcnQgeyBBZ2VudFNlcnZpY2UgfSBmcm9tICcuL2FnZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgU2FuZGJveFNlcnZpY2UgfSBmcm9tICcuL3NhbmRib3guc2VydmljZSc7XG5leHBvcnQgeyBFeHRlbnNpb25TZXJ2aWNlIH0gZnJvbSAnLi9leHRlbnNpb24uc2VydmljZSc7XG5leHBvcnQgeyBEYXNoYm9hcmRTZXJ2aWNlIH0gZnJvbSAnLi9kYXNoYm9hcmQuc2VydmljZSc7XG5leHBvcnQgeyBFeHBvcnRTZXJ2aWNlIH0gZnJvbSAnLi9leHBvcnQuc2VydmljZSc7XG5leHBvcnQgeyBUb2RvU2VydmljZSB9IGZyb20gJy4vdG9kby5zZXJ2aWNlJztcbmV4cG9ydCB7IFRpY2tldFNlcnZpY2UgfSBmcm9tICcuL3RpY2tldC5zZXJ2aWNlJztcbmV4cG9ydCB7IE5vdGVTZXJ2aWNlIH0gZnJvbSAnLi9ub3RlLnNlcnZpY2UnO1xuZXhwb3J0IHsgTG9nU2VydmljZSB9IGZyb20gJy4vbG9nLnNlcnZpY2UnO1xuZXhwb3J0IHsgTG9naW5IaXN0b3J5U2VydmljZSB9IGZyb20gJy4vbG9naW4taGlzdG9yeS5zZXJ2aWNlJztcbmV4cG9ydCB7XG4gIEdhdGVTeXN0ZW1TZXJ2aWNlLCBBbGVydERlZmluaXRpb25TZXJ2aWNlLCBNYW51YWxSZWFkaW5nU2VydmljZSxcbiAgTGFib3JhdG9yeVJlc3VsdFNlcnZpY2UsIEZpc2hNb25pdG9yaW5nU2VydmljZSwgUmVndWxhdG9yeVVwZGF0ZVNlcnZpY2UsXG4gIE9wZXJhdGlvbmFsT2JzZXJ2YXRpb25TZXJ2aWNlLCBCYXRoeW1ldHJpY1N1cnZleVNlcnZpY2UsIEFJU2NlbmFyaW9TZXJ2aWNlLFxuICBSZXNlcnZvaXJUaW1lU2VyaWVzU2VydmljZSwgR2F0ZUNvbnRyb2xTZXJ2aWNlLFxuICBFbGV2YXRpb25TdG9yYWdlQ3VydmVTZXJ2aWNlLCBTZWRpbWVudFJlbW92YWxPcGVyYXRpb25TZXJ2aWNlLCBTZWRpbWVudE1hbmFnZW1lbnRQbGFuU2VydmljZSxcbn0gZnJvbSAnLi9yZXNlcnZvaXIuc2VydmljZSc7XG5leHBvcnQge1xuICBKb2JUaXRsZVNlcnZpY2UsIENvdW50cnlTZXJ2aWNlLCBTdXBwbGllclNlcnZpY2UsIEZvbnRTZXJ2aWNlLFxuICBGb3JtU2VydmljZSwgRm9ybUNhdGVnb3J5U2VydmljZSwgSW5jaWRlbnRTZXJ2aWNlLCBNZXNzYWdlU2VydmljZSxcbiAgS3BpRXZlbnRTZXJ2aWNlLCBUdXJiaW5lVHlwZVNlcnZpY2UsIFRlcm1zT2ZVc2VTZXJ2aWNlLFxuICBVbml0U2h1dGRvd25IaXN0b3J5U2VydmljZSwgUHJvcGVydHlTZXJ2aWNlLCBQcm9wZXJ0aWVzR3JvdXBTZXJ2aWNlLFxuICBQcm9wZXJ0aWVzVGVtcGxhdGVTZXJ2aWNlLCBNZWFzdXJlbWVudFNlcnZpY2UsIE1pSGlzdG9yeVNlcnZpY2UsXG4gIE1pUmVxdWVzdFNlcnZpY2UsIFJlY2hhcmdlUmVxdWVzdFNlcnZpY2UsIFJlZnVyYmlzaG1lbnRTZXJ2aWNlLFxuICBMb2dpblJlcXVlc3RTZXJ2aWNlLCBNYWludGVuYW5jZUpzYVNlcnZpY2UsIEpzYUl0ZW1TZXJ2aWNlLFxuICBKc2FTdGVwU2VydmljZSwgQ29tcG9uZW50Q2hlY2tsaXN0U2VydmljZSwgQ29tcG9uZW50Q2hlY2tsaXN0R3JvdXBTZXJ2aWNlLFxuICBDb21wb25lbnRDaGVja2xpc3RUZW1wbGF0ZVNlcnZpY2UsXG59IGZyb20gJy4vbWlzYy1jcnVkLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ2xpZW50QXJ0aWNsZVNlcnZpY2UgfSBmcm9tICcuL2NsaWVudC1hcnRpY2xlLnNlcnZpY2UnO1xuZXhwb3J0IHtcbiAgQ29uZGl0aW9uQXNzZXNzbWVudFRlc3RTZXJ2aWNlLFxuICBDYXRQbGFubmluZ0VxdWlwbWVudEl0ZW1TZXJ2aWNlLFxuICBDYXRQZXJzb25uZWxBc3NpZ25tZW50U2VydmljZSxcbiAgQ2F0RXhlY3V0aW9uUmVzdWx0U2VydmljZSxcbiAgQ2F0U2lnbk9mZlNlcnZpY2UsXG4gIENhdEF0dGFjaG1lbnRTZXJ2aWNlLFxufSBmcm9tICcuL2NhdC5zZXJ2aWNlJztcbmV4cG9ydCB7IE1haW50ZW5hbmNlUGxhblNlcnZpY2UgfSBmcm9tICcuL21haW50ZW5hbmNlLXBsYW4uc2VydmljZSc7XG5leHBvcnQgeyBSZWN1cnJpbmdFdmVudFNlcnZpY2UgfSBmcm9tICcuL3JlY3VycmluZy1ldmVudC5zZXJ2aWNlJztcbmV4cG9ydCB7IFRpbWVFbnRyeVNlcnZpY2UgfSBmcm9tICcuL3RpbWUtZW50cnkuc2VydmljZSc7XG5leHBvcnQgeyBTbGFQb2xpY3lTZXJ2aWNlIH0gZnJvbSAnLi9zbGEtcG9saWN5LnNlcnZpY2UnO1xuZXhwb3J0IHsgQXNzZXRMaWZlY3ljbGVTZXJ2aWNlIH0gZnJvbSAnLi9hc3NldC1saWZlY3ljbGUuc2VydmljZSc7XG5leHBvcnQgeyBJbmFjdGl2ZUNvbXBvbmVudFNlcnZpY2UgfSBmcm9tICcuL2luYWN0aXZlLWNvbXBvbmVudC5zZXJ2aWNlJztcbmV4cG9ydCB7IENvbXBvbmVudExvY2F0aW9uU2VydmljZSB9IGZyb20gJy4vY29tcG9uZW50LWxvY2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tcG9uZW50SW5mb1NlcnZpY2UgfSBmcm9tICcuL2NvbXBvbmVudC1pbmZvLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29tcGFueU1hdGVyaWFsVHlwZVNlcnZpY2UgfSBmcm9tICcuL2NvbXBhbnktbWF0ZXJpYWwtdHlwZS5zZXJ2aWNlJztcbmV4cG9ydCB7IENvbXBhbnlNYXRlcmlhbFNlcnZpY2UgfSBmcm9tICcuL2NvbXBhbnktbWF0ZXJpYWwuc2VydmljZSc7XG5leHBvcnQgeyBXYXJlaG91c2VTZXJ2aWNlLCBXYXJlaG91c2VTdG9ja1NlcnZpY2UgfSBmcm9tICcuL3dhcmVob3VzZS5zZXJ2aWNlJztcbmV4cG9ydCB7IFB1cmNoYXNlT3JkZXJTZXJ2aWNlLCBHb29kc1JlY2VpcHRTZXJ2aWNlLCBTdG9ja01vdmVtZW50U2VydmljZSwgU3RvY2tDb3VudFNlcnZpY2UgfSBmcm9tICcuL3Byb2N1cmVtZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgTGljZW5zZVNlcnZpY2UgfSBmcm9tICcuL2xpY2Vuc2Uuc2VydmljZSc7XG5leHBvcnQgeyBXb3JrUGVybWl0U2VydmljZSB9IGZyb20gJy4vd29yay1wZXJtaXQuc2VydmljZSc7XG5leHBvcnQgeyBEaWFnbm9zdGljUmVwb3J0U2VydmljZSB9IGZyb20gJy4vZGlhZ25vc3RpYy1yZXBvcnQuc2VydmljZSc7XG5leHBvcnQgeyBDdXN0b21TZXJ2aWNlIH0gZnJvbSAnLi9jdXN0b20uc2VydmljZSc7XG5leHBvcnQgeyBEaWdpdGFsVHdpblNlcnZpY2UsIE1vZGVsU2VydmljZSwgTW9kZWxGaWxlU2VydmljZSwgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuL2RpZ2l0YWwtdHdpbi5zZXJ2aWNlJztcbmV4cG9ydCB7IER5bmFtaWNDcnVkU2VydmljZSB9IGZyb20gJy4vZHluYW1pYy1jcnVkLnNlcnZpY2UnO1xuZXhwb3J0IHsgVXBsb2FkV2l0aFJlZk9wdGlvbnMgfSBmcm9tICcuL3VwbG9hZC5zZXJ2aWNlJztcbmV4cG9ydCB7IFdvcmtPcmRlclNlcnZpY2UgfSBmcm9tICcuL3dvcmstb3JkZXIuc2VydmljZSc7XG5leHBvcnQgeyBQbGFudERhdGFTZXJ2aWNlIH0gZnJvbSAnLi9wbGFudC1kYXRhLnNlcnZpY2UnO1xuZXhwb3J0IHsgUmVzZXJ2b2lyRGF0YVNlcnZpY2UgfSBmcm9tICcuL3Jlc2Vydm9pci1kYXRhLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlGZWVkYmFja1NlcnZpY2UgfSBmcm9tICcuL2FpLWZlZWRiYWNrLnNlcnZpY2UnO1xuZXhwb3J0IHsgRGV2aWNlR2F0ZXdheVNlcnZpY2UgfSBmcm9tICcuL2RldmljZS1nYXRld2F5LnNlcnZpY2UnO1xuZXhwb3J0IHsgT3V0YWdlUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi9vdXRhZ2UtcmVzb3VyY2Uuc2VydmljZSc7XG5leHBvcnQgeyBFbmVyZ3lQcm9kdWN0aW9uU2VydmljZSB9IGZyb20gJy4vZW5lcmd5LXByb2R1Y3Rpb24uc2VydmljZSc7XG5leHBvcnQgeyBFbmVyZ3lBbmFseXRpY3NTZXJ2aWNlIH0gZnJvbSAnLi9lbmVyZ3ktYW5hbHl0aWNzLnNlcnZpY2UnO1xuZXhwb3J0IHsgTWVhc3VyZW1lbnRVbml0U2VydmljZSB9IGZyb20gJy4vbWVhc3VyZW1lbnQtdW5pdC5zZXJ2aWNlJztcbmV4cG9ydCB7IFByb3BlcnR5VGVtcGxhdGVTZXJ2aWNlIH0gZnJvbSAnLi9wcm9wZXJ0eS10ZW1wbGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCB7XG4gIEFpcFNldHRpbmdzU2VydmljZSwgQWlwQXNzZXNzbWVudFNlcnZpY2UsIEludmVzdG1lbnRPcHRpb25TZXJ2aWNlLFxuICBBaXBQbGFuU2VydmljZSwgQWlwU2NlbmFyaW9TZXJ2aWNlLCBBaXBBbmFseXNpc1NlcnZpY2UsXG4gIEFpcFJlc291cmNlQ29uc3RyYWludFNlcnZpY2UsIEFpcE5ldHdvcmtOb2RlU2VydmljZSwgQWlwUGVyZm9ybWFuY2VSZWNvcmRTZXJ2aWNlLFxufSBmcm9tICcuL2FpcC5zZXJ2aWNlJztcbmV4cG9ydCB7XG4gIERlZmVycmFsRXZhbHVhdGlvblNlcnZpY2UsIERlZmVycmFsQ29uc3RyYWludFJ1bGVTZXJ2aWNlLCBEZWZlcnJhbERlY2lzaW9uU2VydmljZSxcbn0gZnJvbSAnLi9kZWZlcnJhbC5zZXJ2aWNlJztcbmV4cG9ydCB7IENvcnRleFNlcnZpY2UgfSBmcm9tICcuL2NvcnRleC5zZXJ2aWNlJztcbmV4cG9ydCB7IENvcnRleE5vZGVTZXJ2aWNlIH0gZnJvbSAnLi9jb3J0ZXgtbm9kZS5zZXJ2aWNlJztcbmV4cG9ydCB7IENvcnRleEV2ZW50U2VydmljZSB9IGZyb20gJy4vY29ydGV4LWV2ZW50LnNlcnZpY2UnO1xuZXhwb3J0IHsgQ29ydGV4SW5zaWdodFNlcnZpY2UgfSBmcm9tICcuL2NvcnRleC1pbnNpZ2h0LnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlwUmlza0FuYWx5c2lzU2VydmljZSB9IGZyb20gJy4vYWlwLWFuYWx5c2lzLnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlwRmluYW5jaWFsU2VydmljZSB9IGZyb20gJy4vYWlwLWZpbmFuY2lhbC5zZXJ2aWNlJztcbmV4cG9ydCB7IEFpcFdvcmtmbG93U2VydmljZSB9IGZyb20gJy4vYWlwLXdvcmtmbG93LnNlcnZpY2UnO1xuZXhwb3J0IHsgQWlwUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi9haXAtcmVzb3VyY2Uuc2VydmljZSc7XG5leHBvcnQgeyBBaXBOZXR3b3JrQW5hbHlzaXNTZXJ2aWNlIH0gZnJvbSAnLi9haXAtbmV0d29yay5zZXJ2aWNlJztcbmV4cG9ydCB7IEFpcEdlb2dyYXBoaWNTZXJ2aWNlIH0gZnJvbSAnLi9haXAtZ2VvZ3JhcGhpYy5zZXJ2aWNlJztcbmV4cG9ydCB7IEFpcFBlcmZvcm1hbmNlU2VydmljZSB9IGZyb20gJy4vYWlwLXBlcmZvcm1hbmNlLnNlcnZpY2UnO1xuZXhwb3J0IHsgQW5vbWFseURldGVjdGlvblNlcnZpY2UgfSBmcm9tICcuL2Fub21hbHktZGV0ZWN0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHsgU2NoZWR1bGVkUmVwb3J0U2VydmljZSB9IGZyb20gJy4vc2NoZWR1bGVkLXJlcG9ydC5zZXJ2aWNlJztcbmV4cG9ydCB7IEVudGl0eUNvbW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi9lbnRpdHktY29tbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7IEF1ZGl0RW50cnlTZXJ2aWNlIH0gZnJvbSAnLi9hdWRpdC1lbnRyeS5zZXJ2aWNlJztcbmV4cG9ydCB7IFRocmVzaG9sZEFsZXJ0UnVsZVNlcnZpY2UgfSBmcm9tICcuL3RocmVzaG9sZC1hbGVydC1ydWxlLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ21zQ29udGVudFR5cGVTZXJ2aWNlLCBDbXNEYXRhU2VydmljZSB9IGZyb20gJy4vY21zLnNlcnZpY2UnO1xuZXhwb3J0IHsgQ21zTWVudUhlbHBlciwgQ21zTWVudUl0ZW0sIENtc01lbnVTZWN0aW9uIH0gZnJvbSAnLi9jbXMtbWVudS5oZWxwZXInO1xuZXhwb3J0IHsgR3JpZFNlcnZpY2UsIEdyaWROb2RlU2VydmljZSwgR3JpZExpbmtTZXJ2aWNlIH0gZnJvbSAnLi9ncmlkLnNlcnZpY2UnO1xuZXhwb3J0IHsgUGx1Z2luU2VydmljZSB9IGZyb20gJy4vcGx1Z2luLnNlcnZpY2UnO1xuIl19
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../core/http-client.service";
|
|
5
|
+
/**
|
|
6
|
+
* Installable modules (plugins) for the current organization.
|
|
7
|
+
*
|
|
8
|
+
* `list()` is readable by any authenticated user — the frontend uses it to decide which modules /
|
|
9
|
+
* menus to reveal. `install()` / `uninstall()` require an admin and run the plugin's isolated
|
|
10
|
+
* migrations on the tenant DB.
|
|
11
|
+
*/
|
|
12
|
+
export class PluginService {
|
|
13
|
+
http;
|
|
14
|
+
base = '/api/plugins';
|
|
15
|
+
constructor(http) {
|
|
16
|
+
this.http = http;
|
|
17
|
+
}
|
|
18
|
+
/** Catalog of all plugins with this organization's install status. */
|
|
19
|
+
list() {
|
|
20
|
+
return this.http.get(this.base);
|
|
21
|
+
}
|
|
22
|
+
/** True if the given plugin is installed for the current organization. */
|
|
23
|
+
isInstalled(pluginId) {
|
|
24
|
+
return new Observable((sub) => {
|
|
25
|
+
const s = this.list().subscribe({
|
|
26
|
+
next: (r) => {
|
|
27
|
+
const found = (r.data ?? []).find((p) => p.id === pluginId);
|
|
28
|
+
sub.next(!!found?.installed);
|
|
29
|
+
sub.complete();
|
|
30
|
+
},
|
|
31
|
+
error: (e) => sub.error(e),
|
|
32
|
+
});
|
|
33
|
+
return () => s.unsubscribe();
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
install(pluginId) {
|
|
37
|
+
return this.http.post(`${this.base}/${pluginId}/install`, {});
|
|
38
|
+
}
|
|
39
|
+
uninstall(pluginId) {
|
|
40
|
+
return this.http.post(`${this.base}/${pluginId}/uninstall`, {});
|
|
41
|
+
}
|
|
42
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PluginService, deps: [{ token: i1.TgmHttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
43
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PluginService, providedIn: 'root' });
|
|
44
|
+
}
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PluginService, decorators: [{
|
|
46
|
+
type: Injectable,
|
|
47
|
+
args: [{ providedIn: 'root' }]
|
|
48
|
+
}], ctorParameters: () => [{ type: i1.TgmHttpClient }] });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2FwaS9wbHVnaW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUtsQzs7Ozs7O0dBTUc7QUFFSCxNQUFNLE9BQU8sYUFBYTtJQUdKO0lBRlosSUFBSSxHQUFHLGNBQWMsQ0FBQztJQUU5QixZQUFvQixJQUFtQjtRQUFuQixTQUFJLEdBQUosSUFBSSxDQUFlO0lBQUcsQ0FBQztJQUUzQyxzRUFBc0U7SUFDdEUsSUFBSTtRQUNGLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQThCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsMEVBQTBFO0lBQzFFLFdBQVcsQ0FBQyxRQUFnQjtRQUMxQixPQUFPLElBQUksVUFBVSxDQUFVLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDckMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQztnQkFDOUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ1YsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsQ0FBQztvQkFDNUQsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO29CQUM3QixHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2pCLENBQUM7Z0JBQ0QsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMzQixDQUFDLENBQUM7WUFDSCxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsUUFBZ0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBK0IsR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVEsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFRCxTQUFTLENBQUMsUUFBZ0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBb0IsR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVEsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7d0dBL0JVLGFBQWE7NEdBQWIsYUFBYSxjQURBLE1BQU07OzRGQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRnbUh0dHBDbGllbnQgfSBmcm9tICcuLi8uLi9jb3JlL2h0dHAtY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9tb2RlbHMvYmFzZS5tb2RlbHMnO1xuaW1wb3J0IHsgSW5zdGFsbGVkUGx1Z2luLCBQbHVnaW5TdGF0dXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXBpL3BsdWdpbi5tb2RlbHMnO1xuXG4vKipcbiAqIEluc3RhbGxhYmxlIG1vZHVsZXMgKHBsdWdpbnMpIGZvciB0aGUgY3VycmVudCBvcmdhbml6YXRpb24uXG4gKlxuICogYGxpc3QoKWAgaXMgcmVhZGFibGUgYnkgYW55IGF1dGhlbnRpY2F0ZWQgdXNlciDigJQgdGhlIGZyb250ZW5kIHVzZXMgaXQgdG8gZGVjaWRlIHdoaWNoIG1vZHVsZXMgL1xuICogbWVudXMgdG8gcmV2ZWFsLiBgaW5zdGFsbCgpYCAvIGB1bmluc3RhbGwoKWAgcmVxdWlyZSBhbiBhZG1pbiBhbmQgcnVuIHRoZSBwbHVnaW4ncyBpc29sYXRlZFxuICogbWlncmF0aW9ucyBvbiB0aGUgdGVuYW50IERCLlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFBsdWdpblNlcnZpY2Uge1xuICBwcml2YXRlIGJhc2UgPSAnL2FwaS9wbHVnaW5zJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IFRnbUh0dHBDbGllbnQpIHt9XG5cbiAgLyoqIENhdGFsb2cgb2YgYWxsIHBsdWdpbnMgd2l0aCB0aGlzIG9yZ2FuaXphdGlvbidzIGluc3RhbGwgc3RhdHVzLiAqL1xuICBsaXN0KCk6IE9ic2VydmFibGU8QXBpUmVzcG9uc2U8UGx1Z2luU3RhdHVzW10+PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QXBpUmVzcG9uc2U8UGx1Z2luU3RhdHVzW10+Pih0aGlzLmJhc2UpO1xuICB9XG5cbiAgLyoqIFRydWUgaWYgdGhlIGdpdmVuIHBsdWdpbiBpcyBpbnN0YWxsZWQgZm9yIHRoZSBjdXJyZW50IG9yZ2FuaXphdGlvbi4gKi9cbiAgaXNJbnN0YWxsZWQocGx1Z2luSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxib29sZWFuPigoc3ViKSA9PiB7XG4gICAgICBjb25zdCBzID0gdGhpcy5saXN0KCkuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHIpID0+IHtcbiAgICAgICAgICBjb25zdCBmb3VuZCA9IChyLmRhdGEgPz8gW10pLmZpbmQoKHApID0+IHAuaWQgPT09IHBsdWdpbklkKTtcbiAgICAgICAgICBzdWIubmV4dCghIWZvdW5kPy5pbnN0YWxsZWQpO1xuICAgICAgICAgIHN1Yi5jb21wbGV0ZSgpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogKGUpID0+IHN1Yi5lcnJvcihlKSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuICgpID0+IHMudW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGluc3RhbGwocGx1Z2luSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXBpUmVzcG9uc2U8SW5zdGFsbGVkUGx1Z2luPj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxBcGlSZXNwb25zZTxJbnN0YWxsZWRQbHVnaW4+PihgJHt0aGlzLmJhc2V9LyR7cGx1Z2luSWR9L2luc3RhbGxgLCB7fSk7XG4gIH1cblxuICB1bmluc3RhbGwocGx1Z2luSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXBpUmVzcG9uc2U8dm9pZD4+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QXBpUmVzcG9uc2U8dm9pZD4+KGAke3RoaXMuYmFzZX0vJHtwbHVnaW5JZH0vdW5pbnN0YWxsYCwge30pO1xuICB9XG59XG4iXX0=
|