@yuuvis/client-shell-core 1.0.3 → 2.0.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/esm2022/index.mjs +7 -2
- package/esm2022/lib/client-shell.assets.mjs +7 -8
- package/esm2022/lib/client-shell.interface.mjs +1 -1
- package/esm2022/lib/services/command-palette/command-palette/command-palette.component.mjs +18 -92
- package/esm2022/lib/services/command-palette/command-palette.service.mjs +16 -14
- package/esm2022/lib/services/feature/feature.guard.mjs +7 -0
- package/esm2022/lib/services/feature/feature.interface.mjs +2 -0
- package/esm2022/lib/services/feature/feature.providers.mjs +8 -0
- package/esm2022/lib/services/feature/feature.service.mjs +93 -0
- package/esm2022/lib/services/feature/index.mjs +5 -0
- package/esm2022/lib/services/shell/noop.extension.mjs +13 -0
- package/esm2022/lib/services/shell/shell.bootstrap.mjs +68 -0
- package/esm2022/lib/services/shell/shell.providers.mjs +21 -0
- package/esm2022/lib/services/shell/shell.service.mjs +129 -57
- package/esm2022/lib/services/shell-config/shell-config.const.mjs +23 -0
- package/esm2022/lib/services/shell-config/shell-config.interface.mjs +2 -0
- package/esm2022/lib/services/shell-config/shell-config.service.mjs +100 -0
- package/esm2022/lib/services/shell-notifications/shell-notifications.service.mjs +9 -9
- package/index.d.ts +6 -1
- package/lib/assets/i18n/de.json +0 -1
- package/lib/assets/i18n/en.json +0 -1
- package/lib/client-shell.assets.d.ts +2 -8
- package/lib/client-shell.interface.d.ts +13 -6
- package/lib/services/command-palette/command-palette.service.d.ts +1 -2
- package/lib/services/feature/feature.guard.d.ts +2 -0
- package/lib/services/feature/feature.interface.d.ts +11 -0
- package/lib/services/feature/feature.providers.d.ts +4 -0
- package/lib/services/feature/feature.service.d.ts +20 -0
- package/lib/services/feature/index.d.ts +4 -0
- package/lib/services/shell/noop.extension.d.ts +7 -0
- package/lib/services/shell/shell.bootstrap.d.ts +29 -0
- package/lib/services/shell/shell.providers.d.ts +2 -0
- package/lib/services/shell/shell.service.d.ts +13 -4
- package/lib/services/shell-config/shell-config.const.d.ts +8 -0
- package/lib/services/shell-config/shell-config.interface.d.ts +13 -0
- package/lib/services/shell-config/shell-config.service.d.ts +30 -0
- package/package.json +7 -7
- package/esm2022/lib/services/shell/shell.extensions.service.mjs +0 -9
- package/lib/services/shell/shell.extensions.service.d.ts +0 -2
package/README.md
ADDED
package/esm2022/index.mjs
CHANGED
|
@@ -6,5 +6,10 @@ export * from './lib/services/shell-notifications/shell-notifications.interface'
|
|
|
6
6
|
export * from './lib/services/shell-notifications/shell-notifications.service';
|
|
7
7
|
export * from './lib/services/shell/shell.service';
|
|
8
8
|
export * from './lib/tile-extension.interface';
|
|
9
|
-
export * from './lib/services/shell/shell.
|
|
10
|
-
|
|
9
|
+
export * from './lib/services/shell/shell.bootstrap';
|
|
10
|
+
export * from './lib/services/shell/shell.providers';
|
|
11
|
+
export * from './lib/services/feature';
|
|
12
|
+
export * from './lib/services/shell-config/shell-config.service';
|
|
13
|
+
export * from './lib/services/shell-config/shell-config.interface';
|
|
14
|
+
export * from './lib/services/shell-config/shell-config.const';
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGdDQUFnQyxDQUFDO0FBRS9DLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3NoZWxsLW5vdGlmaWNhdGlvbnMvc2hlbGwtbm90aWZpY2F0aW9ucy5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc2hlbGwtbm90aWZpY2F0aW9ucy9zaGVsbC1ub3RpZmljYXRpb25zLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc2hlbGwvc2hlbGwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90aWxlLWV4dGVuc2lvbi5pbnRlcmZhY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9zaGVsbC9zaGVsbC5ib290c3RyYXAnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc2hlbGwvc2hlbGwucHJvdmlkZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2ZlYXR1cmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc2hlbGwtY29uZmlnL3NoZWxsLWNvbmZpZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuY29uc3QnO1xuIl19
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
// default assets for the client shell
|
|
1
|
+
// default assets for the client shell
|
|
2
2
|
export const CLIENT_SHELL_ASSETS = {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
3
|
+
appIcon: {
|
|
4
|
+
svgIcon: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 283.5 283.5"><path class="panel" fill="var(--ymt-brand)" d="M0 0h283.5v283.5H0z"/><path d="M219.9 63.6h-.2l-44.2 67.7c-8.5 12.9-14.6 24-14.6 24s-5.8-10.5-13.9-22.8l-46.3-68.9H63.6l81.1 122.6v33.6h35.9v-36.6l39.2-63.8.1-55.8z" class="y" fill="var(--ymt-on-brand)"/></svg>',
|
|
5
|
+
iconName: 'app_logo'
|
|
6
|
+
},
|
|
7
|
+
shellIconNamespace: 'shellIcons'
|
|
9
8
|
};
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LXNoZWxsLmFzc2V0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvY2xpZW50LXNoZWxsLmFzc2V0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxzQ0FBc0M7QUFDdEMsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQXNCO0lBQ3BELE9BQU8sRUFBRTtRQUNQLE9BQU8sRUFDTCxxVUFBcVU7UUFDdlUsUUFBUSxFQUFFLFVBQVU7S0FDckI7SUFDRCxrQkFBa0IsRUFBRSxZQUFZO0NBQ2pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGllbnRTaGVsbENvbmZpZyB9IGZyb20gJy4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5cbi8vIGRlZmF1bHQgYXNzZXRzIGZvciB0aGUgY2xpZW50IHNoZWxsXG5leHBvcnQgY29uc3QgQ0xJRU5UX1NIRUxMX0FTU0VUUzogQ2xpZW50U2hlbGxDb25maWcgPSB7XG4gIGFwcEljb246IHtcbiAgICBzdmdJY29uOlxuICAgICAgJzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjgzLjUgMjgzLjVcIj48cGF0aCBjbGFzcz1cInBhbmVsXCIgZmlsbD1cInZhcigtLXltdC1icmFuZClcIiBkPVwiTTAgMGgyODMuNXYyODMuNUgwelwiLz48cGF0aCBkPVwiTTIxOS45IDYzLjZoLS4ybC00NC4yIDY3LjdjLTguNSAxMi45LTE0LjYgMjQtMTQuNiAyNHMtNS44LTEwLjUtMTMuOS0yMi44bC00Ni4zLTY4LjlINjMuNmw4MS4xIDEyMi42djMzLjZoMzUuOXYtMzYuNmwzOS4yLTYzLjguMS01NS44elwiIGNsYXNzPVwieVwiIGZpbGw9XCJ2YXIoLS15bXQtb24tYnJhbmQpXCIvPjwvc3ZnPicsXG4gICAgaWNvbk5hbWU6ICdhcHBfbG9nbydcbiAgfSxcbiAgc2hlbGxJY29uTmFtZXNwYWNlOiAnc2hlbGxJY29ucydcbn07XG4iXX0=
|
|
@@ -2,4 +2,4 @@ export var GlobalShortcut;
|
|
|
2
2
|
(function (GlobalShortcut) {
|
|
3
3
|
GlobalShortcut["search"] = "search";
|
|
4
4
|
})(GlobalShortcut || (GlobalShortcut = {}));
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LXNoZWxsLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvY2xpZW50LXNoZWxsLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4RUEsTUFBTSxDQUFOLElBQVksY0FFWDtBQUZELFdBQVksY0FBYztJQUN4QixtQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBRlcsY0FBYyxLQUFkLGNBQWMsUUFFekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYmplY3RDcmVhdGVGbGF2b3IsIE9iamVjdFR5cGVGbGF2b3IsIFZpcnR1YWxPYmplY3RUeXBlIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50U2hlbGxFeHRlbnNpb24ge1xuICBpbml0OiAoKSA9PiBQcm9taXNlPGFueT4gfCBPYnNlcnZhYmxlPGFueT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50U2hlbGxDb25maWcge1xuICBhcHBJY29uPzoge1xuICAgIHN2Z0ljb24/OiBzdHJpbmc7XG4gICAgaWNvbk5hbWU6IHN0cmluZztcbiAgfTtcbiAgc2hlbGxJY29uTmFtZXNwYWNlPzogc3RyaW5nO1xufVxuXG4vLyBUb2RvOiB3cml0ZSBkb2N1bWVudGF0aW9uXG5leHBvcnQgaW50ZXJmYWNlIEFwcCBleHRlbmRzIFJvdXRlIHtcbiAgaWQ6IHN0cmluZztcbiAgc3ZnSWNvbj86IHN0cmluZztcbiAgaWNvbk5hbWU6IHN0cmluZztcbiAgLy8gdXNlciByb2xlcy9ncm91cHMgdGhhdCBhcmUgYWxsb3dlZC9kZW5pZWQgdG8gdXNlIHRoZSBhcHBcbiAgcGVybWlzc2lvbnM/OiBBcHBQZXJtaXNzaW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcFBlcm1pc3Npb24ge1xuICBhbGxvdzogc3RyaW5nW107XG4gIGRlbnk6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFjY2VudENvbG9yIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICB0b25lOiBzdHJpbmc7XG59XG5cbi8vIEludGVyZmFjZSBmb3IgYXBwcyB0byBleHBvc2Ugb3duIHNldHRpbmdzIHRvIGJlIGhvb2tlZCBpbnRvXG4vLyBzaGVsbCBzZXR0aW5ncyBwYWdlXG5leHBvcnQgaW50ZXJmYWNlIFNoZWxsQXBwU2V0dGluZ3Mge1xuICBhcHBJRDogc3RyaW5nO1xuICAvLyBsYWJlbCBmb3IgdGhlIHNldHRpbmdzIGdyb3VwIChlLmcuIHRoZSBhcHBzIG5hbWUpXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8vIGNvbGxlY3Rpb24gb2Ygc2V0dGluZ3MgZXhwb3NlZCBieSB0aGUgYXBwXG4gIHByb3BlcnRpZXM6IFNoZWxsQXBwU2V0dGluZ1Byb3BlcnR5W107XG59XG5leHBvcnQgaW50ZXJmYWNlIFNoZWxsQXBwU2V0dGluZ1Byb3BlcnR5IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICAvLyAnc3RyaW5nJyB8ICdudW1iZXInIHwgJ2Jvb2xlYW4nIHwgJ2NhdGFsb2cnIHwgJ3VybCcgfCAnZW1haWwnO1xuICB0eXBlOiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlcjtcbn1cblxuLy8gUHVibGljIGludGVyZmFjZSBmb3IgYXBwc1xuZXhwb3J0IGludGVyZmFjZSBBcHBTY2hlbWE8VCA9IFJlY29yZDxzdHJpbmcsIFZpcnR1YWxPYmplY3RUeXBlPj4ge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGljb246IHN0cmluZztcbiAgdHlwZXM6IFQ7XG4gIGZsYXZvcnM6IEFwcFNjaGVtYUZsYXZvcltdO1xuICBjcmVhdGVGbGF2b3JzPzogT2JqZWN0Q3JlYXRlRmxhdm9yW107XG59XG5cbmV4cG9ydCB0eXBlIEFwcFNjaGVtYUZsYXZvck9yaWdpbiA9ICdhcHAnIHwgJ2NvbmZpZyc7XG5cbi8vIEZMQVZPUlNcbmV4cG9ydCB0eXBlIE9iamVjdEZsYXZvciA9IEFwcFNjaGVtYUZsYXZvciAmIHsgYXBwOiBzdHJpbmc7IG9yaWdpbjogQXBwU2NoZW1hRmxhdm9yT3JpZ2luIH07XG4vLyBEZWZpbml0aW9uIG9mIGFuIG9iamVjdCBmbGF2b3IuXG5leHBvcnQgaW50ZXJmYWNlIEFwcFNjaGVtYUZsYXZvciBleHRlbmRzIE9iamVjdFR5cGVGbGF2b3Ige1xuICBvYmplY3RUeXBlSUQ6IHN0cmluZztcbiAgZGVzY3JpcHRpb25LZXk/OiBzdHJpbmc7XG4gIC8vIHVzZSB0aGUgZGVmYXVsdCBhcHBseSBjb21wb25lbnQgKHByZXZpZXcgYW5kIG1ldGFkYXRhIG92ZXJsYXkpXG4gIHVzZURlZmF1bHRBcHBseUNvbXBvbmVudD86IGJvb2xlYW47XG4gIC8vIHNldCBhIGN1c3RvbSBhcHBseSBjb21wb25lbnRcbiAgYXBwbHlDb21wb25lbnQ/OiBUeXBlPGFueT47XG59XG5cbmV4cG9ydCBlbnVtIEdsb2JhbFNob3J0Y3V0IHtcbiAgc2VhcmNoID0gJ3NlYXJjaCdcbn1cbiJdfQ==
|
|
@@ -6,73 +6,6 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
import * as i1 from "../command-palette.service";
|
|
7
7
|
import * as i2 from "@angular/common";
|
|
8
8
|
import * as i3 from "@angular/forms";
|
|
9
|
-
const _forTrack0 = ($index, $item) => $item.id;
|
|
10
|
-
const _c0 = a0 => ({ "--i": a0 });
|
|
11
|
-
const _c1 = a0 => ({ current: a0 });
|
|
12
|
-
function CommandPaletteComponent_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
|
|
13
|
-
i0.ɵɵelementStart(0, "div", 3);
|
|
14
|
-
i0.ɵɵtext(1);
|
|
15
|
-
i0.ɵɵelementEnd();
|
|
16
|
-
} if (rf & 2) {
|
|
17
|
-
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
18
|
-
i0.ɵɵadvance();
|
|
19
|
-
i0.ɵɵtextInterpolate(ctx_r1.message);
|
|
20
|
-
} }
|
|
21
|
-
function CommandPaletteComponent_Conditional_0_For_5_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
-
const _r3 = i0.ɵɵgetCurrentView();
|
|
23
|
-
i0.ɵɵelementStart(0, "div", 6);
|
|
24
|
-
i0.ɵɵlistener("click", function CommandPaletteComponent_Conditional_0_For_5_Template_div_click_0_listener() { const c_r4 = i0.ɵɵrestoreView(_r3).$implicit; const ctx_r1 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r1.triggerCommand(c_r4)); });
|
|
25
|
-
i0.ɵɵelement(1, "div", 7)(2, "div", 8);
|
|
26
|
-
i0.ɵɵelementEnd();
|
|
27
|
-
} if (rf & 2) {
|
|
28
|
-
const c_r4 = ctx.$implicit;
|
|
29
|
-
const ɵ$index_12_r5 = ctx.$index;
|
|
30
|
-
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
31
|
-
i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(4, _c0, ɵ$index_12_r5))("ngClass", i0.ɵɵpureFunction1(6, _c1, ɵ$index_12_r5 === ctx_r1.currentCommandIndex));
|
|
32
|
-
i0.ɵɵadvance();
|
|
33
|
-
i0.ɵɵproperty("innerHTML", ctx_r1.highlight(c_r4.label), i0.ɵɵsanitizeHtml);
|
|
34
|
-
i0.ɵɵadvance();
|
|
35
|
-
i0.ɵɵproperty("innerHTML", ctx_r1.highlight(c_r4 == null ? null : c_r4.description), i0.ɵɵsanitizeHtml);
|
|
36
|
-
} }
|
|
37
|
-
function CommandPaletteComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
38
|
-
const _r1 = i0.ɵɵgetCurrentView();
|
|
39
|
-
i0.ɵɵelementStart(0, "div", 1)(1, "input", 2);
|
|
40
|
-
i0.ɵɵtwoWayListener("ngModelChange", function CommandPaletteComponent_Conditional_0_Template_input_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); i0.ɵɵtwoWayBindingSet(ctx_r1.searchTerm, $event) || (ctx_r1.searchTerm = $event); return i0.ɵɵresetView($event); });
|
|
41
|
-
i0.ɵɵlistener("blur", function CommandPaletteComponent_Conditional_0_Template_input_blur_1_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onInputBlur()); })("ngModelChange", function CommandPaletteComponent_Conditional_0_Template_input_ngModelChange_1_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.onTermChange($event)); });
|
|
42
|
-
i0.ɵɵelementEnd();
|
|
43
|
-
i0.ɵɵtemplate(2, CommandPaletteComponent_Conditional_0_Conditional_2_Template, 2, 1, "div", 3);
|
|
44
|
-
i0.ɵɵelementEnd();
|
|
45
|
-
i0.ɵɵelementStart(3, "div", 4);
|
|
46
|
-
i0.ɵɵrepeaterCreate(4, CommandPaletteComponent_Conditional_0_For_5_Template, 3, 8, "div", 5, _forTrack0);
|
|
47
|
-
i0.ɵɵelementEnd();
|
|
48
|
-
} if (rf & 2) {
|
|
49
|
-
const ctx_r1 = i0.ɵɵnextContext();
|
|
50
|
-
i0.ɵɵadvance();
|
|
51
|
-
i0.ɵɵproperty("placeholder", ctx_r1.placeholder);
|
|
52
|
-
i0.ɵɵtwoWayProperty("ngModel", ctx_r1.searchTerm);
|
|
53
|
-
i0.ɵɵadvance();
|
|
54
|
-
i0.ɵɵconditional(ctx_r1.message ? 2 : -1);
|
|
55
|
-
i0.ɵɵadvance(2);
|
|
56
|
-
i0.ɵɵrepeater(ctx_r1.commands);
|
|
57
|
-
} }
|
|
58
|
-
function CommandPaletteComponent_Conditional_1_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
59
|
-
i0.ɵɵelementStart(0, "div", 9);
|
|
60
|
-
i0.ɵɵtext(1);
|
|
61
|
-
i0.ɵɵelementEnd();
|
|
62
|
-
} if (rf & 2) {
|
|
63
|
-
const c_r6 = ctx.$implicit;
|
|
64
|
-
i0.ɵɵadvance();
|
|
65
|
-
i0.ɵɵtextInterpolate(c_r6.message);
|
|
66
|
-
} }
|
|
67
|
-
function CommandPaletteComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
|
|
68
|
-
i0.ɵɵelementStart(0, "div", 0);
|
|
69
|
-
i0.ɵɵrepeaterCreate(1, CommandPaletteComponent_Conditional_1_For_2_Template, 2, 1, "div", 9, _forTrack0);
|
|
70
|
-
i0.ɵɵelementEnd();
|
|
71
|
-
} if (rf & 2) {
|
|
72
|
-
const ctx_r1 = i0.ɵɵnextContext();
|
|
73
|
-
i0.ɵɵadvance();
|
|
74
|
-
i0.ɵɵrepeater(ctx_r1.disabledCauses);
|
|
75
|
-
} }
|
|
76
9
|
export class CommandPaletteComponent {
|
|
77
10
|
set currentCommandIndex(i) {
|
|
78
11
|
if (i > this.commands.length - 1) {
|
|
@@ -147,29 +80,22 @@ export class CommandPaletteComponent {
|
|
|
147
80
|
ngAfterViewInit() {
|
|
148
81
|
this.onInputBlur();
|
|
149
82
|
}
|
|
150
|
-
static { this.ɵfac =
|
|
151
|
-
static { this.ɵcmp =
|
|
152
|
-
i0.ɵɵlistener("keydown.arrowDown", function CommandPaletteComponent_keydown_arrowDown_HostBindingHandler($event) { return ctx.onArrowDown($event); })("keydown.arrowUp", function CommandPaletteComponent_keydown_arrowUp_HostBindingHandler($event) { return ctx.onArrowUp($event); })("keydown.Enter", function CommandPaletteComponent_keydown_Enter_HostBindingHandler($event) { return ctx.onEnter($event); });
|
|
153
|
-
} }, outputs: { searchTermChange: "searchTermChange" }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 1, consts: [[1, "disabled"], ["yvcAutofocusChild", "", 1, "search"], ["type", "text", "autofocus", "", 3, "ngModelChange", "blur", "placeholder", "ngModel"], [1, "message"], [1, "commands"], [1, "command", 3, "ngStyle", "ngClass"], [1, "command", 3, "click", "ngStyle", "ngClass"], [1, "label", 3, "innerHTML"], [1, "desc", 3, "innerHTML"], [1, "disabled-cause"]], template: function CommandPaletteComponent_Template(rf, ctx) { if (rf & 1) {
|
|
154
|
-
i0.ɵɵtemplate(0, CommandPaletteComponent_Conditional_0_Template, 6, 3)(1, CommandPaletteComponent_Conditional_1_Template, 3, 0, "div", 0);
|
|
155
|
-
} if (rf & 2) {
|
|
156
|
-
i0.ɵɵconditional(!ctx.disabledCauses.length ? 0 : 1);
|
|
157
|
-
} }, dependencies: [CommonModule, i2.NgClass, i2.NgStyle, FormsModule, i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgModel], styles: ["[_nghost-%COMP%]{display:grid;grid-template-rows:auto 2fr;grid-template-columns:1fr;grid-template-areas:\"search\" \"commands\";overflow:hidden}[_nghost-%COMP%] .search[_ngcontent-%COMP%]{display:flex;flex-flow:column;align-items:center;justify-content:flex-end;grid-area:search}[_nghost-%COMP%] .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{background-color:transparent;border:0;outline:0;font-size:2em;padding:var(--app-pane-padding);color:var(--text-color-body);border-bottom:1px solid var(--panel-divider-color)}[_nghost-%COMP%] .search[_ngcontent-%COMP%] input[_ngcontent-%COMP%]::placeholder{font-size:.6em;opacity:.4}[_nghost-%COMP%] .search[_ngcontent-%COMP%] .message[_ngcontent-%COMP%]{background:var(--color-accent);margin:2px;padding:.2em .5em;border-radius:2px;box-sizing:border-box}[_nghost-%COMP%] .commands[_ngcontent-%COMP%]{box-sizing:border-box;grid-area:commands;overflow-y:auto;display:flex;flex-flow:column;-ms-overflow-style:none;scrollbar-width:none}[_nghost-%COMP%] .commands[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}[_nghost-%COMP%] .commands[_ngcontent-%COMP%] .command[_ngcontent-%COMP%]{opacity:0;animation:_ngcontent-%COMP%_commandEnter .15s ease-in-out .2s forwards;animation-delay:calc(var(--i) * 50ms);width:var(--cmp-width);min-width:var(--cmp-min-width);box-sizing:border-box;padding:var(--app-pane-padding);transition:background-color .2s ease-in-out;cursor:pointer;border-radius:2px}[_nghost-%COMP%] .commands[_ngcontent-%COMP%] .command.current[_ngcontent-%COMP%]{background-color:var(--item-focus-background-color)}[_nghost-%COMP%] .commands[_ngcontent-%COMP%] .command[_ngcontent-%COMP%]:not(.current):hover{background-color:var(--item-focus-background-color)}[_nghost-%COMP%] .commands[_ngcontent-%COMP%] .command[_ngcontent-%COMP%] mark{position:relative;display:inline-block;background-color:transparent;color:var(--text-color-body)}[_nghost-%COMP%] .commands[_ngcontent-%COMP%] .command[_ngcontent-%COMP%] mark:after{content:\"\";position:absolute;bottom:-3px;height:2px;border-radius:1px;background-color:var(--text-color-hint);left:0;right:0}[_nghost-%COMP%] .commands[_ngcontent-%COMP%] .command[_ngcontent-%COMP%] .desc[_ngcontent-%COMP%]{font-size:var(--font-hint);color:var(--text-color-hint);margin-top:.5em}[_nghost-%COMP%] .disabled[_ngcontent-%COMP%]{grid-row:1/span 2;display:flex;flex-flow:column;align-items:center;justify-content:center}@keyframes _ngcontent-%COMP%_commandEnter{0%{opacity:0}to{opacity:1}}"] }); }
|
|
83
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CommandPaletteComponent, deps: [{ token: i1.CommandPaletteService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
84
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: CommandPaletteComponent, isStandalone: true, selector: "yuv-command-palette", outputs: { searchTermChange: "searchTermChange" }, host: { listeners: { "keydown.arrowDown": "onArrowDown($event)", "keydown.arrowUp": "onArrowUp($event)", "keydown.Enter": "onEnter($event)" } }, ngImport: i0, template: "@if (!disabledCauses.length) {\n <div class=\"search\">\n <input type=\"text\" autofocus [placeholder]=\"placeholder\" [(ngModel)]=\"searchTerm\" (blur)=\"onInputBlur()\" (ngModelChange)=\"onTermChange($event)\" />\n @if (message) {\n <div class=\"message\">{{ message }}</div>\n }\n </div>\n\n <div class=\"commands\">\n @for (c of commands; track c.id; let i = $index) {\n <div class=\"command\" [ngStyle]=\"{ '--i': i }\" [ngClass]=\"{ current: i === currentCommandIndex }\" (click)=\"triggerCommand(c)\">\n <div class=\"label\" [innerHTML]=\"highlight(c.label)\"></div>\n <div class=\"desc\" [innerHTML]=\"highlight(c?.description)\"></div>\n </div>\n }\n </div>\n} @else {\n <div class=\"disabled\">\n @for (c of disabledCauses; track c.id) {\n <div class=\"disabled-cause\">{{ c.message }}</div>\n }\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:auto 2fr;grid-template-columns:1fr;grid-template-areas:\"search\" \"commands\";overflow:hidden}:host .search{display:flex;flex-flow:column;align-items:center;justify-content:flex-end;grid-area:search}:host .search input{background-color:transparent;border:0;outline:0;font-size:2em;padding:var(--ymt-spacing-m);color:var(--ymt-text-color);border-bottom:1px solid var(--ymt-outline-variant)}:host .search input::placeholder{font-size:.6em;opacity:.4}:host .search .message{background:var(--ymt-primary);margin:2px;padding:.2em .5em;border-radius:2px;box-sizing:border-box}:host .commands{box-sizing:border-box;grid-area:commands;overflow-y:auto;display:flex;flex-flow:column;-ms-overflow-style:none;scrollbar-width:none}:host .commands::-webkit-scrollbar{display:none}:host .commands .command{opacity:0;animation:commandEnter .15s ease-in-out .2s forwards;animation-delay:calc(var(--i) * 50ms);width:var(--cmp-width);min-width:var(--cmp-min-width);box-sizing:border-box;padding:var(--ymt-spacing-m);transition:background-color .2s ease-in-out;cursor:pointer;border-radius:2px}:host .commands .command.current{background-color:var(--ymt-focus-background)}:host .commands .command:not(.current):hover{background-color:var(--ymt-hover-background)}:host .commands .command ::ng-deep mark{position:relative;display:inline-block;background-color:transparent;color:var(--ymt-text-color)}:host .commands .command ::ng-deep mark:after{content:\"\";position:absolute;bottom:-3px;height:2px;border-radius:1px;background-color:var(--ymt-text-color-subtle);left:0;right:0}:host .commands .command .desc{font:var(--ymt-font-body-subtle);color:var(--ymt-text-color-subtle);margin-top:.5em}:host .disabled{grid-row:1/span 2;display:flex;flex-flow:column;align-items:center;justify-content:center}@keyframes commandEnter{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
158
85
|
}
|
|
159
|
-
(
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7O0lDQTdELDhCQUFxQjtJQUFBLFlBQWE7SUFBQSxpQkFBTTs7O0lBQW5CLGNBQWE7SUFBYixvQ0FBYTs7OztJQU1sQyw4QkFBMkg7SUFBNUIsc05BQVMsMkJBQWlCLEtBQUM7SUFFeEgsQUFEQSx5QkFBMEQsYUFDTTtJQUNsRSxpQkFBTTs7Ozs7SUFIc0MsQUFBdkIsbUVBQXNCLHFGQUFtRDtJQUN6RSxjQUFnQztJQUFoQywyRUFBZ0M7SUFDakMsY0FBdUM7SUFBdkMsdUdBQXVDOzs7O0lBVjdELEFBREYsOEJBQXNDLGVBQzhHO0lBQXpGLG1UQUF3QjtJQUF3QixBQUF2Qix3TEFBUSxvQkFBYSxLQUFDLG1NQUFrQiwyQkFBb0IsS0FBQztJ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WUFBdkIsMEhBQUEsdUJBQW1CLElBQUkseUdBQXZCLHFCQUFpQixJQUFNLHFHQUF2QixtQkFBZSxJQUFROztZQ0dsQyxBQWhCRixzRUFBOEIsbUVBZ0JyQjs7WUFoQlQsb0RBc0JDOzRCRGJXLFlBQVksMEJBQUUsV0FBVzs7aUZBSXhCLHVCQUF1QjtjQVBuQyxTQUFTOzJCQUNFLHFCQUFxQixjQUNuQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDOytFQThCMUIsZ0JBQWdCO2tCQUF6QixNQUFNO1lBRXdDLFdBQVc7a0JBQXpELFlBQVk7bUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFLQSxTQUFTO2tCQUFyRCxZQUFZO21CQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDO1lBS0EsT0FBTztrQkFBakQsWUFBWTttQkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQXRDOUIsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tbWFuZCwgRGlzYWJsZWRDYXVzZSB9IGZyb20gJy4uL2NvbW1hbmQtcGFsZXR0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbWFuZC1wYWxldHRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5dXYtY29tbWFuZC1wYWxldHRlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWFuZFBhbGV0dGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIF9jb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBfY2NpID0gLTE7XG4gIHNldCBjdXJyZW50Q29tbWFuZEluZGV4KGk6IG51bWJlcikge1xuICAgIGlmIChpID4gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxKSB7XG4gICAgICBpID0gMDtcbiAgICB9IGVsc2UgaWYgKGkgPCAwKSB7XG4gICAgICBpID0gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLl9jY2kgPSBpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY3VycmVudCcpO1xuICAgICAgaWYgKGVsKSBlbC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7XG4gICAgfSwgMCk7XG4gIH1cbiAgZ2V0IGN1cnJlbnRDb21tYW5kSW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NjaTtcbiAgfVxuICBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgc2VhcmNoVGVybSA9ICcnO1xuICBrZWVwRm9jdXMgPSB0cnVlO1xuICBtZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGRpc2FibGVkQ2F1c2VzOiBEaXNhYmxlZENhdXNlW10gPSB0aGlzLmNtZFNlcnZpY2UuZGlzYWJsZWRDYXVzZXM7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQE91dHB1dCgpIHNlYXJjaFRlcm1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50J10pIG9uQXJyb3dEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmN1cnJlbnRDb21tYW5kSW5kZXgrKztcbiAgfVxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCddKSBvbkFycm93VXAoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleC0tO1xuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uRW50ZXInLCBbJyRldmVudCddKSBvbkVudGVyKCkge1xuICAgIHRoaXMudHJpZ2dlckNvbW1hbmQoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY21kU2VydmljZTogQ29tbWFuZFBhbGV0dGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHRoaXMuY21kU2VydmljZS5wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIG9uVGVybUNoYW5nZSh0ZXJtOiBzdHJpbmcpIHtcbiAgICBjb25zdCByZWdFeHAgPSBuZXcgUmVnRXhwKHRlcm0ucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKSwgJ2dpJyk7XG4gICAgdGhpcy5jb21tYW5kcyA9IFsuLi50aGlzLl9jb21tYW5kcy5maWx0ZXIoKGMpID0+IGMubGFiZWwubWF0Y2gocmVnRXhwKSldO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleCA9IDA7XG4gIH1cblxuICBvbklucHV0Qmx1cigpIHtcbiAgICBpZiAodGhpcy5rZWVwRm9jdXMgJiYgIXRoaXMuZGlzYWJsZWRDYXVzZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHRyaWdnZXJDb21tYW5kKGNvbW1hbmQ/OiBDb21tYW5kUGFsZXR0ZUNvbW1hbmQpIHtcbiAgICBpZiAoY29tbWFuZCB8fCB0aGlzLmNvbW1hbmRzW3RoaXMuY3VycmVudENvbW1hbmRJbmRleF0pIHtcbiAgICAgIHRoaXMuY21kU2VydmljZS50cmlnZ2VyQ29tbWFuZChjb21tYW5kIHx8IHRoaXMuY29tbWFuZHNbdGhpcy5jdXJyZW50Q29tbWFuZEluZGV4XSk7XG4gICAgfVxuICB9XG5cbiAgaGlnaGxpZ2h0KHR4dDogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodHh0KSB7XG4gICAgICBjb25zdCByZSA9IG5ldyBSZWdFeHAodGhpcy5zZWFyY2hUZXJtLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJyksICdnaScpO1xuICAgICAgcmV0dXJuIHR4dC5yZXBsYWNlKHJlLCAnPG1hcms+JCY8L21hcms+Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0eHQ7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fY29tbWFuZHMgPSB0aGlzLmNtZFNlcnZpY2UuZ2V0Q29tbWFuZHMoKTtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuX2NvbW1hbmRzXTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLm9uSW5wdXRCbHVyKCk7XG4gIH1cbn1cbiIsIkBpZiAoIWRpc2FibGVkQ2F1c2VzLmxlbmd0aCkge1xuICA8ZGl2IGNsYXNzPVwic2VhcmNoXCIgeXZjQXV0b2ZvY3VzQ2hpbGQ+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgYXV0b2ZvY3VzIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiIChibHVyKT1cIm9uSW5wdXRCbHVyKClcIiAobmdNb2RlbENoYW5nZSk9XCJvblRlcm1DaGFuZ2UoJGV2ZW50KVwiIC8+XG4gICAgQGlmIChtZXNzYWdlKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPnt7IG1lc3NhZ2UgfX08L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb21tYW5kc1wiPlxuICAgIEBmb3IgKGMgb2YgY29tbWFuZHM7IHRyYWNrIGMuaWQ7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWFuZFwiIFtuZ1N0eWxlXT1cInsnLS1pJzogaX1cIiBbbmdDbGFzc109XCJ7IGN1cnJlbnQ6IGkgPT09IGN1cnJlbnRDb21tYW5kSW5kZXggfVwiIChjbGljayk9XCJ0cmlnZ2VyQ29tbWFuZChjKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWxcIiBbaW5uZXJIVE1MXT1cImhpZ2hsaWdodChjLmxhYmVsKVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY1wiIFtpbm5lckhUTUxdPVwiaGlnaGxpZ2h0KGM/LmRlc2NyaXB0aW9uKVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cbn0gQGVsc2Uge1xuICA8ZGl2IGNsYXNzPVwiZGlzYWJsZWRcIj5cbiAgICBAZm9yIChjIG9mIGRpc2FibGVkQ2F1c2VzOyB0cmFjayBjLmlkKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiZGlzYWJsZWQtY2F1c2VcIj57eyBjLm1lc3NhZ2UgfX08L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxufVxuIl19
|
|
86
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CommandPaletteComponent, decorators: [{
|
|
87
|
+
type: Component,
|
|
88
|
+
args: [{ selector: 'yuv-command-palette', standalone: true, imports: [CommonModule, FormsModule], template: "@if (!disabledCauses.length) {\n <div class=\"search\">\n <input type=\"text\" autofocus [placeholder]=\"placeholder\" [(ngModel)]=\"searchTerm\" (blur)=\"onInputBlur()\" (ngModelChange)=\"onTermChange($event)\" />\n @if (message) {\n <div class=\"message\">{{ message }}</div>\n }\n </div>\n\n <div class=\"commands\">\n @for (c of commands; track c.id; let i = $index) {\n <div class=\"command\" [ngStyle]=\"{ '--i': i }\" [ngClass]=\"{ current: i === currentCommandIndex }\" (click)=\"triggerCommand(c)\">\n <div class=\"label\" [innerHTML]=\"highlight(c.label)\"></div>\n <div class=\"desc\" [innerHTML]=\"highlight(c?.description)\"></div>\n </div>\n }\n </div>\n} @else {\n <div class=\"disabled\">\n @for (c of disabledCauses; track c.id) {\n <div class=\"disabled-cause\">{{ c.message }}</div>\n }\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:auto 2fr;grid-template-columns:1fr;grid-template-areas:\"search\" \"commands\";overflow:hidden}:host .search{display:flex;flex-flow:column;align-items:center;justify-content:flex-end;grid-area:search}:host .search input{background-color:transparent;border:0;outline:0;font-size:2em;padding:var(--ymt-spacing-m);color:var(--ymt-text-color);border-bottom:1px solid var(--ymt-outline-variant)}:host .search input::placeholder{font-size:.6em;opacity:.4}:host .search .message{background:var(--ymt-primary);margin:2px;padding:.2em .5em;border-radius:2px;box-sizing:border-box}:host .commands{box-sizing:border-box;grid-area:commands;overflow-y:auto;display:flex;flex-flow:column;-ms-overflow-style:none;scrollbar-width:none}:host .commands::-webkit-scrollbar{display:none}:host .commands .command{opacity:0;animation:commandEnter .15s ease-in-out .2s forwards;animation-delay:calc(var(--i) * 50ms);width:var(--cmp-width);min-width:var(--cmp-min-width);box-sizing:border-box;padding:var(--ymt-spacing-m);transition:background-color .2s ease-in-out;cursor:pointer;border-radius:2px}:host .commands .command.current{background-color:var(--ymt-focus-background)}:host .commands .command:not(.current):hover{background-color:var(--ymt-hover-background)}:host .commands .command ::ng-deep mark{position:relative;display:inline-block;background-color:transparent;color:var(--ymt-text-color)}:host .commands .command ::ng-deep mark:after{content:\"\";position:absolute;bottom:-3px;height:2px;border-radius:1px;background-color:var(--ymt-text-color-subtle);left:0;right:0}:host .commands .command .desc{font:var(--ymt-font-body-subtle);color:var(--ymt-text-color-subtle);margin-top:.5em}:host .disabled{grid-row:1/span 2;display:flex;flex-flow:column;align-items:center;justify-content:center}@keyframes commandEnter{0%{opacity:0}to{opacity:1}}\n"] }]
|
|
89
|
+
}], ctorParameters: () => [{ type: i1.CommandPaletteService }, { type: i0.ElementRef }], propDecorators: { searchTermChange: [{
|
|
90
|
+
type: Output
|
|
91
|
+
}], onArrowDown: [{
|
|
92
|
+
type: HostListener,
|
|
93
|
+
args: ['keydown.arrowDown', ['$event']]
|
|
94
|
+
}], onArrowUp: [{
|
|
95
|
+
type: HostListener,
|
|
96
|
+
args: ['keydown.arrowUp', ['$event']]
|
|
97
|
+
}], onEnter: [{
|
|
98
|
+
type: HostListener,
|
|
99
|
+
args: ['keydown.Enter', ['$event']]
|
|
100
|
+
}] } });
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFTbkUsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQyxJQUFJLG1CQUFtQixDQUFDLENBQVM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNSLENBQUM7YUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNqQixDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUVkLFVBQVUsQ0FBQyxH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QyxPQUFPLENBQUMsRUFBRSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQzsrR0FuRlUsdUJBQXVCO21HQUF2Qix1QkFBdUIsbVJDYnBDLGszQkF1QkEsdTRERGRZLFlBQVksaU5BQUUsV0FBVzs7NEZBSXhCLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQzttSEE4QjFCLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFd0MsV0FBVztzQkFBekQsWUFBWTt1QkFBQyxtQkFBbUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLQSxTQUFTO3NCQUFyRCxZQUFZO3VCQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUtBLE9BQU87c0JBQWpELFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tbWFuZCwgRGlzYWJsZWRDYXVzZSB9IGZyb20gJy4uL2NvbW1hbmQtcGFsZXR0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbWFuZC1wYWxldHRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5dXYtY29tbWFuZC1wYWxldHRlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWFuZFBhbGV0dGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIF9jb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBfY2NpID0gLTE7XG4gIHNldCBjdXJyZW50Q29tbWFuZEluZGV4KGk6IG51bWJlcikge1xuICAgIGlmIChpID4gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxKSB7XG4gICAgICBpID0gMDtcbiAgICB9IGVsc2UgaWYgKGkgPCAwKSB7XG4gICAgICBpID0gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLl9jY2kgPSBpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY3VycmVudCcpO1xuICAgICAgaWYgKGVsKSBlbC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7XG4gICAgfSwgMCk7XG4gIH1cbiAgZ2V0IGN1cnJlbnRDb21tYW5kSW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NjaTtcbiAgfVxuICBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgc2VhcmNoVGVybSA9ICcnO1xuICBrZWVwRm9jdXMgPSB0cnVlO1xuICBtZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGRpc2FibGVkQ2F1c2VzOiBEaXNhYmxlZENhdXNlW10gPSB0aGlzLmNtZFNlcnZpY2UuZGlzYWJsZWRDYXVzZXM7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQE91dHB1dCgpIHNlYXJjaFRlcm1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50J10pIG9uQXJyb3dEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmN1cnJlbnRDb21tYW5kSW5kZXgrKztcbiAgfVxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCddKSBvbkFycm93VXAoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleC0tO1xuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uRW50ZXInLCBbJyRldmVudCddKSBvbkVudGVyKCkge1xuICAgIHRoaXMudHJpZ2dlckNvbW1hbmQoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY21kU2VydmljZTogQ29tbWFuZFBhbGV0dGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHRoaXMuY21kU2VydmljZS5wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIG9uVGVybUNoYW5nZSh0ZXJtOiBzdHJpbmcpIHtcbiAgICBjb25zdCByZWdFeHAgPSBuZXcgUmVnRXhwKHRlcm0ucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKSwgJ2dpJyk7XG4gICAgdGhpcy5jb21tYW5kcyA9IFsuLi50aGlzLl9jb21tYW5kcy5maWx0ZXIoKGMpID0+IGMubGFiZWwubWF0Y2gocmVnRXhwKSldO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleCA9IDA7XG4gIH1cblxuICBvbklucHV0Qmx1cigpIHtcbiAgICBpZiAodGhpcy5rZWVwRm9jdXMgJiYgIXRoaXMuZGlzYWJsZWRDYXVzZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHRyaWdnZXJDb21tYW5kKGNvbW1hbmQ/OiBDb21tYW5kUGFsZXR0ZUNvbW1hbmQpIHtcbiAgICBpZiAoY29tbWFuZCB8fCB0aGlzLmNvbW1hbmRzW3RoaXMuY3VycmVudENvbW1hbmRJbmRleF0pIHtcbiAgICAgIHRoaXMuY21kU2VydmljZS50cmlnZ2VyQ29tbWFuZChjb21tYW5kIHx8IHRoaXMuY29tbWFuZHNbdGhpcy5jdXJyZW50Q29tbWFuZEluZGV4XSk7XG4gICAgfVxuICB9XG5cbiAgaGlnaGxpZ2h0KHR4dDogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodHh0KSB7XG4gICAgICBjb25zdCByZSA9IG5ldyBSZWdFeHAodGhpcy5zZWFyY2hUZXJtLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJyksICdnaScpO1xuICAgICAgcmV0dXJuIHR4dC5yZXBsYWNlKHJlLCAnPG1hcms+JCY8L21hcms+Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0eHQ7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fY29tbWFuZHMgPSB0aGlzLmNtZFNlcnZpY2UuZ2V0Q29tbWFuZHMoKTtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuX2NvbW1hbmRzXTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLm9uSW5wdXRCbHVyKCk7XG4gIH1cbn1cbiIsIkBpZiAoIWRpc2FibGVkQ2F1c2VzLmxlbmd0aCkge1xuICA8ZGl2IGNsYXNzPVwic2VhcmNoXCI+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgYXV0b2ZvY3VzIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiIChibHVyKT1cIm9uSW5wdXRCbHVyKClcIiAobmdNb2RlbENoYW5nZSk9XCJvblRlcm1DaGFuZ2UoJGV2ZW50KVwiIC8+XG4gICAgQGlmIChtZXNzYWdlKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPnt7IG1lc3NhZ2UgfX08L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb21tYW5kc1wiPlxuICAgIEBmb3IgKGMgb2YgY29tbWFuZHM7IHRyYWNrIGMuaWQ7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWFuZFwiIFtuZ1N0eWxlXT1cInsgJy0taSc6IGkgfVwiIFtuZ0NsYXNzXT1cInsgY3VycmVudDogaSA9PT0gY3VycmVudENvbW1hbmRJbmRleCB9XCIgKGNsaWNrKT1cInRyaWdnZXJDb21tYW5kKGMpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiIFtpbm5lckhUTUxdPVwiaGlnaGxpZ2h0KGMubGFiZWwpXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjXCIgW2lubmVySFRNTF09XCJoaWdobGlnaHQoYz8uZGVzY3JpcHRpb24pXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxufSBAZWxzZSB7XG4gIDxkaXYgY2xhc3M9XCJkaXNhYmxlZFwiPlxuICAgIEBmb3IgKGMgb2YgZGlzYWJsZWRDYXVzZXM7IHRyYWNrIGMuaWQpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJkaXNhYmxlZC1jYXVzZVwiPnt7IGMubWVzc2FnZSB9fTwvZGl2PlxuICAgIH1cbiAgPC9kaXY+XG59XG4iXX0=
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { Injectable, inject } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
3
3
|
import { ReplaySubject, Subject, debounceTime, fromEvent } from 'rxjs';
|
|
4
4
|
import { filter, map, tap } from 'rxjs/operators';
|
|
5
5
|
import { CommandPaletteComponent } from './command-palette/command-palette.component';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class CommandPaletteService {
|
|
8
|
+
#dialog;
|
|
9
|
+
#dialogRef;
|
|
8
10
|
constructor() {
|
|
9
|
-
this
|
|
11
|
+
this.#dialog = inject(MatDialog);
|
|
10
12
|
this.actionKey = 'Control';
|
|
11
13
|
this._ac = 0;
|
|
12
14
|
this.overlayVisible = false;
|
|
@@ -101,14 +103,14 @@ export class CommandPaletteService {
|
|
|
101
103
|
// this.appRef.attachView(this.componentRef.hostView);
|
|
102
104
|
// const domElem = (this.componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;
|
|
103
105
|
// document.body.appendChild(domElem);
|
|
104
|
-
this
|
|
106
|
+
this.#dialogRef = this.#dialog.open(CommandPaletteComponent);
|
|
105
107
|
this.overlayVisible = true;
|
|
106
108
|
this.overlayVisibleSource.next(this.overlayVisible);
|
|
107
109
|
}
|
|
108
110
|
}
|
|
109
111
|
removeComponentFromBody() {
|
|
110
|
-
if (this
|
|
111
|
-
this.
|
|
112
|
+
if (this.#dialogRef) {
|
|
113
|
+
this.#dialogRef.close();
|
|
112
114
|
// this.componentRef.instance.keepFocus = false;
|
|
113
115
|
// this.appRef.detachView(this.componentRef.hostView);
|
|
114
116
|
// this.componentRef.destroy();
|
|
@@ -116,13 +118,13 @@ export class CommandPaletteService {
|
|
|
116
118
|
this.overlayVisibleSource.next(this.overlayVisible);
|
|
117
119
|
}
|
|
118
120
|
}
|
|
119
|
-
static { this.ɵfac =
|
|
120
|
-
static { this.ɵprov =
|
|
121
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CommandPaletteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
122
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CommandPaletteService, providedIn: 'root' }); }
|
|
121
123
|
}
|
|
122
|
-
(
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUUsT0FBTyxFQUFjLGFBQWEsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7QUFLdEYsTUFBTSxPQUFPLHFCQUFxQjtJQWtCaEM7UUFqQlEsbUJBQWMsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUUxQyxjQUFTLEdBQVcsU0FBUyxDQUFDO1FBQy9CLFFBQUcsR0FBRyxDQUFDLENBQUM7UUFHUixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUMvQixtQkFBYyxHQUFvQixFQUFFLENBQUM7UUFDckMsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDVCx5QkFBb0IsR0FBRyxJQUFJLGFBQWEsRUFBVyxDQUFDO1FBQ3JELG9CQUFlLEdBQXdCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUUvRSxhQUFRLEdBQTRCLEVBQUUsQ0FBQztRQUN2QyxrQkFBYSxHQUFHLElBQUksT0FBTyxFQUF5QixDQUFDO1FBQ3RELGFBQVEsR0FBc0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVB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SEFsSVUscUJBQXFCO3VFQUFyQixxQkFBcUIsV0FBckIscUJBQXFCLG1CQUZwQixNQUFNOztpRkFFUCxxQkFBcUI7Y0FIakMsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBZdmNPdmVybGF5UmVmLCBZdmNPdmVybGF5U2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY29tcG9uZW50cy9vdmVybGF5JztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QsIGRlYm91bmNlVGltZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVDb21tYW5kLCBEaXNhYmxlZENhdXNlIH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbW1hbmRQYWxldHRlU2VydmljZSB7XG4gIHByaXZhdGUgb3ZlcmxheVNlcnZpY2UgPSBpbmplY3QoWXZjT3ZlcmxheVNlcnZpY2UpO1xuXG4gIHJlYWRvbmx5IGFjdGlvbktleTogc3RyaW5nID0gJ0NvbnRyb2wnO1xuICBwcml2YXRlIF9hYyA9IDA7XG4gIHByaXZhdGUgb3ZlcmxheVJlZjogWXZjT3ZlcmxheVJlZjxDb21tYW5kUGFsZXR0ZUNvbXBvbmVudD4gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBvdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICBkaXNhYmxlZENhdXNlczogRGlzYWJsZWRDYXVzZVtdID0gW107XG4gIHBsYWNlaG9sZGVyID0gJyc7XG4gIHByaXZhdGUgb3ZlcmxheVZpc2libGVTb3VyY2UgPSBuZXcgUmVwbGF5U3ViamVjdDxib29sZWFuPigpO1xuICBwdWJsaWMgb3ZlcmxheVZpc2libGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIGNvbW1hbmRzOiBDb21tYW5kUGFsZXR0ZUNvbW1hbmRbXSA9IFtdO1xuICBwcml2YXRlIGNvbW1hbmRTb3VyY2UgPSBuZXcgU3ViamVjdDxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+KCk7XG4gIHB1YmxpYyBjb21tYW5kJDogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+ID0gdGhpcy5jb21tYW5kU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIG9uU2VhcmNoVGVybSE6ICh0ZXJtOiBzdHJpbmcsIGNiOiAocmVzOiBDb21tYW5kUGFsZXR0ZUNvbW1hbmRbXSkgPT4gdm9pZCkgPT4gdm9pZDtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlYm91bmNlVGltZSgxMDApLFxuICAgICAgICBtYXAoKGU6IEV2ZW50KSA9PiBlIGFzIEtleWJvYXJkRXZlbnQpLFxuICAgICAgICB0YXAoKGUpID0+IHtcbiAgICAgICAgICBpZiAoZS5rZXkgPT09IHRoaXMuYWN0aW9uS2V5KSB0aGlzLl9hY3Rpb25LZXlDbGljaygpO1xuICAgICAgICAgIGlmIChlLmtleSA9PT0gJ0VzY2FwZScpIHRoaXMucmVtb3ZlQ29tcG9uZW50RnJvbUJvZHkoKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGdldENvbW1hbmRzKCk6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdIHtcbiAgICBjb25zdCBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBPYmplY3QudmFsdWVzKHRoaXMuY29tbWFuZHMpO1xuICAgIHJldHVybiBjb21tYW5kcztcbiAgfVxuXG4gIHJlZ2lzdGVyQ29tbWFuZChjb21tYW5kOiBDb21tYW5kUGFsZXR0ZUNvbW1hbmQpOiBPYnNlcnZhYmxlPENvbW1hbmRQYWxldHRlQ29tbWFuZD4ge1xuICAgIHRoaXMuY29tbWFuZHMucHVzaChjb21tYW5kKTtcbiAgICB0aGlzLl9wcm9jZXNzQ29tbWFuZHMoKTtcbiAgICByZXR1cm4gdGhpcy5jb21tYW5kJC5waXBlKGZpbHRlcigoYykgPT4gYy5pZCA9PT0gY29tbWFuZC5pZCkpO1xuICB9XG5cbiAgcmVnaXN0ZXJDb21tYW5kcyhjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10pOiBPYnNlcnZhYmxlPENvbW1hbmRQYWxldHRlQ29tbWFuZD4ge1xuICAgIHRoaXMuY29tbWFuZHMgPSBbLi4udGhpcy5jb21tYW5kcywgLi4uY29tbWFuZHNdO1xuICAgIHRoaXMuX3Byb2Nlc3NDb21tYW5kcygpO1xuICAgIHJldHVybiB0aGlzLmNvbW1hbmQkLnBpcGUoZmlsdGVyKChjbWQpID0+IGNvbW1hbmRzLm1hcCgoYykgPT4gYy5pZCkuaW5jbHVkZXMoY21kLmlkKSkpO1xuICB9XG5cbiAgdW5yZWdpc3RlckNvbW1hbmQoaWQ6IHN0cmluZykge1xuICAgIHRoaXMudW5yZWdpc3RlckNvbW1hbmRzKFtpZF0pO1xuICB9XG5cbiAgdW5yZWdpc3RlckNvbW1hbmRzKGlkczogc3RyaW5nW10pIHtcbiAgICB0aGlzLmNvbW1hbmRzID0gdGhpcy5jb21tYW5kcy5maWx0ZXIoKGMpID0+ICFpZHMuaW5jbHVkZXMoYy5pZCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIHByb3BlcnRpZXMgb2YgdGhlIHJlZ2lzdGVyZWQgY29tbWFuZHMuIFRoaXMgaXMgdXNlZnVsbCB3aGVuXG4gICAqIHRoZSBsYW5ndWFnZSBvZiB0aGUgYXBwIGNoYW5nZXMgYW5kIHlvdSB3YW50IHRvIHVwZGF0ZSB0aGUgY29tbWFuZHMgbGFiZWxzLlxuICAgKiBCYXNlZCBvbiB0aGUgSURzIHByb3BldGllcyBvZiB0aGUgcmVnaXN0ZXJlZCBjb21tYW5kcyB3aWxsIGJlIHVwZGF0ZWQuXG4gICAqIEBwYXJhbSBjbWRzIENvbW1hbmRzIGNvbnRhaW5pbmcgdGhlIHVwZGF0ZWQgcHJvcGVydGllc1xuICAgKi9cbiAgdXBkYXRlQ29tbWFuZHMoY21kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10pIHtcbiAgICBjb25zdCBleENtZFFBOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XG4gICAgY21kcy5mb3JFYWNoKChjKSA9PiAoZXhDbWRRQVtjLmlkXSA9IGMpKTtcblxuICAgIGNvbnN0IHVwZGF0ZWRDb21tYW5kcyA9IHRoaXMuY29tbWFuZHMubWFwKChjKSA9PiAoZXhDbWRRQVtjLmlkXSA/IGV4Q21kUUFbYy5pZF0gOiBjKSk7XG4gICAgdGhpcy5jb21tYW5kcyA9IHVwZGF0ZWRDb21tYW5kcztcbiAgfVxuXG4gIHRyaWdnZXJDb21tYW5kKGNtZDogQ29tbWFuZFBhbGV0dGVDb21tYW5kKSB7XG4gICAgdGhpcy5jb21tYW5kU291cmNlLm5leHQoY21kKTtcbiAgICBpZiAoY21kLmNhbGxiYWNrKSBjbWQuY2FsbGJhY2soKTtcbiAgICB0aGlzLnJlbW92ZUNvbXBvbmVudEZyb21Cb2R5KCk7XG4gIH1cblxuICBhZGREaXNhYmxlZENhdXNlKGNhdXNlOiBEaXNhYmxlZENhdXNlKSB7XG4gICAgY29uc3QgZXhpc3RpbmdDYXVzZUluZGV4ID0gdGhpcy5kaXNhYmxlZENhdXNlcy5maW5kSW5kZXgoKGMpID0+IGMuaWQgPT09IGNhdXNlLmlkKTtcbiAgICBpZiAoZXhpc3RpbmdDYXVzZUluZGV4ID09PSAtMSkge1xuICAgICAgdGhpcy5kaXNhYmxlZENhdXNlcy5wdXNoKGNhdXNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNhYmxlZENhdXNlc1tleGlzdGluZ0NhdXNlSW5kZXhdLm1lc3NhZ2UgPSBjYXVzZS5tZXNzYWdlO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZURpc2FibGVkQ2F1c2UoaWQ6IHN0cmluZykge1xuICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMgPSB0aGlzLmRpc2FibGVkQ2F1c2VzLmZpbHRlcigoYykgPT4gYy5pZCAhPT0gaWQpO1xuICB9XG5cbiAgcmVtb3ZlQWxsRGlzYWJsZWRDYXVzZXMoKSB7XG4gICAgdGhpcy5kaXNhYmxlZENhdXNlcyA9IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBfcHJvY2Vzc0NvbW1hbmRzKCkge1xuICAgIC8vIHNvcnQgdGhlIGNvbW1hbmRzXG4gICAgdGhpcy5jb21tYW5kcy5zb3J0KChhLCBiKSA9PiAoYS5sYWJlbCA+IGIubGFiZWwgPyAxIDogYS5sYWJlbCA9PT0gYi5sYWJlbCA/IDAgOiAtMSkpO1xuICB9XG4gIHByaXZhdGUgX2FjdGlvbktleUNsaWNrKCkge1xuICAgIHRoaXMuX2FjKys7XG4gICAgaWYgKHRoaXMuX2FjID09PSAyKSB7XG4gICAgICB0aGlzLmFwcGVuZENvbXBvbmVudFRvQm9keSgpO1xuICAgICAgdGhpcy5fYWMgPSAwO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fYWMgPT09IDEpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLl9hYyA9IDA7XG4gICAgICB9LCAzMDApO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXBwZW5kQ29tcG9uZW50VG9Cb2R5KCkge1xuICAgIGlmICghdGhpcy5vdmVybGF5VmlzaWJsZSkge1xuICAgICAgLy8gdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShDb21tYW5kUGFsZXR0ZUNvbXBvbmVudCkuY3JlYXRlKHRoaXMuaW5qZWN0b3IpO1xuICAgICAgLy8gdGhpcy5hcHBSZWYuYXR0YWNoVmlldyh0aGlzLmNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XG4gICAgICAvLyBjb25zdCBkb21FbGVtID0gKHRoaXMuY29tcG9uZW50UmVmLmhvc3RWaWV3IGFzIEVtYmVkZGVkVmlld1JlZjxhbnk+KS5yb290Tm9kZXNbMF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAvLyBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvbUVsZW0pO1xuICAgICAgdGhpcy5vdmVybGF5UmVmID0gdGhpcy5vdmVybGF5U2VydmljZS5vcGVuKENvbW1hbmRQYWxldHRlQ29tcG9uZW50KTtcbiAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSB0cnVlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQ29tcG9uZW50RnJvbUJvZHkoKSB7XG4gICAgaWYgKHRoaXMub3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5vdmVybGF5UmVmLmNsb3NlKCk7XG4gICAgICAvLyB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5rZWVwRm9jdXMgPSBmYWxzZTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmRldGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
124
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: CommandPaletteService, decorators: [{
|
|
125
|
+
type: Injectable,
|
|
126
|
+
args: [{
|
|
127
|
+
providedIn: 'root'
|
|
128
|
+
}]
|
|
129
|
+
}], ctorParameters: () => [] });
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBS3RGLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsT0FBTyxDQUFxQjtJQUk1QixVQUFVLENBQW9EO0lBYTlEO1FBakJBLFlBQU8sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkIsY0FBUyxHQUFXLFNBQVMsQ0FBQztRQUMvQixRQUFHLEdBQUcsQ0FBQyxDQUFDO1FBR1IsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDL0IsbUJBQWMsR0FBb0IsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ1QseUJBQW9CLEdBQUcsSUFBSSxhQUFhLEVBQVcsQ0FBQztRQUNyRCxvQkFBZSxHQUF3QixJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0UsYUFBUSxHQUE0QixFQUFFLENBQUM7UUFDdkMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBeUIsQ0FBQztRQUN0RCxhQUFRLEdBQXND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LENBQUM7UUFDdEQsQ0FBQztJQUNILENBQUM7K0dBbElVLHFCQUFxQjttSEFBckIscUJBQXFCLGNBRnBCLE1BQU07OzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QsIGRlYm91bmNlVGltZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVDb21tYW5kLCBEaXNhYmxlZENhdXNlIH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbW1hbmRQYWxldHRlU2VydmljZSB7XG4gICNkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcblxuICByZWFkb25seSBhY3Rpb25LZXk6IHN0cmluZyA9ICdDb250cm9sJztcbiAgcHJpdmF0ZSBfYWMgPSAwO1xuICAjZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tbWFuZFBhbGV0dGVDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgb3ZlcmxheVZpc2libGUgPSBmYWxzZTtcbiAgZGlzYWJsZWRDYXVzZXM6IERpc2FibGVkQ2F1c2VbXSA9IFtdO1xuICBwbGFjZWhvbGRlciA9ICcnO1xuICBwcml2YXRlIG92ZXJsYXlWaXNpYmxlU291cmNlID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHVibGljIG92ZXJsYXlWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMub3ZlcmxheVZpc2libGVTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBjb21tYW5kU291cmNlID0gbmV3IFN1YmplY3Q8Q29tbWFuZFBhbGV0dGVDb21tYW5kPigpO1xuICBwdWJsaWMgY29tbWFuZCQ6IE9ic2VydmFibGU8Q29tbWFuZFBhbGV0dGVDb21tYW5kPiA9IHRoaXMuY29tbWFuZFNvdXJjZS5hc09ic2VydmFibGUoKTtcblxuICBvblNlYXJjaFRlcm0hOiAodGVybTogc3RyaW5nLCBjYjogKHJlczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10pID0+IHZvaWQpID0+IHZvaWQ7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2tleXVwJylcbiAgICAgIC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgICAgbWFwKChlOiBFdmVudCkgPT4gZSBhcyBLZXlib2FyZEV2ZW50KSxcbiAgICAgICAgdGFwKChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUua2V5ID09PSB0aGlzLmFjdGlvbktleSkgdGhpcy5fYWN0aW9uS2V5Q2xpY2soKTtcbiAgICAgICAgICBpZiAoZS5rZXkgPT09ICdFc2NhcGUnKSB0aGlzLnJlbW92ZUNvbXBvbmVudEZyb21Cb2R5KCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnZXRDb21tYW5kcygpOiBDb21tYW5kUGFsZXR0ZUNvbW1hbmRbXSB7XG4gICAgY29uc3QgY29tbWFuZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdID0gT2JqZWN0LnZhbHVlcyh0aGlzLmNvbW1hbmRzKTtcbiAgICByZXR1cm4gY29tbWFuZHM7XG4gIH1cblxuICByZWdpc3RlckNvbW1hbmQoY29tbWFuZDogQ29tbWFuZFBhbGV0dGVDb21tYW5kKTogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+IHtcbiAgICB0aGlzLmNvbW1hbmRzLnB1c2goY29tbWFuZCk7XG4gICAgdGhpcy5fcHJvY2Vzc0NvbW1hbmRzKCk7XG4gICAgcmV0dXJuIHRoaXMuY29tbWFuZCQucGlwZShmaWx0ZXIoKGMpID0+IGMuaWQgPT09IGNvbW1hbmQuaWQpKTtcbiAgfVxuXG4gIHJlZ2lzdGVyQ29tbWFuZHMoY29tbWFuZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdKTogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+IHtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuY29tbWFuZHMsIC4uLmNvbW1hbmRzXTtcbiAgICB0aGlzLl9wcm9jZXNzQ29tbWFuZHMoKTtcbiAgICByZXR1cm4gdGhpcy5jb21tYW5kJC5waXBlKGZpbHRlcigoY21kKSA9PiBjb21tYW5kcy5tYXAoKGMpID0+IGMuaWQpLmluY2x1ZGVzKGNtZC5pZCkpKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXJDb21tYW5kKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnVucmVnaXN0ZXJDb21tYW5kcyhbaWRdKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXJDb21tYW5kcyhpZHM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5jb21tYW5kcyA9IHRoaXMuY29tbWFuZHMuZmlsdGVyKChjKSA9PiAhaWRzLmluY2x1ZGVzKGMuaWQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSByZWdpc3RlcmVkIGNvbW1hbmRzLiBUaGlzIGlzIHVzZWZ1bGwgd2hlblxuICAgKiB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIGFwcCBjaGFuZ2VzIGFuZCB5b3Ugd2FudCB0byB1cGRhdGUgdGhlIGNvbW1hbmRzIGxhYmVscy5cbiAgICogQmFzZWQgb24gdGhlIElEcyBwcm9wZXRpZXMgb2YgdGhlIHJlZ2lzdGVyZWQgY29tbWFuZHMgd2lsbCBiZSB1cGRhdGVkLlxuICAgKiBAcGFyYW0gY21kcyBDb21tYW5kcyBjb250YWluaW5nIHRoZSB1cGRhdGVkIHByb3BlcnRpZXNcbiAgICovXG4gIHVwZGF0ZUNvbW1hbmRzKGNtZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdKSB7XG4gICAgY29uc3QgZXhDbWRRQTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGNtZHMuZm9yRWFjaCgoYykgPT4gKGV4Q21kUUFbYy5pZF0gPSBjKSk7XG5cbiAgICBjb25zdCB1cGRhdGVkQ29tbWFuZHMgPSB0aGlzLmNvbW1hbmRzLm1hcCgoYykgPT4gKGV4Q21kUUFbYy5pZF0gPyBleENtZFFBW2MuaWRdIDogYykpO1xuICAgIHRoaXMuY29tbWFuZHMgPSB1cGRhdGVkQ29tbWFuZHM7XG4gIH1cblxuICB0cmlnZ2VyQ29tbWFuZChjbWQ6IENvbW1hbmRQYWxldHRlQ29tbWFuZCkge1xuICAgIHRoaXMuY29tbWFuZFNvdXJjZS5uZXh0KGNtZCk7XG4gICAgaWYgKGNtZC5jYWxsYmFjaykgY21kLmNhbGxiYWNrKCk7XG4gICAgdGhpcy5yZW1vdmVDb21wb25lbnRGcm9tQm9keSgpO1xuICB9XG5cbiAgYWRkRGlzYWJsZWRDYXVzZShjYXVzZTogRGlzYWJsZWRDYXVzZSkge1xuICAgIGNvbnN0IGV4aXN0aW5nQ2F1c2VJbmRleCA9IHRoaXMuZGlzYWJsZWRDYXVzZXMuZmluZEluZGV4KChjKSA9PiBjLmlkID09PSBjYXVzZS5pZCk7XG4gICAgaWYgKGV4aXN0aW5nQ2F1c2VJbmRleCA9PT0gLTEpIHtcbiAgICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMucHVzaChjYXVzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzYWJsZWRDYXVzZXNbZXhpc3RpbmdDYXVzZUluZGV4XS5tZXNzYWdlID0gY2F1c2UubWVzc2FnZTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVEaXNhYmxlZENhdXNlKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRpc2FibGVkQ2F1c2VzID0gdGhpcy5kaXNhYmxlZENhdXNlcy5maWx0ZXIoKGMpID0+IGMuaWQgIT09IGlkKTtcbiAgfVxuXG4gIHJlbW92ZUFsbERpc2FibGVkQ2F1c2VzKCkge1xuICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMgPSBbXTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb2Nlc3NDb21tYW5kcygpIHtcbiAgICAvLyBzb3J0IHRoZSBjb21tYW5kc1xuICAgIHRoaXMuY29tbWFuZHMuc29ydCgoYSwgYikgPT4gKGEubGFiZWwgPiBiLmxhYmVsID8gMSA6IGEubGFiZWwgPT09IGIubGFiZWwgPyAwIDogLTEpKTtcbiAgfVxuICBwcml2YXRlIF9hY3Rpb25LZXlDbGljaygpIHtcbiAgICB0aGlzLl9hYysrO1xuICAgIGlmICh0aGlzLl9hYyA9PT0gMikge1xuICAgICAgdGhpcy5hcHBlbmRDb21wb25lbnRUb0JvZHkoKTtcbiAgICAgIHRoaXMuX2FjID0gMDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX2FjID09PSAxKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fYWMgPSAwO1xuICAgICAgfSwgMzAwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFwcGVuZENvbXBvbmVudFRvQm9keSgpIHtcbiAgICBpZiAoIXRoaXMub3ZlcmxheVZpc2libGUpIHtcbiAgICAgIC8vIHRoaXMuY29tcG9uZW50UmVmID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQ29tbWFuZFBhbGV0dGVDb21wb25lbnQpLmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gY29uc3QgZG9tRWxlbSA9ICh0aGlzLmNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8YW55Pikucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgLy8gZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb21FbGVtKTtcbiAgICAgIHRoaXMuI2RpYWxvZ1JlZiA9IHRoaXMuI2RpYWxvZy5vcGVuKENvbW1hbmRQYWxldHRlQ29tcG9uZW50KTtcbiAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSB0cnVlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQ29tcG9uZW50RnJvbUJvZHkoKSB7XG4gICAgaWYgKHRoaXMuI2RpYWxvZ1JlZikge1xuICAgICAgdGhpcy4jZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgICAvLyB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5rZWVwRm9jdXMgPSBmYWxzZTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmRldGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { FeatureService } from './feature.service';
|
|
3
|
+
export const canMatchFeature = (route) => {
|
|
4
|
+
const featureService = inject(FeatureService);
|
|
5
|
+
return featureService.canUseApp(route) && featureService.canUseFeatureById(route.id);
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvZmVhdHVyZS9mZWF0dXJlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR25ELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLEtBQVksRUFBRSxFQUFFO0lBQzlDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5QyxPQUFPLGNBQWMsQ0FBQyxTQUFTLENBQUMsS0FBWSxDQUFDLElBQUksY0FBYyxDQUFDLGlCQUFpQixDQUFFLEtBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUN2RyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEZlYXR1cmVTZXJ2aWNlIH0gZnJvbSAnLi9mZWF0dXJlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwIH0gZnJvbSAnLi4vLi4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjb25zdCBjYW5NYXRjaEZlYXR1cmUgPSAocm91dGU6IFJvdXRlKSA9PiB7XG4gIGNvbnN0IGZlYXR1cmVTZXJ2aWNlID0gaW5qZWN0KEZlYXR1cmVTZXJ2aWNlKTtcbiAgcmV0dXJuIGZlYXR1cmVTZXJ2aWNlLmNhblVzZUFwcChyb3V0ZSBhcyBBcHApICYmIGZlYXR1cmVTZXJ2aWNlLmNhblVzZUZlYXR1cmVCeUlkKChyb3V0ZSBhcyBBcHApLmlkKTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2ZlYXR1cmUvZmVhdHVyZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50U2hlbGxGZWF0dXJlQ29uZmlnIHtcbiAgICBvYmplY3RJRDogc3RyaW5nO1xuICAgIGZlYXR1cmVzOiBDbGllbnRTaGVsbEZlYXR1cmVbXTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50U2hlbGxGZWF0dXJlIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIC8vIGxhYmVsIGZvciB0aGUgZmVhdHVyZVxuICAgIGxhYmVsPzogc3RyaW5nO1xuICAgIGV4dGVuc2lvbj86IGJvb2xlYW47XG4gICAgLy8gbGlzdCBvZiBhbGxvd2VkIGF1dGhvcml0aWVzIChyb2xlcykgZm9yIHRoaXMgZmVhdHVyZVxuICAgIGFsbG93ZWQ/OiBzdHJpbmdbXTtcbiAgICAvLyBsaXN0IG9mIGRlbmllZCBhdXRob3JpdGllcyAocm9sZXMpIGZvciB0aGlzIGZlYXR1cmVcbiAgICAvLyBkZW5pZWQgd2lsbCBvdmVycnVsZSBhbGxvd2VkXG4gICAgZGVuaWVkPzogc3RyaW5nW107IFxufSJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const CLIENT_SHELL_FEATURE_CONFIG = new InjectionToken('Feature configurations for client shell', {
|
|
3
|
+
factory: () => undefined
|
|
4
|
+
});
|
|
5
|
+
export const provideClientShellFeatures = (featureConfig) => {
|
|
6
|
+
return { provide: CLIENT_SHELL_FEATURE_CONFIG, useValue: featureConfig };
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5wcm92aWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2ZlYXR1cmUvZmVhdHVyZS5wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUd6RCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FBdUMseUNBQXlDLEVBQUU7SUFDN0ksT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLFNBQVM7Q0FDekIsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxhQUF1QyxFQUFZLEVBQUU7SUFDOUYsT0FBTyxFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLENBQUM7QUFDM0UsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGllbnRTaGVsbEZlYXR1cmVDb25maWcgfSBmcm9tICcuL2ZlYXR1cmUuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IENMSUVOVF9TSEVMTF9GRUFUVVJFX0NPTkZJRyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDbGllbnRTaGVsbEZlYXR1cmVDb25maWcgfCB1bmRlZmluZWQ+KCdGZWF0dXJlIGNvbmZpZ3VyYXRpb25zIGZvciBjbGllbnQgc2hlbGwnLCB7XG4gIGZhY3Rvcnk6ICgpID0+IHVuZGVmaW5lZFxufSk7XG5cbmV4cG9ydCBjb25zdCBwcm92aWRlQ2xpZW50U2hlbGxGZWF0dXJlcyA9IChmZWF0dXJlQ29uZmlnOiBDbGllbnRTaGVsbEZlYXR1cmVDb25maWcpOiBQcm92aWRlciA9PiB7XG4gIHJldHVybiB7IHByb3ZpZGU6IENMSUVOVF9TSEVMTF9GRUFUVVJFX0NPTkZJRywgdXNlVmFsdWU6IGZlYXR1cmVDb25maWcgfTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { BackendService } from '@yuuvis/client-core';
|
|
3
|
+
import { YUV_USER } from '@yuuvis/client-core';
|
|
4
|
+
import { of, switchMap, tap } from 'rxjs';
|
|
5
|
+
import { SHELL_CONFIG_FEATURES } from '../shell-config/shell-config.const';
|
|
6
|
+
import { ShellConfigService } from '../shell-config/shell-config.service';
|
|
7
|
+
import { CLIENT_SHELL_FEATURE_CONFIG } from './feature.providers';
|
|
8
|
+
import { ShellService } from '../shell/shell.service';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export class FeatureService {
|
|
11
|
+
#featureConfig = inject(CLIENT_SHELL_FEATURE_CONFIG);
|
|
12
|
+
#userToken = inject(YUV_USER);
|
|
13
|
+
#shell = inject(ShellService);
|
|
14
|
+
#shellConfig = inject(ShellConfigService);
|
|
15
|
+
#featureObjectId = this.#featureConfig?.objectID;
|
|
16
|
+
#features = this.#featureConfig?.features || [];
|
|
17
|
+
#backend = inject(BackendService);
|
|
18
|
+
hasFeatureConfig() {
|
|
19
|
+
return !!this.#featureObjectId;
|
|
20
|
+
}
|
|
21
|
+
getFeatures() {
|
|
22
|
+
return this.#features;
|
|
23
|
+
}
|
|
24
|
+
getAvailableApps(allApps) {
|
|
25
|
+
return allApps.filter((app) => this.canUseApp(app) && this.canUseFeatureById(app.id));
|
|
26
|
+
}
|
|
27
|
+
canUseApp(app) {
|
|
28
|
+
const authorities = this.#userToken?.authorities || [];
|
|
29
|
+
const allowed = app.permissions?.allow || [];
|
|
30
|
+
const denied = app.permissions?.deny || [];
|
|
31
|
+
const isAllowed = allowed.length === 0 || authorities.some((authority) => allowed.includes(authority));
|
|
32
|
+
const isDenied = denied.some((deniedAuthority) => authorities.includes(deniedAuthority));
|
|
33
|
+
return isAllowed && !isDenied;
|
|
34
|
+
}
|
|
35
|
+
canUseFeatureById(featureId, authorities) {
|
|
36
|
+
const feature = this.#features.find((f) => f.id === featureId);
|
|
37
|
+
return !feature || this.canUseFeature(feature, authorities);
|
|
38
|
+
}
|
|
39
|
+
canUseFeature(feature, authorities) {
|
|
40
|
+
const authoritiesToCheck = authorities || this.#userToken?.authorities || [];
|
|
41
|
+
const allowed = feature.allowed || [];
|
|
42
|
+
const denied = feature.denied || [];
|
|
43
|
+
const isAllowed = allowed.length === 0 || authoritiesToCheck.some((authority) => allowed.includes(authority));
|
|
44
|
+
const isDenied = denied.some((deniedAuthority) => authoritiesToCheck.includes(deniedAuthority));
|
|
45
|
+
return isAllowed && !isDenied;
|
|
46
|
+
}
|
|
47
|
+
saveFeatureSettings(features) {
|
|
48
|
+
if (!this.#featureObjectId) {
|
|
49
|
+
throw new Error('No feature configuration object ID provided');
|
|
50
|
+
}
|
|
51
|
+
return this.#shellConfig.update(this.#featureObjectId, features).pipe(tap(() => (this.#features = features)));
|
|
52
|
+
}
|
|
53
|
+
deleteFeatureSettings() {
|
|
54
|
+
if (!this.#featureObjectId) {
|
|
55
|
+
throw new Error('No feature configuration object ID provided');
|
|
56
|
+
}
|
|
57
|
+
return this.#shellConfig.delete(this.#featureObjectId);
|
|
58
|
+
}
|
|
59
|
+
createSettingsObject() {
|
|
60
|
+
return this.#shellConfig.create(SHELL_CONFIG_FEATURES, []).pipe(tap((res) => {
|
|
61
|
+
this.#featureObjectId = res.id;
|
|
62
|
+
}));
|
|
63
|
+
}
|
|
64
|
+
export() {
|
|
65
|
+
if (this.#featureObjectId) {
|
|
66
|
+
this.#shellConfig.download(this.#featureObjectId, `${SHELL_CONFIG_FEATURES}.json`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
import() {
|
|
70
|
+
// read files contents
|
|
71
|
+
return this.#featureObjectId
|
|
72
|
+
? this.#shell.pickFile().pipe(switchMap((file) => file
|
|
73
|
+
? this.#shellConfig.upload(this.#featureObjectId, file).pipe(switchMap((res) => {
|
|
74
|
+
// read uploaded file
|
|
75
|
+
return this.#backend.get(`/dms/objects/${res.id}/contents/file`).pipe(tap((data) => {
|
|
76
|
+
// update features
|
|
77
|
+
console.log('data', data);
|
|
78
|
+
this.#features = data;
|
|
79
|
+
}));
|
|
80
|
+
}))
|
|
81
|
+
: of(null)))
|
|
82
|
+
: of(null);
|
|
83
|
+
}
|
|
84
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: FeatureService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
85
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: FeatureService, providedIn: 'root' }); }
|
|
86
|
+
}
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: FeatureService, decorators: [{
|
|
88
|
+
type: Injectable,
|
|
89
|
+
args: [{
|
|
90
|
+
providedIn: 'root'
|
|
91
|
+
}]
|
|
92
|
+
}] });
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9mZWF0dXJlL2ZlYXR1cmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFXLE1BQU0scUJBQXFCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBS3RELE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGNBQWMsR0FBRyxNQUFNLENBQTJCLDJCQUEyQixDQUFDLENBQUM7SUFDL0UsVUFBVSxHQUFHLE1BQU0sQ0FBVSxRQUFRLENBQUMsQ0FBQztJQUN2QyxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlCLFlBQVksR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMxQyxnQkFBZ0IsR0FBSSxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQztJQUNsRCxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO0lBQ2hELFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFbEMsZ0JBQWdCO1FBQ2QsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFjO1FBQzdCLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFRO1FBQ2hCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUN2RCxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDN0MsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1FBRTNDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN2RyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFFekYsT0FBTyxTQUFTLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDaEMsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQWlCLEVBQUUsV0FBc0I7UUFDekQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssU0FBUyxDQUFDLENBQUM7UUFDL0QsT0FBTyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQsYUFBYSxDQUFDLE9BQTJCLEVBQUUsV0FBc0I7UUFDL0QsTUFBTSxrQkFBa0IsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxXQUFXLElBQUksRUFBRSxDQUFDO1FBQzdFLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3RDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBRXBDLE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzlHLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBRWhHLE9BQU8sU0FBUyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxRQUE4QjtRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQzdELEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxxQkFBcUIsT0FBTyxDQUFDLENBQUM7UUFDckYsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNO1FBQ0osc0JBQXNCO1FBRXRCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQjtZQUMxQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQ3pCLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ2pCLElBQUk7Z0JBQ0YsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBaUIsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQ3pELFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUNoQixxQkFBcUI7b0JBQ3JCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUNuRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDWCxrQkFBa0I7d0JBQ2xCLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO3dCQUUxQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztvQkFDeEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FDSDtnQkFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUNiLENBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2YsQ0FBQzsrR0FwR1UsY0FBYzttSEFBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhY2tlbmRTZXJ2aWNlLCBZdXZVc2VyIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5cbmltcG9ydCB7IFlVVl9VU0VSIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcCB9IGZyb20gJy4uLy4uL2NsaWVudC1zaGVsbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU0hFTExfQ09ORklHX0ZFQVRVUkVTIH0gZnJvbSAnLi4vc2hlbGwtY29uZmlnL3NoZWxsLWNvbmZpZy5jb25zdCc7XG5pbXBvcnQgeyBTaGVsbENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zaGVsbC1jb25maWcvc2hlbGwtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50U2hlbGxGZWF0dXJlLCBDbGllbnRTaGVsbEZlYXR1cmVDb25maWcgfSBmcm9tICcuL2ZlYXR1cmUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENMSUVOVF9TSEVMTF9GRUFUVVJFX0NPTkZJRyB9IGZyb20gJy4vZmVhdHVyZS5wcm92aWRlcnMnO1xuaW1wb3J0IHsgU2hlbGxTZXJ2aWNlIH0gZnJvbSAnLi4vc2hlbGwvc2hlbGwuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVTZXJ2aWNlIHtcbiAgI2ZlYXR1cmVDb25maWcgPSBpbmplY3Q8Q2xpZW50U2hlbGxGZWF0dXJlQ29uZmlnPihDTElFTlRfU0hFTExfRkVBVFVSRV9DT05GSUcpO1xuICAjdXNlclRva2VuID0gaW5qZWN0PFl1dlVzZXI+KFlVVl9VU0VSKTtcbiAgI3NoZWxsID0gaW5qZWN0KFNoZWxsU2VydmljZSk7XG4gICNzaGVsbENvbmZpZyA9IGluamVjdChTaGVsbENvbmZpZ1NlcnZpY2UpO1xuICAjZmVhdHVyZU9iamVjdElkPyA9IHRoaXMuI2ZlYXR1cmVDb25maWc/Lm9iamVjdElEO1xuICAjZmVhdHVyZXMgPSB0aGlzLiNmZWF0dXJlQ29uZmlnPy5mZWF0dXJlcyB8fCBbXTtcbiAgI2JhY2tlbmQgPSBpbmplY3QoQmFja2VuZFNlcnZpY2UpO1xuXG4gIGhhc0ZlYXR1cmVDb25maWcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy4jZmVhdHVyZU9iamVjdElkO1xuICB9XG5cbiAgZ2V0RmVhdHVyZXMoKTogQ2xpZW50U2hlbGxGZWF0dXJlW10ge1xuICAgIHJldHVybiB0aGlzLiNmZWF0dXJlcztcbiAgfVxuXG4gIGdldEF2YWlsYWJsZUFwcHMoYWxsQXBwczogQXBwW10pOiBBcHBbXSB7XG4gICAgcmV0dXJuIGFsbEFwcHMuZmlsdGVyKChhcHApID0+IHRoaXMuY2FuVXNlQXBwKGFwcCkgJiYgdGhpcy5jYW5Vc2VGZWF0dXJlQnlJZChhcHAuaWQpKTtcbiAgfVxuXG4gIGNhblVzZUFwcChhcHA6IEFwcCkge1xuICAgIGNvbnN0IGF1dGhvcml0aWVzID0gdGhpcy4jdXNlclRva2VuPy5hdXRob3JpdGllcyB8fCBbXTtcbiAgICBjb25zdCBhbGxvd2VkID0gYXBwLnBlcm1pc3Npb25zPy5hbGxvdyB8fCBbXTtcbiAgICBjb25zdCBkZW5pZWQgPSBhcHAucGVybWlzc2lvbnM/LmRlbnkgfHwgW107XG5cbiAgICBjb25zdCBpc0FsbG93ZWQgPSBhbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBhdXRob3JpdGllcy5zb21lKChhdXRob3JpdHkpID0+IGFsbG93ZWQuaW5jbHVkZXMoYXV0aG9yaXR5KSk7XG4gICAgY29uc3QgaXNEZW5pZWQgPSBkZW5pZWQuc29tZSgoZGVuaWVkQXV0aG9yaXR5KSA9PiBhdXRob3JpdGllcy5pbmNsdWRlcyhkZW5pZWRBdXRob3JpdHkpKTtcblxuICAgIHJldHVybiBpc0FsbG93ZWQgJiYgIWlzRGVuaWVkO1xuICB9XG5cbiAgY2FuVXNlRmVhdHVyZUJ5SWQoZmVhdHVyZUlkOiBzdHJpbmcsIGF1dGhvcml0aWVzPzogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBjb25zdCBmZWF0dXJlID0gdGhpcy4jZmVhdHVyZXMuZmluZCgoZikgPT4gZi5pZCA9PT0gZmVhdHVyZUlkKTtcbiAgICByZXR1cm4gIWZlYXR1cmUgfHwgdGhpcy5jYW5Vc2VGZWF0dXJlKGZlYXR1cmUsIGF1dGhvcml0aWVzKTtcbiAgfVxuXG4gIGNhblVzZUZlYXR1cmUoZmVhdHVyZTogQ2xpZW50U2hlbGxGZWF0dXJlLCBhdXRob3JpdGllcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgYXV0aG9yaXRpZXNUb0NoZWNrID0gYXV0aG9yaXRpZXMgfHwgdGhpcy4jdXNlclRva2VuPy5hdXRob3JpdGllcyB8fCBbXTtcbiAgICBjb25zdCBhbGxvd2VkID0gZmVhdHVyZS5hbGxvd2VkIHx8IFtdO1xuICAgIGNvbnN0IGRlbmllZCA9IGZlYXR1cmUuZGVuaWVkIHx8IFtdO1xuXG4gICAgY29uc3QgaXNBbGxvd2VkID0gYWxsb3dlZC5sZW5ndGggPT09IDAgfHwgYXV0aG9yaXRpZXNUb0NoZWNrLnNvbWUoKGF1dGhvcml0eSkgPT4gYWxsb3dlZC5pbmNsdWRlcyhhdXRob3JpdHkpKTtcbiAgICBjb25zdCBpc0RlbmllZCA9IGRlbmllZC5zb21lKChkZW5pZWRBdXRob3JpdHkpID0+IGF1dGhvcml0aWVzVG9DaGVjay5pbmNsdWRlcyhkZW5pZWRBdXRob3JpdHkpKTtcblxuICAgIHJldHVybiBpc0FsbG93ZWQgJiYgIWlzRGVuaWVkO1xuICB9XG5cbiAgc2F2ZUZlYXR1cmVTZXR0aW5ncyhmZWF0dXJlczogQ2xpZW50U2hlbGxGZWF0dXJlW10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy4jZmVhdHVyZU9iamVjdElkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGZlYXR1cmUgY29uZmlndXJhdGlvbiBvYmplY3QgSUQgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuI3NoZWxsQ29uZmlnLnVwZGF0ZSh0aGlzLiNmZWF0dXJlT2JqZWN0SWQsIGZlYXR1cmVzKS5waXBlKHRhcCgoKSA9PiAodGhpcy4jZmVhdHVyZXMgPSBmZWF0dXJlcykpKTtcbiAgfVxuXG4gIGRlbGV0ZUZlYXR1cmVTZXR0aW5ncygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy4jZmVhdHVyZU9iamVjdElkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGZlYXR1cmUgY29uZmlndXJhdGlvbiBvYmplY3QgSUQgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuI3NoZWxsQ29uZmlnLmRlbGV0ZSh0aGlzLiNmZWF0dXJlT2JqZWN0SWQpO1xuICB9XG5cbiAgY3JlYXRlU2V0dGluZ3NPYmplY3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jc2hlbGxDb25maWcuY3JlYXRlKFNIRUxMX0NPTkZJR19GRUFUVVJFUywgW10pLnBpcGUoXG4gICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICB0aGlzLiNmZWF0dXJlT2JqZWN0SWQgPSByZXMuaWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBleHBvcnQoKSB7XG4gICAgaWYgKHRoaXMuI2ZlYXR1cmVPYmplY3RJZCkge1xuICAgICAgdGhpcy4jc2hlbGxDb25maWcuZG93bmxvYWQodGhpcy4jZmVhdHVyZU9iamVjdElkLCBgJHtTSEVMTF9DT05GSUdfRkVBVFVSRVN9Lmpzb25gKTtcbiAgICB9XG4gIH1cblxuICBpbXBvcnQoKSB7XG4gICAgLy8gcmVhZCBmaWxlcyBjb250ZW50c1xuXG4gICAgcmV0dXJuIHRoaXMuI2ZlYXR1cmVPYmplY3RJZFxuICAgICAgPyB0aGlzLiNzaGVsbC5waWNrRmlsZSgpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKChmaWxlKSA9PlxuICAgICAgICAgICAgZmlsZVxuICAgICAgICAgICAgICA/IHRoaXMuI3NoZWxsQ29uZmlnLnVwbG9hZCh0aGlzLiNmZWF0dXJlT2JqZWN0SWQhLCBmaWxlKS5waXBlKFxuICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gcmVhZCB1cGxvYWRlZCBmaWxlXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLiNiYWNrZW5kLmdldChgL2Rtcy9vYmplY3RzLyR7cmVzLmlkfS9jb250ZW50cy9maWxlYCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICB0YXAoKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBmZWF0dXJlc1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2RhdGEnLCBkYXRhKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4jZmVhdHVyZXMgPSBkYXRhO1xuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgOiBvZihudWxsKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgOiBvZihudWxsKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './feature.interface';
|
|
2
|
+
export * from './feature.guard';
|
|
3
|
+
export * from './feature.providers';
|
|
4
|
+
export * from './feature.service';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2ZlYXR1cmUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLmd1YXJkJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS5wcm92aWRlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLnNlcnZpY2UnOyJdfQ==
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class NoopExtension {
|
|
4
|
+
init() {
|
|
5
|
+
return Promise.resolve();
|
|
6
|
+
}
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NoopExtension, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NoopExtension }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: NoopExtension, decorators: [{
|
|
11
|
+
type: Injectable
|
|
12
|
+
}] });
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcC5leHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL3NoZWxsL25vb3AuZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLElBQUk7UUFDRixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQixDQUFDOytHQUhVLGFBQWE7bUhBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsaWVudFNoZWxsRXh0ZW5zaW9uIH0gZnJvbSAnLi4vLi4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb29wRXh0ZW5zaW9uIGltcGxlbWVudHMgQ2xpZW50U2hlbGxFeHRlbnNpb24ge1xuICBpbml0KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICB9XG59XG4iXX0=
|