@dotglitch/ngx-common 1.0.51 → 1.1.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.
Files changed (92) hide show
  1. package/components/command-palette/command-palette.component.d.ts +20 -0
  2. package/components/command-palette/shortcut/shortcut.component.d.ts +9 -0
  3. package/components/dynamic-html/dynamic-html.component.d.ts +1 -1
  4. package/components/filemanager/file-grid/file-grid.component.d.ts +1 -1
  5. package/components/filemanager/filemanager.component.d.ts +1 -1
  6. package/components/filemanager/folder-rename/folder-rename.component.d.ts +1 -1
  7. package/components/filemanager/toolbar/breadcrumb/breadcrumb.component.d.ts +1 -1
  8. package/components/filemanager/toolbar/icon-button/icon-button.component.d.ts +1 -1
  9. package/components/filemanager/toolbar/toolbar.component.d.ts +1 -1
  10. package/components/filemanager/tree-view/tree-view.component.d.ts +1 -1
  11. package/components/lazy-loader/lazy-loader.component.d.ts +1 -1
  12. package/components/menu/menu.component.d.ts +1 -1
  13. package/components/tabulator/tabulator.component.d.ts +1 -1
  14. package/components/tooltip/tooltip.component.d.ts +1 -1
  15. package/components/vscode/vscode.component.d.ts +1 -1
  16. package/directives/menu.directive.d.ts +2 -2
  17. package/directives/tooltip.directive.d.ts +1 -1
  18. package/esm2022/components/command-palette/command-palette.component.mjs +107 -0
  19. package/esm2022/components/command-palette/shortcut/shortcut.component.mjs +19 -0
  20. package/{esm2020 → esm2022}/components/dynamic-html/dynamic-html.component.mjs +5 -5
  21. package/esm2022/components/dynamic-html/dynamic-html.module.mjs +27 -0
  22. package/{esm2020 → esm2022}/components/dynamic-html/dynamic-html.service.mjs +6 -6
  23. package/{esm2020 → esm2022}/components/filemanager/file-grid/file-grid.component.mjs +5 -5
  24. package/esm2022/components/filemanager/filemanager.component.mjs +302 -0
  25. package/{esm2020 → esm2022}/components/filemanager/folder-rename/folder-rename.component.mjs +5 -5
  26. package/{esm2020 → esm2022}/components/filemanager/toolbar/breadcrumb/breadcrumb.component.mjs +5 -5
  27. package/{esm2020 → esm2022}/components/filemanager/toolbar/icon-button/icon-button.component.mjs +4 -4
  28. package/{esm2020 → esm2022}/components/filemanager/toolbar/toolbar.component.mjs +5 -5
  29. package/{esm2020 → esm2022}/components/filemanager/tree-view/tree-view.component.mjs +6 -6
  30. package/{esm2020 → esm2022}/components/lazy-loader/lazy-loader.component.mjs +6 -6
  31. package/esm2022/components/lazy-loader/lazy-loader.module.mjs +29 -0
  32. package/esm2022/components/lazy-loader/lazy-loader.service.mjs +215 -0
  33. package/{esm2020 → esm2022}/components/menu/menu.component.mjs +7 -7
  34. package/{esm2020 → esm2022}/components/react-magic-wrapper/react-magic-wrapper.component.mjs +5 -5
  35. package/esm2022/components/tabulator/tabulator.component.mjs +92 -0
  36. package/{esm2020 → esm2022}/components/tooltip/tooltip.component.mjs +10 -10
  37. package/{esm2020 → esm2022}/components/vscode/vscode.component.mjs +5 -5
  38. package/{esm2020 → esm2022}/directives/menu.directive.mjs +7 -7
  39. package/{esm2020 → esm2022}/directives/tooltip.directive.mjs +7 -7
  40. package/{esm2020 → esm2022}/pipes/html-bypass.pipe.mjs +5 -5
  41. package/{esm2020 → esm2022}/pipes/resource-bypass.pipe.mjs +5 -5
  42. package/{esm2020 → esm2022}/pipes/script-bypass.pipe.mjs +5 -5
  43. package/{esm2020 → esm2022}/pipes/style-bypass.pipe.mjs +5 -5
  44. package/{esm2020 → esm2022}/pipes/url-bypass.pipe.mjs +5 -5
  45. package/esm2022/public-api.mjs +58 -0
  46. package/esm2022/services/command-palette.service.mjs +205 -0
  47. package/{esm2020 → esm2022}/services/dependency.service.mjs +6 -6
  48. package/{esm2020 → esm2022}/services/dialog.service.mjs +5 -5
  49. package/{esm2020 → esm2022}/services/fetch.service.mjs +5 -5
  50. package/{esm2020 → esm2022}/services/file.service.mjs +5 -5
  51. package/{esm2020 → esm2022}/services/keyboard.service.mjs +5 -5
  52. package/{esm2020 → esm2022}/services/navigation.service.mjs +5 -5
  53. package/{esm2020 → esm2022}/services/theme.service.mjs +5 -5
  54. package/{fesm2020/dotglitch-ngx-common-folder-rename.component-dcb5b712.mjs → fesm2022/dotglitch-ngx-common-folder-rename.component-jf2j2TId.mjs} +7 -7
  55. package/{fesm2020/dotglitch-ngx-common-folder-rename.component-dcb5b712.mjs.map → fesm2022/dotglitch-ngx-common-folder-rename.component-jf2j2TId.mjs.map} +1 -1
  56. package/{fesm2020 → fesm2022}/dotglitch-ngx-common.mjs +471 -158
  57. package/fesm2022/dotglitch-ngx-common.mjs.map +1 -0
  58. package/package.json +9 -15
  59. package/public-api.d.ts +5 -1
  60. package/services/command-palette.service.d.ts +103 -0
  61. package/esm2020/components/dynamic-html/dynamic-html.module.mjs +0 -27
  62. package/esm2020/components/filemanager/filemanager.component.mjs +0 -302
  63. package/esm2020/components/lazy-loader/lazy-loader.module.mjs +0 -29
  64. package/esm2020/components/lazy-loader/lazy-loader.service.mjs +0 -215
  65. package/esm2020/components/tabulator/tabulator.component.mjs +0 -92
  66. package/esm2020/public-api.mjs +0 -54
  67. package/fesm2015/dotglitch-ngx-common-folder-rename.component-984ccea3.mjs +0 -82
  68. package/fesm2015/dotglitch-ngx-common-folder-rename.component-984ccea3.mjs.map +0 -1
  69. package/fesm2015/dotglitch-ngx-common.mjs +0 -10815
  70. package/fesm2015/dotglitch-ngx-common.mjs.map +0 -1
  71. package/fesm2020/dotglitch-ngx-common.mjs.map +0 -1
  72. /package/{esm2020 → esm2022}/assets/mat-icons.mjs +0 -0
  73. /package/{esm2020 → esm2022}/components/dynamic-html/types.mjs +0 -0
  74. /package/{esm2020 → esm2022}/components/filemanager/helpers.mjs +0 -0
  75. /package/{esm2020 → esm2022}/components/filemanager/icon-resolver.mjs +0 -0
  76. /package/{esm2020 → esm2022}/components/filemanager/textextensions.mjs +0 -0
  77. /package/{esm2020 → esm2022}/components/lazy-loader/types.mjs +0 -0
  78. /package/{esm2020 → esm2022}/components/types.mjs +0 -0
  79. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/dependency-parser.mjs +0 -0
  80. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/dummy-source-cache.mjs +0 -0
  81. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/import-resolver.mjs +0 -0
  82. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/main.mjs +0 -0
  83. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/recursion-depth.mjs +0 -0
  84. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/types.mjs +0 -0
  85. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/unpkg-source-resolver.mjs +0 -0
  86. /package/{esm2020 → esm2022}/components/vscode/ts-type-resolver/update-emitter.mjs +0 -0
  87. /package/{esm2020 → esm2022}/directives/utils.mjs +0 -0
  88. /package/{esm2020 → esm2022}/dotglitch-ngx-common.mjs +0 -0
  89. /package/{esm2020 → esm2022}/types/menu.mjs +0 -0
  90. /package/{esm2020 → esm2022}/types/popup.mjs +0 -0
  91. /package/{esm2020 → esm2022}/types/tooltip.mjs +0 -0
  92. /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
@@ -0,0 +1,20 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { CommandAction, CommandPaletteService } from '../../services/command-palette.service';
3
+ import { MatDialogRef } from '@angular/material/dialog';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CommandPaletteComponent implements OnInit {
6
+ private readonly commandPalette;
7
+ private readonly dialog;
8
+ contextElement: HTMLElement;
9
+ queryString: string;
10
+ activeIndex: number;
11
+ commands: CommandAction[];
12
+ filteredCommands: CommandAction[];
13
+ constructor(commandPalette: CommandPaletteService, dialog: MatDialogRef<any>);
14
+ ngOnInit(): void;
15
+ onKeyDown(evt: KeyboardEvent): void;
16
+ executeCommand(command: CommandAction): void;
17
+ onBlur(): void;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<CommandPaletteComponent, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<CommandPaletteComponent, "app-command-palette", never, { "contextElement": { "alias": "contextElement"; "required": false; }; }, {}, never, never, true, never>;
20
+ }
@@ -0,0 +1,9 @@
1
+ import { KeybindCode } from '../../../services/command-palette.service';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ShortcutComponent {
4
+ shortcut: KeybindCode;
5
+ keys: string[];
6
+ ngOnChanges(): void;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<ShortcutComponent, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<ShortcutComponent, "app-shortcut", never, { "shortcut": { "alias": "shortcut"; "required": false; }; }, {}, never, never, true, never>;
9
+ }
@@ -11,5 +11,5 @@ export declare class DynamicHTMLComponent implements DoCheck, OnChanges, OnDestr
11
11
  ngDoCheck(): void;
12
12
  ngOnDestroy(): void;
13
13
  static ɵfac: i0.ɵɵFactoryDeclaration<DynamicHTMLComponent, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<DynamicHTMLComponent, "dynamic-html", never, { "content": "content"; }, {}, never, never, true, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<DynamicHTMLComponent, "dynamic-html", never, { "content": { "alias": "content"; "required": false; }; }, {}, never, never, true, never>;
15
15
  }
@@ -93,5 +93,5 @@ export declare class FileGridComponent implements OnInit {
93
93
  }): void;
94
94
  sort(): void;
95
95
  static ɵfac: i0.ɵɵFactoryDeclaration<FileGridComponent, never>;
96
- static ɵcmp: i0.ɵɵComponentDeclaration<FileGridComponent, "app-file-grid", never, { "path": "path"; "config": "config"; "showHiddenFiles": "showHiddenFiles"; "viewMode": "viewMode"; "gridSize": "gridSize"; "tab": "tab"; "selection": "selection"; "value": "value"; "sortOrder": "sortOrder"; }, { "pathChange": "pathChange"; "fileSelect": "fileSelect"; "fileDblClick": "fileDblClick"; "folderSelect": "folderSelect"; "folderDblClick": "folderDblClick"; "newTab": "newTab"; "loadFiles": "loadFiles"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, never, never, true, never>;
96
+ static ɵcmp: i0.ɵɵComponentDeclaration<FileGridComponent, "app-file-grid", never, { "path": { "alias": "path"; "required": false; }; "config": { "alias": "config"; "required": false; }; "showHiddenFiles": { "alias": "showHiddenFiles"; "required": false; }; "viewMode": { "alias": "viewMode"; "required": false; }; "gridSize": { "alias": "gridSize"; "required": false; }; "tab": { "alias": "tab"; "required": false; }; "selection": { "alias": "selection"; "required": false; }; "value": { "alias": "value"; "required": false; }; "sortOrder": { "alias": "sortOrder"; "required": false; }; }, { "pathChange": "pathChange"; "fileSelect": "fileSelect"; "fileDblClick": "fileDblClick"; "folderSelect": "folderSelect"; "folderDblClick": "folderDblClick"; "newTab": "newTab"; "loadFiles": "loadFiles"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, never, never, true, never>;
97
97
  }
@@ -202,5 +202,5 @@ export declare class FilemanagerComponent implements OnInit {
202
202
  refreshData(): void;
203
203
  getFileData(file: FileDescriptor): string;
204
204
  static ɵfac: i0.ɵɵFactoryDeclaration<FilemanagerComponent, [{ optional: true; }, null, null, null]>;
205
- static ɵcmp: i0.ɵɵComponentDeclaration<FilemanagerComponent, "app-filemanager", never, { "config": "config"; "gridSize": "gridSize"; "mode": "mode"; "contextTags": "contextTags"; "value": "value"; }, { "valueChange": "valueChange"; "focusedFilesChange": "focusedFilesChange"; "fileUpload": "fileUpload"; "fileDownload": "fileDownload"; "fileRename": "fileRename"; "fileDelete": "fileDelete"; "fileCopy": "fileCopy"; "filePaste": "filePaste"; "fileSelect": "fileSelect"; "fileDblClick": "fileDblClick"; "folderSelect": "folderSelect"; "folderDblClick": "folderDblClick"; "filesSelect": "filesSelect"; }, never, never, true, never>;
205
+ static ɵcmp: i0.ɵɵComponentDeclaration<FilemanagerComponent, "app-filemanager", never, { "config": { "alias": "config"; "required": false; }; "gridSize": { "alias": "gridSize"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "contextTags": { "alias": "contextTags"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "valueChange": "valueChange"; "focusedFilesChange": "focusedFilesChange"; "fileUpload": "fileUpload"; "fileDownload": "fileDownload"; "fileRename": "fileRename"; "fileDelete": "fileDelete"; "fileCopy": "fileCopy"; "filePaste": "filePaste"; "fileSelect": "fileSelect"; "fileDblClick": "fileDblClick"; "folderSelect": "folderSelect"; "folderDblClick": "folderDblClick"; "filesSelect": "filesSelect"; }, never, never, true, never>;
206
206
  }
@@ -14,5 +14,5 @@ export declare class FolderRenameComponent implements OnInit {
14
14
  ngOnInit(): void;
15
15
  onSave(): void;
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<FolderRenameComponent, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<FolderRenameComponent, "app-folder-rename", never, { "path": "path"; "name": "name"; "config": "config"; }, {}, never, never, true, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<FolderRenameComponent, "app-folder-rename", never, { "path": { "alias": "path"; "required": false; }; "name": { "alias": "name"; "required": false; }; "config": { "alias": "config"; "required": false; }; }, {}, never, never, true, never>;
18
18
  }
@@ -12,5 +12,5 @@ export declare class GtkBreadcrumbComponent implements OnInit {
12
12
  constructor();
13
13
  ngOnInit(): void;
14
14
  static ɵfac: i0.ɵɵFactoryDeclaration<GtkBreadcrumbComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<GtkBreadcrumbComponent, "app-breadcrumb", never, { "crumbs": "crumbs"; "config": "config"; }, { "crumbClick": "crumbClick"; }, never, never, true, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<GtkBreadcrumbComponent, "app-breadcrumb", never, { "crumbs": { "alias": "crumbs"; "required": false; }; "config": { "alias": "config"; "required": false; }; }, { "crumbClick": "crumbClick"; }, never, never, true, never>;
16
16
  }
@@ -7,5 +7,5 @@ export declare class GtkIconButtonComponent {
7
7
  showDialog: boolean;
8
8
  onClick(): void;
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<GtkIconButtonComponent, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<GtkIconButtonComponent, "gtk-icon-button", never, { "fontIcon": "fontIcon"; "disabled": "disabled"; }, { "click": "click"; }, never, never, true, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<GtkIconButtonComponent, "gtk-icon-button", never, { "fontIcon": { "alias": "fontIcon"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "click": "click"; }, never, never, true, never>;
11
11
  }
@@ -26,5 +26,5 @@ export declare class ToolbarComponent {
26
26
  toggleDrawer(): void;
27
27
  setSorter(mode: FileSorting): void;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarComponent, never>;
29
- static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarComponent, "app-toolbar", never, { "config": "config"; "currentTab": "currentTab"; "showHiddenFiles": "showHiddenFiles"; "showSidebar": "showSidebar"; "drawerMode": "drawerMode"; "showBareMinimum": "showBareMinimum"; }, { "onBreadcrumbClick": "onBreadcrumbClick"; "showHiddenFilesChange": "showHiddenFilesChange"; "showSidebarChange": "showSidebarChange"; }, never, never, true, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarComponent, "app-toolbar", never, { "config": { "alias": "config"; "required": false; }; "currentTab": { "alias": "currentTab"; "required": false; }; "showHiddenFiles": { "alias": "showHiddenFiles"; "required": false; }; "showSidebar": { "alias": "showSidebar"; "required": false; }; "drawerMode": { "alias": "drawerMode"; "required": false; }; "showBareMinimum": { "alias": "showBareMinimum"; "required": false; }; }, { "onBreadcrumbClick": "onBreadcrumbClick"; "showHiddenFilesChange": "showHiddenFilesChange"; "showSidebarChange": "showSidebarChange"; }, never, never, true, never>;
30
30
  }
@@ -17,5 +17,5 @@ export declare class TreeViewComponent {
17
17
  constructor(fileManager: FilemanagerComponent);
18
18
  tryLoadChildren(item: any, panel: MatExpansionPanel): void;
19
19
  static ɵfac: i0.ɵɵFactoryDeclaration<TreeViewComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<TreeViewComponent, "app-tree-view", never, { "rowTemplateIn": "rowTemplate"; "data": "data"; }, { "click": "click"; "loadChildren": "loadChildren"; }, ["rowTemplate"], never, true, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<TreeViewComponent, "app-tree-view", never, { "rowTemplateIn": { "alias": "rowTemplate"; "required": false; }; "data": { "alias": "data"; "required": false; }; }, { "click": "click"; "loadChildren": "loadChildren"; }, ["rowTemplate"], never, true, never>;
21
21
  }
@@ -144,5 +144,5 @@ export declare class LazyLoaderComponent implements AfterViewInit {
144
144
  */
145
145
  private loadError;
146
146
  static ɵfac: i0.ɵɵFactoryDeclaration<LazyLoaderComponent, [null, { optional: true; }, { optional: true; }, { optional: true; }]>;
147
- static ɵcmp: i0.ɵɵComponentDeclaration<LazyLoaderComponent, "ngx-lazy-loader", never, { "id": "component"; "group": "group"; "inputs": "inputs"; "outputs": "outputs"; }, { "componentLoadError": "componentLoadError"; "componentLoaded": "componentLoaded"; }, never, never, true, never>;
147
+ static ɵcmp: i0.ɵɵComponentDeclaration<LazyLoaderComponent, "ngx-lazy-loader", never, { "id": { "alias": "component"; "required": false; }; "group": { "alias": "group"; "required": false; }; "inputs": { "alias": "inputs"; "required": false; }; "outputs": { "alias": "outputs"; "required": false; }; }, { "componentLoadError": "componentLoadError"; "componentLoaded": "componentLoaded"; }, never, never, true, never>;
148
148
  }
@@ -71,5 +71,5 @@ export declare class MenuComponent implements OnInit {
71
71
  private onResize;
72
72
  onWheel(evt: WheelEvent): void;
73
73
  static ɵfac: i0.ɵɵFactoryDeclaration<MenuComponent, [null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
74
- static ɵcmp: i0.ɵɵComponentDeclaration<MenuComponent, "ngx-menu", never, { "data": "data"; "items": "items"; "config": "config"; "id": "id"; "overlayOverlap": "overlayOverlap"; "hoverDelay": "hoverDelay"; "showDebugOverlay": "showDebugOverlay"; "ownerCords": "ownerCords"; "selfCords": "selfCords"; "parentItem": "parentItem"; "parentContext": "parentContext"; }, {}, never, never, true, never>;
74
+ static ɵcmp: i0.ɵɵComponentDeclaration<MenuComponent, "ngx-menu", never, { "data": { "alias": "data"; "required": false; }; "items": { "alias": "items"; "required": false; }; "config": { "alias": "config"; "required": false; }; "id": { "alias": "id"; "required": false; }; "overlayOverlap": { "alias": "overlayOverlap"; "required": false; }; "hoverDelay": { "alias": "hoverDelay"; "required": false; }; "showDebugOverlay": { "alias": "showDebugOverlay"; "required": false; }; "ownerCords": { "alias": "ownerCords"; "required": false; }; "selfCords": { "alias": "selfCords"; "required": false; }; "parentItem": { "alias": "parentItem"; "required": false; }; "parentContext": { "alias": "parentContext"; "required": false; }; }, {}, never, never, true, never>;
75
75
  }
@@ -26,5 +26,5 @@ export declare class TabulatorComponent<T = any> {
26
26
  ngAfterViewInit(): void;
27
27
  ngOnChanges(changes: SimpleChanges): void;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<TabulatorComponent<any>, never>;
29
- static ɵcmp: i0.ɵɵComponentDeclaration<TabulatorComponent<any>, "app-tabulator", never, { "dataSource": "dataSource"; "columns": "columns"; "key": "key"; "options": "options"; }, { "cellClick": "cellClick"; "cellDblClick": "cellDblClick"; "rowClick": "rowClick"; "rowContext": "rowContext"; "rowDblClick": "rowDblClick"; }, never, never, true, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<TabulatorComponent<any>, "app-tabulator", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "key": { "alias": "key"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "cellClick": "cellClick"; "cellDblClick": "cellDblClick"; "rowClick": "rowClick"; "rowContext": "rowContext"; "rowDblClick": "rowDblClick"; }, never, never, true, never>;
30
30
  }
@@ -33,5 +33,5 @@ export declare class TooltipComponent {
33
33
  private onClose;
34
34
  closeOnVoid(force?: boolean): void;
35
35
  static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, [null, { optional: true; }, { optional: true; }, { optional: true; }]>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "ngx-tooltip", never, { "data": "data"; "config": "config"; "ownerCords": "ownerCords"; "selfCords": "selfCords"; "template": "template"; }, {}, never, never, true, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "ngx-tooltip", never, { "data": { "alias": "data"; "required": false; }; "config": { "alias": "config"; "required": false; }; "ownerCords": { "alias": "ownerCords"; "required": false; }; "selfCords": { "alias": "selfCords"; "required": false; }; "template": { "alias": "template"; "required": false; }; }, {}, never, never, true, never>;
37
37
  }
@@ -47,6 +47,6 @@ export declare class VscodeComponent implements AfterViewInit, OnDestroy {
47
47
  download(): void;
48
48
  resize: () => void;
49
49
  static ɵfac: i0.ɵɵFactoryDeclaration<VscodeComponent, never>;
50
- static ɵcmp: i0.ɵɵComponentDeclaration<VscodeComponent, "app-vscode", never, { "code": "code"; "customLanguage": "customLanguage"; "language": "language"; "installationLocation": "installationLocation"; "tabSize": "tabSize"; "readOnly": "readOnly"; "theme": "theme"; "fontFamily": "fontFamily"; "fontSize": "fontSize"; "automaticLayout": "automaticLayout"; "colorDecorators": "colorDecorators"; "folding": "folding"; "minimapEnabled": "minimapEnabled"; "minimap": "minimap"; "scrollbar": "scrollbar"; "smoothScrolling": "smoothScrolling"; "mouseWheelScrollSensitivity": "mouseWheelScrollSensitivity"; "scrollBeyondLastLine": "scrollBeyondLastLine"; "scrollBeyondLastColumn": "scrollBeyondLastColumn"; "lineNumbers": "lineNumbers"; "restSettings": "restSettings"; }, { "codeChange": "codeChange"; }, never, never, true, never>;
50
+ static ɵcmp: i0.ɵɵComponentDeclaration<VscodeComponent, "app-vscode", never, { "code": { "alias": "code"; "required": false; }; "customLanguage": { "alias": "customLanguage"; "required": false; }; "language": { "alias": "language"; "required": false; }; "installationLocation": { "alias": "installationLocation"; "required": false; }; "tabSize": { "alias": "tabSize"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "fontFamily": { "alias": "fontFamily"; "required": false; }; "fontSize": { "alias": "fontSize"; "required": false; }; "automaticLayout": { "alias": "automaticLayout"; "required": false; }; "colorDecorators": { "alias": "colorDecorators"; "required": false; }; "folding": { "alias": "folding"; "required": false; }; "minimapEnabled": { "alias": "minimapEnabled"; "required": false; }; "minimap": { "alias": "minimap"; "required": false; }; "scrollbar": { "alias": "scrollbar"; "required": false; }; "smoothScrolling": { "alias": "smoothScrolling"; "required": false; }; "mouseWheelScrollSensitivity": { "alias": "mouseWheelScrollSensitivity"; "required": false; }; "scrollBeyondLastLine": { "alias": "scrollBeyondLastLine"; "required": false; }; "scrollBeyondLastColumn": { "alias": "scrollBeyondLastColumn"; "required": false; }; "lineNumbers": { "alias": "lineNumbers"; "required": false; }; "restSettings": { "alias": "restSettings"; "required": false; }; }, { "codeChange": "codeChange"; }, never, never, true, never>;
51
51
  }
52
52
  export declare const InstallMonacoUMD: (path?: string) => Promise<any>;
@@ -24,8 +24,8 @@ export declare class MenuDirective {
24
24
  config: MenuOptions;
25
25
  constructor(dialog: MatDialog, viewContainer: ViewContainerRef);
26
26
  ngAfterViewInit(): void;
27
- openMenu(evt: PointerEvent, items?: MenuItem<any, any>[]): Promise<[value: any]>;
27
+ openMenu(evt: PointerEvent, items?: MenuItem[]): Promise<[value: any]>;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<MenuDirective, never>;
29
- static ɵdir: i0.ɵɵDirectiveDeclaration<MenuDirective, "[ngx-contextmenu],[ngx-menu],[ngxContextmenu],[ngxMenu]", never, { "data": "ngx-menu-context"; "ctxMenuItems": "ngx-contextmenu"; "menuItems": "ngx-menu"; "config": "ngx-menu-config"; }, {}, never, never, true, never>;
29
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MenuDirective, "[ngx-contextmenu],[ngx-menu],[ngxContextmenu],[ngxMenu]", never, { "data": { "alias": "ngx-menu-context"; "required": false; }; "ctxMenuItems": { "alias": "ngx-contextmenu"; "required": false; }; "menuItems": { "alias": "ngx-menu"; "required": false; }; "config": { "alias": "ngx-menu-config"; "required": false; }; }, {}, never, never, true, never>;
30
30
  }
31
31
  export declare const openMenu: (dialog: MatDialog, menuItems: MenuItem[], data: any, evt: PointerEvent, config?: MenuOptions, el?: HTMLElement) => Promise<any>;
@@ -26,6 +26,6 @@ export declare class TooltipDirective {
26
26
  onPointerEnter(evt: PointerEvent): Promise<void>;
27
27
  onPointerLeave(evt: PointerEvent): Promise<void>;
28
28
  static ɵfac: i0.ɵɵFactoryDeclaration<TooltipDirective, never>;
29
- static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[ngxTooltip],[ngx-tooltip]", never, { "template": "ngx-tooltip"; "config": "ngx-tooltip-config"; "data": "ngx-tooltip-context"; }, {}, never, never, true, never>;
29
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[ngxTooltip],[ngx-tooltip]", never, { "template": { "alias": "ngx-tooltip"; "required": false; }; "config": { "alias": "ngx-tooltip-config"; "required": false; }; "data": { "alias": "ngx-tooltip-context"; "required": false; }; }, {}, never, never, true, never>;
30
30
  }
31
31
  export declare const openTooltip: (dialog: MatDialog, template: TemplateRef<any> | Type<any>, data: any, el: HTMLElement, config?: TooltipOptions, focusTrap?: boolean) => Promise<any>;
@@ -0,0 +1,107 @@
1
+ import { Component, HostListener, Input } from '@angular/core';
2
+ import { MatInputModule } from '@angular/material/input';
3
+ import { ScrollingModule } from '@angular/cdk/scrolling';
4
+ import { NgScrollbarModule } from 'ngx-scrollbar';
5
+ import { ShortcutComponent } from './shortcut/shortcut.component';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../services/command-palette.service";
8
+ import * as i2 from "@angular/material/dialog";
9
+ import * as i3 from "@angular/material/input";
10
+ import * as i4 from "@angular/material/form-field";
11
+ import * as i5 from "@angular/cdk/scrolling";
12
+ import * as i6 from "ngx-scrollbar";
13
+ export class CommandPaletteComponent {
14
+ constructor(commandPalette, dialog) {
15
+ this.commandPalette = commandPalette;
16
+ this.dialog = dialog;
17
+ this.queryString = "";
18
+ this.activeIndex = 0;
19
+ this.commands = [];
20
+ this.filteredCommands = [];
21
+ }
22
+ ngOnInit() {
23
+ this.commands = this.commandPalette.getRegisteredCommands(this.contextElement);
24
+ this.filteredCommands = this.commands;
25
+ }
26
+ onKeyDown(evt) {
27
+ if (evt.key == "Enter") {
28
+ // Fire the first command
29
+ if (this.filteredCommands.length > 0)
30
+ this.executeCommand(this.filteredCommands[this.activeIndex]);
31
+ return;
32
+ }
33
+ if (evt.key == "ArrowUp") {
34
+ // Fire the first command
35
+ this.activeIndex = Math.max(this.activeIndex - 1, 0);
36
+ return;
37
+ }
38
+ if (evt.key == "ArrowDown") {
39
+ this.activeIndex = Math.min(this.filteredCommands.length, this.activeIndex + 1);
40
+ return;
41
+ }
42
+ this.activeIndex = 0;
43
+ this.commands.forEach(c => c['_renderedLabel'] = '');
44
+ setTimeout(() => {
45
+ this.queryString = evt.target.value;
46
+ // Whitespace doesn't count.
47
+ if (this.queryString.trim().length == 0) {
48
+ this.filteredCommands = this.commands;
49
+ return;
50
+ }
51
+ const queryChars = this.queryString
52
+ .toLowerCase()
53
+ .split('');
54
+ const matchedCommands = [];
55
+ for (const command of this.commands) {
56
+ const { label } = command;
57
+ const commandChars = label
58
+ .toLowerCase()
59
+ .split('');
60
+ let renderedLabel = '';
61
+ let lastIndex = 0;
62
+ let isMatch = true;
63
+ for (const char of queryChars) {
64
+ const index = commandChars.indexOf(char, lastIndex);
65
+ if (index == -1) {
66
+ isMatch = false;
67
+ break;
68
+ }
69
+ else {
70
+ renderedLabel += label.slice(lastIndex, index) + `<b>${label.slice(index, index + 1)}</b>`;
71
+ lastIndex = index + 1;
72
+ }
73
+ }
74
+ renderedLabel += label.slice(lastIndex);
75
+ if (isMatch) {
76
+ command['_renderedLabel'] = renderedLabel;
77
+ matchedCommands.push(command);
78
+ }
79
+ }
80
+ this.filteredCommands = matchedCommands;
81
+ });
82
+ }
83
+ executeCommand(command) {
84
+ this.commandPalette.invokeAction(command);
85
+ this.dialog.close();
86
+ }
87
+ onBlur() {
88
+ // this.dialog.close();
89
+ }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: CommandPaletteComponent, deps: [{ token: i1.CommandPaletteService }, { token: i2.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
91
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: CommandPaletteComponent, isStandalone: true, selector: "app-command-palette", inputs: { contextElement: "contextElement" }, host: { listeners: { "window:blur": "onBlur()" } }, ngImport: i0, template: "<mat-form-field style=\"width: 100%; padding: 8px 8px 0 8px\">\n <input\n matInput\n type=\"text\"\n [value]=\"queryString\"\n (keydown)=\"onKeyDown($event)\"\n >\n</mat-form-field>\n\n@if (filteredCommands.length == 0) {\n <div class=\"commands\">\n <div class=\"command selected\"><div class=\"label\">No matching results.</div></div>\n </div>\n}\n@else {\n <div\n class=\"commands\"\n [style.flex]=\"(filteredCommands.length * 28) + 'px'\"\n >\n <ng-scrollbar>\n <cdk-virtual-scroll-viewport itemSize=\"28\" scrollViewport>\n <div\n *cdkVirtualFor=\"let command of filteredCommands; let index = index\"\n class=\"command\"\n [class.selected]=\"index==activeIndex\"\n (click)=\"executeCommand(command)\"\n >\n <div\n class=\"label\"\n [innerHTML]=\"command['_renderedLabel'] || command.label || command.description\"\n ></div>\n <div>\n @for (shortcut of (command.shortcutKey.find ? command.shortcutKey : [command.shortcutKey]); track shortcut) {\n <app-shortcut [shortcut]=\"shortcut\"></app-shortcut>\n }\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n </ng-scrollbar>\n </div>\n}\n\n", styles: [":host{display:flex;flex-direction:column;width:860px;max-height:460px;border:1px solid #484848;border-radius:5px;background-color:#222;-webkit-user-select:none;user-select:none}.commands{max-height:100%;overflow:hidden}.commands .command{display:flex;height:28px;padding-left:16px;padding-right:32px;align-items:center;border-radius:3px;justify-content:space-between}.commands .command:hover{background-color:#2a2d2e}.commands .command.selected{background-color:#04395e}.commands .command .label ::ng-deep b{color:#2196f3}ng-scrollbar{--scrollbar-padding: 0px;--scrollbar-size: 14px;--scrollbar-border-radius: 0;--scrollbar-thumb-color: #0000;--scrollbar-thumb-transition: height ease-out .15s, width ease-out .15s, background-color ease 1.2s}ng-scrollbar:hover{--scrollbar-thumb-color: #444}cdk-virtual-scroll-viewport{height:100%}:host ::ng-deep .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mat-mdc-form-field-infix{padding:4px 0}:host ::ng-deep .mat-mdc-form-field-infix{min-height:32px}:host ::ng-deep .mat-mdc-text-field-wrapper{margin-bottom:8px}:host ::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i5.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i5.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i5.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "ngmodule", type: NgScrollbarModule }, { kind: "component", type: i6.NgScrollbar, selector: "ng-scrollbar", inputs: ["disabled", "sensorDisabled", "pointerEventsDisabled", "viewportPropagateMouseMove", "autoHeightDisabled", "autoWidthDisabled", "viewClass", "trackClass", "thumbClass", "minThumbSize", "trackClickScrollDuration", "pointerEventsMethod", "track", "visibility", "appearance", "position", "sensorDebounce", "scrollAuditTime"], outputs: ["updated"], exportAs: ["ngScrollbar"] }, { kind: "directive", type: i6.ScrollViewport, selector: "[scrollViewport]" }, { kind: "component", type: ShortcutComponent, selector: "app-shortcut", inputs: ["shortcut"] }] }); }
92
+ }
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: CommandPaletteComponent, decorators: [{
94
+ type: Component,
95
+ args: [{ selector: 'app-command-palette', imports: [
96
+ MatInputModule,
97
+ ScrollingModule,
98
+ NgScrollbarModule,
99
+ ShortcutComponent
100
+ ], standalone: true, template: "<mat-form-field style=\"width: 100%; padding: 8px 8px 0 8px\">\n <input\n matInput\n type=\"text\"\n [value]=\"queryString\"\n (keydown)=\"onKeyDown($event)\"\n >\n</mat-form-field>\n\n@if (filteredCommands.length == 0) {\n <div class=\"commands\">\n <div class=\"command selected\"><div class=\"label\">No matching results.</div></div>\n </div>\n}\n@else {\n <div\n class=\"commands\"\n [style.flex]=\"(filteredCommands.length * 28) + 'px'\"\n >\n <ng-scrollbar>\n <cdk-virtual-scroll-viewport itemSize=\"28\" scrollViewport>\n <div\n *cdkVirtualFor=\"let command of filteredCommands; let index = index\"\n class=\"command\"\n [class.selected]=\"index==activeIndex\"\n (click)=\"executeCommand(command)\"\n >\n <div\n class=\"label\"\n [innerHTML]=\"command['_renderedLabel'] || command.label || command.description\"\n ></div>\n <div>\n @for (shortcut of (command.shortcutKey.find ? command.shortcutKey : [command.shortcutKey]); track shortcut) {\n <app-shortcut [shortcut]=\"shortcut\"></app-shortcut>\n }\n </div>\n </div>\n </cdk-virtual-scroll-viewport>\n </ng-scrollbar>\n </div>\n}\n\n", styles: [":host{display:flex;flex-direction:column;width:860px;max-height:460px;border:1px solid #484848;border-radius:5px;background-color:#222;-webkit-user-select:none;user-select:none}.commands{max-height:100%;overflow:hidden}.commands .command{display:flex;height:28px;padding-left:16px;padding-right:32px;align-items:center;border-radius:3px;justify-content:space-between}.commands .command:hover{background-color:#2a2d2e}.commands .command.selected{background-color:#04395e}.commands .command .label ::ng-deep b{color:#2196f3}ng-scrollbar{--scrollbar-padding: 0px;--scrollbar-size: 14px;--scrollbar-border-radius: 0;--scrollbar-thumb-color: #0000;--scrollbar-thumb-transition: height ease-out .15s, width ease-out .15s, background-color ease 1.2s}ng-scrollbar:hover{--scrollbar-thumb-color: #444}cdk-virtual-scroll-viewport{height:100%}:host ::ng-deep .mdc-text-field--no-label:not(.mdc-text-field--outlined):not(.mdc-text-field--textarea) .mat-mdc-form-field-infix{padding:4px 0}:host ::ng-deep .mat-mdc-form-field-infix{min-height:32px}:host ::ng-deep .mat-mdc-text-field-wrapper{margin-bottom:8px}:host ::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}\n"] }]
101
+ }], ctorParameters: () => [{ type: i1.CommandPaletteService }, { type: i2.MatDialogRef }], propDecorators: { contextElement: [{
102
+ type: Input
103
+ }], onBlur: [{
104
+ type: HostListener,
105
+ args: ["window:blur"]
106
+ }] } });
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvY29tcG9uZW50cy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvY29tcG9uZW50cy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7QUFjbEUsTUFBTSxPQUFPLHVCQUF1QjtJQVVoQyxZQUNxQixjQUFxQyxFQUNyQyxNQUF5QjtRQUR6QixtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDckMsV0FBTSxHQUFOLE1BQU0sQ0FBbUI7UUFSOUMsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFFaEIsYUFBUSxHQUFvQixFQUFFLENBQUM7UUFDL0IscUJBQWdCLEdBQW9CLEVBQUUsQ0FBQztJQU92QyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0UsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDMUMsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFrQjtRQUN4QixJQUFJLEdBQUcsQ0FBQyxHQUFHLElBQUksT0FBTyxFQUFFO1lBQ3BCLHlCQUF5QjtZQUN6QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFFakUsT0FBTztTQUNWO1FBRUQsSUFBSSxHQUFHLENBQUMsR0FBRyxJQUFJLFNBQVMsRUFBRTtZQUN0Qix5QkFBeUI7WUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ25ELE9BQU87U0FDVjtRQUVELElBQUksR0FBRyxDQUFDLEdBQUcsSUFBSSxXQUFXLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFdBQVcsR0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM3RSxPQUFPO1NBQ1Y7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBRXJELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsV0FBVyxHQUFJLEdBQUcsQ0FBQyxNQUEyQixDQUFDLEtBQUssQ0FBQztZQUUxRCw0QkFBNEI7WUFDNUIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUN0QyxPQUFPO2FBQ1Y7WUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVztpQkFDOUIsV0FBVyxFQUFFO2lCQUNiLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUVmLE1BQU0sZUFBZSxHQUFvQixFQUFFLENBQUM7WUFFNUMsS0FBSyxNQUFNLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNqQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsT0FBTyxDQUFDO2dCQUUxQixNQUFNLFlBQVksR0FBRyxLQUFLO3FCQUNyQixXQUFXLEVBQUU7cUJBQ2IsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUVmLElBQUksYUFBYSxHQUFHLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxTQUFTLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUM7Z0JBRW5CLEtBQUssTUFBTSxJQUFJLElBQUksVUFBVSxFQUFFO29CQUMzQixNQUFNLEtBQUssR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztvQkFFcEQsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLEVBQUU7d0JBQ2IsT0FBTyxHQUFHLEtBQUssQ0FBQzt3QkFDaEIsTUFBTTtxQkFDVDt5QkFDSTt3QkFDRCxhQUFhLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLEdBQUMsQ0FBQyxDQUFFLE1BQU0sQ0FBQzt3QkFDMUYsU0FBUyxHQUFHLEtBQUssR0FBQyxDQUFDLENBQUM7cUJBQ3ZCO2lCQUNKO2dCQUVELGFBQWEsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUV4QyxJQUFJLE9BQU8sRUFBRTtvQkFDVCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxhQUFhLENBQUM7b0JBQzFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7aUJBQ2pDO2FBQ0o7WUFFRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVELGNBQWMsQ0FBQyxPQUFzQjtRQUNqQyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFHRCxNQUFNO1FBQ0YsdUJBQXVCO0lBQzNCLENBQUM7OEdBeEdRLHVCQUF1QjtrR0FBdkIsdUJBQXVCLGlMQ3BCcEMsNitDQTBDQSxzc0NEN0JRLGNBQWMscWpCQUNkLGVBQWUsMmpCQUNmLGlCQUFpQixpakJBQ2pCLGlCQUFpQjs7MkZBSVosdUJBQXVCO2tCQVpuQyxTQUFTOytCQUNJLHFCQUFxQixXQUd0Qjt3QkFDTCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixpQkFBaUI7cUJBQ3BCLGNBQ1csSUFBSTtxSEFJUCxjQUFjO3NCQUF0QixLQUFLO2dCQW9HTixNQUFNO3NCQURMLFlBQVk7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tYW5kQWN0aW9uLCBDb21tYW5kUGFsZXR0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUuc2VydmljZSc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IE5nU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnbmd4LXNjcm9sbGJhcic7XG5pbXBvcnQgeyBTaG9ydGN1dENvbXBvbmVudCB9IGZyb20gJy4vc2hvcnRjdXQvc2hvcnRjdXQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtY29tbWFuZC1wYWxldHRlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb21tYW5kLXBhbGV0dGUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBTY3JvbGxpbmdNb2R1bGUsXG4gICAgICAgIE5nU2Nyb2xsYmFyTW9kdWxlLFxuICAgICAgICBTaG9ydGN1dENvbXBvbmVudFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBDb21tYW5kUGFsZXR0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBASW5wdXQoKSBjb250ZXh0RWxlbWVudDogSFRNTEVsZW1lbnQ7XG5cbiAgICBxdWVyeVN0cmluZyA9IFwiXCI7XG4gICAgYWN0aXZlSW5kZXggPSAwO1xuXG4gICAgY29tbWFuZHM6IENvbW1hbmRBY3Rpb25bXSA9IFtdO1xuICAgIGZpbHRlcmVkQ29tbWFuZHM6IENvbW1hbmRBY3Rpb25bXSA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY29tbWFuZFBhbGV0dGU6IENvbW1hbmRQYWxldHRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZ1JlZjxhbnk+XG4gICAgKSB7XG5cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb21tYW5kcyA9IHRoaXMuY29tbWFuZFBhbGV0dGUuZ2V0UmVnaXN0ZXJlZENvbW1hbmRzKHRoaXMuY29udGV4dEVsZW1lbnQpO1xuICAgICAgICB0aGlzLmZpbHRlcmVkQ29tbWFuZHMgPSB0aGlzLmNvbW1hbmRzO1xuICAgIH1cblxuICAgIG9uS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKGV2dC5rZXkgPT0gXCJFbnRlclwiKSB7XG4gICAgICAgICAgICAvLyBGaXJlIHRoZSBmaXJzdCBjb21tYW5kXG4gICAgICAgICAgICBpZiAodGhpcy5maWx0ZXJlZENvbW1hbmRzLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgdGhpcy5leGVjdXRlQ29tbWFuZCh0aGlzLmZpbHRlcmVkQ29tbWFuZHNbdGhpcy5hY3RpdmVJbmRleF0pO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZ0LmtleSA9PSBcIkFycm93VXBcIikge1xuICAgICAgICAgICAgLy8gRmlyZSB0aGUgZmlyc3QgY29tbWFuZFxuICAgICAgICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IE1hdGgubWF4KHRoaXMuYWN0aXZlSW5kZXgtMSwgMCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoZXZ0LmtleSA9PSBcIkFycm93RG93blwiKSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUluZGV4ID0gTWF0aC5taW4odGhpcy5maWx0ZXJlZENvbW1hbmRzLmxlbmd0aCwgdGhpcy5hY3RpdmVJbmRleCsxKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5hY3RpdmVJbmRleCA9IDA7XG4gICAgICAgIHRoaXMuY29tbWFuZHMuZm9yRWFjaChjID0+IGNbJ19yZW5kZXJlZExhYmVsJ10gPSAnJyk7XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnF1ZXJ5U3RyaW5nID0gKGV2dC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG5cbiAgICAgICAgICAgIC8vIFdoaXRlc3BhY2UgZG9lc24ndCBjb3VudC5cbiAgICAgICAgICAgIGlmICh0aGlzLnF1ZXJ5U3RyaW5nLnRyaW0oKS5sZW5ndGggPT0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyZWRDb21tYW5kcyA9IHRoaXMuY29tbWFuZHM7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBxdWVyeUNoYXJzID0gdGhpcy5xdWVyeVN0cmluZ1xuICAgICAgICAgICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICAgLnNwbGl0KCcnKTtcblxuICAgICAgICAgICAgY29uc3QgbWF0Y2hlZENvbW1hbmRzOiBDb21tYW5kQWN0aW9uW10gPSBbXTtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBjb21tYW5kIG9mIHRoaXMuY29tbWFuZHMpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGxhYmVsIH0gPSBjb21tYW5kO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY29tbWFuZENoYXJzID0gbGFiZWxcbiAgICAgICAgICAgICAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICAgLnNwbGl0KCcnKTtcblxuICAgICAgICAgICAgICAgIGxldCByZW5kZXJlZExhYmVsID0gJyc7XG4gICAgICAgICAgICAgICAgbGV0IGxhc3RJbmRleCA9IDA7XG4gICAgICAgICAgICAgICAgbGV0IGlzTWF0Y2ggPSB0cnVlO1xuXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBjaGFyIG9mIHF1ZXJ5Q2hhcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSBjb21tYW5kQ2hhcnMuaW5kZXhPZihjaGFyLCBsYXN0SW5kZXgpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNNYXRjaCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZW5kZXJlZExhYmVsICs9IGxhYmVsLnNsaWNlKGxhc3RJbmRleCwgaW5kZXgpICsgYDxiPiR7bGFiZWwuc2xpY2UoaW5kZXgsIGluZGV4KzEpIH08L2I+YDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhc3RJbmRleCA9IGluZGV4KzE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZW5kZXJlZExhYmVsICs9IGxhYmVsLnNsaWNlKGxhc3RJbmRleCk7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNNYXRjaCkge1xuICAgICAgICAgICAgICAgICAgICBjb21tYW5kWydfcmVuZGVyZWRMYWJlbCddID0gcmVuZGVyZWRMYWJlbDtcbiAgICAgICAgICAgICAgICAgICAgbWF0Y2hlZENvbW1hbmRzLnB1c2goY29tbWFuZCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmZpbHRlcmVkQ29tbWFuZHMgPSBtYXRjaGVkQ29tbWFuZHM7XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgZXhlY3V0ZUNvbW1hbmQoY29tbWFuZDogQ29tbWFuZEFjdGlvbikge1xuICAgICAgICB0aGlzLmNvbW1hbmRQYWxldHRlLmludm9rZUFjdGlvbihjb21tYW5kKTtcbiAgICAgICAgdGhpcy5kaWFsb2cuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKFwid2luZG93OmJsdXJcIilcbiAgICBvbkJsdXIoKSB7XG4gICAgICAgIC8vIHRoaXMuZGlhbG9nLmNsb3NlKCk7XG4gICAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIHN0eWxlPVwid2lkdGg6IDEwMCU7IHBhZGRpbmc6IDhweCA4cHggMCA4cHhcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBbdmFsdWVdPVwicXVlcnlTdHJpbmdcIlxuICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiXG4gICAgPlxuPC9tYXQtZm9ybS1maWVsZD5cblxuQGlmIChmaWx0ZXJlZENvbW1hbmRzLmxlbmd0aCA9PSAwKSB7XG4gICAgPGRpdiBjbGFzcz1cImNvbW1hbmRzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb21tYW5kIHNlbGVjdGVkXCI+PGRpdiBjbGFzcz1cImxhYmVsXCI+Tm8gbWF0Y2hpbmcgcmVzdWx0cy48L2Rpdj48L2Rpdj5cbiAgICA8L2Rpdj5cbn1cbkBlbHNlIHtcbiAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiY29tbWFuZHNcIlxuICAgICAgICBbc3R5bGUuZmxleF09XCIoZmlsdGVyZWRDb21tYW5kcy5sZW5ndGggKiAyOCkgKyAncHgnXCJcbiAgICA+XG4gICAgICAgIDxuZy1zY3JvbGxiYXI+XG4gICAgICAgICAgICA8Y2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0IGl0ZW1TaXplPVwiMjhcIiBzY3JvbGxWaWV3cG9ydD5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICpjZGtWaXJ0dWFsRm9yPVwibGV0IGNvbW1hbmQgb2YgZmlsdGVyZWRDb21tYW5kczsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbW1hbmRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3Muc2VsZWN0ZWRdPVwiaW5kZXg9PWFjdGl2ZUluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImV4ZWN1dGVDb21tYW5kKGNvbW1hbmQpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJjb21tYW5kWydfcmVuZGVyZWRMYWJlbCddIHx8IGNvbW1hbmQubGFiZWwgfHwgY29tbWFuZC5kZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKHNob3J0Y3V0IG9mIChjb21tYW5kLnNob3J0Y3V0S2V5LmZpbmQgPyBjb21tYW5kLnNob3J0Y3V0S2V5IDogW2NvbW1hbmQuc2hvcnRjdXRLZXldKTsgdHJhY2sgc2hvcnRjdXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLXNob3J0Y3V0IFtzaG9ydGN1dF09XCJzaG9ydGN1dFwiPjwvYXBwLXNob3J0Y3V0PlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICAgICAgICA8L25nLXNjcm9sbGJhcj5cbiAgICA8L2Rpdj5cbn1cblxuIl19
@@ -0,0 +1,19 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ShortcutComponent {
4
+ constructor() {
5
+ this.keys = [];
6
+ }
7
+ ngOnChanges() {
8
+ this.keys = this.shortcut.split("+");
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ShortcutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: ShortcutComponent, isStandalone: true, selector: "app-shortcut", inputs: { shortcut: "shortcut" }, usesOnChanges: true, ngImport: i0, template: "@for (key of keys; track key; let i = $index) {\n @if(i > 0) {\n <span class=\"plus\">+</span>\n }\n\n <span class=\"key\">{{key}}</span>\n}\n", styles: [".key{background:#444;padding:2px 6px;border-radius:4px;font-family:Fira Mono,Courier New,Courier,monospace;text-transform:capitalize}.plus{margin:0 4px}\n"] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ShortcutComponent, decorators: [{
14
+ type: Component,
15
+ args: [{ selector: 'app-shortcut', standalone: true, template: "@for (key of keys; track key; let i = $index) {\n @if(i > 0) {\n <span class=\"plus\">+</span>\n }\n\n <span class=\"key\">{{key}}</span>\n}\n", styles: [".key{background:#444;padding:2px 6px;border-radius:4px;font-family:Fira Mono,Courier New,Courier,monospace;text-transform:capitalize}.plus{margin:0 4px}\n"] }]
16
+ }], propDecorators: { shortcut: [{
17
+ type: Input
18
+ }] } });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvcnRjdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9jb21wb25lbnRzL2NvbW1hbmQtcGFsZXR0ZS9zaG9ydGN1dC9zaG9ydGN1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2NvbXBvbmVudHMvY29tbWFuZC1wYWxldHRlL3Nob3J0Y3V0L3Nob3J0Y3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQVN6RCxNQUFNLE9BQU8saUJBQWlCO0lBTjlCO1FBVUksU0FBSSxHQUFhLEVBQUUsQ0FBQztLQUt2QjtJQUhHLFdBQVc7UUFDUCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7OEdBUlEsaUJBQWlCO2tHQUFqQixpQkFBaUIsK0hDVDlCLGdLQU9BOzsyRkRFYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0ksY0FBYyxjQUdaLElBQUk7OEJBSVAsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS2V5YmluZENvZGUgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXBwLXNob3J0Y3V0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2hvcnRjdXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Nob3J0Y3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBTaG9ydGN1dENvbXBvbmVudCB7XG5cbiAgICBASW5wdXQoKSBzaG9ydGN1dDogS2V5YmluZENvZGU7XG5cbiAgICBrZXlzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIHRoaXMua2V5cyA9IHRoaXMuc2hvcnRjdXQuc3BsaXQoXCIrXCIpO1xuICAgIH1cbn1cbiIsIkBmb3IgKGtleSBvZiBrZXlzOyB0cmFjayBrZXk7IGxldCBpID0gJGluZGV4KSB7XG4gICAgQGlmKGkgPiAwKSB7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicGx1c1wiPis8L3NwYW4+XG4gICAgfVxuXG4gICAgPHNwYW4gY2xhc3M9XCJrZXlcIj57e2tleX19PC9zcGFuPlxufVxuIl19
@@ -27,17 +27,17 @@ export class DynamicHTMLComponent {
27
27
  this.ref = null;
28
28
  }
29
29
  }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: DynamicHTMLComponent, deps: [{ token: i1.DynamicHTMLRenderer }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: DynamicHTMLComponent, isStandalone: true, selector: "dynamic-html", inputs: { content: "content" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true }); }
30
32
  }
31
- DynamicHTMLComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicHTMLComponent, deps: [{ token: i1.DynamicHTMLRenderer }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
32
- DynamicHTMLComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DynamicHTMLComponent, isStandalone: true, selector: "dynamic-html", inputs: { content: "content" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicHTMLComponent, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: DynamicHTMLComponent, decorators: [{
34
34
  type: Component,
35
35
  args: [{
36
36
  selector: 'dynamic-html',
37
37
  template: '',
38
38
  standalone: true
39
39
  }]
40
- }], ctorParameters: function () { return [{ type: i1.DynamicHTMLRenderer }, { type: i0.ElementRef }]; }, propDecorators: { content: [{
40
+ }], ctorParameters: () => [{ type: i1.DynamicHTMLRenderer }, { type: i0.ElementRef }], propDecorators: { content: [{
41
41
  type: Input
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1odG1sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULEtBQUssR0FLUixNQUFNLGVBQWUsQ0FBQzs7O0FBU3ZCLE1BQU0sT0FBTyxvQkFBb0I7SUFLN0IsWUFDWSxRQUE2QixFQUM3QixVQUFzQjtRQUR0QixhQUFRLEdBQVIsUUFBUSxDQUFxQjtRQUM3QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSjFCLFFBQUcsR0FBbUIsSUFBSSxDQUFDO0lBSy9CLENBQUM7SUFFTCxXQUFXLENBQUMsQ0FBZ0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztTQUNuQjtRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDM0U7SUFDTCxDQUFDO0lBRUQsU0FBUztRQUNMLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUM7U0FDbkI7SUFDTCxDQUFDOztpSEEvQlEsb0JBQW9CO3FHQUFwQixvQkFBb0IsNkhBSG5CLEVBQUU7MkZBR0gsb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7bUlBRVksT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbnB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgRG9DaGVjayxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IER5bmFtaWNIVE1MUmVuZGVyZXIsIER5bmFtaWNIVE1MUmVmIH0gZnJvbSAnLi9keW5hbWljLWh0bWwuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHluYW1pYy1odG1sJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljSFRNTENvbXBvbmVudCBpbXBsZW1lbnRzIERvQ2hlY2ssIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBjb250ZW50OiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIHJlZjogRHluYW1pY0hUTUxSZWYgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IER5bmFtaWNIVE1MUmVuZGVyZXIsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICApIHsgfVxuXG4gICAgbmdPbkNoYW5nZXMoXzogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAodGhpcy5yZWYpIHtcbiAgICAgICAgICAgIHRoaXMucmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMucmVmID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5jb250ZW50ICYmIHRoaXMuZWxlbWVudFJlZikge1xuICAgICAgICAgICAgdGhpcy5yZWYgPSB0aGlzLnJlbmRlcmVyLnJlbmRlcklubmVySFRNTCh0aGlzLmVsZW1lbnRSZWYsIHRoaXMuY29udGVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKSB7XG4gICAgICAgIGlmICh0aGlzLnJlZikge1xuICAgICAgICAgICAgdGhpcy5yZWYuY2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5yZWYpIHtcbiAgICAgICAgICAgIHRoaXMucmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMucmVmID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1odG1sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULEtBQUssR0FLUixNQUFNLGVBQWUsQ0FBQzs7O0FBU3ZCLE1BQU0sT0FBTyxvQkFBb0I7SUFLN0IsWUFDWSxRQUE2QixFQUM3QixVQUFzQjtRQUR0QixhQUFRLEdBQVIsUUFBUSxDQUFxQjtRQUM3QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSjFCLFFBQUcsR0FBbUIsSUFBSSxDQUFDO0lBSy9CLENBQUM7SUFFTCxXQUFXLENBQUMsQ0FBZ0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztTQUNuQjtRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDM0U7SUFDTCxDQUFDO0lBRUQsU0FBUztRQUNMLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDcEI7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUM7U0FDbkI7SUFDTCxDQUFDOzhHQS9CUSxvQkFBb0I7a0dBQXBCLG9CQUFvQiw2SEFIbkIsRUFBRTs7MkZBR0gsb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO29CQUN4QixRQUFRLEVBQUUsRUFBRTtvQkFDWixVQUFVLEVBQUUsSUFBSTtpQkFDbkI7aUhBRVksT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBJbnB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgRG9DaGVjayxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IER5bmFtaWNIVE1MUmVuZGVyZXIsIER5bmFtaWNIVE1MUmVmIH0gZnJvbSAnLi9keW5hbWljLWh0bWwuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHluYW1pYy1odG1sJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljSFRNTENvbXBvbmVudCBpbXBsZW1lbnRzIERvQ2hlY2ssIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBjb250ZW50OiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIHJlZjogRHluYW1pY0hUTUxSZWYgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IER5bmFtaWNIVE1MUmVuZGVyZXIsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICApIHsgfVxuXG4gICAgbmdPbkNoYW5nZXMoXzogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAodGhpcy5yZWYpIHtcbiAgICAgICAgICAgIHRoaXMucmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMucmVmID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5jb250ZW50ICYmIHRoaXMuZWxlbWVudFJlZikge1xuICAgICAgICAgICAgdGhpcy5yZWYgPSB0aGlzLnJlbmRlcmVyLnJlbmRlcklubmVySFRNTCh0aGlzLmVsZW1lbnRSZWYsIHRoaXMuY29udGVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKSB7XG4gICAgICAgIGlmICh0aGlzLnJlZikge1xuICAgICAgICAgICAgdGhpcy5yZWYuY2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5yZWYpIHtcbiAgICAgICAgICAgIHRoaXMucmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMucmVmID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { DynamicHTMLComponent } from './dynamic-html.component';
3
+ import { NGX_DYNAMIC_CONFIG } from './types';
4
+ import { DynamicHTMLRenderer } from './dynamic-html.service';
5
+ import * as i0 from "@angular/core";
6
+ export class NgxDynamicHTMLModule {
7
+ static forRoot(config) {
8
+ return {
9
+ ngModule: NgxDynamicHTMLModule,
10
+ providers: [
11
+ DynamicHTMLRenderer,
12
+ { provide: NGX_DYNAMIC_CONFIG, useValue: config }
13
+ ],
14
+ };
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: NgxDynamicHTMLModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: NgxDynamicHTMLModule, imports: [DynamicHTMLComponent], exports: [DynamicHTMLComponent] }); }
18
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: NgxDynamicHTMLModule }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: NgxDynamicHTMLModule, decorators: [{
21
+ type: NgModule,
22
+ args: [{
23
+ imports: [DynamicHTMLComponent],
24
+ exports: [DynamicHTMLComponent],
25
+ }]
26
+ }] });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1odG1sLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvY29tcG9uZW50cy9keW5hbWljLWh0bWwvZHluYW1pYy1odG1sLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQXNCLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQU03RCxNQUFNLE9BQU8sb0JBQW9CO0lBQ3RCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBMEI7UUFDNUMsT0FBTztZQUNILFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIsU0FBUyxFQUFFO2dCQUNQLG1CQUFtQjtnQkFDbkIsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRTthQUNwRDtTQUNKLENBQUM7SUFDTixDQUFDOzhHQVRRLG9CQUFvQjsrR0FBcEIsb0JBQW9CLFlBSG5CLG9CQUFvQixhQUNwQixvQkFBb0I7K0dBRXJCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFKaEMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDL0IsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IER5bmFtaWNIVE1MQ29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLWh0bWwuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNIVE1MT3B0aW9ucywgTkdYX0RZTkFNSUNfQ09ORklHIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBEeW5hbWljSFRNTFJlbmRlcmVyIH0gZnJvbSAnLi9keW5hbWljLWh0bWwuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0R5bmFtaWNIVE1MQ29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRHluYW1pY0hUTUxDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hEeW5hbWljSFRNTE1vZHVsZSB7XG4gICAgcHVibGljIHN0YXRpYyBmb3JSb290KGNvbmZpZzogRHluYW1pY0hUTUxPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hEeW5hbWljSFRNTE1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5neER5bmFtaWNIVE1MTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgRHluYW1pY0hUTUxSZW5kZXJlcixcbiAgICAgICAgICAgICAgICB7IHByb3ZpZGU6IE5HWF9EWU5BTUlDX0NPTkZJRywgdXNlVmFsdWU6IGNvbmZpZyB9XG4gICAgICAgICAgICBdLFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -54,13 +54,13 @@ export class DynamicHTMLRenderer {
54
54
  },
55
55
  };
56
56
  }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: DynamicHTMLRenderer, deps: [{ token: NGX_DYNAMIC_CONFIG }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
58
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: DynamicHTMLRenderer }); }
57
59
  }
58
- DynamicHTMLRenderer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicHTMLRenderer, deps: [{ token: NGX_DYNAMIC_CONFIG }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
59
- DynamicHTMLRenderer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicHTMLRenderer });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicHTMLRenderer, decorators: [{
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: DynamicHTMLRenderer, decorators: [{
61
61
  type: Injectable
62
- }], ctorParameters: function () { return [{ type: i1.DynamicHTMLOptions, decorators: [{
62
+ }], ctorParameters: () => [{ type: i1.DynamicHTMLOptions, decorators: [{
63
63
  type: Inject,
64
64
  args: [NGX_DYNAMIC_CONFIG]
65
- }] }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }]; } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1odG1sLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL2R5bmFtaWMtaHRtbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWtGLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSSxPQUFPLEVBQXNCLGtCQUFrQixFQUFXLE1BQU0sU0FBUyxDQUFDOzs7QUFPMUUsU0FBUyxpQkFBaUI7SUFDdEIsT0FBTyxNQUFNLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDO0FBQ3JELENBQUM7QUFHRCxNQUFNLE9BQU8sbUJBQW1CO0lBTTVCLFlBQWdELE1BQTBCLEVBQVUsR0FBNkIsRUFBVSxRQUFrQjtRQUE3RixXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQTBCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUpySSx1QkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztRQUU5RCxrQkFBYSxHQUFHLElBQUksR0FBRyxFQUFpQyxDQUFDO1FBRzdELElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7WUFDdkQsSUFBSSxFQUF5QixDQUFDO1lBQzlCLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGVBQWUsQ0FBQyxVQUFzQixFQUFFLElBQVk7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDdEIsT0FBTztnQkFDSCxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQztnQkFDaEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7YUFDckIsQ0FBQztTQUNMO1FBQ0QsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRTFDLE1BQU0sYUFBYSxHQUE2QixFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO1lBQzVDLE1BQU0sUUFBUSxHQUFJLFVBQVUsQ0FBQyxhQUF5QixDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xGLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFXLEVBQUUsRUFBRTtnQkFDbkQsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQztnQkFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBRW5GLEVBQUUsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBRWpDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUU7b0JBQ2hDLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO29CQUMzQyxJQUFJLEVBQUUsQ0FBQyxhQUFhLEVBQUUsRUFBRTt3QkFDcEIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFVLEVBQUUsRUFBRTs0QkFDdkQsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDeEMsQ0FBQyxDQUFDLENBQUM7cUJBQ047b0JBQ0EsTUFBTSxDQUFDLFFBQW9CLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ3RFO2dCQUVELGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUVsRCxPQUFPO1lBQ0gsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDaEYsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDVixhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzFDLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQzs7Z0hBdERRLG1CQUFtQixrQkFNUixrQkFBa0I7b0hBTjdCLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOzswQkFPTSxNQUFNOzJCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBFbGVtZW50UmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudEZhY3RvcnksIENvbXBvbmVudFJlZiwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljSFRNTE9wdGlvbnMsIE5HWF9EWU5BTUlDX0NPTkZJRywgT25Nb3VudCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIER5bmFtaWNIVE1MUmVmIHtcbiAgICBjaGVjazogKCkgPT4gdm9pZDtcbiAgICBkZXN0cm95OiAoKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBpc0Jyb3dzZXJQbGF0Zm9ybSgpIHtcbiAgICByZXR1cm4gd2luZG93ICE9IG51bGwgJiYgd2luZG93LmRvY3VtZW50ICE9IG51bGw7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEeW5hbWljSFRNTFJlbmRlcmVyIHtcblxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yaWVzID0gbmV3IE1hcDxzdHJpbmcsIENvbXBvbmVudEZhY3Rvcnk8YW55Pj4oKTtcblxuICAgIHByaXZhdGUgY29tcG9uZW50UmVmcyA9IG5ldyBNYXA8YW55LCBBcnJheTxDb21wb25lbnRSZWY8YW55Pj4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KE5HWF9EWU5BTUlDX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IER5bmFtaWNIVE1MT3B0aW9ucywgcHJpdmF0ZSBjZnI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgdGhpcy5jb25maWcuY29tcG9uZW50cy5mb3JFYWNoKCh7IHNlbGVjdG9yLCBjb21wb25lbnQgfSkgPT4ge1xuICAgICAgICAgICAgbGV0IGNmOiBDb21wb25lbnRGYWN0b3J5PGFueT47XG4gICAgICAgICAgICBjZiA9IHRoaXMuY2ZyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudEZhY3Rvcmllcy5zZXQoc2VsZWN0b3IsIGNmKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVuZGVySW5uZXJIVE1MKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIGh0bWw6IHN0cmluZyk6IER5bmFtaWNIVE1MUmVmIHtcbiAgICAgICAgaWYgKCFpc0Jyb3dzZXJQbGF0Zm9ybSgpKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGNoZWNrOiAoKSA9PiB7IH0sXG4gICAgICAgICAgICAgICAgZGVzdHJveTogKCkgPT4geyB9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gaHRtbDtcblxuICAgICAgICBjb25zdCBjb21wb25lbnRSZWZzOiBBcnJheTxDb21wb25lbnRSZWY8YW55Pj4gPSBbXTtcbiAgICAgICAgdGhpcy5jb25maWcuY29tcG9uZW50cy5mb3JFYWNoKCh7IHNlbGVjdG9yIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRzID0gKGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBFbGVtZW50KS5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTtcbiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZWxlbWVudHMsIChlbDogRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBlbC5pbm5lckhUTUw7XG4gICAgICAgICAgICAgICAgY29uc3QgY21wUmVmID0gdGhpcy5jb21wb25lbnRGYWN0b3JpZXMuZ2V0KHNlbGVjdG9yKS5jcmVhdGUodGhpcy5pbmplY3RvciwgW10sIGVsKTtcblxuICAgICAgICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZSgnbmctdmVyc2lvbicpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGNtcFJlZi5pbnN0YW5jZS5keW5hbWljT25Nb3VudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhdHRyc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlbC5oYXNBdHRyaWJ1dGVzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZWwuYXR0cmlidXRlcywgKGF0dHI6IEF0dHIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyc01hcC5zZXQoYXR0ci5uYW1lLCBhdHRyLnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIChjbXBSZWYuaW5zdGFuY2UgYXMgT25Nb3VudCkuZHluYW1pY09uTW91bnQoYXR0cnNNYXAsIGNvbnRlbnQsIGVsKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb21wb25lbnRSZWZzLnB1c2goY21wUmVmKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWZzLnNldChlbGVtZW50UmVmLCBjb21wb25lbnRSZWZzKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY2hlY2s6ICgpID0+IGNvbXBvbmVudFJlZnMuZm9yRWFjaChyZWYgPT4gcmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKSksXG4gICAgICAgICAgICBkZXN0cm95OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50UmVmcy5mb3JFYWNoKHJlZiA9PiByZWYuZGVzdHJveSgpKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZnMuZGVsZXRlKGVsZW1lbnRSZWYpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=
65
+ }] }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }] });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1odG1sLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2NvbXBvbmVudHMvZHluYW1pYy1odG1sL2R5bmFtaWMtaHRtbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWtGLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSSxPQUFPLEVBQXNCLGtCQUFrQixFQUFXLE1BQU0sU0FBUyxDQUFDOzs7QUFPMUUsU0FBUyxpQkFBaUI7SUFDdEIsT0FBTyxNQUFNLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDO0FBQ3JELENBQUM7QUFHRCxNQUFNLE9BQU8sbUJBQW1CO0lBTTVCLFlBQWdELE1BQTBCLEVBQVUsR0FBNkIsRUFBVSxRQUFrQjtRQUE3RixXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQTBCO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUpySSx1QkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBaUMsQ0FBQztRQUU5RCxrQkFBYSxHQUFHLElBQUksR0FBRyxFQUFpQyxDQUFDO1FBRzdELElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7WUFDdkQsSUFBSSxFQUF5QixDQUFDO1lBQzlCLEVBQUUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGVBQWUsQ0FBQyxVQUFzQixFQUFFLElBQVk7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDdEIsT0FBTztnQkFDSCxLQUFLLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQztnQkFDaEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7YUFDckIsQ0FBQztTQUNMO1FBQ0QsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRTFDLE1BQU0sYUFBYSxHQUE2QixFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO1lBQzVDLE1BQU0sUUFBUSxHQUFJLFVBQVUsQ0FBQyxhQUF5QixDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xGLEtBQUssQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFXLEVBQUUsRUFBRTtnQkFDbkQsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQztnQkFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBRW5GLEVBQUUsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBRWpDLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUU7b0JBQ2hDLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO29CQUMzQyxJQUFJLEVBQUUsQ0FBQyxhQUFhLEVBQUUsRUFBRTt3QkFDcEIsS0FBSyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFVLEVBQUUsRUFBRTs0QkFDdkQsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDeEMsQ0FBQyxDQUFDLENBQUM7cUJBQ047b0JBQ0EsTUFBTSxDQUFDLFFBQW9CLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ3RFO2dCQUVELGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUVsRCxPQUFPO1lBQ0gsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDaEYsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDVixhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzFDLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQzs4R0F0RFEsbUJBQW1CLGtCQU1SLGtCQUFrQjtrSEFON0IsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVOzswQkFPTSxNQUFNOzJCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBFbGVtZW50UmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudEZhY3RvcnksIENvbXBvbmVudFJlZiwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEeW5hbWljSFRNTE9wdGlvbnMsIE5HWF9EWU5BTUlDX0NPTkZJRywgT25Nb3VudCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIER5bmFtaWNIVE1MUmVmIHtcbiAgICBjaGVjazogKCkgPT4gdm9pZDtcbiAgICBkZXN0cm95OiAoKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBpc0Jyb3dzZXJQbGF0Zm9ybSgpIHtcbiAgICByZXR1cm4gd2luZG93ICE9IG51bGwgJiYgd2luZG93LmRvY3VtZW50ICE9IG51bGw7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEeW5hbWljSFRNTFJlbmRlcmVyIHtcblxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yaWVzID0gbmV3IE1hcDxzdHJpbmcsIENvbXBvbmVudEZhY3Rvcnk8YW55Pj4oKTtcblxuICAgIHByaXZhdGUgY29tcG9uZW50UmVmcyA9IG5ldyBNYXA8YW55LCBBcnJheTxDb21wb25lbnRSZWY8YW55Pj4+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KE5HWF9EWU5BTUlDX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IER5bmFtaWNIVE1MT3B0aW9ucywgcHJpdmF0ZSBjZnI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgdGhpcy5jb25maWcuY29tcG9uZW50cy5mb3JFYWNoKCh7IHNlbGVjdG9yLCBjb21wb25lbnQgfSkgPT4ge1xuICAgICAgICAgICAgbGV0IGNmOiBDb21wb25lbnRGYWN0b3J5PGFueT47XG4gICAgICAgICAgICBjZiA9IHRoaXMuY2ZyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudCk7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudEZhY3Rvcmllcy5zZXQoc2VsZWN0b3IsIGNmKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVuZGVySW5uZXJIVE1MKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIGh0bWw6IHN0cmluZyk6IER5bmFtaWNIVE1MUmVmIHtcbiAgICAgICAgaWYgKCFpc0Jyb3dzZXJQbGF0Zm9ybSgpKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGNoZWNrOiAoKSA9PiB7IH0sXG4gICAgICAgICAgICAgICAgZGVzdHJveTogKCkgPT4geyB9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gaHRtbDtcblxuICAgICAgICBjb25zdCBjb21wb25lbnRSZWZzOiBBcnJheTxDb21wb25lbnRSZWY8YW55Pj4gPSBbXTtcbiAgICAgICAgdGhpcy5jb25maWcuY29tcG9uZW50cy5mb3JFYWNoKCh7IHNlbGVjdG9yIH0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRzID0gKGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBFbGVtZW50KS5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKTtcbiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZWxlbWVudHMsIChlbDogRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSBlbC5pbm5lckhUTUw7XG4gICAgICAgICAgICAgICAgY29uc3QgY21wUmVmID0gdGhpcy5jb21wb25lbnRGYWN0b3JpZXMuZ2V0KHNlbGVjdG9yKS5jcmVhdGUodGhpcy5pbmplY3RvciwgW10sIGVsKTtcblxuICAgICAgICAgICAgICAgIGVsLnJlbW92ZUF0dHJpYnV0ZSgnbmctdmVyc2lvbicpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGNtcFJlZi5pbnN0YW5jZS5keW5hbWljT25Nb3VudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhdHRyc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChlbC5oYXNBdHRyaWJ1dGVzKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZWwuYXR0cmlidXRlcywgKGF0dHI6IEF0dHIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyc01hcC5zZXQoYXR0ci5uYW1lLCBhdHRyLnZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIChjbXBSZWYuaW5zdGFuY2UgYXMgT25Nb3VudCkuZHluYW1pY09uTW91bnQoYXR0cnNNYXAsIGNvbnRlbnQsIGVsKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb21wb25lbnRSZWZzLnB1c2goY21wUmVmKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWZzLnNldChlbGVtZW50UmVmLCBjb21wb25lbnRSZWZzKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY2hlY2s6ICgpID0+IGNvbXBvbmVudFJlZnMuZm9yRWFjaChyZWYgPT4gcmVmLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKSksXG4gICAgICAgICAgICBkZXN0cm95OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29tcG9uZW50UmVmcy5mb3JFYWNoKHJlZiA9PiByZWYuZGVzdHJveSgpKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZnMuZGVsZXRlKGVsZW1lbnRSZWYpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=