@microsoft/windows-admin-center-sdk 2.186.0 → 2.294.0
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/angular/assets/strings/cs-CZ/strings.json +1 -1
- package/angular/assets/strings/de-DE/strings.json +1 -1
- package/angular/assets/strings/es-ES/strings.json +1 -1
- package/angular/assets/strings/fr-FR/strings.json +1 -1
- package/angular/assets/strings/hu-HU/strings.json +1 -1
- package/angular/assets/strings/it-IT/strings.json +1 -1
- package/angular/assets/strings/ja-JP/strings.json +1 -1
- package/angular/assets/strings/ko-KR/strings.json +1 -1
- package/angular/assets/strings/nl-NL/strings.json +1 -1
- package/angular/assets/strings/pl-PL/strings.json +1 -1
- package/angular/assets/strings/pt-BR/strings.json +1 -1
- package/angular/assets/strings/pt-PT/strings.json +1 -1
- package/angular/assets/strings/ru-RU/strings.json +1 -1
- package/angular/assets/strings/strings.json +1 -1
- package/angular/assets/strings/sv-SE/strings.json +1 -1
- package/angular/assets/strings/tr-TR/strings.json +1 -1
- package/angular/assets/strings/zh-CN/strings.json +1 -1
- package/angular/assets/strings/zh-TW/strings.json +1 -1
- package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.js +1103 -1209
- package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.js.map +1 -1
- package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.min.js +2 -2
- package/angular/bundles/microsoft-windows-admin-center-sdk-angular.umd.min.js.map +1 -1
- package/angular/esm2015/src/controls/actions/actions.module.js +2 -2
- package/angular/esm2015/src/controls/actions/containers/action-bar/action-bar.component.js +2 -2
- package/angular/esm2015/src/controls/actions/items/action-button/action-button-renderer.component.js +5 -5
- package/angular/esm2015/src/controls/actions/items/action-dropdown/action-dropdown.component.js +31 -13
- package/angular/esm2015/src/controls/actions/items/action-item.component.js +7 -3
- package/angular/esm2015/src/controls/badge/badge-base.component.js +2 -13
- package/angular/esm2015/src/controls/badge/bugfixes-feature-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/coming-soon-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/credssp-enabled-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/critical-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/custom-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/feedback-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/improvement-feature-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/new-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/new-feature-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/preview-badge.component.js +42 -70
- package/angular/esm2015/src/controls/badge/warning-badge.component.js +42 -70
- package/angular/esm2015/src/controls/breadcrumb/breadcrumb.component.js +6 -6
- package/angular/esm2015/src/controls/breadcrumb-header/breadcrumb-header.component.js +2 -2
- package/angular/esm2015/src/controls/data-table/data-table-column.component.js +5 -3
- package/angular/esm2015/src/controls/data-table/data-table.component.js +20 -26
- package/angular/esm2015/src/controls/data-table/extensions/data-table-column-picker-extension.js +2 -1
- package/angular/esm2015/src/controls/details/details.component.js +2 -2
- package/angular/esm2015/src/controls/dialog/base-dialog.component.js +1 -1
- package/angular/esm2015/src/controls/dialog/confirmation-dialog/confirmation-dialog.component.js +20 -30
- package/angular/esm2015/src/controls/dialog/dialog.service.js +7 -3
- package/angular/esm2015/src/controls/dropdown/dropdown.component.js +2 -2
- package/angular/esm2015/src/controls/form/form-field/array/array-form-field.component.js +50 -40
- package/angular/esm2015/src/controls/form/form-field/checklist/checklist-form-field.component.js +3 -3
- package/angular/esm2015/src/controls/form/form-field/combobox/combobox-form-field.component.js +14 -13
- package/angular/esm2015/src/controls/form/form-field/datetime/datetime-form-field.component.js +2 -2
- package/angular/esm2015/src/controls/form/form-field/form-field.component.js +16 -4
- package/angular/esm2015/src/controls/form/form-field/options-form-field/form-field-option.component.js +5 -3
- package/angular/esm2015/src/controls/form/form-field/ordered-list/ordered-list-form-field.component.js +25 -21
- package/angular/esm2015/src/controls/form/form-field/radio-group/classic/radio-group-form-field.component.js +5 -5
- package/angular/esm2015/src/controls/form/form-field/search/search-form-field.component.js +2 -2
- package/angular/esm2015/src/controls/form/form-field/tags/tags-form-field.component.js +2 -2
- package/angular/esm2015/src/controls/form/validation-alert/validation-alert.component.js +4 -10
- package/angular/esm2015/src/controls/form/validation-alert/validation-alert.js +1 -1
- package/angular/esm2015/src/controls/horizontal-bar-chart/stacked-horizontal-bar-chart.component.js +17 -1
- package/angular/esm2015/src/controls/icon/layered-icon/layered-icon.component.js +12 -1
- package/angular/esm2015/src/controls/icon/layered-icon/status/status-icon.component.js +53 -9
- package/angular/esm2015/src/controls/loading-wheel/loading-wheel.component.js +17 -1
- package/angular/esm2015/src/controls/master-view/master-view.component.js +34 -30
- package/angular/esm2015/src/controls/pivot/pivot-tab.component.js +1 -1
- package/angular/esm2015/src/controls/pivot/pivot.component.js +21 -9
- package/angular/esm2015/src/controls/property-grid/property-grid.component.js +13 -29
- package/angular/esm2015/src/controls/schema-form/schema-form-content.component.js +7 -4
- package/angular/esm2015/src/controls/settings/common-settings/common-settings.component.js +23 -35
- package/angular/esm2015/src/controls/settings/settings.component.js +28 -1
- package/angular/esm2015/src/controls/settings/settings.module.js +8 -3
- package/angular/esm2015/src/controls/tooltip/tooltip-host.component.js +16 -5
- package/angular/esm2015/src/controls/wizard/wizard.component.js +38 -6
- package/angular/esm2015/src/directives/clamp/clamp.directive.js +26 -7
- package/angular/esm2015/src/directives/discard/discard.directive.js +2 -2
- package/angular/esm2015/src/directives/markdown/markdown.directive.js +5 -18
- package/angular/esm2015/src/generated/strings.js +1 -1
- package/angular/esm2015/src/guards/experiment.guard.service.js +14 -1
- package/angular/esm2015/src/pipes/boolean-converter-pipe.js +11 -1
- package/angular/esm2015/src/pipes/byte-unit-converter-pipe.js +11 -1
- package/angular/esm2015/src/pipes/enum-converter-pipe.js +16 -1
- package/angular/esm2015/src/pipes/format-pipe.js +11 -1
- package/angular/esm2015/src/pipes/highlight-pipe.js +11 -1
- package/angular/esm2015/src/pipes/yesno-converter-pipe.js +11 -1
- package/angular/esm2015/src/service/gateway.service.js +8 -5
- package/angular/esm2015/src/service/notification.service.js +23 -1
- package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.js +1042 -1069
- package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.js.map +1 -1
- package/angular/package.json +0 -1
- package/angular/src/controls/actions/items/action-dropdown/action-dropdown.component.d.ts +2 -0
- package/angular/src/controls/actions/items/action-item.component.d.ts +11 -1
- package/angular/src/controls/badge/badge-base.component.d.ts +0 -4
- package/angular/src/controls/data-table/data-table-column.component.d.ts +2 -1
- package/angular/src/controls/data-table/data-table.component.d.ts +4 -0
- package/angular/src/controls/dialog/base-dialog.component.d.ts +1 -1
- package/angular/src/controls/form/form-field/form-field.component.d.ts +10 -1
- package/angular/src/controls/form/form-field/options-form-field/form-field-option.component.d.ts +5 -1
- package/angular/src/controls/form/validation-alert/validation-alert.component.d.ts +0 -4
- package/angular/src/controls/form/validation-alert/validation-alert.d.ts +0 -1
- package/angular/src/controls/horizontal-bar-chart/stacked-horizontal-bar-chart.component.d.ts +16 -0
- package/angular/src/controls/icon/layered-icon/layered-icon.component.d.ts +11 -0
- package/angular/src/controls/icon/layered-icon/status/status-icon.component.d.ts +13 -2
- package/angular/src/controls/loading-wheel/loading-wheel.component.d.ts +16 -0
- package/angular/src/controls/master-view/master-view.component.d.ts +1 -0
- package/angular/src/controls/pivot/pivot-tab.component.d.ts +0 -1
- package/angular/src/controls/pivot/pivot.component.d.ts +4 -0
- package/angular/src/controls/settings/common-settings/common-settings.component.d.ts +6 -5
- package/angular/src/controls/settings/settings.component.d.ts +27 -0
- package/angular/src/controls/settings/settings.module.d.ts +7 -6
- package/angular/src/controls/tooltip/tooltip-host.component.d.ts +1 -1
- package/angular/src/controls/wizard/wizard.component.d.ts +23 -0
- package/angular/src/directives/clamp/clamp.directive.d.ts +5 -0
- package/angular/src/directives/markdown/markdown.directive.d.ts +2 -3
- package/angular/src/generated/strings.d.ts +9 -0
- package/angular/src/guards/experiment.guard.service.d.ts +13 -0
- package/angular/src/pipes/boolean-converter-pipe.d.ts +10 -0
- package/angular/src/pipes/byte-unit-converter-pipe.d.ts +10 -0
- package/angular/src/pipes/enum-converter-pipe.d.ts +15 -0
- package/angular/src/pipes/format-pipe.d.ts +10 -0
- package/angular/src/pipes/highlight-pipe.d.ts +10 -0
- package/angular/src/pipes/yesno-converter-pipe.d.ts +10 -0
- package/angular/src/service/gateway.service.d.ts +3 -1
- package/angular/src/service/notification.service.d.ts +22 -0
- package/core/base/environment.d.ts +7 -0
- package/core/base/environment.js.map +1 -1
- package/core/base/versioned-object.js +2 -2
- package/core/base/versioned-object.js.map +1 -1
- package/core/data/cim-stream.js +8 -1
- package/core/data/cim-stream.js.map +1 -1
- package/core/data/core-environment.d.ts +4 -0
- package/core/data/core-environment.js +1 -0
- package/core/data/core-environment.js.map +1 -1
- package/core/data/crypto.js +10 -9
- package/core/data/crypto.js.map +1 -1
- package/core/data/file-transfer.js +5 -1
- package/core/data/file-transfer.js.map +1 -1
- package/core/data/gateway-connection.d.ts +11 -1
- package/core/data/gateway-connection.js +51 -9
- package/core/data/gateway-connection.js.map +1 -1
- package/core/data/http-constants.d.ts +5 -1
- package/core/data/http-constants.js +5 -1
- package/core/data/http-constants.js.map +1 -1
- package/core/data/net.d.ts +15 -11
- package/core/data/net.js +44 -41
- package/core/data/net.js.map +1 -1
- package/core/data/node-connection.d.ts +2 -2
- package/core/data/node-connection.js.map +1 -1
- package/core/data/powershell-stream.js +11 -3
- package/core/data/powershell-stream.js.map +1 -1
- package/core/data/powershell.d.ts +17 -1
- package/core/data/powershell.js +35 -9
- package/core/data/powershell.js.map +1 -1
- package/core/data/settings-manager.d.ts +9 -0
- package/core/data/settings-manager.js +18 -1
- package/core/data/settings-manager.js.map +1 -1
- package/core/generated/powershell-scripts.d.ts +5 -4
- package/core/generated/powershell-scripts.js +5 -4
- package/core/generated/powershell-scripts.js.map +1 -1
- package/core/host/host-core-manager.d.ts +36 -0
- package/core/host/host-core-manager.js +134 -0
- package/core/host/host-core-manager.js.map +1 -0
- package/core/host/host-core-message-type.d.ts +12 -0
- package/core/host/host-core-message-type.js +17 -0
- package/core/host/host-core-message-type.js.map +1 -0
- package/core/host/host-core-messages.d.ts +14 -0
- package/core/host/host-core-messages.js +3 -0
- package/core/host/host-core-messages.js.map +1 -0
- package/core/manifest/manifest-loader.d.ts +2 -1
- package/core/manifest/manifest-loader.js +27 -18
- package/core/manifest/manifest-loader.js.map +1 -1
- package/core/notification/notification.js +4 -0
- package/core/notification/notification.js.map +1 -1
- package/core/security/authorization-manager.d.ts +44 -0
- package/core/security/authorization-manager.js +111 -5
- package/core/security/authorization-manager.js.map +1 -1
- package/core/security/sign-on-manager.d.ts +109 -0
- package/core/security/sign-on-manager.js +119 -0
- package/core/security/sign-on-manager.js.map +1 -0
- package/core/security/tag-manager.js.map +1 -1
- package/core/shared/cluster-inventory/cluster-inventory-cache.js +3 -2
- package/core/shared/cluster-inventory/cluster-inventory-cache.js.map +1 -1
- package/core/shared/gateway-inventory/gateway-inventory-cache.d.ts +1 -1
- package/core/shared/gateway-inventory/gateway-inventory-cache.js +1 -1
- package/core/shared/gateway-inventory/gateway-inventory-cache.js.map +1 -1
- package/core/shared/server-inventory/server-inventory-cache.js +2 -1
- package/core/shared/server-inventory/server-inventory-cache.js.map +1 -1
- package/core/shared/tool-inventory/tool-inventory-cache.js +1 -1
- package/core/shared/tool-inventory/tool-inventory-cache.js.map +1 -1
- package/e2e/assets/strings/cs-CZ/strings.json +1 -1
- package/e2e/assets/strings/de-DE/strings.json +1 -1
- package/e2e/assets/strings/es-ES/strings.json +1 -1
- package/e2e/assets/strings/fr-FR/strings.json +1 -1
- package/e2e/assets/strings/hu-HU/strings.json +1 -1
- package/e2e/assets/strings/it-IT/strings.json +1 -1
- package/e2e/assets/strings/ja-JP/strings.json +1 -1
- package/e2e/assets/strings/ko-KR/strings.json +1 -1
- package/e2e/assets/strings/nl-NL/strings.json +1 -1
- package/e2e/assets/strings/pl-PL/strings.json +1 -1
- package/e2e/assets/strings/pt-BR/strings.json +1 -1
- package/e2e/assets/strings/pt-PT/strings.json +1 -1
- package/e2e/assets/strings/ru-RU/strings.json +1 -1
- package/e2e/assets/strings/strings.json +1 -1
- package/e2e/assets/strings/sv-SE/strings.json +1 -1
- package/e2e/assets/strings/tr-TR/strings.json +1 -1
- package/e2e/assets/strings/zh-CN/strings.json +1 -1
- package/e2e/assets/strings/zh-TW/strings.json +1 -1
- package/package.json +5 -5
- package/styles/css/fonts.css +2 -2
- package/styles/css/main.css +1 -1
- package/styles/fonts/ServMDL2/ServMDL2-4.62.woff +0 -0
- package/styles/fonts/ServMDL2/ServMDL2.json +238 -2039
- package/styles/fonts/ServMDL2/ServMDL2.scss +238 -2039
- package/tools/gulp-manifest-resource/index.js +3 -1
- package/tools/gulp-manifest-resource/index.js.map +1 -1
- package/tools/gulp-ps-cim/index.js +1 -1
- package/tools/gulp-ps-cim/index.js.map +1 -1
- package/tools/gulp-ps-cim/powershell-cim-config-schema.json +1 -1
- package/tools/gulp-ps-code/index.js +36 -2
- package/tools/gulp-ps-code/index.js.map +1 -1
- package/tools/gulp-ps-code/ps-code-convert.js +4 -8
- package/tools/gulp-ps-code/ps-code-convert.js.map +1 -1
- package/tools/gulp-ps-resjson/index.js +79 -74
- package/tools/gulp-ps-resjson/index.js.map +1 -1
- package/tools/module-template/build/pipelines/codeinspector.yml +27 -0
- package/tools/module-template/gulpfile.ts/common/lint.ts +3 -3
- package/tools/module-template/gulpfile.ts/common/pack.ts +14 -14
- package/tools/module-template/gulpfile.ts/common/ui-test-automation.ts +40 -0
- package/tools/module-template/gulpfile.ts/common/utilities.ts +10 -10
- package/tools/module-template/gulpfile.ts/common/validate.ts +14 -4
- package/tools/module-template/gulpfile.ts/index.ts +20 -8
- package/tools/wac-cli/src/upgrade/file-updater.d.ts +1 -0
- package/tools/wac-cli/src/upgrade/file-updater.js +7 -1
- package/tools/wac-cli/src/upgrade/file-updater.js.map +1 -1
- package/styles/fonts/ServMDL2/ServMDL2-4.33.woff +0 -0
|
@@ -101,5 +101,5 @@ export class ActionsModule {
|
|
|
101
101
|
}], null, null); })();
|
|
102
102
|
i0.ɵɵsetComponentScope(ActionBarComponent, [i1.NgForOf, DynamicActionItemComponent, i2.DropdownComponent, i3.TooltipDirective, ActionMenuComponent], []);
|
|
103
103
|
i0.ɵɵsetComponentScope(ActionMenuComponent, [i1.NgForOf, DynamicActionItemComponent], [i4.FilterPipe]);
|
|
104
|
-
i0.ɵɵsetComponentScope(ActionDropdownRendererComponent, [i2.DropdownComponent, i5.DisabledDirective,
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
i0.ɵɵsetComponentScope(ActionDropdownRendererComponent, [i2.DropdownComponent, i5.DisabledDirective, i3.TooltipDirective, i1.NgIf, i1.NgClass, ActionMenuComponent], []);
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2FjdGlvbnMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzdILE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQzlILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQzdHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7O0FBdUNyRixNQUFNLE9BQU8sYUFBYTs7NkZBQWIsYUFBYTtvRUFBYixhQUFhO3dFQVJiO1lBQ0wsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixjQUFjO1lBQ2QsY0FBYztZQUNkLGFBQWE7U0FDaEI7d0ZBRVEsYUFBYSxtQkFyQmxCLGtCQUFrQjtRQUNsQixrQkFBa0I7UUFDbEIsbUJBQW1CO1FBQ25CLHFCQUFxQjtRQUNyQiw2QkFBNkI7UUFDN0IsdUJBQXVCO1FBQ3ZCLCtCQUErQjtRQUMvQiw0QkFBNEI7UUFDNUIsb0NBQW9DO1FBQ3BDLDBCQUEwQjtRQUMxQiwwQkFBMEI7UUFDMUIseUJBQXlCLGFBR3pCLFlBQVk7UUFDWixnQkFBZ0I7UUFDaEIsY0FBYztRQUNkLGNBQWM7UUFDZCxhQUFhLGFBaENiLGtCQUFrQjtRQUNsQixrQkFBa0I7UUFDbEIscUJBQXFCO1FBQ3JCLDZCQUE2QjtRQUM3QixtQkFBbUI7UUFDbkIsMEJBQTBCO1FBQzFCLHVCQUF1QjtRQUN2QiwrQkFBK0I7UUFDL0IsNEJBQTRCO1FBQzVCLG9DQUFvQztRQUNwQywwQkFBMEI7UUFDMUIseUJBQXlCO3VGQXdCcEIsYUFBYTtjQXJDekIsUUFBUTtlQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxrQkFBa0I7b0JBQ2xCLGtCQUFrQjtvQkFDbEIscUJBQXFCO29CQUNyQiw2QkFBNkI7b0JBQzdCLG1CQUFtQjtvQkFDbkIsMEJBQTBCO29CQUMxQix1QkFBdUI7b0JBQ3ZCLCtCQUErQjtvQkFDL0IsNEJBQTRCO29CQUM1QixvQ0FBb0M7b0JBQ3BDLDBCQUEwQjtvQkFDMUIseUJBQXlCO2lCQUM1QjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1Ysa0JBQWtCO29CQUNsQixrQkFBa0I7b0JBQ2xCLG1CQUFtQjtvQkFDbkIscUJBQXFCO29CQUNyQiw2QkFBNkI7b0JBQzdCLHVCQUF1QjtvQkFDdkIsK0JBQStCO29CQUMvQiw0QkFBNEI7b0JBQzVCLG9DQUFvQztvQkFDcEMsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLHlCQUF5QjtpQkFDNUI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osZ0JBQWdCO29CQUNoQixjQUFjO29CQUNkLGNBQWM7b0JBQ2QsYUFBYTtpQkFDaEI7YUFDSjs7dUJBcEJPLGtCQUFrQixlQVNsQiwwQkFBMEIsNkNBUDFCLG1CQUFtQjt1QkFBbkIsbUJBQW1CLGVBT25CLDBCQUEwQjt1QkFIMUIsK0JBQStCLHlGQUovQixtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtLCBBY3Rpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLic7XHJcbmltcG9ydCB7IERpc2FibGVkTW9kdWxlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9kaXNhYmxlZC9kaXNhYmxlZC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBGaWx0ZXJQaXBlTW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvZmlsdGVyLXBpcGUubW9kdWxlJztcclxuaW1wb3J0IHsgRHJvcGRvd25Nb2R1bGUgfSBmcm9tICcuLi9kcm9wZG93bi9kcm9wZG93bi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAnLi4vdG9vbHRpcC90b29sdGlwLm1vZHVsZSc7XHJcbmltcG9ydCB7IEFjdGlvbkJhckNvbXBvbmVudCB9IGZyb20gJy4vY29udGFpbmVycy9hY3Rpb24tYmFyL2FjdGlvbi1iYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uQmFyRGlyZWN0aXZlIH0gZnJvbSAnLi9jb250YWluZXJzL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25NZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb250YWluZXJzL2FjdGlvbi1tZW51L2FjdGlvbi1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbkJ1dHRvbkFzeW5jQ29tcG9uZW50IH0gZnJvbSAnLi9pdGVtcy9hY3Rpb24tYnV0dG9uLWFzeW5jL2FjdGlvbi1idXR0b24tYXN5bmMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uQnV0dG9uUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2l0ZW1zL2FjdGlvbi1idXR0b24vYWN0aW9uLWJ1dHRvbi1yZW5kZXJlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2l0ZW1zL2FjdGlvbi1idXR0b24vYWN0aW9uLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25Ecm9wZG93bkNvbXBvbmVudCwgQWN0aW9uRHJvcGRvd25SZW5kZXJlckNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMvYWN0aW9uLWRyb3Bkb3duL2FjdGlvbi1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtU2VwYXJhdG9yUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuL2l0ZW1zL2FjdGlvbi1pdGVtLXNlcGFyYXRvci9hY3Rpb24taXRlbS1zZXBhcmF0b3ItcmVuZGVyZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uSXRlbVNlcGFyYXRvckNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMvYWN0aW9uLWl0ZW0tc2VwYXJhdG9yL2FjdGlvbi1pdGVtLXNlcGFyYXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEeW5hbWljQWN0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMvZHluYW1pYy1hY3Rpb24taXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWdzQWN0aW9uQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi90ZW1wbGF0ZXMvdGFncy1hY3Rpb24tYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZXhwb3J0czogW1xyXG4gICAgICAgIEFjdGlvbkJhckNvbXBvbmVudCxcclxuICAgICAgICBBY3Rpb25CYXJEaXJlY3RpdmUsXHJcbiAgICAgICAgQWN0aW9uQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbkJ1dHRvblJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbk1lbnVDb21wb25lbnQsXHJcbiAgICAgICAgRHluYW1pY0FjdGlvbkl0ZW1Db21wb25lbnQsXHJcbiAgICAgICAgQWN0aW9uRHJvcGRvd25Db21wb25lbnQsXHJcbiAgICAgICAgQWN0aW9uRHJvcGRvd25SZW5kZXJlckNvbXBvbmVudCxcclxuICAgICAgICBBY3Rpb25JdGVtU2VwYXJhdG9yQ29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbkl0ZW1TZXBhcmF0b3JSZW5kZXJlckNvbXBvbmVudCxcclxuICAgICAgICBBY3Rpb25CdXR0b25Bc3luY0NvbXBvbmVudCxcclxuICAgICAgICBUYWdzQWN0aW9uQnV0dG9uQ29tcG9uZW50XHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgQWN0aW9uQmFyQ29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbkJhckRpcmVjdGl2ZSxcclxuICAgICAgICBBY3Rpb25NZW51Q29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbkJ1dHRvbkNvbXBvbmVudCxcclxuICAgICAgICBBY3Rpb25CdXR0b25SZW5kZXJlckNvbXBvbmVudCxcclxuICAgICAgICBBY3Rpb25Ecm9wZG93bkNvbXBvbmVudCxcclxuICAgICAgICBBY3Rpb25Ecm9wZG93blJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbkl0ZW1TZXBhcmF0b3JDb21wb25lbnQsXHJcbiAgICAgICAgQWN0aW9uSXRlbVNlcGFyYXRvclJlbmRlcmVyQ29tcG9uZW50LFxyXG4gICAgICAgIER5bmFtaWNBY3Rpb25JdGVtQ29tcG9uZW50LFxyXG4gICAgICAgIEFjdGlvbkJ1dHRvbkFzeW5jQ29tcG9uZW50LFxyXG4gICAgICAgIFRhZ3NBY3Rpb25CdXR0b25Db21wb25lbnRcclxuICAgIF0sXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgICAgIEZpbHRlclBpcGVNb2R1bGUsXHJcbiAgICAgICAgRHJvcGRvd25Nb2R1bGUsXHJcbiAgICAgICAgRGlzYWJsZWRNb2R1bGUsXHJcbiAgICAgICAgVG9vbHRpcE1vZHVsZVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uc01vZHVsZSB7IH1cclxuIl19
|
|
@@ -377,7 +377,7 @@ export class ActionBarComponent extends ActionContainerComponent {
|
|
|
377
377
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dropDown = _t.first);
|
|
378
378
|
} }, hostBindings: function ActionBarComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
379
379
|
i0.ɵɵlistener("focusin", function ActionBarComponent_focusin_HostBindingHandler($event) { return ctx.onFocusEvent($event); })("focusout", function ActionBarComponent_focusout_HostBindingHandler($event) { return ctx.onFocusEvent($event); })("keydown", function ActionBarComponent_keydown_HostBindingHandler($event) { return ctx.onToggleKeydown($event); })("mouseenter", function ActionBarComponent_mouseenter_HostBindingHandler($event) { return ctx.onMouseEvent($event); })("mouseleave", function ActionBarComponent_mouseleave_HostBindingHandler($event) { return ctx.onMouseEvent($event); })("resize", function ActionBarComponent_resize_HostBindingHandler() { return ctx.onResize(); }, false, i0.ɵɵresolveWindow);
|
|
380
|
-
} }, outputs: { actionsUpdated: "actionsUpdated" }, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c3, decls: 12, vars: 14, consts: [["role", "menubar", 1, "sme-position-flex-none", "sme-arrange-stack-h"], ["actionBarElement", ""], ["class", "sme-arrange-stack-h sme-arrange-stack-centered sme-arrange-stack-inline", 3, "item", "sme-action-bar-item-no-padding-v", "itemChanged", 4, "ngFor", "ngForOf"], ["role", "presentation", 1, "sme-position-flex-none"], ["dropDown", ""], ["type", "button", "role", "menuitem", "aria-haspopup", "true", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-button-auto-width", "sme-dropdown-toggle"], ["dropDownButton", ""], [1, "sme-icon", "sme-icon-more", 3, "title"], [1, "sme-screen-reader"], ["role", "menu", 1, "sme-dropdown-content", 3, "actions", "target", "targetChange", "error", "executed"], [1, "sme-arrange-stack-h", "sme-arrange-stack-centered", "sme-arrange-stack-inline", 3, "item", "itemChanged"]], template: function ActionBarComponent_Template(rf, ctx) { if (rf & 1) {
|
|
380
|
+
} }, outputs: { actionsUpdated: "actionsUpdated" }, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c3, decls: 12, vars: 14, consts: [["role", "menubar", 1, "sme-position-flex-none", "sme-arrange-stack-h"], ["actionBarElement", ""], ["class", "sme-arrange-stack-h sme-arrange-stack-centered sme-arrange-stack-inline", 3, "item", "sme-action-bar-item-no-padding-v", "itemChanged", 4, "ngFor", "ngForOf"], ["role", "presentation", 1, "sme-position-flex-none"], ["dropDown", ""], ["type", "button", "role", "menuitem", "aria-haspopup", "true", "data-uta-id", "action-bar-more", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-button-auto-width", "sme-dropdown-toggle"], ["dropDownButton", ""], [1, "sme-icon", "sme-icon-more", 3, "title"], [1, "sme-screen-reader"], ["role", "menu", 1, "sme-dropdown-content", 3, "actions", "target", "targetChange", "error", "executed"], [1, "sme-arrange-stack-h", "sme-arrange-stack-centered", "sme-arrange-stack-inline", 3, "item", "itemChanged"]], template: function ActionBarComponent_Template(rf, ctx) { if (rf & 1) {
|
|
381
381
|
i0.ɵɵprojectionDef();
|
|
382
382
|
i0.ɵɵelementStart(0, "div", 0, 1);
|
|
383
383
|
i0.ɵɵtemplate(2, ActionBarComponent_sme_dynamic_action_item_2_Template, 1, 3, "sme-dynamic-action-item", 2);
|
|
@@ -452,4 +452,4 @@ export class ActionBarComponent extends ActionContainerComponent {
|
|
|
452
452
|
type: HostListener,
|
|
453
453
|
args: ['window:resize']
|
|
454
454
|
}] }); })();
|
|
455
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2NvbnRhaW5lcnMvYWN0aW9uLWJhci9hY3Rpb24tYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FuZ3VsYXIvc3JjL2NvbnRyb2xzL2FjdGlvbnMvY29udGFpbmVycy9hY3Rpb24tYmFyL2FjdGlvbi1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFFVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sUUFBUSxFQUNSLGVBQWUsRUFFZixRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUV2RixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFVLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7SUN4QnZFLG1EQUU0RDtJQUYrQixnUEFBcUM7SUFFcEUsaUJBQTBCOzs7O0lBQXBGLHlFQUF5RDtJQUZrQiw4QkFBYTs7O0FEMEI1Rjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOEJHO0FBTUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHdCQUF3QjtJQWdGNUQ7O09BRUc7SUFDSCxZQUFZLGVBQWdDLEVB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QUFtQixrR0FBVSxzQkFBa0IsSUFBNUIsd0dBQ3ZGLHlCQUFxQixJQURrRTtRQUNoRSxpQkFBa0I7UUFDekQsaUJBQWU7UUFDZixtQkFBeUI7UUFDM0IsaUJBQU07OztRQWhCYyxrREFBb0M7UUFDWixlQUFpQztRQUFqQyxnRUFBaUM7UUFJQSxlQUFnRTtRQUFoRSxpRkFBZ0UsZ0VBQUE7UUFHdkksZUFBcUM7UUFBckMseUNBQXFDO1FBREQsb0RBQXNDLDZCQUFBO1FBRXJDLGVBQTRCO1FBQTVCLDhDQUE0QjtRQUNqQyxlQUF3QjtRQUF4Qiw0Q0FBd0I7UUFFekMsZUFBdUI7UUFBdkIseUNBQXVCLHNCQUFBOzt1RkRtRC9CLGtCQUFrQjtjQUo5QixTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsV0FBVyxFQUFFLDZCQUE2QjthQUM3Qzs7c0JBcUZRLFFBQVE7O3NCQUFJLE1BQU07dUJBQUMsbUJBQW1COytDQWxCcEMsY0FBYztrQkFEcEIsTUFBTTtZQU9nQyxPQUFPO2tCQUE3QyxTQUFTO21CQUFDLGtCQUFrQjtZQUNRLHFCQUFxQjtrQkFBekQsU0FBUzttQkFBQyxnQkFBZ0I7WUFLRyxRQUFRO2tCQUFyQyxTQUFTO21CQUFDLFVBQVU7WUErRGQsWUFBWTtrQkFGbEIsWUFBWTttQkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tCQUNsQyxZQUFZO21CQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVc3QixlQUFlO2tCQURyQixZQUFZO21CQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQTBCNUIsWUFBWTtrQkFGbEIsWUFBWTttQkFBQyxZQUFZLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tCQUNyQyxZQUFZO21CQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVd0QyxRQUFRO2tCQURQLFlBQVk7bUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRG9DaGVjayxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBFdmVudEVtaXR0ZXIsXHJcbiAgICBIb3N0TGlzdGVuZXIsXHJcbiAgICBJbmplY3QsXHJcbiAgICBJbmplY3RvcixcclxuICAgIEl0ZXJhYmxlRGlmZmVycyxcclxuICAgIE9uRGVzdHJveSxcclxuICAgIE9wdGlvbmFsLFxyXG4gICAgT3V0cHV0LFxyXG4gICAgUmVuZGVyZXIyLFxyXG4gICAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEtleUNvZGUgfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvYWNjZXNzaWJpbGl0eS1tYW5hZ2VyJztcclxuaW1wb3J0IHsgTG9nZ2luZyB9IGZyb20gJ0BtaWNyb3NvZnQvd2luZG93cy1hZG1pbi1jZW50ZXItc2RrL2NvcmUvZGlhZ25vc3RpY3MvbG9nZ2luZyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdHJpbmdzIH0gZnJvbSAnLi4vLi4vLi4vLi4vZ2VuZXJhdGVkL3N0cmluZ3MnO1xyXG5pbXBvcnQgeyBMYXlvdXQsIFNNRV9MQVlPVVRfUFJPVklERVIgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vbGF5b3V0JztcclxuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtIH0gZnJvbSAnLi4vLi4vaXRlbXMvYWN0aW9uLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uQ29udGFpbmVyT3JpZW50YXRpb24gfSBmcm9tICcuLi9hY3Rpb24tY29udGFpbmVyJztcclxuaW1wb3J0IHsgQWN0aW9uQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vYWN0aW9uLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqXHJcbiAqIEBzbWVEb2Mge0BsYWJlbCBBY3Rpb25zIEBpZCBzbWUtYWN0aW9uc31cclxuICpcclxuICogQG92ZXJ2aWV3XHJcbiAqIEBmaWxlIHtAZmlsZXBhdGggLi9leGFtcGxlcy9vdmVydmlldy5tZH1cclxuICpcclxuICogQGV4YW1wbGUge0BsYWJlbCBEZWZpbmVkIGFjdGlvbnMgZnJvbSBjb21wb25lbnQgQGlkIGRlZmluZWQtYWN0aW9ucy1mcm9tLWNvbXBvbmVudH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQuaHRtbCBAZmlsZXBhdGggLi9leGFtcGxlcy9kZWZpbmVkLWFjdGlvbnMtZnJvbS1jb21wb25lbnQuY29tcG9uZW50Lmh0bWx9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50LnRzIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2FjdGlvbnMtZXhhbXBsZS5jb21wb25lbnQudHN9XHJcbiAqXHJcbiAqIEBleGFtcGxlIHtAbGFiZWwgRGVmaW5lZCBhY3Rpb25zIGZyb20gaHRtbCBAaWQgZGVmaW5lZC1hY3Rpb25zLWZyb20taHRtbH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQuaHRtbCBAZmlsZXBhdGggLi9leGFtcGxlcy9kZWZpbmVkLWFjdGlvbnMtZnJvbS1odG1sLmNvbXBvbmVudC5odG1sfVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC50cyBAZmlsZXBhdGggLi9leGFtcGxlcy9hY3Rpb25zLWV4YW1wbGUuY29tcG9uZW50LnRzfVxyXG4gKlxyXG4gKiBAZXhhbXBsZSB7QGxhYmVsIERlZmluZWQgYWN0aW9ucyBmcm9tIGJvdGggQGlkIGRlZmluZWQtYWN0aW9ucy1mcm9tLWJvdGh9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50Lmh0bWwgQGZpbGVwYXRoIC4vZXhhbXBsZXMvZGVmaW5lZC1hY3Rpb25zLWZyb20tYm90aC5jb21wb25lbnQuaHRtbH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQudHMgQGZpbGVwYXRoIC4vZXhhbXBsZXMvYWN0aW9ucy1leGFtcGxlLmNvbXBvbmVudC50c31cclxuICpcclxuICogQGV4YW1wbGUge0BsYWJlbCBBbGwgYnV0dG9ucyBkaXNhYmxlZCBAaWQgYWxsLWJ1dHRvbnMtZGlzYWJsZWR9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50Lmh0bWwgQGZpbGVwYXRoIC4vZXhhbXBsZXMvYWxsLWJ1dHRvbnMtZGlzYWJsZWQuY29tcG9uZW50Lmh0bWx9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50LnRzIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2FjdGlvbnMtZXhhbXBsZS5jb21wb25lbnQudHN9XHJcbiAqXHJcbiAqIEBleGFtcGxlIHtAbGFiZWwgTW9kZWwgZHJpdmVuIGFjdGlvbiBiYXIgQGlkIG1vZGVsLWRyaXZlbn1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQuaHRtbCBAZmlsZXBhdGggLi9leGFtcGxlcy9tb2RlbC1kcml2ZW4uY29tcG9uZW50Lmh0bWx9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50LnRzIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2FjdGlvbnMtZXhhbXBsZS5jb21wb25lbnQudHN9XHJcbiAqXHJcbiAqIEBleGFtcGxlIHtAbGFiZWwgQ29udGFpbmVyIGVtYmVkZGVkIGFjdGlvbiBiYXIgQGlkIGNvbnRhaW5lci1lbWJlZGRlZC1hY3Rpb24tYmFyfVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC5odG1sIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2NvbnRhaW5lci1lbWJlZGRlZC1hY3Rpb24tYmFyLmNvbXBvbmVudC5odG1sfVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC50cyBAZmlsZXBhdGggLi9leGFtcGxlcy9hY3Rpb25zLWV4YW1wbGUuY29tcG9uZW50LnRzfVxyXG4gKi9cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzbWUtYWN0aW9uLWJhcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uLWJhci5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbkJhckNvbXBvbmVudCBleHRlbmRzIEFjdGlvbkNvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcbiAgICBwcm90ZWN0ZWQgbG9nU291cmNlTmFtZTogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyB0aGF0IHdoZW4gc2V0IHdpbGwgZGlzcGxheSBtaW5pbWFsIFVJIGZvciB0aGUgYWN0aW9uIGJhci5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldCBjb21wYWN0KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmlzQ29tcGFjdDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEF0dHJpYnV0ZSB0aGF0IHNldHMgdmVydGljYWwgb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvbiB3aGVyZSB2ZXJ0aWNhbCBkaXNwbGF5cyBhY3Rpb24gYmFyIGZyb20gdG9wIHRvIGJvdHRvbSBvZiBwYWdlXHJcbiAgICAgKiBhbmQgaG9yaXpvbnRhbCBkaXNwbGF5cyBhY3Rpb24gYmFyIGZyb20gbGVmdCB0byByaWdodC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldCBvcmllbnRhdGlvbigpOiBBY3Rpb25Db250YWluZXJPcmllbnRhdGlvbiB7XHJcbiAgICAgICAgcmV0dXJuICd2ZXJ0aWNhbCc7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMaXN0IG9mIEFjdGlvbkl0ZW0gb2JqZWN0cyB0aGF0IHdlIHdhbnQgdG8gcGVyZm9ybS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGRpc3BsYXllZEFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogTGlzdCBvZiBBY3Rpb25JdGVtIG9iamVjdHMgdGhhdCBhcmUgY29sbGFwc2VkIGludG8gZHJvcGRvd24uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB0cmF5QWN0aW9uczogQWN0aW9uSXRlbVtdID0gW107XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUZXh0IGRpc3BsYXllZCBmb3IgdHJheSBkcm9wZG93bi5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG1vcmVBY3Rpb25zRGlzcGxheTogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogTGFiZWwgb24gYWN0aW9uIG1lbnUgZm9yIGFjY2Vzc2liaWxpdHkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhY3Rpb25zQXJpYUxhYmVsOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHRvIG1ha2Ugc3VyZSBpZiB0aGUgaGVpZ2h0IG9mIHRoZSBiYXIgaXMgY3VycmVudGx5IGdyZWF0ZXIgdGhhbiB0aGUgYXZhaWxhYmxlIGhlaWdodCBvZiB0aGUgdGFyZ2V0LFxyXG4gICAgICogdGhlbiB0aGUgaXRlbXMgYXJlIGFkanVzdGVkIGFjY29yZGluZ2x5LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaGVpZ2h0T3ZlcmZsb3c6IGJvb2xlYW47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBCdXR0b24gZWxlbWVudCBmb3IgdHJheSBkcm9wZG93bi5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG1vcmVCdXR0b25FbGVtZW50OiBIVE1MRWxlbWVudDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIExvY2FsaXplZCBzZXQgb2Ygc3RyaW5ncy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0cmluZ3MgPSBNc2Z0U21lLmdldFN0cmluZ3M8U3RyaW5ncz4oKTtcclxuICAgIHByaXZhdGUgaXNDb21wYWN0ID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIGhvdmVyZWQgPSBmYWxzZTtcclxuICAgIHByaXZhdGUgZm9jdXNlZCA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBhdHRhY2hlZFRvOiBIVE1MRWxlbWVudDtcclxuICAgIHByaXZhdGUgc2hvdWxkU2hvdyA9IHRydWU7XHJcbiAgICBwcml2YXRlIGlzVmlzaWJsZSA9IHRydWU7XHJcbiAgICBwcml2YXRlIGxheW91dFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIEV2ZW50IGZpcmVkIHdoZW4gbGlzdCBvZiBBY3Rpb25JdGVtcyBjaGFuZ2VzLlxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyBhY3Rpb25zVXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAgIHByaXZhdGUgZ2V0IGlzQXR0YWNoZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICFNc2Z0U21lLmlzTnVsbE9yVW5kZWZpbmVkKHRoaXMuYXR0YWNoZWRUbyk7XHJcbiAgICB9XHJcblxyXG4gICAgQFZpZXdDaGlsZCgnYWN0aW9uQmFyRWxlbWVudCcpIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjtcclxuICAgIEBWaWV3Q2hpbGQoJ2Ryb3BEb3duQnV0dG9uJykgcHJpdmF0ZSBkcm9wRG93bkJ1dHRvbkVsZW1lbnQ6IEVsZW1lbnRSZWY7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBEcm9wZG93bkNvbXBvbmVudCBlbGVtZW50IGZvciBhY3Rpb24gdHJheS5cclxuICAgICAqL1xyXG4gICAgQFZpZXdDaGlsZCgnZHJvcERvd24nKSBwdWJsaWMgZHJvcERvd246IERyb3Bkb3duQ29tcG9uZW50O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29uc3RydWN0b3IgZm9yIHRoZSBBY3Rpb25CYXJDb21wb25lbnQuXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKGl0ZXJhYmxlRGlmZmVyczogSXRlcmFibGVEaWZmZXJzLCBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHVibGljIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxyXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoU01FX0xBWU9VVF9QUk9WSURFUikgcHJpdmF0ZSBsYXlvdXQ6IExheW91dCwgaW5qZWN0b3I6IEluamVjdG9yKSB7XHJcbiAgICAgICAgc3VwZXIoaXRlcmFibGVEaWZmZXJzLCBpbmplY3Rvcik7XHJcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm1heC1saW5lLWxlbmd0aFxyXG4gICAgICAgIHJlbmRlcmVyLmFkZENsYXNzKGhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtcG9zaXRpb24tc3RyZXRjaC1oJyk7XHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1sYXlvdXQtYWN0aW9uLWJhcicpO1xyXG4gICAgICAgIHJlbmRlcmVyLmFkZENsYXNzKGhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtYXJyYW5nZS1zdGFjay1oJyk7XHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1hcnJhbmdlLXdzLW5vd3JhcCcpO1xyXG4gICAgICAgIHJlbmRlcmVyLmFkZENsYXNzKGhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtYXJyYW5nZS1vdmVyZmxvdy1zaG93Jyk7XHJcbiAgICAgICAgcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnb3BhY2l0eScsIDApO1xyXG4gICAgICAgIHRoaXMubW9yZUFjdGlvbnNEaXNwbGF5ID0gdGhpcy5zdHJpbmdzLk1zZnRTbWVTaGVsbC5Bbmd1bGFyLkNvbW1vbi5tb3JlO1xyXG4gICAgICAgIHRoaXMuYWN0aW9uc0FyaWFMYWJlbCA9IHRoaXMuc3RyaW5ncy5Nc2Z0U21lU2hlbGwuQW5ndWxhci5Db21tb24uYWN0aW9ucztcclxuXHJcbiAgICAgICAgaWYgKGxheW91dCkge1xyXG4gICAgICAgICAgICB0aGlzLmxheW91dFN1YnNjcmlwdGlvbiA9IHRoaXMubGF5b3V0LmxheW91dENoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHRoaXMub25MYXlvdXRDaGFuZ2VkKCkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEZpbHRlcnMgb3V0IEFjdGlvbkl0ZW0gb2JqZWN0cyB0byBiZSBoaWRkZW4uXHJcbiAgICAgKiBAcGFyYW0gaXRlbXMgQWN0aW9uSXRlbSBvYmplY3RzIHRvIGNoZWNrLlxyXG4gICAgICogQHJldHVybnMgTGlzdCBvZiB1bmhpZGRlbiBBY3Rpb25JdGVtIG9iamVjdHMuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBoaWRkZW5GaWx0ZXIoaXRlbXM6IEFjdGlvbkl0ZW1bXSk6IEFjdGlvbkl0ZW1bXSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcihpdGVtID0+ICFpdGVtLmhpZGRlbik7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDYWxsYmFjayB0cmlnZ2VyZWQgYWZ0ZXIgdmlldyBpbml0aWFsaXplcy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVBY3Rpb25CYXIoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENhbGxiYWNrIHRyaWdnZXJlZCBhZnRlciBjb21wb25lbnQgaXMgZGVzdHJveWVkLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICAgICAgICB0aGlzLmxheW91dFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2FsbGJhY2sgdHJpZ2dlcmVkIHdoZW4gY29tcG9uZW50IGxheW91dCBjaGFuZ2VzLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgb25MYXlvdXRDaGFuZ2VkKCkge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUFjdGlvbkJhcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSG9zdCBsaXN0ZW5lcnMgZm9yIGZvY3VzIGV2ZW50cy5cclxuICAgICAqL1xyXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFsnJGV2ZW50J10pXHJcbiAgICBASG9zdExpc3RlbmVyKCdmb2N1c291dCcsIFsnJGV2ZW50J10pXHJcbiAgICBwdWJsaWMgb25Gb2N1c0V2ZW50KGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIC8vIG9uIGZvY3VzIGluL291dCBjaGFuZ2UgZm9jdXNlZCBzdGF0ZVxyXG4gICAgICAgIHRoaXMuZm9jdXNlZCA9IGV2ZW50LnR5cGUgPT09ICdmb2N1c2luJyB8fCAodGhpcy5mb2N1c2VkICYmIGV2ZW50LnR5cGUgIT09ICdmb2N1c291dCcpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlSGVpZ2h0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIb3N0IGxpc3RlbmVycyBmb3Iga2V5Ym9hcmQgZXZlbnRzLlxyXG4gICAgICovXHJcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcclxuICAgIHB1YmxpYyBvblRvZ2dsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgICAgICAvLyBhY2Nlc3NpYmlsaXR5LCB0YWtlIGZvY3VzIHRvIHRoZSBtb3JlIGJ1dHRvbiBhZnRlciBhIHNlbGVjdGlvbiBpbiBkcm9wZG93biBlbGVtZW50cy5cclxuICAgICAgICBzd2l0Y2ggKGV2ZW50LmtleUNvZGUpIHtcclxuICAgICAgICAgICAgY2FzZSBLZXlDb2RlLkVudGVyOiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5kcm9wRG93bikge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm1vcmVCdXR0b25FbGVtZW50ICYmIHRoaXMuZHJvcERvd24uaXNPcGVuICYmIHRoaXMuZHJvcERvd24uY29udGVudEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb3JlQnV0dG9uRWxlbWVudC5mb2N1cygpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZHJvcERvd24ub25Ub2dnbGVkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKG9wZW4gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG9wZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vcmVCdXR0b25FbGVtZW50ID0gPEhUTUxFbGVtZW50PmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSG9zdCBsaXN0ZW5lcnMgZm9yIG1vdXNlIGV2ZW50cy5cclxuICAgICAqL1xyXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicsIFsnJGV2ZW50J10pXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJywgWyckZXZlbnQnXSlcclxuICAgIHB1YmxpYyBvbk1vdXNlRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgLy8gb24gbW91c2UgZW50ZXIvbGVhdmUgY2hhbmdlIGhvdmVyZWQgc3RhdGVcclxuICAgICAgICB0aGlzLmhvdmVyZWQgPSBldmVudC50eXBlID09PSAnbW91c2VlbnRlcicgfHwgKHRoaXMuaG92ZXJlZCAmJiBldmVudC50eXBlICE9PSAnbW91c2VsZWF2ZScpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlSGVpZ2h0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIb3N0IGxpc3RlbmVyIGZvciBwYWdlIHJlc2l6ZSBldmVudC5cclxuICAgICAqL1xyXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXHJcbiAgICBvblJlc2l6ZSgpIHtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFjdGlvbkJhcigpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2FsbGJhY2sgdHJpZ2dlcmVkIGFmdGVyIGNoaWxkIEFjdGlvbkl0ZW0gY2hhbmdlcy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIG9uQWN0aW9uSXRlbUNoYW5nZWQoKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQWN0aW9uQmFyKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB1cGRhdGVIZWlnaHQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNBdHRhY2hlZCkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pc1Zpc2libGUgJiYgKHRoaXMuc2hvdWxkU2hvdyB8fCB0aGlzLmZvY3VzZWQgfHwgdGhpcy5ob3ZlcmVkKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdvdmVyZmxvdycpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtYW5pbWF0aW9uLWZhZGUtb3V0LXhzJyk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1hbmltYXRpb24tZmFkZS1pbi14cycpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdvcGFjaXR5JywgMCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ292ZXJmbG93JywgJ2hpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtYW5pbWF0aW9uLWZhZGUtb3V0LXhzJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNZXRob2QgdG8gc2V0IHZpc2liaWxpdHkgZm9yIEFjdGlvbkJhckNvbXBvbmVudC5cclxuICAgICAqIEBwYXJhbSBpc1Zpc2libGUgVHJ1ZSBmb3IgdmlzaWJsZSwgZmFsc2UgZm9yIG5vdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldFZpc2liaWxpdHkoaXNWaXNpYmxlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pc1Zpc2libGUgPSBpc1Zpc2libGU7XHJcbiAgICAgICAgdGhpcy51cGRhdGVIZWlnaHQoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCB0byBzZXQgdmlzaWJpbGl0eSBmb3IgQWN0aW9uQmFyQ29tcG9uZW50LlxyXG4gICAgICogQHBhcmFtIHNob3VsZFNob3cgVHJ1ZSBmb3Igc2hvd2luZywgZmFsc2UgZm9yIG5vdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHNob3dIaWRlKHNob3VsZFNob3c6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNob3VsZFNob3cgPSBzaG91bGRTaG93O1xyXG4gICAgICAgIHRoaXMudXBkYXRlSGVpZ2h0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXBvc2l0aW9ucyBnaXZlbiBIVE1MRWxlbWVudCB0byBiZSByZWxhdGl2ZSB0byBpdHMgc2libGluZyBlbGVtZW50LlxyXG4gICAgICogQHBhcmFtIGVsZW1lbnQgRWxlbWVudCB0byByZXBvc2l0aW9uLlxyXG4gICAgICogQHBhcmFtIGNvbXBhY3QgQm9vbGVhbiBmbGFnIHRvIHNldCB3aGV0aGVyIG9yIG5vdCBBY3Rpb25CYXJDb21wb25lbnQgc2hvdWxkIGJlIGNvbXBhY3QuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZXBvc2l0aW9uUmVsYXRpdmVUbyhlbGVtZW50OiBIVE1MRWxlbWVudCwgY29tcGFjdDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIGlmIChNc2Z0U21lLmlzTnVsbE9yVW5kZWZpbmVkKGVsZW1lbnQub2Zmc2V0UGFyZW50KSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgaXNTaWJsaW5nID0gZmFsc2U7XHJcbiAgICAgICAgY29uc3Qgc2libGluZ3MgPSBlbGVtZW50LnBhcmVudEVsZW1lbnQuY2hpbGRyZW47XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaWJsaW5ncy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBjb25zdCBzaWJsaW5nID0gc2libGluZ3MuaXRlbShpKTtcclxuICAgICAgICAgICAgaWYgKHNpYmxpbmcgPT09IHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgaXNTaWJsaW5nID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghaXNTaWJsaW5nKSB7XHJcbiAgICAgICAgICAgIExvZ2dpbmcubG9nRXJyb3IoJ0FjdGlvbkJhci5yZXBvc2l0aW9uUmVsYXRpdmVUbycsICdBY3Rpb25CYXIgY2FuIG9ubHkgYmUgcG9zaXRpb25lZCByZWxhdGl2ZSB0byBhIHNpYmxpbmcgZWxlbWVudC4nKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCB3YXNBdHRhY2hlZCA9IHRoaXMuaXNBdHRhY2hlZDtcclxuICAgICAgICB0aGlzLmF0dGFjaGVkVG8gPSBlbGVtZW50O1xyXG5cclxuICAgICAgICBpZiAoIXdhc0F0dGFjaGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2hvd0hpZGUoZmFsc2UpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gd2hlbiBwb3NpdGlvbmluZyBvbiBhbiBlbGVtZW50LCB1c2UgY29tcGFjdCBzZXR0aW5ncyBpZiBkZXNpcmVkXHJcbiAgICAgICAgdGhpcy5pc0NvbXBhY3QgPSBjb21wYWN0O1xyXG5cclxuICAgICAgICAvLyBjaGFuZ2UgY2xhc3NlcyB0byBhY2NvdW50IGZvciBkaWZmZXJlbnQgcG9zaXRpb25pbmcgbWVjaGFuaXNtXHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdwb3NpdGlvbicpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLXBvc2l0aW9uLXN0cmV0Y2gtaCcpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLWxheW91dC1hYnNvbHV0ZScpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLWJhY2tncm91bmQtY29sb3ItYmFzZScpO1xyXG5cclxuICAgICAgICAvLyBDYWxjdWxhdGUgbmV3IHBvc2l0aW9uXHJcbiAgICAgICAgY29uc3Qgc3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KTtcclxuICAgICAgICBjb25zdCBtYXJnaW4gPSB7XHJcbiAgICAgICAgICAgIHRvcDogcGFyc2VJbnQoc3R5bGUubWFyZ2luVG9wLCAxMCksXHJcbiAgICAgICAgICAgIGJvdHRvbTogcGFyc2VJbnQoc3R5bGUubWFyZ2luQm90dG9tLCAxMCksXHJcbiAgICAgICAgICAgIGxlZnQ6IHBhcnNlSW50KHN0eWxlLm1hcmdpbkxlZnQsIDEwKSxcclxuICAgICAgICAgICAgcmlnaHQ6IHBhcnNlSW50KHN0eWxlLm1hcmdpblJpZ2h0LCAxMClcclxuICAgICAgICB9O1xyXG4gICAgICAgIGNvbnN0IGJvcmRlciA9IHtcclxuICAgICAgICAgICAgdG9wOiBwYXJzZUludChzdHlsZS5ib3JkZXJUb3AsIDEwKSxcclxuICAgICAgICAgICAgYm90dG9tOiBwYXJzZUludChzdHlsZS5ib3JkZXJCb3R0b20sIDEwKSxcclxuICAgICAgICAgICAgbGVmdDogcGFyc2VJbnQoc3R5bGUuYm9yZGVyTGVmdCwgMTApLFxyXG4gICAgICAgICAgICByaWdodDogcGFyc2VJbnQoc3R5bGUuYm9yZGVyUmlnaHQsIDEwKVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3QgYXZhaWxhYmxlV2lkdGggPSBlbGVtZW50LmNsaWVudFdpZHRoIC0gYm9yZGVyLmxlZnQgLSBib3JkZXIucmlnaHQgLSBtYXJnaW4ubGVmdCAtIG1hcmdpbi5yaWdodDtcclxuICAgICAgICBjb25zdCBhdmFpbGFibGVIZWlnaHQgPSBlbGVtZW50LmNsaWVudEhlaWdodCAtIGJvcmRlci5ib3R0b20gLSBtYXJnaW4uYm90dG9tO1xyXG4gICAgICAgIGNvbnN0IHdpZHRoID0gTWF0aC5taW4oTWF0aC5tYXgoYXZhaWxhYmxlV2lkdGggLyAyLCAzMDApLCBhdmFpbGFibGVXaWR0aCk7XHJcbiAgICAgICAgY29uc3QgcmlnaHQgPSBlbGVtZW50Lm9mZnNldFBhcmVudC5jbGllbnRXaWR0aCAtIChlbGVtZW50Lm9mZnNldExlZnQgKyBlbGVtZW50LmNsaWVudFdpZHRoKTtcclxuICAgICAgICBjb25zdCB0b3AgPSBlbGVtZW50Lm9mZnNldFRvcCArIGJvcmRlci50b3AgKyBtYXJnaW4udG9wO1xyXG5cclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3JpZ2h0JywgYCR7cmlnaHR9cHhgKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3RvcCcsIGAke3RvcH1weGApO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBgdW5zZXRgKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ21heC13aWR0aCcsIGAke3dpZHRofXB4YCk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdtYXgtaGVpZ2h0JywgYCR7YXZhaWxhYmxlSGVpZ2h0fXB4YCk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdqdXN0aWZ5LWNvbnRlbnQnLCBgZmxleC1lbmRgKTtcclxuXHJcbiAgICAgICAgLy8gaWYgdGhlIGhlaWdodCBvZiB0aGUgYmFyIGlzIGN1cnJlbnRseSBncmVhdGVyIHRoYW4gdGhlIGF2YWlsYWJsZSBoZWlnaHQgb2YgdGhlIHRhcmdldCxcclxuICAgICAgICAvLyB0aGVuIG1ha2Ugc3VyZSBkaXNwbGF5ZWQgaXRlbXMgYXJlIGFkanVzdGVkIGFjY29yZGluZ2x5XHJcbiAgICAgICAgdGhpcy5oZWlnaHRPdmVyZmxvdyA9IHBhcnNlSW50KHN0eWxlLmhlaWdodCwgMTApID4gYXZhaWxhYmxlSGVpZ2h0O1xyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVBY3Rpb25CYXIoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCB0byB1cGRhdGUgaG93IEFjdGlvbkJhckNvbXBvbmVudCBpcyBkaXNwbGF5ZWQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB1cGRhdGVBY3Rpb25CYXIoKSB7XHJcbiAgICAgICAgbGV0IGN1cnJlbnRGaWxsID0gMDtcclxuXHJcbiAgICAgICAgLy8gU2V0IHVwIHRoZSBmb2xsb3dpbmcgc3R5bGVzIGR1cmluZyB0aGUgVUkgY2FsY3VsYXRpb24gdG8gbWFrZSBzdXJlIHRoZSBodG1sIGVsZW1lbnQgZmxpY2tlcmluZyB3b24ndCBleGNlZWRcclxuICAgICAgICAvLyB0aGUgYWN0aW9uIGJhciBjb250YWluZXIuXHJcbiAgICAgICAgLy8gVGhlIGZvbGxvd2luZyBpbmxpbmUgc3R5bGVzIHdpbGwgYmUgcmVtb3ZlZCBhZnRlciB0aGUgVUkgY2FsY3VsYXRpb24gaXMgZG9uZS5cclxuICAgICAgICBjb25zdCBob3N0RWxlbWVudCA9IDxIVE1MRWxlbWVudD50aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShob3N0RWxlbWVudCwgJ292ZXJmbG93JywgYGhpZGRlbmApO1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuaXNBdHRhY2hlZCkge1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGhvc3RFbGVtZW50LCAncG9zaXRpb24nLCBgcmVsYXRpdmVgKTtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdvcGFjaXR5Jyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmRpc3BsYXllZEFjdGlvbnMgPSBbXTtcclxuICAgICAgICB0aGlzLnRyYXlBY3Rpb25zID0gW107XHJcblxyXG4gICAgICAgIGNvbnN0IHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShob3N0RWxlbWVudCk7XHJcbiAgICAgICAgY29uc3QgcGFkZGluZyA9IHBhcnNlSW50KHN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3BhZGRpbmctbGVmdCcpLCAxMCkgKyBwYXJzZUludChzdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKCdwYWRkaW5nLXJpZ2h0JyksIDEwKTtcclxuICAgICAgICBjb25zdCBjb250YWluZXJXaWR0aCA9ICh0aGlzLmlzQXR0YWNoZWQgPyBwYXJzZUludChzdHlsZS5tYXhXaWR0aCwgMTApIDogaG9zdEVsZW1lbnQub2Zmc2V0V2lkdGgpIC0gcGFkZGluZztcclxuXHJcbiAgICAgICAgLy8gRmlyc3RseSwgd2UgbmVlZCB0byBjYWxjdWxhdGUgdGhlIHRvdGFsIHdpZHRoIG9mIGFsbCBidXR0b25zIHdpdGhvdXQgXCJtb3JlXCIgYnV0dG9uLlxyXG4gICAgICAgIGxldCBidXR0b25zVG90YWxXaWR0aCA9IDA7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmFjdGlvbnMubGVuZ3RoOyArK2kpIHtcclxuICAgICAgICAgICAgY29uc3QgYWN0aW9uID0gdGhpcy5hY3Rpb25zW2ldO1xyXG4gICAgICAgICAgICAvLyBhc3N1bWUgaGlkZGVuIGFjdGlvbnMgaGF2ZSBhIDAgd2lkdGguIFdoZW4gdGhleSBhcmUgdW4taGlkZGVuLCB0aGVyZSB3aWR0aCB3aWxsIGNoYW5nZSBhbmQgdHJpZ2dlciBhbm90aGVyIHVwZGF0ZS5cclxuICAgICAgICAgICAgY29uc3QgYWN0aW9uV2lkdGggPSBhY3Rpb24uaGlkZGVuID8gMCA6IGFjdGlvbi53aWR0aCB8fCAwO1xyXG4gICAgICAgICAgICBidXR0b25zVG90YWxXaWR0aCArPSBhY3Rpb25XaWR0aDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChidXR0b25zVG90YWxXaWR0aCA8PSBjb250YWluZXJXaWR0aCkge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy5hY3Rpb25zLmxlbmd0aDsgKytpbmRleCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5ZWRBY3Rpb25zLnB1c2godGhpcy5hY3Rpb25zW2luZGV4XSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBJZiB0aGUgYnV0dG9ucyB0b3RhbCB3aWR0aCBleGNlZWRzIHRoZSBjb250YWluZXIgd2lkdGgsIHRoZW4gd2UgY2FsY3VsYXRlIHdoaWNoIGJ1dHRvbiBzaG91bGQgYmVcclxuICAgICAgICAgICAgLy8gZGlzcGxheWVkIGFuZCB3aGljaCBidXR0b24gc2hvdWxkIGJlIHB1dCBpbnRvIFwibW9yZVwiIGRyb3AtZG93bi5cclxuICAgICAgICAgICAgLy8gTm90ZTogdGhlIGF2YWlsYWJsZSBjb250YWluZXIgd2lkdGggc2hvdWxkIGJlIHRoZSBjb250YWluZXIgd2lkdGggLSBcIm1vcmVcIiBidXR0b24ncyB3aWR0aC5cclxuICAgICAgICAgICAgY29uc3QgdmlzaWJsZUJ1dHRvbkNvbnRhaW5lcldpZHRoID0gY29udGFpbmVyV2lkdGggLSB0aGlzLmRyb3BEb3duQnV0dG9uRWxlbWVudC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgdGhpcy5hY3Rpb25zLmxlbmd0aDsgKytpbmRleCkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgYWN0aW9uID0gdGhpcy5hY3Rpb25zW2luZGV4XTtcclxuICAgICAgICAgICAgICAgIC8vIGFzc3VtZSBoaWRkZW4gYWN0aW9ucyBoYXZlIGEgMCB3aWR0aC4gV2hlbiB0aGV5IGFyZSB1bi1oaWRkZW4sIHRoZXJlIHdpZHRoIHdpbGwgY2hhbmdlIGFuZCB0cmlnZ2VyIGFub3RoZXIgdXBkYXRlLlxyXG4gICAgICAgICAgICAgICAgY29uc3QgYWN0aW9uV2lkdGggPSBhY3Rpb24uaGlkZGVuID8gMCA6IGFjdGlvbi53aWR0aCB8fCAwO1xyXG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnRGaWxsICsgYWN0aW9uV2lkdGggPiB2aXNpYmxlQnV0dG9uQ29udGFpbmVyV2lkdGgpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRyYXlBY3Rpb25zLnB1c2goYWN0aW9uKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kaXNwbGF5ZWRBY3Rpb25zLnB1c2goYWN0aW9uKTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBjdXJyZW50RmlsbCArPSBhY3Rpb25XaWR0aDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZGlzcGxheWVkQWN0aW9ucy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5tb3JlQWN0aW9uc0Rpc3BsYXkgPSB0aGlzLnN0cmluZ3MuTXNmdFNtZVNoZWxsLkFuZ3VsYXIuQ29tbW9uLmFjdGlvbnM7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5tb3JlQWN0aW9uc0Rpc3BsYXkgPSB0aGlzLnN0cmluZ3MuTXNmdFNtZVNoZWxsLkFuZ3VsYXIuQ29tbW9uLm1vcmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBJZiBhbnkgYWN0aW9uIGJhciB3aWR0aCBpcyBOYU4sIHRoYXQgbWVhbnMgbm90IGFsbCB0aGUgYWN0aW9uLWJ1dHRvbnMgZmluaXNoZWQgcmVuZGVyaW5nIG9uIHRoZSBVSS5cclxuICAgICAgICAvLyBUaHVzIFwiY3VycmVudEZpbGxcIiBpcyBzdGlsbCBOYU4uIE90aGVyd2lzZSwgd2UgY29uc2lkZXIgYWxsIHRoZSBhY3Rpb24tYnV0dG9ucyBmaW5pc2ggcmVuZGVyaW5nLlxyXG4gICAgICAgIC8vIFRoZW4gaXQncyB0aW1lIHRvIHJlbW92ZSB0aGUgdGVtcG9yYXJ5IGlubGluZSBzdHlsZXMuXHJcbiAgICAgICAgaWYgKCEhY3VycmVudEZpbGwpIHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmlzQXR0YWNoZWQgJiYgKHRoaXMuc2hvdWxkU2hvdyB8fCB0aGlzLmhvdmVyZWQgfHwgdGhpcy5mb2N1c2VkKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShob3N0RWxlbWVudCwgJ292ZXJmbG93Jyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVTdHlsZShob3N0RWxlbWVudCwgJ3Bvc2l0aW9uJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBzb21lIGFjdGlvbiBpdGVtIHN0YXRlcyBkZXBlbmQgb24gd2hhdCBjb250YWluZXIgdGhleSByZXNpZGUgaW4uXHJcbiAgICAgICAgLy8gVHJheUFjdGlvbnMgd2lsbCBiZSB1cGRhdGVkIGJlY2F1c2UgdGhleSB3ZXJlIG1vdmVkIGludG8gdGhlIGFjdGlvbk1lbnUsXHJcbiAgICAgICAgLy8gaG93ZXZlciBkaXNwbGF5ZWQgYWN0aW9ucyBzaG91bGQgYmUgcmVzZXQgYXMgdGhleSBtYXkgaGF2ZSBtb3ZlZC5cclxuICAgICAgICBpZiAodGhpcy5kaXNwbGF5ZWRBY3Rpb25zICYmIHRoaXMuZGlzcGxheWVkQWN0aW9ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheWVkQWN0aW9ucy5mb3JFYWNoKGFjdGlvbiA9PiBhY3Rpb24uc2V0QWN0aW9uU3RhdGUodGhpcy50YXJnZXQsIHRoaXMpKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuYWN0aW9uc1VwZGF0ZWQuZW1pdCgpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgcm9sZT1cIm1lbnViYXJcIiBbYXR0ci5hcmlhLWxhYmVsXT1cImFjdGlvbnNBcmlhTGFiZWxcIiBjbGFzcz1cInNtZS1wb3NpdGlvbi1mbGV4LW5vbmUgc21lLWFycmFuZ2Utc3RhY2staFwiICNhY3Rpb25CYXJFbGVtZW50PlxyXG4gIDxzbWUtZHluYW1pYy1hY3Rpb24taXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBoaWRkZW5GaWx0ZXIoZGlzcGxheWVkQWN0aW9ucylcIiBbaXRlbV09XCJpdGVtXCIgKGl0ZW1DaGFuZ2VkKT1cIm9uQWN0aW9uSXRlbUNoYW5nZWQoKVwiXHJcbiAgICBjbGFzcz1cInNtZS1hcnJhbmdlLXN0YWNrLWggc21lLWFycmFuZ2Utc3RhY2stY2VudGVyZWQgc21lLWFycmFuZ2Utc3RhY2staW5saW5lXCJcclxuICAgIFtjbGFzcy5zbWUtYWN0aW9uLWJhci1pdGVtLW5vLXBhZGRpbmctdl09XCJoZWlnaHRPdmVyZmxvd1wiPjwvc21lLWR5bmFtaWMtYWN0aW9uLWl0ZW0+XHJcblxyXG4gIDxzbWUtZHJvcGRvd24gI2Ryb3BEb3duIHJvbGU9XCJwcmVzZW50YXRpb25cIiBjbGFzcz1cInNtZS1wb3NpdGlvbi1mbGV4LW5vbmVcIiBbY2xhc3Muc21lLWxheW91dC1oaWRkZW5dPVwiIWNvbXBhY3QgJiYgdHJheUFjdGlvbnMubGVuZ3RoID09PSAwXCJcclxuICAgIFtjbGFzcy5zbWUtbGF5b3V0LW5vbmVdPVwiY29tcGFjdCAmJiB0cmF5QWN0aW9ucy5sZW5ndGggPT09IDBcIj5cclxuICAgIDxidXR0b24gI2Ryb3BEb3duQnV0dG9uIHR5cGU9XCJidXR0b25cIiBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vcmVBY3Rpb25zRGlzcGxheVwiIHJvbGU9XCJtZW51aXRlbVwiIGNsYXNzPVwic21lLWJ1dHRvbi10cmlnZ2VyIHNtZS1sYXlvdXQtYWN0aW9uLWJhci1pdGVtLWhlaWdodCBzbWUtYnV0dG9uLWF1dG8td2lkdGggc21lLWRyb3Bkb3duLXRvZ2dsZVwiXHJcbiAgICAgIFtjbGFzcy5zbWUtdG9nZ2xlZF09XCJkcm9wRG93bi5pc09wZW5cIiBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImRyb3BEb3duLmlzT3BlblwiIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic21lLWljb24gc21lLWljb24tbW9yZVwiIFt0aXRsZV09XCJtb3JlQWN0aW9uc0Rpc3BsYXlcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwic21lLXNjcmVlbi1yZWFkZXJcIj57eyBtb3JlQWN0aW9uc0Rpc3BsYXkgfX08L3NwYW4+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxzbWUtYWN0aW9uLW1lbnUgW2FjdGlvbnNdPVwidHJheUFjdGlvbnNcIiByb2xlPVwibWVudVwiIGNsYXNzPVwic21lLWRyb3Bkb3duLWNvbnRlbnRcIiBbKHRhcmdldCldPVwidGFyZ2V0XCIgKGVycm9yKT1cImVycm9yLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAgIChleGVjdXRlZCk9XCJleGVjdXRlZC5lbWl0KCRldmVudClcIj48L3NtZS1hY3Rpb24tbWVudT5cclxuICA8L3NtZS1kcm9wZG93bj5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
455
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2NvbnRhaW5lcnMvYWN0aW9uLWJhci9hY3Rpb24tYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FuZ3VsYXIvc3JjL2NvbnRyb2xzL2FjdGlvbnMvY29udGFpbmVycy9hY3Rpb24tYmFyL2FjdGlvbi1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFFVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sUUFBUSxFQUNSLGVBQWUsRUFFZixRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUV2RixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFVLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFHekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7SUN2QnZFLG1EQUc0RDtJQUYxRCxnUEFBcUM7SUFFcUIsaUJBQTBCOzs7O0lBQXBGLHlFQUF5RDtJQUhrQiw4QkFBYTs7O0FEeUI1Rjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBOEJHO0FBTUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHdCQUF3QjtJQWdGNUQ7O09BRUc7SUFDSCxZQUFZLGVBQWdDLEVB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QUFtQixrR0FDMUYsc0JBQWtCLElBRHdFLHdHQUMxRCx5QkFBcUIsSUFEcUM7UUFDbkMsaUJBQWtCO1FBQ3RGLGlCQUFlO1FBQ2YsbUJBQXlCO1FBQzNCLGlCQUFNOzs7UUFyQmMsa0RBQW9DO1FBRVosZUFBaUM7UUFBakMsZ0VBQWlDO1FBTXpFLGVBQWdFO1FBQWhFLGlGQUFnRSxnRUFBQTtRQUk5RCxlQUFxQztRQUFyQyx5Q0FBcUM7UUFGRCxvREFBc0MsNkJBQUE7UUFJckMsZUFBNEI7UUFBNUIsOENBQTRCO1FBQ2pDLGVBQXdCO1FBQXhCLDRDQUF3QjtRQUV6QyxlQUF1QjtRQUF2Qix5Q0FBdUIsc0JBQUE7O3VGRDhDL0Isa0JBQWtCO2NBSjlCLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO2dCQUMxQixXQUFXLEVBQUUsNkJBQTZCO2FBQzdDOztzQkFxRlEsUUFBUTs7c0JBQUksTUFBTTt1QkFBQyxtQkFBbUI7K0NBbEJwQyxjQUFjO2tCQURwQixNQUFNO1lBT2dDLE9BQU87a0JBQTdDLFNBQVM7bUJBQUMsa0JBQWtCO1lBQ1EscUJBQXFCO2tCQUF6RCxTQUFTO21CQUFDLGdCQUFnQjtZQUtHLFFBQVE7a0JBQXJDLFNBQVM7bUJBQUMsVUFBVTtZQStEZCxZQUFZO2tCQUZsQixZQUFZO21CQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7a0JBQ2xDLFlBQVk7bUJBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBVzdCLGVBQWU7a0JBRHJCLFlBQVk7bUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO1lBMEI1QixZQUFZO2tCQUZsQixZQUFZO21CQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQzs7a0JBQ3JDLFlBQVk7bUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBV3RDLFFBQVE7a0JBRFAsWUFBWTttQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBEb0NoZWNrLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEhvc3RMaXN0ZW5lcixcclxuICAgIEluamVjdCxcclxuICAgIEluamVjdG9yLFxyXG4gICAgSXRlcmFibGVEaWZmZXJzLFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgT3B0aW9uYWwsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBSZW5kZXJlcjIsXHJcbiAgICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgS2V5Q29kZSB9IGZyb20gJ0BtaWNyb3NvZnQvd2luZG93cy1hZG1pbi1jZW50ZXItc2RrL2NvcmUvZGF0YS9hY2Nlc3NpYmlsaXR5LW1hbmFnZXInO1xyXG5pbXBvcnQgeyBMb2dnaW5nIH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9kaWFnbm9zdGljcy9sb2dnaW5nJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFN0cmluZ3MgfSBmcm9tICcuLi8uLi8uLi8uLi9nZW5lcmF0ZWQvc3RyaW5ncyc7XHJcbmltcG9ydCB7IExheW91dCwgU01FX0xBWU9VVF9QUk9WSURFUiB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9sYXlvdXQnO1xyXG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbkl0ZW0gfSBmcm9tICcuLi8uLi9pdGVtcy9hY3Rpb24taXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25Db250YWluZXJPcmllbnRhdGlvbiB9IGZyb20gJy4uL2FjdGlvbi1jb250YWluZXInO1xyXG5pbXBvcnQgeyBBY3Rpb25Db250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9hY3Rpb24tY29udGFpbmVyLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICpcclxuICogQHNtZURvYyB7QGxhYmVsIEFjdGlvbnMgQGlkIHNtZS1hY3Rpb25zfVxyXG4gKlxyXG4gKiBAb3ZlcnZpZXdcclxuICogQGZpbGUge0BmaWxlcGF0aCAuL2V4YW1wbGVzL292ZXJ2aWV3Lm1kfVxyXG4gKlxyXG4gKiBAZXhhbXBsZSB7QGxhYmVsIERlZmluZWQgYWN0aW9ucyBmcm9tIGNvbXBvbmVudCBAaWQgZGVmaW5lZC1hY3Rpb25zLWZyb20tY29tcG9uZW50fVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC5odG1sIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2RlZmluZWQtYWN0aW9ucy1mcm9tLWNvbXBvbmVudC5jb21wb25lbnQuaHRtbH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQudHMgQGZpbGVwYXRoIC4vZXhhbXBsZXMvYWN0aW9ucy1leGFtcGxlLmNvbXBvbmVudC50c31cclxuICpcclxuICogQGV4YW1wbGUge0BsYWJlbCBEZWZpbmVkIGFjdGlvbnMgZnJvbSBodG1sIEBpZCBkZWZpbmVkLWFjdGlvbnMtZnJvbS1odG1sfVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC5odG1sIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2RlZmluZWQtYWN0aW9ucy1mcm9tLWh0bWwuY29tcG9uZW50Lmh0bWx9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50LnRzIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2FjdGlvbnMtZXhhbXBsZS5jb21wb25lbnQudHN9XHJcbiAqXHJcbiAqIEBleGFtcGxlIHtAbGFiZWwgRGVmaW5lZCBhY3Rpb25zIGZyb20gYm90aCBAaWQgZGVmaW5lZC1hY3Rpb25zLWZyb20tYm90aH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQuaHRtbCBAZmlsZXBhdGggLi9leGFtcGxlcy9kZWZpbmVkLWFjdGlvbnMtZnJvbS1ib3RoLmNvbXBvbmVudC5odG1sfVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC50cyBAZmlsZXBhdGggLi9leGFtcGxlcy9hY3Rpb25zLWV4YW1wbGUuY29tcG9uZW50LnRzfVxyXG4gKlxyXG4gKiBAZXhhbXBsZSB7QGxhYmVsIEFsbCBidXR0b25zIGRpc2FibGVkIEBpZCBhbGwtYnV0dG9ucy1kaXNhYmxlZH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQuaHRtbCBAZmlsZXBhdGggLi9leGFtcGxlcy9hbGwtYnV0dG9ucy1kaXNhYmxlZC5jb21wb25lbnQuaHRtbH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQudHMgQGZpbGVwYXRoIC4vZXhhbXBsZXMvYWN0aW9ucy1leGFtcGxlLmNvbXBvbmVudC50c31cclxuICpcclxuICogQGV4YW1wbGUge0BsYWJlbCBNb2RlbCBkcml2ZW4gYWN0aW9uIGJhciBAaWQgbW9kZWwtZHJpdmVufVxyXG4gKiBAZmlsZSB7QGZpbGVuYW1lIGNvbXBvbmVudC5odG1sIEBmaWxlcGF0aCAuL2V4YW1wbGVzL21vZGVsLWRyaXZlbi5jb21wb25lbnQuaHRtbH1cclxuICogQGZpbGUge0BmaWxlbmFtZSBjb21wb25lbnQudHMgQGZpbGVwYXRoIC4vZXhhbXBsZXMvYWN0aW9ucy1leGFtcGxlLmNvbXBvbmVudC50c31cclxuICpcclxuICogQGV4YW1wbGUge0BsYWJlbCBDb250YWluZXIgZW1iZWRkZWQgYWN0aW9uIGJhciBAaWQgY29udGFpbmVyLWVtYmVkZGVkLWFjdGlvbi1iYXJ9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50Lmh0bWwgQGZpbGVwYXRoIC4vZXhhbXBsZXMvY29udGFpbmVyLWVtYmVkZGVkLWFjdGlvbi1iYXIuY29tcG9uZW50Lmh0bWx9XHJcbiAqIEBmaWxlIHtAZmlsZW5hbWUgY29tcG9uZW50LnRzIEBmaWxlcGF0aCAuL2V4YW1wbGVzL2FjdGlvbnMtZXhhbXBsZS5jb21wb25lbnQudHN9XHJcbiAqL1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NtZS1hY3Rpb24tYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tYmFyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uQmFyQ29tcG9uZW50IGV4dGVuZHMgQWN0aW9uQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgRG9DaGVjaywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICAgIHByb3RlY3RlZCBsb2dTb3VyY2VOYW1lOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHRoYXQgd2hlbiBzZXQgd2lsbCBkaXNwbGF5IG1pbmltYWwgVUkgZm9yIHRoZSBhY3Rpb24gYmFyLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IGNvbXBhY3QoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNDb21wYWN0O1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQXR0cmlidXRlIHRoYXQgc2V0cyB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG9yaWVudGF0aW9uIHdoZXJlIHZlcnRpY2FsIGRpc3BsYXlzIGFjdGlvbiBiYXIgZnJvbSB0b3AgdG8gYm90dG9tIG9mIHBhZ2VcclxuICAgICAqIGFuZCBob3Jpem9udGFsIGRpc3BsYXlzIGFjdGlvbiBiYXIgZnJvbSBsZWZ0IHRvIHJpZ2h0LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IG9yaWVudGF0aW9uKCk6IEFjdGlvbkNvbnRhaW5lck9yaWVudGF0aW9uIHtcclxuICAgICAgICByZXR1cm4gJ3ZlcnRpY2FsJztcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIExpc3Qgb2YgQWN0aW9uSXRlbSBvYmplY3RzIHRoYXQgd2Ugd2FudCB0byBwZXJmb3JtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZGlzcGxheWVkQWN0aW9uczogQWN0aW9uSXRlbVtdID0gW107XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMaXN0IG9mIEFjdGlvbkl0ZW0gb2JqZWN0cyB0aGF0IGFyZSBjb2xsYXBzZWQgaW50byBkcm9wZG93bi5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHRyYXlBY3Rpb25zOiBBY3Rpb25JdGVtW10gPSBbXTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRleHQgZGlzcGxheWVkIGZvciB0cmF5IGRyb3Bkb3duLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbW9yZUFjdGlvbnNEaXNwbGF5OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMYWJlbCBvbiBhY3Rpb24gbWVudSBmb3IgYWNjZXNzaWJpbGl0eS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGFjdGlvbnNBcmlhTGFiZWw6IHN0cmluZztcclxuXHJcbiAgICAvKipcclxuICAgICAqIEZsYWcgdG8gbWFrZSBzdXJlIGlmIHRoZSBoZWlnaHQgb2YgdGhlIGJhciBpcyBjdXJyZW50bHkgZ3JlYXRlciB0aGFuIHRoZSBhdmFpbGFibGUgaGVpZ2h0IG9mIHRoZSB0YXJnZXQsXHJcbiAgICAgKiB0aGVuIHRoZSBpdGVtcyBhcmUgYWRqdXN0ZWQgYWNjb3JkaW5nbHkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBoZWlnaHRPdmVyZmxvdzogYm9vbGVhbjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEJ1dHRvbiBlbGVtZW50IGZvciB0cmF5IGRyb3Bkb3duLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbW9yZUJ1dHRvbkVsZW1lbnQ6IEhUTUxFbGVtZW50O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogTG9jYWxpemVkIHNldCBvZiBzdHJpbmdzLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RyaW5ncyA9IE1zZnRTbWUuZ2V0U3RyaW5nczxTdHJpbmdzPigpO1xyXG4gICAgcHJpdmF0ZSBpc0NvbXBhY3QgPSBmYWxzZTtcclxuICAgIHByaXZhdGUgaG92ZXJlZCA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBmb2N1c2VkID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIGF0dGFjaGVkVG86IEhUTUxFbGVtZW50O1xyXG4gICAgcHJpdmF0ZSBzaG91bGRTaG93ID0gdHJ1ZTtcclxuICAgIHByaXZhdGUgaXNWaXNpYmxlID0gdHJ1ZTtcclxuICAgIHByaXZhdGUgbGF5b3V0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXZlbnQgZmlyZWQgd2hlbiBsaXN0IG9mIEFjdGlvbkl0ZW1zIGNoYW5nZXMuXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgcHVibGljIGFjdGlvbnNVcGRhdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gICAgcHJpdmF0ZSBnZXQgaXNBdHRhY2hlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIU1zZnRTbWUuaXNOdWxsT3JVbmRlZmluZWQodGhpcy5hdHRhY2hlZFRvKTtcclxuICAgIH1cclxuXHJcbiAgICBAVmlld0NoaWxkKCdhY3Rpb25CYXJFbGVtZW50JykgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmO1xyXG4gICAgQFZpZXdDaGlsZCgnZHJvcERvd25CdXR0b24nKSBwcml2YXRlIGRyb3BEb3duQnV0dG9uRWxlbWVudDogRWxlbWVudFJlZjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIERyb3Bkb3duQ29tcG9uZW50IGVsZW1lbnQgZm9yIGFjdGlvbiB0cmF5LlxyXG4gICAgICovXHJcbiAgICBAVmlld0NoaWxkKCdkcm9wRG93bicpIHB1YmxpYyBkcm9wRG93bjogRHJvcGRvd25Db21wb25lbnQ7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb25zdHJ1Y3RvciBmb3IgdGhlIEFjdGlvbkJhckNvbXBvbmVudC5cclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoaXRlcmFibGVEaWZmZXJzOiBJdGVyYWJsZURpZmZlcnMsIHB1YmxpYyByZW5kZXJlcjogUmVuZGVyZXIyLCBwdWJsaWMgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChTTUVfTEFZT1VUX1BST1ZJREVSKSBwcml2YXRlIGxheW91dDogTGF5b3V0LCBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgICAgICBzdXBlcihpdGVyYWJsZURpZmZlcnMsIGluamVjdG9yKTtcclxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bWF4LWxpbmUtbGVuZ3RoXHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1wb3NpdGlvbi1zdHJldGNoLWgnKTtcclxuICAgICAgICByZW5kZXJlci5hZGRDbGFzcyhob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLWxheW91dC1hY3Rpb24tYmFyJyk7XHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1hcnJhbmdlLXN0YWNrLWgnKTtcclxuICAgICAgICByZW5kZXJlci5hZGRDbGFzcyhob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLWFycmFuZ2Utd3Mtbm93cmFwJyk7XHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1hcnJhbmdlLW92ZXJmbG93LXNob3cnKTtcclxuICAgICAgICByZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdvcGFjaXR5JywgMCk7XHJcbiAgICAgICAgdGhpcy5tb3JlQWN0aW9uc0Rpc3BsYXkgPSB0aGlzLnN0cmluZ3MuTXNmdFNtZVNoZWxsLkFuZ3VsYXIuQ29tbW9uLm1vcmU7XHJcbiAgICAgICAgdGhpcy5hY3Rpb25zQXJpYUxhYmVsID0gdGhpcy5zdHJpbmdzLk1zZnRTbWVTaGVsbC5Bbmd1bGFyLkNvbW1vbi5hY3Rpb25zO1xyXG5cclxuICAgICAgICBpZiAobGF5b3V0KSB7XHJcbiAgICAgICAgICAgIHRoaXMubGF5b3V0U3Vic2NyaXB0aW9uID0gdGhpcy5sYXlvdXQubGF5b3V0Q2hhbmdlZC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbkxheW91dENoYW5nZWQoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmlsdGVycyBvdXQgQWN0aW9uSXRlbSBvYmplY3RzIHRvIGJlIGhpZGRlbi5cclxuICAgICAqIEBwYXJhbSBpdGVtcyBBY3Rpb25JdGVtIG9iamVjdHMgdG8gY2hlY2suXHJcbiAgICAgKiBAcmV0dXJucyBMaXN0IG9mIHVuaGlkZGVuIEFjdGlvbkl0ZW0gb2JqZWN0cy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGhpZGRlbkZpbHRlcihpdGVtczogQWN0aW9uSXRlbVtdKTogQWN0aW9uSXRlbVtdIHtcclxuICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKGl0ZW0gPT4gIWl0ZW0uaGlkZGVuKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENhbGxiYWNrIHRyaWdnZXJlZCBhZnRlciB2aWV3IGluaXRpYWxpemVzLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUFjdGlvbkJhcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2FsbGJhY2sgdHJpZ2dlcmVkIGFmdGVyIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gICAgICAgIHRoaXMubGF5b3V0U3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDYWxsYmFjayB0cmlnZ2VyZWQgd2hlbiBjb21wb25lbnQgbGF5b3V0IGNoYW5nZXMuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBvbkxheW91dENoYW5nZWQoKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQWN0aW9uQmFyKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIb3N0IGxpc3RlbmVycyBmb3IgZm9jdXMgZXZlbnRzLlxyXG4gICAgICovXHJcbiAgICBASG9zdExpc3RlbmVyKCdmb2N1c2luJywgWyckZXZlbnQnXSlcclxuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgWyckZXZlbnQnXSlcclxuICAgIHB1YmxpYyBvbkZvY3VzRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgLy8gb24gZm9jdXMgaW4vb3V0IGNoYW5nZSBmb2N1c2VkIHN0YXRlXHJcbiAgICAgICAgdGhpcy5mb2N1c2VkID0gZXZlbnQudHlwZSA9PT0gJ2ZvY3VzaW4nIHx8ICh0aGlzLmZvY3VzZWQgJiYgZXZlbnQudHlwZSAhPT0gJ2ZvY3Vzb3V0Jyk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVIZWlnaHQoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEhvc3QgbGlzdGVuZXJzIGZvciBrZXlib2FyZCBldmVudHMuXHJcbiAgICAgKi9cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxyXG4gICAgcHVibGljIG9uVG9nZ2xlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIC8vIGFjY2Vzc2liaWxpdHksIHRha2UgZm9jdXMgdG8gdGhlIG1vcmUgYnV0dG9uIGFmdGVyIGEgc2VsZWN0aW9uIGluIGRyb3Bkb3duIGVsZW1lbnRzLlxyXG4gICAgICAgIHN3aXRjaCAoZXZlbnQua2V5Q29kZSkge1xyXG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuRW50ZXI6IHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRyb3BEb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMubW9yZUJ1dHRvbkVsZW1lbnQgJiYgdGhpcy5kcm9wRG93bi5pc09wZW4gJiYgdGhpcy5kcm9wRG93bi5jb250ZW50RWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vcmVCdXR0b25FbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wRG93bi5vblRvZ2dsZWQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUob3BlbiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAob3Blbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubW9yZUJ1dHRvbkVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+ZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIb3N0IGxpc3RlbmVycyBmb3IgbW91c2UgZXZlbnRzLlxyXG4gICAgICovXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJywgWyckZXZlbnQnXSlcclxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBbJyRldmVudCddKVxyXG4gICAgcHVibGljIG9uTW91c2VFdmVudChldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgICAgICAvLyBvbiBtb3VzZSBlbnRlci9sZWF2ZSBjaGFuZ2UgaG92ZXJlZCBzdGF0ZVxyXG4gICAgICAgIHRoaXMuaG92ZXJlZCA9IGV2ZW50LnR5cGUgPT09ICdtb3VzZWVudGVyJyB8fCAodGhpcy5ob3ZlcmVkICYmIGV2ZW50LnR5cGUgIT09ICdtb3VzZWxlYXZlJyk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVIZWlnaHQoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEhvc3QgbGlzdGVuZXIgZm9yIHBhZ2UgcmVzaXplIGV2ZW50LlxyXG4gICAgICovXHJcbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJylcclxuICAgIG9uUmVzaXplKCkge1xyXG4gICAgICAgIHRoaXMudXBkYXRlQWN0aW9uQmFyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDYWxsYmFjayB0cmlnZ2VyZWQgYWZ0ZXIgY2hpbGQgQWN0aW9uSXRlbSBjaGFuZ2VzLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgb25BY3Rpb25JdGVtQ2hhbmdlZCgpIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVBY3Rpb25CYXIoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHVwZGF0ZUhlaWdodCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5pc0F0dGFjaGVkKSB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSAmJiAodGhpcy5zaG91bGRTaG93IHx8IHRoaXMuZm9jdXNlZCB8fCB0aGlzLmhvdmVyZWQpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ292ZXJmbG93Jyk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1hbmltYXRpb24tZmFkZS1vdXQteHMnKTtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLWFuaW1hdGlvbi1mYWRlLWluLXhzJyk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknLCAwKTtcclxuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnb3ZlcmZsb3cnLCAnaGlkZGVuJyk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1hbmltYXRpb24tZmFkZS1vdXQteHMnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCB0byBzZXQgdmlzaWJpbGl0eSBmb3IgQWN0aW9uQmFyQ29tcG9uZW50LlxyXG4gICAgICogQHBhcmFtIGlzVmlzaWJsZSBUcnVlIGZvciB2aXNpYmxlLCBmYWxzZSBmb3Igbm90LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc2V0VmlzaWJpbGl0eShpc1Zpc2libGU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IGlzVmlzaWJsZTtcclxuICAgICAgICB0aGlzLnVwZGF0ZUhlaWdodCgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTWV0aG9kIHRvIHNldCB2aXNpYmlsaXR5IGZvciBBY3Rpb25CYXJDb21wb25lbnQuXHJcbiAgICAgKiBAcGFyYW0gc2hvdWxkU2hvdyBUcnVlIGZvciBzaG93aW5nLCBmYWxzZSBmb3Igbm90LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc2hvd0hpZGUoc2hvdWxkU2hvdzogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2hvdWxkU2hvdyA9IHNob3VsZFNob3c7XHJcbiAgICAgICAgdGhpcy51cGRhdGVIZWlnaHQoKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlcG9zaXRpb25zIGdpdmVuIEhUTUxFbGVtZW50IHRvIGJlIHJlbGF0aXZlIHRvIGl0cyBzaWJsaW5nIGVsZW1lbnQuXHJcbiAgICAgKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHRvIHJlcG9zaXRpb24uXHJcbiAgICAgKiBAcGFyYW0gY29tcGFjdCBCb29sZWFuIGZsYWcgdG8gc2V0IHdoZXRoZXIgb3Igbm90IEFjdGlvbkJhckNvbXBvbmVudCBzaG91bGQgYmUgY29tcGFjdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlcG9zaXRpb25SZWxhdGl2ZVRvKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBjb21wYWN0OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKE1zZnRTbWUuaXNOdWxsT3JVbmRlZmluZWQoZWxlbWVudC5vZmZzZXRQYXJlbnQpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBpc1NpYmxpbmcgPSBmYWxzZTtcclxuICAgICAgICBjb25zdCBzaWJsaW5ncyA9IGVsZW1lbnQucGFyZW50RWxlbWVudC5jaGlsZHJlbjtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNpYmxpbmdzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNpYmxpbmcgPSBzaWJsaW5ncy5pdGVtKGkpO1xyXG4gICAgICAgICAgICBpZiAoc2libGluZyA9PT0gdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICBpc1NpYmxpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFpc1NpYmxpbmcpIHtcclxuICAgICAgICAgICAgTG9nZ2luZy5sb2dFcnJvcignQWN0aW9uQmFyLnJlcG9zaXRpb25SZWxhdGl2ZVRvJywgJ0FjdGlvbkJhciBjYW4gb25seSBiZSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIGEgc2libGluZyBlbGVtZW50LicpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHdhc0F0dGFjaGVkID0gdGhpcy5pc0F0dGFjaGVkO1xyXG4gICAgICAgIHRoaXMuYXR0YWNoZWRUbyA9IGVsZW1lbnQ7XHJcblxyXG4gICAgICAgIGlmICghd2FzQXR0YWNoZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5zaG93SGlkZShmYWxzZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyB3aGVuIHBvc2l0aW9uaW5nIG9uIGFuIGVsZW1lbnQsIHVzZSBjb21wYWN0IHNldHRpbmdzIGlmIGRlc2lyZWRcclxuICAgICAgICB0aGlzLmlzQ29tcGFjdCA9IGNvbXBhY3Q7XHJcblxyXG4gICAgICAgIC8vIGNoYW5nZSBjbGFzc2VzIHRvIGFjY291bnQgZm9yIGRpZmZlcmVudCBwb3NpdGlvbmluZyBtZWNoYW5pc21cclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3Bvc2l0aW9uJyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtcG9zaXRpb24tc3RyZXRjaC1oJyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtbGF5b3V0LWFic29sdXRlJyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdzbWUtYmFja2dyb3VuZC1jb2xvci1iYXNlJyk7XHJcblxyXG4gICAgICAgIC8vIENhbGN1bGF0ZSBuZXcgcG9zaXRpb25cclxuICAgICAgICBjb25zdCBzdHlsZSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IG1hcmdpbiA9IHtcclxuICAgICAgICAgICAgdG9wOiBwYXJzZUludChzdHlsZS5tYXJnaW5Ub3AsIDEwKSxcclxuICAgICAgICAgICAgYm90dG9tOiBwYXJzZUludChzdHlsZS5tYXJnaW5Cb3R0b20sIDEwKSxcclxuICAgICAgICAgICAgbGVmdDogcGFyc2VJbnQoc3R5bGUubWFyZ2luTGVmdCwgMTApLFxyXG4gICAgICAgICAgICByaWdodDogcGFyc2VJbnQoc3R5bGUubWFyZ2luUmlnaHQsIDEwKVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3QgYm9yZGVyID0ge1xyXG4gICAgICAgICAgICB0b3A6IHBhcnNlSW50KHN0eWxlLmJvcmRlclRvcCwgMTApLFxyXG4gICAgICAgICAgICBib3R0b206IHBhcnNlSW50KHN0eWxlLmJvcmRlckJvdHRvbSwgMTApLFxyXG4gICAgICAgICAgICBsZWZ0OiBwYXJzZUludChzdHlsZS5ib3JkZXJMZWZ0LCAxMCksXHJcbiAgICAgICAgICAgIHJpZ2h0OiBwYXJzZUludChzdHlsZS5ib3JkZXJSaWdodCwgMTApXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zdCBhdmFpbGFibGVXaWR0aCA9IGVsZW1lbnQuY2xpZW50V2lkdGggLSBib3JkZXIubGVmdCAtIGJvcmRlci5yaWdodCAtIG1hcmdpbi5sZWZ0IC0gbWFyZ2luLnJpZ2h0O1xyXG4gICAgICAgIGNvbnN0IGF2YWlsYWJsZUhlaWdodCA9IGVsZW1lbnQuY2xpZW50SGVpZ2h0IC0gYm9yZGVyLmJvdHRvbSAtIG1hcmdpbi5ib3R0b207XHJcbiAgICAgICAgY29uc3Qgd2lkdGggPSBNYXRoLm1pbihNYXRoLm1heChhdmFpbGFibGVXaWR0aCAvIDIsIDMwMCksIGF2YWlsYWJsZVdpZHRoKTtcclxuICAgICAgICBjb25zdCByaWdodCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50LmNsaWVudFdpZHRoIC0gKGVsZW1lbnQub2Zmc2V0TGVmdCArIGVsZW1lbnQuY2xpZW50V2lkdGgpO1xyXG4gICAgICAgIGNvbnN0IHRvcCA9IGVsZW1lbnQub2Zmc2V0VG9wICsgYm9yZGVyLnRvcCArIG1hcmdpbi50b3A7XHJcblxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAncmlnaHQnLCBgJHtyaWdodH1weGApO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAndG9wJywgYCR7dG9wfXB4YCk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICd3aWR0aCcsIGB1bnNldGApO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnbWF4LXdpZHRoJywgYCR7d2lkdGh9cHhgKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ21heC1oZWlnaHQnLCBgJHthdmFpbGFibGVIZWlnaHR9cHhgKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2p1c3RpZnktY29udGVudCcsIGBmbGV4LWVuZGApO1xyXG5cclxuICAgICAgICAvLyBpZiB0aGUgaGVpZ2h0IG9mIHRoZSBiYXIgaXMgY3VycmVudGx5IGdyZWF0ZXIgdGhhbiB0aGUgYXZhaWxhYmxlIGhlaWdodCBvZiB0aGUgdGFyZ2V0LFxyXG4gICAgICAgIC8vIHRoZW4gbWFrZSBzdXJlIGRpc3BsYXllZCBpdGVtcyBhcmUgYWRqdXN0ZWQgYWNjb3JkaW5nbHlcclxuICAgICAgICB0aGlzLmhlaWdodE92ZXJmbG93ID0gcGFyc2VJbnQoc3R5bGUuaGVpZ2h0LCAxMCkgPiBhdmFpbGFibGVIZWlnaHQ7XHJcblxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUFjdGlvbkJhcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTWV0aG9kIHRvIHVwZGF0ZSBob3cgQWN0aW9uQmFyQ29tcG9uZW50IGlzIGRpc3BsYXllZC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHVwZGF0ZUFjdGlvbkJhcigpIHtcclxuICAgICAgICBsZXQgY3VycmVudEZpbGwgPSAwO1xyXG5cclxuICAgICAgICAvLyBTZXQgdXAgdGhlIGZvbGxvd2luZyBzdHlsZXMgZHVyaW5nIHRoZSBVSSBjYWxjdWxhdGlvbiB0byBtYWtlIHN1cmUgdGhlIGh0bWwgZWxlbWVudCBmbGlja2VyaW5nIHdvbid0IGV4Y2VlZFxyXG4gICAgICAgIC8vIHRoZSBhY3Rpb24gYmFyIGNvbnRhaW5lci5cclxuICAgICAgICAvLyBUaGUgZm9sbG93aW5nIGlubGluZSBzdHlsZXMgd2lsbCBiZSByZW1vdmVkIGFmdGVyIHRoZSBVSSBjYWxjdWxhdGlvbiBpcyBkb25lLlxyXG4gICAgICAgIGNvbnN0IGhvc3RFbGVtZW50ID0gPEhUTUxFbGVtZW50PnRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudDtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGhvc3RFbGVtZW50LCAnb3ZlcmZsb3cnLCBgaGlkZGVuYCk7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5pc0F0dGFjaGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoaG9zdEVsZW1lbnQsICdwb3NpdGlvbicsIGByZWxhdGl2ZWApO1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuZGlzcGxheWVkQWN0aW9ucyA9IFtdO1xyXG4gICAgICAgIHRoaXMudHJheUFjdGlvbnMgPSBbXTtcclxuXHJcbiAgICAgICAgY29uc3Qgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGhvc3RFbGVtZW50KTtcclxuICAgICAgICBjb25zdCBwYWRkaW5nID0gcGFyc2VJbnQoc3R5bGUuZ2V0UHJvcGVydHlWYWx1ZSgncGFkZGluZy1sZWZ0JyksIDEwKSArIHBhcnNlSW50KHN0eWxlLmdldFByb3BlcnR5VmFsdWUoJ3BhZGRpbmctcmlnaHQnKSwgMTApO1xyXG4gICAgICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gKHRoaXMuaXNBdHRhY2hlZCA/IHBhcnNlSW50KHN0eWxlLm1heFdpZHRoLCAxMCkgOiBob3N0RWxlbWVudC5vZmZzZXRXaWR0aCkgLSBwYWRkaW5nO1xyXG5cclxuICAgICAgICAvLyBGaXJzdGx5LCB3ZSBuZWVkIHRvIGNhbGN1bGF0ZSB0aGUgdG90YWwgd2lkdGggb2YgYWxsIGJ1dHRvbnMgd2l0aG91dCBcIm1vcmVcIiBidXR0b24uXHJcbiAgICAgICAgbGV0IGJ1dHRvbnNUb3RhbFdpZHRoID0gMDtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuYWN0aW9ucy5sZW5ndGg7ICsraSkge1xyXG4gICAgICAgICAgICBjb25zdCBhY3Rpb24gPSB0aGlzLmFjdGlvbnNbaV07XHJcbiAgICAgICAgICAgIC8vIGFzc3VtZSBoaWRkZW4gYWN0aW9ucyBoYXZlIGEgMCB3aWR0aC4gV2hlbiB0aGV5IGFyZSB1bi1oaWRkZW4sIHRoZXJlIHdpZHRoIHdpbGwgY2hhbmdlIGFuZCB0cmlnZ2VyIGFub3RoZXIgdXBkYXRlLlxyXG4gICAgICAgICAgICBjb25zdCBhY3Rpb25XaWR0aCA9IGFjdGlvbi5oaWRkZW4gPyAwIDogYWN0aW9uLndpZHRoIHx8IDA7XHJcbiAgICAgICAgICAgIGJ1dHRvbnNUb3RhbFdpZHRoICs9IGFjdGlvbldpZHRoO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGJ1dHRvbnNUb3RhbFdpZHRoIDw9IGNvbnRhaW5lcldpZHRoKSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmFjdGlvbnMubGVuZ3RoOyArK2luZGV4KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXllZEFjdGlvbnMucHVzaCh0aGlzLmFjdGlvbnNbaW5kZXhdKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIElmIHRoZSBidXR0b25zIHRvdGFsIHdpZHRoIGV4Y2VlZHMgdGhlIGNvbnRhaW5lciB3aWR0aCwgdGhlbiB3ZSBjYWxjdWxhdGUgd2hpY2ggYnV0dG9uIHNob3VsZCBiZVxyXG4gICAgICAgICAgICAvLyBkaXNwbGF5ZWQgYW5kIHdoaWNoIGJ1dHRvbiBzaG91bGQgYmUgcHV0IGludG8gXCJtb3JlXCIgZHJvcC1kb3duLlxyXG4gICAgICAgICAgICAvLyBOb3RlOiB0aGUgYXZhaWxhYmxlIGNvbnRhaW5lciB3aWR0aCBzaG91bGQgYmUgdGhlIGNvbnRhaW5lciB3aWR0aCAtIFwibW9yZVwiIGJ1dHRvbidzIHdpZHRoLlxyXG4gICAgICAgICAgICBjb25zdCB2aXNpYmxlQnV0dG9uQ29udGFpbmVyV2lkdGggPSBjb250YWluZXJXaWR0aCAtIHRoaXMuZHJvcERvd25CdXR0b25FbGVtZW50Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCB0aGlzLmFjdGlvbnMubGVuZ3RoOyArK2luZGV4KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBhY3Rpb24gPSB0aGlzLmFjdGlvbnNbaW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgLy8gYXNzdW1lIGhpZGRlbiBhY3Rpb25zIGhhdmUgYSAwIHdpZHRoLiBXaGVuIHRoZXkgYXJlIHVuLWhpZGRlbiwgdGhlcmUgd2lkdGggd2lsbCBjaGFuZ2UgYW5kIHRyaWdnZXIgYW5vdGhlciB1cGRhdGUuXHJcbiAgICAgICAgICAgICAgICBjb25zdCBhY3Rpb25XaWR0aCA9IGFjdGlvbi5oaWRkZW4gPyAwIDogYWN0aW9uLndpZHRoIHx8IDA7XHJcbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudEZpbGwgKyBhY3Rpb25XaWR0aCA+IHZpc2libGVCdXR0b25Db250YWluZXJXaWR0aCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudHJheUFjdGlvbnMucHVzaChhY3Rpb24pO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRpc3BsYXllZEFjdGlvbnMucHVzaChhY3Rpb24pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGN1cnJlbnRGaWxsICs9IGFjdGlvbldpZHRoO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5kaXNwbGF5ZWRBY3Rpb25zLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLm1vcmVBY3Rpb25zRGlzcGxheSA9IHRoaXMuc3RyaW5ncy5Nc2Z0U21lU2hlbGwuQW5ndWxhci5Db21tb24uYWN0aW9ucztcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLm1vcmVBY3Rpb25zRGlzcGxheSA9IHRoaXMuc3RyaW5ncy5Nc2Z0U21lU2hlbGwuQW5ndWxhci5Db21tb24ubW9yZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIElmIGFueSBhY3Rpb24gYmFyIHdpZHRoIGlzIE5hTiwgdGhhdCBtZWFucyBub3QgYWxsIHRoZSBhY3Rpb24tYnV0dG9ucyBmaW5pc2hlZCByZW5kZXJpbmcgb24gdGhlIFVJLlxyXG4gICAgICAgIC8vIFRodXMgXCJjdXJyZW50RmlsbFwiIGlzIHN0aWxsIE5hTi4gT3RoZXJ3aXNlLCB3ZSBjb25zaWRlciBhbGwgdGhlIGFjdGlvbi1idXR0b25zIGZpbmlzaCByZW5kZXJpbmcuXHJcbiAgICAgICAgLy8gVGhlbiBpdCdzIHRpbWUgdG8gcmVtb3ZlIHRoZSB0ZW1wb3JhcnkgaW5saW5lIHN0eWxlcy5cclxuICAgICAgICBpZiAoISFjdXJyZW50RmlsbCkge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMuaXNBdHRhY2hlZCAmJiAodGhpcy5zaG91bGRTaG93IHx8IHRoaXMuaG92ZXJlZCB8fCB0aGlzLmZvY3VzZWQpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKGhvc3RFbGVtZW50LCAnb3ZlcmZsb3cnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZVN0eWxlKGhvc3RFbGVtZW50LCAncG9zaXRpb24nKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIHNvbWUgYWN0aW9uIGl0ZW0gc3RhdGVzIGRlcGVuZCBvbiB3aGF0IGNvbnRhaW5lciB0aGV5IHJlc2lkZSBpbi5cclxuICAgICAgICAvLyBUcmF5QWN0aW9ucyB3aWxsIGJlIHVwZGF0ZWQgYmVjYXVzZSB0aGV5IHdlcmUgbW92ZWQgaW50byB0aGUgYWN0aW9uTWVudSxcclxuICAgICAgICAvLyBob3dldmVyIGRpc3BsYXllZCBhY3Rpb25zIHNob3VsZCBiZSByZXNldCBhcyB0aGV5IG1heSBoYXZlIG1vdmVkLlxyXG4gICAgICAgIGlmICh0aGlzLmRpc3BsYXllZEFjdGlvbnMgJiYgdGhpcy5kaXNwbGF5ZWRBY3Rpb25zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgdGhpcy5kaXNwbGF5ZWRBY3Rpb25zLmZvckVhY2goYWN0aW9uID0+IGFjdGlvbi5zZXRBY3Rpb25TdGF0ZSh0aGlzLnRhcmdldCwgdGhpcykpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hY3Rpb25zVXBkYXRlZC5lbWl0KCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiByb2xlPVwibWVudWJhclwiIFthdHRyLmFyaWEtbGFiZWxdPVwiYWN0aW9uc0FyaWFMYWJlbFwiIGNsYXNzPVwic21lLXBvc2l0aW9uLWZsZXgtbm9uZSBzbWUtYXJyYW5nZS1zdGFjay1oXCJcclxuICAjYWN0aW9uQmFyRWxlbWVudD5cclxuICA8c21lLWR5bmFtaWMtYWN0aW9uLWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgaGlkZGVuRmlsdGVyKGRpc3BsYXllZEFjdGlvbnMpXCIgW2l0ZW1dPVwiaXRlbVwiXHJcbiAgICAoaXRlbUNoYW5nZWQpPVwib25BY3Rpb25JdGVtQ2hhbmdlZCgpXCJcclxuICAgIGNsYXNzPVwic21lLWFycmFuZ2Utc3RhY2staCBzbWUtYXJyYW5nZS1zdGFjay1jZW50ZXJlZCBzbWUtYXJyYW5nZS1zdGFjay1pbmxpbmVcIlxyXG4gICAgW2NsYXNzLnNtZS1hY3Rpb24tYmFyLWl0ZW0tbm8tcGFkZGluZy12XT1cImhlaWdodE92ZXJmbG93XCI+PC9zbWUtZHluYW1pYy1hY3Rpb24taXRlbT5cclxuXHJcbiAgPHNtZS1kcm9wZG93biAjZHJvcERvd24gcm9sZT1cInByZXNlbnRhdGlvblwiIGNsYXNzPVwic21lLXBvc2l0aW9uLWZsZXgtbm9uZVwiXHJcbiAgICBbY2xhc3Muc21lLWxheW91dC1oaWRkZW5dPVwiIWNvbXBhY3QgJiYgdHJheUFjdGlvbnMubGVuZ3RoID09PSAwXCJcclxuICAgIFtjbGFzcy5zbWUtbGF5b3V0LW5vbmVdPVwiY29tcGFjdCAmJiB0cmF5QWN0aW9ucy5sZW5ndGggPT09IDBcIj5cclxuICAgIDxidXR0b24gI2Ryb3BEb3duQnV0dG9uIHR5cGU9XCJidXR0b25cIiBbYXR0ci5hcmlhLWxhYmVsXT1cIm1vcmVBY3Rpb25zRGlzcGxheVwiIHJvbGU9XCJtZW51aXRlbVwiXHJcbiAgICAgIGNsYXNzPVwic21lLWJ1dHRvbi10cmlnZ2VyIHNtZS1sYXlvdXQtYWN0aW9uLWJhci1pdGVtLWhlaWdodCBzbWUtYnV0dG9uLWF1dG8td2lkdGggc21lLWRyb3Bkb3duLXRvZ2dsZVwiXHJcbiAgICAgIFtjbGFzcy5zbWUtdG9nZ2xlZF09XCJkcm9wRG93bi5pc09wZW5cIiBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImRyb3BEb3duLmlzT3BlblwiIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCJcclxuICAgICAgZGF0YS11dGEtaWQ9XCJhY3Rpb24tYmFyLW1vcmVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJzbWUtaWNvbiBzbWUtaWNvbi1tb3JlXCIgW3RpdGxlXT1cIm1vcmVBY3Rpb25zRGlzcGxheVwiPjwvc3Bhbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJzbWUtc2NyZWVuLXJlYWRlclwiPnt7IG1vcmVBY3Rpb25zRGlzcGxheSB9fTwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHNtZS1hY3Rpb24tbWVudSBbYWN0aW9uc109XCJ0cmF5QWN0aW9uc1wiIHJvbGU9XCJtZW51XCIgY2xhc3M9XCJzbWUtZHJvcGRvd24tY29udGVudFwiIFsodGFyZ2V0KV09XCJ0YXJnZXRcIlxyXG4gICAgICAoZXJyb3IpPVwiZXJyb3IuZW1pdCgkZXZlbnQpXCIgKGV4ZWN1dGVkKT1cImV4ZWN1dGVkLmVtaXQoJGV2ZW50KVwiPjwvc21lLWFjdGlvbi1tZW51PlxyXG4gIDwvc21lLWRyb3Bkb3duPlxyXG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuPC9kaXY+XHJcbiJdfQ==
|
package/angular/esm2015/src/controls/actions/items/action-button/action-button-renderer.component.js
CHANGED
|
@@ -17,7 +17,7 @@ function ActionButtonRendererComponent_button_0_Template(rf, ctx) { if (rf & 1)
|
|
|
17
17
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
18
18
|
i0.ɵɵclassProp("sme-toggled", ctx_r0.ariaChecked);
|
|
19
19
|
i0.ɵɵproperty("smeDisabled", !ctx_r0.item.enabled || ctx_r0.item.busy || !ctx_r0.item.ready);
|
|
20
|
-
i0.ɵɵattribute("role", ctx_r0.ariaRole)("aria-checked", ctx_r0.ariaChecked);
|
|
20
|
+
i0.ɵɵattribute("role", ctx_r0.ariaRole)("aria-checked", ctx_r0.ariaChecked)("data-uta-id", ctx_r0.item.actionId);
|
|
21
21
|
i0.ɵɵadvance(1);
|
|
22
22
|
i0.ɵɵproperty("ngClass", ctx_r0.item.iconClass || "");
|
|
23
23
|
i0.ɵɵadvance(2);
|
|
@@ -33,7 +33,7 @@ function ActionButtonRendererComponent_button_1_Template(rf, ctx) { if (rf & 1)
|
|
|
33
33
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
34
34
|
i0.ɵɵclassProp("sme-toggled", ctx_r1.ariaChecked);
|
|
35
35
|
i0.ɵɵproperty("smeDisabled", !ctx_r1.item.enabled || ctx_r1.item.busy || !ctx_r1.item.ready)("title", ctx_r1.item.text);
|
|
36
|
-
i0.ɵɵattribute("role", ctx_r1.ariaRole)("aria-checked", ctx_r1.ariaChecked)("aria-label", ctx_r1.item.text);
|
|
36
|
+
i0.ɵɵattribute("role", ctx_r1.ariaRole)("aria-checked", ctx_r1.ariaChecked)("data-uta-id", ctx_r1.item.actionId)("aria-label", ctx_r1.item.text);
|
|
37
37
|
i0.ɵɵadvance(1);
|
|
38
38
|
i0.ɵɵproperty("ngClass", ctx_r1.item.iconClass || "");
|
|
39
39
|
} }
|
|
@@ -93,8 +93,8 @@ export class ActionButtonRendererComponent extends ActionItemRendererComponent {
|
|
|
93
93
|
}
|
|
94
94
|
/** @nocollapse */ ActionButtonRendererComponent.ɵfac = function ActionButtonRendererComponent_Factory(t) { return new (t || ActionButtonRendererComponent)(i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef)); };
|
|
95
95
|
/** @nocollapse */ ActionButtonRendererComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ActionButtonRendererComponent, selectors: [["sme-action-button-renderer"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "sme-button-trigger sme-button-auto-width sme-button-align-left sme-position-stretch", "type", "button", 3, "sme-toggled", "smeDisabled", "click", 4, "ngIf"], ["class", "sme-button-trigger sme-button-auto-width sme-button-align-left sme-position-stretch", "type", "button", 3, "sme-toggled", "smeDisabled", "title", "click", 4, "ngIf"], ["type", "button", 1, "sme-button-trigger", "sme-button-auto-width", "sme-button-align-left", "sme-position-stretch", 3, "smeDisabled", "click"], ["aria-hidden", "true", 3, "ngClass"], ["type", "button", 1, "sme-button-trigger", "sme-button-auto-width", "sme-button-align-left", "sme-position-stretch", 3, "smeDisabled", "title", "click"]], template: function ActionButtonRendererComponent_Template(rf, ctx) { if (rf & 1) {
|
|
96
|
-
i0.ɵɵtemplate(0, ActionButtonRendererComponent_button_0_Template, 4,
|
|
97
|
-
i0.ɵɵtemplate(1, ActionButtonRendererComponent_button_1_Template, 2,
|
|
96
|
+
i0.ɵɵtemplate(0, ActionButtonRendererComponent_button_0_Template, 4, 8, "button", 0);
|
|
97
|
+
i0.ɵɵtemplate(1, ActionButtonRendererComponent_button_1_Template, 2, 9, "button", 1);
|
|
98
98
|
} if (rf & 2) {
|
|
99
99
|
i0.ɵɵproperty("ngIf", !(ctx.item.container == null ? null : ctx.item.container.compact));
|
|
100
100
|
i0.ɵɵadvance(1);
|
|
@@ -107,4 +107,4 @@ export class ActionButtonRendererComponent extends ActionItemRendererComponent {
|
|
|
107
107
|
templateUrl: './action-button-renderer.component.html'
|
|
108
108
|
}]
|
|
109
109
|
}], function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, null); })();
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJ1dHRvbi1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2l0ZW1zL2FjdGlvbi1idXR0b24vYWN0aW9uLWJ1dHRvbi1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2l0ZW1zL2FjdGlvbi1idXR0b24vYWN0aW9uLWJ1dHRvbi1yZW5kZXJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFXLFVBQVUsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7SUNEdkUsaUNBRzhGO0lBQTVGLGlNQUFtQjtJQUNuQiwwQkFBaUU7SUFDakUsNEJBQU07SUFBQSxZQUFhO0lBQUEsaUJBQU87SUFDNUIsaUJBQVM7OztJQUpQLGlEQUFpQztJQUNiLDRGQUF5RDtJQUh2RSx1Q0FBc0Isb0NBQUEscUNBQUE7SUFJdEIsZUFBZ0M7SUFBaEMscURBQWdDO0lBQ2hDLGVBQWE7SUFBYixzQ0FBYTs7OztJQUdyQixpQ0FJZ0M7SUFEOUIsaU1BQW1CO0lBRW5CLDBCQUFpRTtJQUNuRSxpQkFBUzs7O0lBSlAsaURBQWlDO0lBQ2IsNEZBQXlELDJCQUFBO0lBSHZFLHVDQUFzQixvQ0FBQSxxQ0FBQSxnQ0FBQTtJQUt0QixlQUFnQztJQUFoQyxxREFBZ0M7O0FETHhDLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSwyQkFBeUM7SUFnQnhGOztPQUVHO0lBQ0gsWUFBb0IsUUFBbUIsRUFBVSxXQUF1QjtRQUNwRSxLQUFLLEVBQUUsQ0FBQztRQURRLGFBQVEsR0FBUixRQUFRLENBQVc7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUVwRSxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBcEJEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQzVFLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsV0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3hELENBQUM7SUFVRDs7O09BR0c7SUFDSSxXQUFXLENBQUMsSUFBa0I7UUFDakMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxTQUFTO1FBQ1osTUFBTSxXQUFXLEdBQWlCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYyxDQUFDLFdBQVcsQ0FBQztRQUM5RSxJQUFJLFdBQVcsS0FBSyxDQUFDLEVBQUU7WUFDbkIsT0FBTztTQUNWO1FBRUQsMkZBQTJGO1FBQzNGLDBDQUEwQztRQUMxQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDeEIsTUFBTSxlQUFlLEdBQUcsV0FBVyxHQUFHLFlBQVksQ0FBQztRQUNuRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLGVBQWUsRUFBRTtZQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUM7U0FDckM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxPQUFPO1FBQ1YsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3ZEO0lBQ0wsQ0FBQzs7NkhBekRRLDZCQUE2QjtxRkFBN0IsNkJBQTZCO1FDUjFDLG9GQU1TO1FBRVQsb0ZBTVM7O1FBZHVCLHdGQUE4QjtRQVE5QixlQUE2QjtRQUE3QixxRkFBNkI7O3VGREFoRCw2QkFBNkI7Y0FKekMsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLFdBQVcsRUFBRSx5Q0FBeUM7YUFDekQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIERvQ2hlY2ssIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuLi9hY3Rpb24taXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25CdXR0b24gfSBmcm9tICcuL2FjdGlvbi1idXR0b24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NtZS1hY3Rpb24tYnV0dG9uLXJlbmRlcmVyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tYnV0dG9uLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uQnV0dG9uUmVuZGVyZXJDb21wb25lbnQgZXh0ZW5kcyBBY3Rpb25JdGVtUmVuZGVyZXJDb21wb25lbnQ8QWN0aW9uQnV0dG9uPiBpbXBsZW1lbnRzIERvQ2hlY2sge1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQXJpYSByb2xlIHNldCBvbiBhY3Rpb24gYnV0dG9uLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgZ2V0IGFyaWFSb2xlKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbSAmJiB0aGlzLml0ZW0udG9nZ2xlZCA/ICdtZW51aXRlbWNoZWNrYm94JyA6ICdtZW51aXRlbSc7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBcmlhIGNoZWNrZWQgZmxhZyBzZXQgb24gYWN0aW9uIGJ1dHRvbi5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldCBhcmlhQ2hlY2tlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pdGVtICYmIHRoaXMuaXRlbS50b2dnbGVkID8gdHJ1ZSA6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb25zdHJ1Y3RvciBmb3IgQWN0aW9uQnV0dG9uUmVuZGVyZXJDb21wb25lbnQuXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZikge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1wb3NpdGlvbi1zdHJldGNoJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNZXRob2QgY2FsbGVkIHRvIHJlZ2lzdGVyIGEgY2hhbmdlIHdpdGggdGhlIEFjdGlvbkJ1dHRvbi5cclxuICAgICAqIEBwYXJhbSBpdGVtIFRoZSBBY3Rpb25CdXR0b24gdG8gcmVnaXN0ZXIgY2hhbmdlIGZvci5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGl0ZW1DaGFuZ2VkKGl0ZW06IEFjdGlvbkJ1dHRvbikge1xyXG4gICAgICAgIHN1cGVyLml0ZW1DaGFuZ2VkKGl0ZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2FsbGJhY2sgbWV0aG9kIHJ1biBhZnRlciB0aGUgZGVmYXVsdCBjaGFuZ2UtZGV0ZWN0b3IgZXhlY3V0ZXMuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBuZ0RvQ2hlY2soKSB7XHJcbiAgICAgICAgY29uc3Qgb2Zmc2V0V2lkdGggPSAoPEhUTUxFbGVtZW50PnRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCkub2Zmc2V0V2lkdGg7XHJcbiAgICAgICAgaWYgKG9mZnNldFdpZHRoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEl0IGxvb2tzIGxpa2UgdGhlIENTUyBpY29uIGlzbid0IGJlaW5nIGluY2x1ZGVkIGluIHRoZSBvZmZzZXRXaWR0aCwgbm9yIHRoZSBjbGllbnRXaWR0aC5cclxuICAgICAgICAvLyBBZGRpbmcgaGVyZSBmb3Igc2ltcGxpY2l0eSBhbmQgY2xhcml0eS5cclxuICAgICAgICBjb25zdCBjc3NJY29uV2lkdGggPSAxNDtcclxuICAgICAgICBjb25zdCBjYWxjdWxhdGVkV2lkdGggPSBvZmZzZXRXaWR0aCArIGNzc0ljb25XaWR0aDtcclxuICAgICAgICBpZiAodGhpcy5pdGVtLndpZHRoICE9PSBjYWxjdWxhdGVkV2lkdGgpIHtcclxuICAgICAgICAgICAgdGhpcy5pdGVtLndpZHRoID0gY2FsY3VsYXRlZFdpZHRoO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCBjYWxsZWQgd2hlbiBhY3Rpb24gYnV0dG9uIGlzIGNsaWNrZWQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBleGVjdXRlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLml0ZW0uZXhlY3V0ZSkge1xyXG4gICAgICAgICAgICB0aGlzLml0ZW0uZXhlY3V0ZS5jYWxsKHRoaXMuaXRlbSwgdGhpcy5pdGVtLnRhcmdldCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxidXR0b24gW2F0dHIucm9sZV09XCJhcmlhUm9sZVwiICpuZ0lmPVwiIWl0ZW0uY29udGFpbmVyPy5jb21wYWN0XCJcclxuICBjbGFzcz1cInNtZS1idXR0b24tdHJpZ2dlciBzbWUtYnV0dG9uLWF1dG8td2lkdGggc21lLWJ1dHRvbi1hbGlnbi1sZWZ0IHNtZS1wb3NpdGlvbi1zdHJldGNoXCJcclxuICBbY2xhc3Muc21lLXRvZ2dsZWRdPVwiYXJpYUNoZWNrZWRcIiBbYXR0ci5hcmlhLWNoZWNrZWRdPVwiYXJpYUNoZWNrZWRcIiBbYXR0ci5kYXRhLXV0YS1pZF09XCJpdGVtLmFjdGlvbklkXCJcclxuICAoY2xpY2spPVwiZXhlY3V0ZSgpXCIgW3NtZURpc2FibGVkXT1cIiFpdGVtLmVuYWJsZWQgfHwgaXRlbS5idXN5IHx8ICFpdGVtLnJlYWR5XCIgdHlwZT1cImJ1dHRvblwiPlxyXG4gIDxzcGFuIFtuZ0NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzIHx8ICcnXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9zcGFuPlxyXG4gIDxzcGFuPnt7aXRlbS50ZXh0fX08L3NwYW4+XHJcbjwvYnV0dG9uPlxyXG5cclxuPGJ1dHRvbiBbYXR0ci5yb2xlXT1cImFyaWFSb2xlXCIgKm5nSWY9XCJpdGVtLmNvbnRhaW5lcj8uY29tcGFjdFwiXHJcbiAgY2xhc3M9XCJzbWUtYnV0dG9uLXRyaWdnZXIgc21lLWJ1dHRvbi1hdXRvLXdpZHRoIHNtZS1idXR0b24tYWxpZ24tbGVmdCBzbWUtcG9zaXRpb24tc3RyZXRjaFwiXHJcbiAgW2NsYXNzLnNtZS10b2dnbGVkXT1cImFyaWFDaGVja2VkXCIgW2F0dHIuYXJpYS1jaGVja2VkXT1cImFyaWFDaGVja2VkXCIgW2F0dHIuZGF0YS11dGEtaWRdPVwiaXRlbS5hY3Rpb25JZFwiXHJcbiAgKGNsaWNrKT1cImV4ZWN1dGUoKVwiIFtzbWVEaXNhYmxlZF09XCIhaXRlbS5lbmFibGVkIHx8IGl0ZW0uYnVzeSB8fCAhaXRlbS5yZWFkeVwiIHR5cGU9XCJidXR0b25cIiBbdGl0bGVdPVwiaXRlbS50ZXh0XCJcclxuICBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0udGV4dFwiPlxyXG4gIDxzcGFuIFtuZ0NsYXNzXT1cIml0ZW0uaWNvbkNsYXNzIHx8ICcnXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9zcGFuPlxyXG48L2J1dHRvbj5cclxuIl19
|
package/angular/esm2015/src/controls/actions/items/action-dropdown/action-dropdown.component.js
CHANGED
|
@@ -7,11 +7,20 @@ import * as i0 from "@angular/core";
|
|
|
7
7
|
import * as i1 from "../../containers/action-bar/action-bar.component";
|
|
8
8
|
const _c0 = ["dropDown"];
|
|
9
9
|
const _c1 = ["dropDownButton"];
|
|
10
|
-
function
|
|
11
|
-
i0.ɵɵ
|
|
10
|
+
function ActionDropdownRendererComponent_p_4_Template(rf, ctx) { if (rf & 1) {
|
|
11
|
+
i0.ɵɵelementStart(0, "p", 9);
|
|
12
|
+
i0.ɵɵtext(1);
|
|
13
|
+
i0.ɵɵelementEnd();
|
|
14
|
+
} if (rf & 2) {
|
|
15
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
16
|
+
i0.ɵɵadvance(1);
|
|
17
|
+
i0.ɵɵtextInterpolate(ctx_r2.actionTitle);
|
|
12
18
|
} }
|
|
13
19
|
function ActionDropdownRendererComponent_span_8_Template(rf, ctx) { if (rf & 1) {
|
|
14
|
-
i0.ɵɵelement(0, "span",
|
|
20
|
+
i0.ɵɵelement(0, "span", 10);
|
|
21
|
+
} }
|
|
22
|
+
function ActionDropdownRendererComponent_span_9_Template(rf, ctx) { if (rf & 1) {
|
|
23
|
+
i0.ɵɵelement(0, "span", 11);
|
|
15
24
|
} }
|
|
16
25
|
const _c2 = ["action"];
|
|
17
26
|
export class ActionDropdown extends ActionItem {
|
|
@@ -33,6 +42,12 @@ export class ActionDropdownRendererComponent extends ActionItemRendererComponent
|
|
|
33
42
|
this.isHovering = false;
|
|
34
43
|
renderer.addClass(hostElement.nativeElement, 'sme-position-stretch');
|
|
35
44
|
}
|
|
45
|
+
get actionTitle() {
|
|
46
|
+
return this.item.name && this.item.name !== this.item.text ? this.item.name : null;
|
|
47
|
+
}
|
|
48
|
+
get actionDropdownId() {
|
|
49
|
+
return this.item.actionId;
|
|
50
|
+
}
|
|
36
51
|
/**
|
|
37
52
|
* Method called to register a change with the ActionButton.
|
|
38
53
|
* @param item The ActionButton to register change for.
|
|
@@ -106,18 +121,19 @@ ActionDropdownRendererComponent.hoverTimeToActivate = 500;
|
|
|
106
121
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dropDownButtonElement = _t.first);
|
|
107
122
|
} }, hostBindings: function ActionDropdownRendererComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
108
123
|
i0.ɵɵlistener("keydown", function ActionDropdownRendererComponent_keydown_HostBindingHandler($event) { return ctx.onToggleKeydown($event); })("mouseenter", function ActionDropdownRendererComponent_mouseenter_HostBindingHandler($event) { return ctx.onMouseEvent($event); })("mouseleave", function ActionDropdownRendererComponent_mouseleave_HostBindingHandler($event) { return ctx.onMouseEvent($event); });
|
|
109
|
-
} }, features: [i0.ɵɵInheritDefinitionFeature], decls:
|
|
124
|
+
} }, features: [i0.ɵɵInheritDefinitionFeature], decls: 11, vars: 16, consts: [["role", "presentation", 1, "sme-position-flex-none", 3, "displayToSide"], ["dropDown", ""], ["role", "menuitem", "type", "button", "aria-haspopup", "true", 1, "sme-button-trigger", "sme-layout-action-bar-item-height", "sme-button-auto-width", "sme-button-align-left", "sme-position-stretch-h", "sme-dropdown-toggle", 3, "smeDisabled", "title"], ["dropDownButton", ""], ["class", "sme-screen-reader", 4, "ngIf"], [3, "ngClass"], ["class", "sme-icon sme-icon-size-xxs sme-icon-chevronDown sme-margin-left-xs", 4, "ngIf"], ["class", "sme-icon sme-icon-size-xxs sme-icon-chevronRight sme-position-right-inline", 4, "ngIf"], ["role", "menu", 1, "sme-dropdown-content", 3, "actions", "target", "targetChange", "error", "executed"], [1, "sme-screen-reader"], [1, "sme-icon", "sme-icon-size-xxs", "sme-icon-chevronDown", "sme-margin-left-xs"], [1, "sme-icon", "sme-icon-size-xxs", "sme-icon-chevronRight", "sme-position-right-inline"]], template: function ActionDropdownRendererComponent_Template(rf, ctx) { if (rf & 1) {
|
|
110
125
|
i0.ɵɵelementStart(0, "sme-dropdown", 0, 1);
|
|
111
126
|
i0.ɵɵelementStart(2, "button", 2, 3);
|
|
112
|
-
i0.ɵɵ
|
|
113
|
-
i0.ɵɵ
|
|
114
|
-
i0.ɵɵ
|
|
127
|
+
i0.ɵɵtemplate(4, ActionDropdownRendererComponent_p_4_Template, 2, 1, "p", 4);
|
|
128
|
+
i0.ɵɵelement(5, "span", 5);
|
|
129
|
+
i0.ɵɵelementStart(6, "span");
|
|
130
|
+
i0.ɵɵtext(7);
|
|
115
131
|
i0.ɵɵelementEnd();
|
|
116
|
-
i0.ɵɵtemplate(7, ActionDropdownRendererComponent_span_7_Template, 1, 0, "span", 5);
|
|
117
132
|
i0.ɵɵtemplate(8, ActionDropdownRendererComponent_span_8_Template, 1, 0, "span", 6);
|
|
133
|
+
i0.ɵɵtemplate(9, ActionDropdownRendererComponent_span_9_Template, 1, 0, "span", 7);
|
|
118
134
|
i0.ɵɵelementEnd();
|
|
119
|
-
i0.ɵɵelementStart(
|
|
120
|
-
i0.ɵɵlistener("targetChange", function
|
|
135
|
+
i0.ɵɵelementStart(10, "sme-action-menu", 8);
|
|
136
|
+
i0.ɵɵlistener("targetChange", function ActionDropdownRendererComponent_Template_sme_action_menu_targetChange_10_listener($event) { return ctx.item.container.target = $event; })("error", function ActionDropdownRendererComponent_Template_sme_action_menu_error_10_listener($event) { return ctx.item.container.error.emit($event); })("executed", function ActionDropdownRendererComponent_Template_sme_action_menu_executed_10_listener($event) { return ctx.item.container.executed.emit($event); });
|
|
121
137
|
i0.ɵɵelementEnd();
|
|
122
138
|
i0.ɵɵelementEnd();
|
|
123
139
|
} if (rf & 2) {
|
|
@@ -125,9 +141,11 @@ ActionDropdownRendererComponent.hoverTimeToActivate = 500;
|
|
|
125
141
|
i0.ɵɵproperty("displayToSide", (ctx.item.container == null ? null : ctx.item.container.orientation) === "horizontal");
|
|
126
142
|
i0.ɵɵadvance(2);
|
|
127
143
|
i0.ɵɵclassProp("sme-toggled", _r0.isOpen);
|
|
128
|
-
i0.ɵɵproperty("smeDisabled", !ctx.item.enabled || ctx.item.busy || !ctx.item.ready);
|
|
129
|
-
i0.ɵɵattribute("aria-expanded", _r0.isOpen);
|
|
144
|
+
i0.ɵɵproperty("smeDisabled", !ctx.item.enabled || ctx.item.busy || !ctx.item.ready)("title", ctx.actionTitle);
|
|
145
|
+
i0.ɵɵattribute("aria-expanded", _r0.isOpen)("data-uta-id", ctx.actionDropdownId);
|
|
130
146
|
i0.ɵɵadvance(2);
|
|
147
|
+
i0.ɵɵproperty("ngIf", ctx.actionTitle);
|
|
148
|
+
i0.ɵɵadvance(1);
|
|
131
149
|
i0.ɵɵproperty("ngClass", ctx.item.iconClass || "");
|
|
132
150
|
i0.ɵɵadvance(1);
|
|
133
151
|
i0.ɵɵclassProp("sme-screen-reader", ctx.item.container.compact);
|
|
@@ -235,4 +253,4 @@ export class ActionDropdownComponent extends ActionItemComponent {
|
|
|
235
253
|
}], actions: [{
|
|
236
254
|
type: Input
|
|
237
255
|
}] }); })();
|
|
238
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FuZ3VsYXIvc3JjL2NvbnRyb2xzL2FjdGlvbnMvaXRlbXMvYWN0aW9uLWRyb3Bkb3duL2FjdGlvbi1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2l0ZW1zL2FjdGlvbi1kcm9wZG93bi9hY3Rpb24tZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFDVCxlQUFlLEVBRWYsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBR0wsU0FBUyxFQUNULFNBQVMsRUFFVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7O0lDZHBHLDBCQUEySTs7O0lBQzNJLDBCQUFxSjs7O0FEZXpKLE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBVTtJQU0xQzs7T0FFRztJQUNIO1FBQ0ksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDM0MsQ0FBQztDQUNKO0FBTUQsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLDJCQUEyQztJQVc1Rjs7T0FFRztJQUNILFlBQW9CLFFBQW1CLEVBQVUsV0FBdUI7UUFDcEUsS0FBSyxFQUFFLENBQUM7UUFEUSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsZ0JBQVcs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Y0FKbkMsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxxQkFBcUI7Z0JBQy9CLFFBQVEsRUFBRSxFQUFFO2FBQ2Y7cUVBR2lDLFFBQVE7a0JBQXJDLFNBQVM7bUJBQUMsVUFBVTtZQUdkLFlBQVk7a0JBRGxCLGVBQWU7bUJBQUMsUUFBUTtZQUlsQixPQUFPO2tCQURiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgICBEb0NoZWNrLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEhvc3RMaXN0ZW5lcixcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgUmVuZGVyZXIyLFxyXG4gICAgU2ltcGxlQ2hhbmdlcyxcclxuICAgIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBLZXlDb2RlIH0gZnJvbSAnQG1pY3Jvc29mdC93aW5kb3dzLWFkbWluLWNlbnRlci1zZGsvY29yZS9kYXRhL2FjY2Vzc2liaWxpdHktbWFuYWdlcic7XHJcbmltcG9ydCB7IERyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uQmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29udGFpbmVycy9hY3Rpb24tYmFyL2FjdGlvbi1iYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uSXRlbSwgQWN0aW9uSXRlbUNvbXBvbmVudCwgQWN0aW9uSXRlbVJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vYWN0aW9uLWl0ZW0uY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25Ecm9wZG93biBleHRlbmRzIEFjdGlvbkl0ZW0ge1xyXG4gICAgLyoqXHJcbiAgICAgKiBMaXN0IG9mIGNoaWxkIEFjdGlvbkl0ZW0gb2JqZWN0cy5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnN0cnVjdG9yIGZvciBBY3Rpb25Ecm9wZG93bi5cclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgc3VwZXIoQWN0aW9uRHJvcGRvd25SZW5kZXJlckNvbXBvbmVudCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzbWUtYWN0aW9uLWRyb3Bkb3duLXJlbmRlcmVyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25Ecm9wZG93blJlbmRlcmVyQ29tcG9uZW50IGV4dGVuZHMgQWN0aW9uSXRlbVJlbmRlcmVyQ29tcG9uZW50PEFjdGlvbkRyb3Bkb3duPiBpbXBsZW1lbnRzIERvQ2hlY2sge1xyXG4gICAgcHJpdmF0ZSBzdGF0aWMgaG92ZXJUaW1lVG9BY3RpdmF0ZSA9IDUwMDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIERyb3Bkb3duIGNvbXBvbmVudCB1c2VkIGluIEFjdGlvbkRyb3Bkb3duLlxyXG4gICAgICovXHJcbiAgICBAVmlld0NoaWxkKCdkcm9wRG93bicpIHB1YmxpYyBkcm9wRG93bjogRHJvcGRvd25Db21wb25lbnQ7XHJcbiAgICBAVmlld0NoaWxkKCdkcm9wRG93bkJ1dHRvbicpIHByaXZhdGUgZHJvcERvd25CdXR0b25FbGVtZW50OiBFbGVtZW50UmVmO1xyXG5cclxuICAgIHByaXZhdGUgaXNIb3ZlcmluZyA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29uc3RydWN0b3Igb2YgQWN0aW9uRHJvcGRvd25SZW5kZXJlckNvbXBvbmVudC5cclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICByZW5kZXJlci5hZGRDbGFzcyhob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAnc21lLXBvc2l0aW9uLXN0cmV0Y2gnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE1ldGhvZCBjYWxsZWQgdG8gcmVnaXN0ZXIgYSBjaGFuZ2Ugd2l0aCB0aGUgQWN0aW9uQnV0dG9uLlxyXG4gICAgICogQHBhcmFtIGl0ZW0gVGhlIEFjdGlvbkJ1dHRvbiB0byByZWdpc3RlciBjaGFuZ2UgZm9yLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaXRlbUNoYW5nZWQoaXRlbTogQWN0aW9uRHJvcGRvd24pIHtcclxuICAgICAgICBzdXBlci5pdGVtQ2hhbmdlZChpdGVtKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdEb0NoZWNrKCkge1xyXG4gICAgICAgIGNvbnN0IG9mZnNldFdpZHRoID0gKDxIVE1MRWxlbWVudD50aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpLm9mZnNldFdpZHRoO1xyXG4gICAgICAgIGlmIChvZmZzZXRXaWR0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBJdCBsb29rcyBsaWtlIHRoZSBDU1MgaWNvbiBpc24ndCBiZWluZyBpbmNsdWRlZCBpbiB0aGUgb2Zmc2V0V2lkdGgsIG5vciB0aGUgY2xpZW50V2lkdGguXHJcbiAgICAgICAgLy8gQWRkaW5nIGhlcmUgZm9yIHNpbXBsaWNpdHkgYW5kIGNsYXJpdHkuXHJcbiAgICAgICAgY29uc3QgY3NzSWNvbldpZHRoID0gMTQ7XHJcbiAgICAgICAgY29uc3QgY2FsY3VsYXRlZFdpZHRoID0gb2Zmc2V0V2lkdGggKyBjc3NJY29uV2lkdGg7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbS53aWR0aCAhPT0gY2FsY3VsYXRlZFdpZHRoKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXRlbS53aWR0aCA9IGNhbGN1bGF0ZWRXaWR0aDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIb3N0IGxpc3RlbmVyIHRvIGhhbmRsZSBrZXlib2FyZCBldmVudHMuXHJcbiAgICAgKi9cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxyXG4gICAgcHVibGljIG9uVG9nZ2xlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgICAgIC8vIGFjY2Vzc2liaWxpdHksIHRha2UgZm9jdXMgdG8gdGhlIGFjdGlvbiBidXR0b24gYWZ0ZXIgYSBzZWxlY3Rpb24gaW4gZHJvcGRvd24gZWxlbWVudHMuXHJcbiAgICAgICAgc3dpdGNoIChldmVudC5rZXlDb2RlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgS2V5Q29kZS5FbnRlcjoge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZHJvcERvd24gJiZcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duQnV0dG9uRWxlbWVudCAmJlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJvcERvd25CdXR0b25FbGVtZW50Lm5hdGl2ZUVsZW1lbnQgJiZcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duLmlzT3BlbiAmJlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZHJvcERvd24uY29udGVudEVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duQnV0dG9uRWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEhvc3QgbGlzdGVuZXJzIHRvIGhhbmRsZSBtb3VzZSBldmVudHMuXHJcbiAgICAgKi9cclxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInLCBbJyRldmVudCddKVxyXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScsIFsnJGV2ZW50J10pXHJcbiAgICBwdWJsaWMgb25Nb3VzZUV2ZW50KGV2ZW50OiBFdmVudCkge1xyXG4gICAgICAgIGlmICh0aGlzLml0ZW0uY29udGFpbmVyLm9yaWVudGF0aW9uID09PSAndmVydGljYWwnKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pc0hvdmVyaW5nID0gZXZlbnQudHlwZSA9PT0gJ21vdXNlZW50ZXInO1xyXG4gICAgICAgIHRoaXMueWllbGRUb2dnbGVEcm9wZG93bih0aGlzLmlzSG92ZXJpbmcpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgeWllbGRUb2dnbGVEcm9wZG93bih3YXNIb3ZlcmluZzogYm9vbGVhbikge1xyXG4gICAgICAgIHNldFRpbWVvdXQoXyA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmlzSG92ZXJpbmcgIT09IHdhc0hvdmVyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKHdhc0hvdmVyaW5nKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duLm9wZW4oKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZHJvcERvd24uY2xvc2UoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sIEFjdGlvbkRyb3Bkb3duUmVuZGVyZXJDb21wb25lbnQuaG92ZXJUaW1lVG9BY3RpdmF0ZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdzbWUtYWN0aW9uLWRyb3Bkb3duJyxcclxuICAgIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aW9uRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBBY3Rpb25JdGVtQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ2Ryb3BEb3duJykgcHVibGljIGRyb3BEb3duOiBEcm9wZG93bkNvbXBvbmVudDtcclxuXHJcbiAgICBAQ29udGVudENoaWxkcmVuKCdhY3Rpb24nKVxyXG4gICAgcHVibGljIGNoaWxkQWN0aW9uczogUXVlcnlMaXN0PEFjdGlvbkl0ZW1Db21wb25lbnQ+O1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgYWN0aW9uczogQWN0aW9uSXRlbVtdID0gW107XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25CYXJDb21wb25lbnQ6IEFjdGlvbkJhckNvbXBvbmVudCkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcblxyXG4gICAgICAgIHRoaXMuY2hpbGRBY3Rpb25zID0gbmV3IFF1ZXJ5TGlzdDxBY3Rpb25JdGVtQ29tcG9uZW50PigpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uQmFyQ29tcG9uZW50LnVwZGF0ZUFjdGlvbkJhcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5jaGlsZEFjdGlvbnMuY2hhbmdlcy5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVBY3Rpb25zKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVBY3Rpb25zKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgICAgICBjb25zdCBwcm9wcyA9IE9iamVjdC5rZXlzKGNoYW5nZXMpO1xyXG4gICAgICAgIHByb3BzLmZvckVhY2gocHJvcCA9PiB7XHJcbiAgICAgICAgICAgIGlmIChwcm9wID09PSAnYWN0aW9ucycpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQWN0aW9ucygpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IGNoYW5nZSA9IGNoYW5nZXNbcHJvcF07XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uW3Byb3BdID0gY2hhbmdlLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aW9uQmFyQ29tcG9uZW50LnVwZGF0ZUFjdGlvbkJhcigpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBjcmVhdGVBY3Rpb25JdGVtKCk6IEFjdGlvbkRyb3Bkb3duIHtcclxuICAgICAgICBjb25zdCBkcm9wZG93biA9IG5ldyBBY3Rpb25Ecm9wZG93bigpO1xyXG4gICAgICAgIGRyb3Bkb3duLmFjdGlvbnMgPSBbXTtcclxuICAgICAgICByZXR1cm4gZHJvcGRvd247XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB1cGRhdGVBY3Rpb25zKCkge1xyXG4gICAgICAgIC8vIFF1ZXJ5U2VsZWN0b3IgY3VycmVudGx5IGluY2x1ZGVzIHNlbGYsIGJ1dCB0aGlzIHNob3VsZCBiZSBmaXhlZCBpbiBBbmd1bGFyIDhcclxuICAgICAgICAvLyBAc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzQwNjYwMDkzL3doeS1kb2VzLWNvbnRlbnRjaGlsZHJlbi1pbmNsdWRlLXNlbGYtdGhpcy13aGVuLXF1ZXJ5aW5nLWEtbWF0Y2hpbmctc2VsZWN0b3JcclxuICAgICAgICBjb25zdCBjb21iaW5lZEFjdGlvbnMgPSB0aGlzLmFjdGlvbnMuY29uY2F0KHRoaXMuY2hpbGRBY3Rpb25zLmZpbHRlcihpdGVtID0+IGl0ZW0gIT09IHRoaXMpLm1hcChpdGVtID0+IGl0ZW0uYWN0aW9uKSk7XHJcbiAgICAgICAgKDxBY3Rpb25Ecm9wZG93bj50aGlzLmFjdGlvbikuYWN0aW9ucyA9IGNvbWJpbmVkQWN0aW9ucztcclxuICAgIH1cclxufVxyXG4iLCI8c21lLWRyb3Bkb3duICNkcm9wRG93biBjbGFzcz1cInNtZS1wb3NpdGlvbi1mbGV4LW5vbmVcIiByb2xlPVwicHJlc2VudGF0aW9uXCIgW2Rpc3BsYXlUb1NpZGVdPVwiaXRlbS5jb250YWluZXI/Lm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCdcIj5cclxuICA8YnV0dG9uICNkcm9wRG93bkJ1dHRvbiByb2xlPVwibWVudWl0ZW1cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJzbWUtYnV0dG9uLXRyaWdnZXIgc21lLWxheW91dC1hY3Rpb24tYmFyLWl0ZW0taGVpZ2h0IHNtZS1idXR0b24tYXV0by13aWR0aCBzbWUtYnV0dG9uLWFsaWduLWxlZnQgc21lLXBvc2l0aW9uLXN0cmV0Y2gtaCBzbWUtZHJvcGRvd24tdG9nZ2xlXCJcclxuICAgIFtjbGFzcy5zbWUtdG9nZ2xlZF09XCJkcm9wRG93bi5pc09wZW5cIiBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImRyb3BEb3duLmlzT3BlblwiIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCIgW3NtZURpc2FibGVkXT1cIiFpdGVtLmVuYWJsZWQgfHwgaXRlbS5idXN5IHx8ICFpdGVtLnJlYWR5XCI+XHJcbiAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmljb25DbGFzcyB8fCAnJ1wiPjwvc3Bhbj5cclxuICAgIDxzcGFuIFtjbGFzcy5zbWUtc2NyZWVuLXJlYWRlcl09XCJpdGVtLmNvbnRhaW5lci5jb21wYWN0XCI+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJpdGVtLmNvbnRhaW5lcj8ub3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCdcIiBjbGFzcz1cInNtZS1pY29uIHNtZS1pY29uLXNpemUteHhzIHNtZS1pY29uLWNoZXZyb25Eb3duIHNtZS1tYXJnaW4tbGVmdC14c1wiPjwvc3Bhbj5cclxuICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5jb250YWluZXI/Lm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCdcIiBjbGFzcz1cInNtZS1pY29uIHNtZS1pY29uLXNpemUteHhzIHNtZS1pY29uLWNoZXZyb25SaWdodCBzbWUtcG9zaXRpb24tcmlnaHQtaW5saW5lXCI+PC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxzbWUtYWN0aW9uLW1lbnUgW2FjdGlvbnNdPVwiaXRlbS5hY3Rpb25zXCIgcm9sZT1cIm1lbnVcIiBjbGFzcz1cInNtZS1kcm9wZG93bi1jb250ZW50XCIgWyh0YXJnZXQpXT1cIml0ZW0uY29udGFpbmVyLnRhcmdldFwiIChlcnJvcik9XCJpdGVtLmNvbnRhaW5lci5lcnJvci5lbWl0KCRldmVudClcIlxyXG4gICAgKGV4ZWN1dGVkKT1cIml0ZW0uY29udGFpbmVyLmV4ZWN1dGVkLmVtaXQoJGV2ZW50KVwiPjwvc21lLWFjdGlvbi1tZW51PlxyXG48L3NtZS1kcm9wZG93bj5cclxuIl19
|
|
256
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2FuZ3VsYXIvc3JjL2NvbnRyb2xzL2FjdGlvbnMvaXRlbXMvYWN0aW9uLWRyb3Bkb3duL2FjdGlvbi1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9hbmd1bGFyL3NyYy9jb250cm9scy9hY3Rpb25zL2l0ZW1zL2FjdGlvbi1kcm9wZG93bi9hY3Rpb24tZHJvcGRvd24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFDVCxlQUFlLEVBRWYsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBR0wsU0FBUyxFQUNULFNBQVMsRUFFVCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7O0lDaEJwRyw0QkFBaUQ7SUFBQSxZQUFpQjtJQUFBLGlCQUFJOzs7SUFBckIsZUFBaUI7SUFBakIsd0NBQWlCOzs7SUFHbEUsMkJBQTJJOzs7SUFDM0ksMkJBQXFKOzs7QURjekosTUFBTSxPQUFPLGNBQWUsU0FBUSxVQUFVO0lBTTFDOztPQUVHO0lBQ0g7UUFDSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0NBQ0o7QUFNRCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsMkJBQTJDO0lBbUI1Rjs7T0FFRztJQUNILFlBQW9CLFFBQW1CLEVBQVUsV0FBdUI7UUFDcEUsS0FBSyxFQUFFLENBQUM7UUFEUSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFiaEUsZUFBVSxHQUFHLEtBQUssQ0FBQztRQWV2QixRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBZEQsSUFBVyxXQUFXO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDdkYsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDOUIsQ0FBQztJQVVEOzs7T0FHRztJQUNJLFdBQVcsQ0FBQyxJQUFvQjtRQUNuQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFTSxTQUFTO1FBQ1osTUFBTSxXQUFXLEdBQWlCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYyxDQUFDLFdBQVcsQ0FBQztRQUM5RSxJQUFJLFdBQVcsS0FBSyxDQUFDLEVBQUU7WUFDbkIsT0FBTztTQUNWO1FBRUQsMkZBQTJGO1FBQzNGLDBDQUEwQztRQUMxQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDeEIsTUFBTSxlQUFlLEdBQUcsV0FBVyxHQUFHLFlBQVksQ0FBQztRQUNuRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLGVBQWUsRUFBRTtZQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUM7U0FDckM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFFSSxlQUFlLENBQUMsS0FBb0I7UUFDdkMseUZBQXlGO1FBQ3pGLFFBQVEsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUNuQixLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUTtvQkFDYixJQUFJLENBQUMscUJBQXFCO29CQUMxQixJQUFJLENBQUMscUJBQXFCLENBQUMsYUFBYTtvQkFDeEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO29CQUNwQixJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRTtvQkFDOUIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDcEQ7Z0JBQ0QsTUFBTTthQUNUO1NBQ0o7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFHSSxZQUFZLENBQUMsS0FBWTtRQUM1QixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsS0FBSyxVQUFVLEVBQUU7WUFDaEQsT0FBTztTQUNWO1FBQ0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQztRQUM5QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxXQUFvQjtRQUM1QyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDWCxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssV0FBVyxFQUFFO2dCQUNqQyxPQUFPO2FBQ1Y7WUFDRCxJQUFJLFdBQVcsRUFBRTtnQkFDYixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3hCO2lCQUFNO2dCQUNILElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDekI7UUFDTCxDQUFDLEVBQUUsK0JBQStCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUM1RCxDQUFDOztBQTdGYyxtREFBbUIsR0FBRyxHQUFHLENBQUM7aUlBRGhDLCtCQUErQjt1RkFBL0IsK0JBQStCOzs7Ozs7OztzSEFBL0IsMkJBQXVCLDJHQUF2Qix3QkFBb0IsMkdBQXBCLHdCQUFvQjs7UUN2Q2pDLDBDQUEwSTtRQUN4SSxvQ0FDME47UUFDeE4sNEVBQXNFO1FBQ3RFLDBCQUE4QztRQUM5Qyw0QkFBeUQ7UUFBQSxZQUFlO1FBQUEsaUJBQU87UUFDL0Usa0ZBQTJJO1FBQzNJLGtGQUFxSjtRQUN2SixpQkFBUztRQUNULDJDQUNvRDtRQUQrQixnTEFBa0MsK0dBQVUscUNBQWlDLElBQTNDLHFIQUN2Ryx3Q0FBb0MsSUFEbUU7UUFDakUsaUJBQWtCO1FBQ3hFLGlCQUFlOzs7UUFYNEQscUhBQThEO1FBRXJJLGVBQXFDO1FBQXJDLHlDQUFxQztRQUE2RCxtRkFBeUQsMEJBQUE7UUFBckgsMkNBQXNDLHFDQUFBO1FBQ3hFLGVBQWlCO1FBQWpCLHNDQUFpQjtRQUNmLGVBQWdDO1FBQWhDLGtEQUFnQztRQUNoQyxlQUFrRDtRQUFsRCwrREFBa0Q7UUFBQyxlQUFlO1FBQWYsbUNBQWU7UUFDakUsZUFBZ0Q7UUFBaEQsMEdBQWdEO1FBQ2hELGVBQWtEO1FBQWxELDRHQUFrRDtRQUUxQyxlQUF3QjtRQUF4QiwwQ0FBd0IscUNBQUE7O3VGRDhCOUIsK0JBQStCO2NBSjNDLFNBQVM7ZUFBQztnQkFDUCxRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxXQUFXLEVBQUUsa0NBQWtDO2FBQ2xEO3FGQU9pQyxRQUFRO2tCQUFyQyxTQUFTO21CQUFDLFVBQVU7WUFDZ0IscUJBQXFCO2tCQUF6RCxTQUFTO21CQUFDLGdCQUFnQjtZQStDcEIsZUFBZTtrQkFEckIsWUFBWTttQkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFzQjVCLFlBQVk7a0JBRmxCLFlBQVk7bUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDOztrQkFDckMsWUFBWTttQkFBQyxZQUFZLEVBQUUsQ0FBQyxRQUFRLENBQUM7O0FBMkIxQyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsbUJBQW1CO0lBVTVELFlBQW9CLGtCQUFzQztRQUN0RCxLQUFLLEVBQUUsQ0FBQztRQURRLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFGbkQsWUFBTyxHQUFpQixFQUFFLENBQUM7UUFLOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFNBQVMsRUFBdUIsQ0FBQztJQUM3RCxDQUFDO0lBRU0sZUFBZTtRQUNsQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdEMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDckMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtnQkFDcEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUNyQixPQUFPO2FBQ1Y7WUFDRCxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDZCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLGdCQUFnQjtRQUN0QixNQUFNLFFBQVEsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBQ3RDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7SUFFTyxhQUFhO1FBQ2pCLCtFQUErRTtRQUMvRSxpSUFBaUk7UUFDakksTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDckcsSUFBSSxDQUFDLE1BQU8sQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDO0lBQzVELENBQUM7O2lIQTFEUSx1QkFBdUI7K0VBQXZCLHVCQUF1Qjs7Ozs7Ozs7Ozs7dUZBQXZCLHVCQUF1QjtjQUpuQyxTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtnQkFDL0IsUUFBUSxFQUFFLEVBQUU7YUFDZjtxRUFHaUMsUUFBUTtrQkFBckMsU0FBUzttQkFBQyxVQUFVO1lBR2QsWUFBWTtrQkFEbEIsZUFBZTttQkFBQyxRQUFRO1lBSWxCLE9BQU87a0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlckNvbnRlbnRJbml0LFxyXG4gICAgQWZ0ZXJWaWV3SW5pdCxcclxuICAgIENvbXBvbmVudCxcclxuICAgIENvbnRlbnRDaGlsZHJlbixcclxuICAgIERvQ2hlY2ssXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBRdWVyeUxpc3QsXHJcbiAgICBSZW5kZXJlcjIsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEtleUNvZGUgfSBmcm9tICdAbWljcm9zb2Z0L3dpbmRvd3MtYWRtaW4tY2VudGVyLXNkay9jb3JlL2RhdGEvYWNjZXNzaWJpbGl0eS1tYW5hZ2VyJztcclxuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25CYXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb250YWluZXJzL2FjdGlvbi1iYXIvYWN0aW9uLWJhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25JdGVtLCBBY3Rpb25JdGVtQ29tcG9uZW50LCBBY3Rpb25JdGVtUmVuZGVyZXJDb21wb25lbnQgfSBmcm9tICcuLi9hY3Rpb24taXRlbS5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEFjdGlvbkRyb3Bkb3duIGV4dGVuZHMgQWN0aW9uSXRlbSB7XHJcbiAgICAvKipcclxuICAgICAqIExpc3Qgb2YgY2hpbGQgQWN0aW9uSXRlbSBvYmplY3RzLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWN0aW9uczogQWN0aW9uSXRlbVtdO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29uc3RydWN0b3IgZm9yIEFjdGlvbkRyb3Bkb3duLlxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICBzdXBlcihBY3Rpb25Ecm9wZG93blJlbmRlcmVyQ29tcG9uZW50KTtcclxuICAgIH1cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3NtZS1hY3Rpb24tZHJvcGRvd24tcmVuZGVyZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1kcm9wZG93bi5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbkRyb3Bkb3duUmVuZGVyZXJDb21wb25lbnQgZXh0ZW5kcyBBY3Rpb25JdGVtUmVuZGVyZXJDb21wb25lbnQ8QWN0aW9uRHJvcGRvd24+IGltcGxlbWVudHMgRG9DaGVjayB7XHJcbiAgICBwcml2YXRlIHN0YXRpYyBob3ZlclRpbWVUb0FjdGl2YXRlID0gNTAwO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRHJvcGRvd24gY29tcG9uZW50IHVzZWQgaW4gQWN0aW9uRHJvcGRvd24uXHJcbiAgICAgKi9cclxuICAgIEBWaWV3Q2hpbGQoJ2Ryb3BEb3duJykgcHVibGljIGRyb3BEb3duOiBEcm9wZG93bkNvbXBvbmVudDtcclxuICAgIEBWaWV3Q2hpbGQoJ2Ryb3BEb3duQnV0dG9uJykgcHJpdmF0ZSBkcm9wRG93bkJ1dHRvbkVsZW1lbnQ6IEVsZW1lbnRSZWY7XHJcblxyXG4gICAgcHJpdmF0ZSBpc0hvdmVyaW5nID0gZmFsc2U7XHJcblxyXG4gICAgcHVibGljIGdldCBhY3Rpb25UaXRsZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLml0ZW0ubmFtZSAmJiB0aGlzLml0ZW0ubmFtZSAhPT0gdGhpcy5pdGVtLnRleHQgPyB0aGlzLml0ZW0ubmFtZSA6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBhY3Rpb25Ecm9wZG93bklkKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbS5hY3Rpb25JZDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnN0cnVjdG9yIG9mIEFjdGlvbkRyb3Bkb3duUmVuZGVyZXJDb21wb25lbnQuXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZikge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgcmVuZGVyZXIuYWRkQ2xhc3MoaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3NtZS1wb3NpdGlvbi1zdHJldGNoJyk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNZXRob2QgY2FsbGVkIHRvIHJlZ2lzdGVyIGEgY2hhbmdlIHdpdGggdGhlIEFjdGlvbkJ1dHRvbi5cclxuICAgICAqIEBwYXJhbSBpdGVtIFRoZSBBY3Rpb25CdXR0b24gdG8gcmVnaXN0ZXIgY2hhbmdlIGZvci5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGl0ZW1DaGFuZ2VkKGl0ZW06IEFjdGlvbkRyb3Bkb3duKSB7XHJcbiAgICAgICAgc3VwZXIuaXRlbUNoYW5nZWQoaXRlbSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG5nRG9DaGVjaygpIHtcclxuICAgICAgICBjb25zdCBvZmZzZXRXaWR0aCA9ICg8SFRNTEVsZW1lbnQ+dGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50KS5vZmZzZXRXaWR0aDtcclxuICAgICAgICBpZiAob2Zmc2V0V2lkdGggPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSXQgbG9va3MgbGlrZSB0aGUgQ1NTIGljb24gaXNuJ3QgYmVpbmcgaW5jbHVkZWQgaW4gdGhlIG9mZnNldFdpZHRoLCBub3IgdGhlIGNsaWVudFdpZHRoLlxyXG4gICAgICAgIC8vIEFkZGluZyBoZXJlIGZvciBzaW1wbGljaXR5IGFuZCBjbGFyaXR5LlxyXG4gICAgICAgIGNvbnN0IGNzc0ljb25XaWR0aCA9IDE0O1xyXG4gICAgICAgIGNvbnN0IGNhbGN1bGF0ZWRXaWR0aCA9IG9mZnNldFdpZHRoICsgY3NzSWNvbldpZHRoO1xyXG4gICAgICAgIGlmICh0aGlzLml0ZW0ud2lkdGggIT09IGNhbGN1bGF0ZWRXaWR0aCkge1xyXG4gICAgICAgICAgICB0aGlzLml0ZW0ud2lkdGggPSBjYWxjdWxhdGVkV2lkdGg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSG9zdCBsaXN0ZW5lciB0byBoYW5kbGUga2V5Ym9hcmQgZXZlbnRzLlxyXG4gICAgICovXHJcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcclxuICAgIHB1YmxpYyBvblRvZ2dsZUtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgICAgICAvLyBhY2Nlc3NpYmlsaXR5LCB0YWtlIGZvY3VzIHRvIHRoZSBhY3Rpb24gYnV0dG9uIGFmdGVyIGEgc2VsZWN0aW9uIGluIGRyb3Bkb3duIGVsZW1lbnRzLlxyXG4gICAgICAgIHN3aXRjaCAoZXZlbnQua2V5Q29kZSkge1xyXG4gICAgICAgICAgICBjYXNlIEtleUNvZGUuRW50ZXI6IHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRyb3BEb3duICYmXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wRG93bkJ1dHRvbkVsZW1lbnQgJiZcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duQnV0dG9uRWxlbWVudC5uYXRpdmVFbGVtZW50ICYmXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wRG93bi5pc09wZW4gJiZcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duLmNvbnRlbnRFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kcm9wRG93bkJ1dHRvbkVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIb3N0IGxpc3RlbmVycyB0byBoYW5kbGUgbW91c2UgZXZlbnRzLlxyXG4gICAgICovXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJywgWyckZXZlbnQnXSlcclxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBbJyRldmVudCddKVxyXG4gICAgcHVibGljIG9uTW91c2VFdmVudChldmVudDogRXZlbnQpIHtcclxuICAgICAgICBpZiAodGhpcy5pdGVtLmNvbnRhaW5lci5vcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaXNIb3ZlcmluZyA9IGV2ZW50LnR5cGUgPT09ICdtb3VzZWVudGVyJztcclxuICAgICAgICB0aGlzLnlpZWxkVG9nZ2xlRHJvcGRvd24odGhpcy5pc0hvdmVyaW5nKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHlpZWxkVG9nZ2xlRHJvcGRvd24od2FzSG92ZXJpbmc6IGJvb2xlYW4pIHtcclxuICAgICAgICBzZXRUaW1lb3V0KF8gPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pc0hvdmVyaW5nICE9PSB3YXNIb3ZlcmluZykge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmICh3YXNIb3ZlcmluZykge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kcm9wRG93bi5vcGVuKCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRyb3BEb3duLmNsb3NlKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCBBY3Rpb25Ecm9wZG93blJlbmRlcmVyQ29tcG9uZW50LmhvdmVyVGltZVRvQWN0aXZhdGUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnc21lLWFjdGlvbi1kcm9wZG93bicsXHJcbiAgICB0ZW1wbGF0ZTogJydcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbkRyb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgQWN0aW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0IHtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdkcm9wRG93bicpIHB1YmxpYyBkcm9wRG93bjogRHJvcGRvd25Db21wb25lbnQ7XHJcblxyXG4gICAgQENvbnRlbnRDaGlsZHJlbignYWN0aW9uJylcclxuICAgIHB1YmxpYyBjaGlsZEFjdGlvbnM6IFF1ZXJ5TGlzdDxBY3Rpb25JdGVtQ29tcG9uZW50PjtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGFjdGlvbnM6IEFjdGlvbkl0ZW1bXSA9IFtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aW9uQmFyQ29tcG9uZW50OiBBY3Rpb25CYXJDb21wb25lbnQpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG5cclxuICAgICAgICB0aGlzLmNoaWxkQWN0aW9ucyA9IG5ldyBRdWVyeUxpc3Q8QWN0aW9uSXRlbUNvbXBvbmVudD4oKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbkJhckNvbXBvbmVudC51cGRhdGVBY3Rpb25CYXIoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCkge1xyXG4gICAgICAgIHRoaXMuY2hpbGRBY3Rpb25zLmNoYW5nZXMuc3Vic2NyaWJlKHZhbCA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQWN0aW9ucygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMudXBkYXRlQWN0aW9ucygpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgY29uc3QgcHJvcHMgPSBPYmplY3Qua2V5cyhjaGFuZ2VzKTtcclxuICAgICAgICBwcm9wcy5mb3JFYWNoKHByb3AgPT4ge1xyXG4gICAgICAgICAgICBpZiAocHJvcCA9PT0gJ2FjdGlvbnMnKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUFjdGlvbnMoKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBjaGFuZ2UgPSBjaGFuZ2VzW3Byb3BdO1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbltwcm9wXSA9IGNoYW5nZS5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbkJhckNvbXBvbmVudC51cGRhdGVBY3Rpb25CYXIoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgY3JlYXRlQWN0aW9uSXRlbSgpOiBBY3Rpb25Ecm9wZG93biB7XHJcbiAgICAgICAgY29uc3QgZHJvcGRvd24gPSBuZXcgQWN0aW9uRHJvcGRvd24oKTtcclxuICAgICAgICBkcm9wZG93bi5hY3Rpb25zID0gW107XHJcbiAgICAgICAgcmV0dXJuIGRyb3Bkb3duO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgdXBkYXRlQWN0aW9ucygpIHtcclxuICAgICAgICAvLyBRdWVyeVNlbGVjdG9yIGN1cnJlbnRseSBpbmNsdWRlcyBzZWxmLCBidXQgdGhpcyBzaG91bGQgYmUgZml4ZWQgaW4gQW5ndWxhciA4XHJcbiAgICAgICAgLy8gQHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy80MDY2MDA5My93aHktZG9lcy1jb250ZW50Y2hpbGRyZW4taW5jbHVkZS1zZWxmLXRoaXMtd2hlbi1xdWVyeWluZy1hLW1hdGNoaW5nLXNlbGVjdG9yXHJcbiAgICAgICAgY29uc3QgY29tYmluZWRBY3Rpb25zID0gdGhpcy5hY3Rpb25zLmNvbmNhdCh0aGlzLmNoaWxkQWN0aW9ucy5maWx0ZXIoaXRlbSA9PiBpdGVtICE9PSB0aGlzKS5tYXAoaXRlbSA9PiBpdGVtLmFjdGlvbikpO1xyXG4gICAgICAgICg8QWN0aW9uRHJvcGRvd24+dGhpcy5hY3Rpb24pLmFjdGlvbnMgPSBjb21iaW5lZEFjdGlvbnM7XHJcbiAgICB9XHJcbn1cclxuIiwiPHNtZS1kcm9wZG93biAjZHJvcERvd24gY2xhc3M9XCJzbWUtcG9zaXRpb24tZmxleC1ub25lXCIgcm9sZT1cInByZXNlbnRhdGlvblwiIFtkaXNwbGF5VG9TaWRlXT1cIml0ZW0uY29udGFpbmVyPy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnXCI+XHJcbiAgPGJ1dHRvbiAjZHJvcERvd25CdXR0b24gcm9sZT1cIm1lbnVpdGVtXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwic21lLWJ1dHRvbi10cmlnZ2VyIHNtZS1sYXlvdXQtYWN0aW9uLWJhci1pdGVtLWhlaWdodCBzbWUtYnV0dG9uLWF1dG8td2lkdGggc21lLWJ1dHRvbi1hbGlnbi1sZWZ0IHNtZS1wb3NpdGlvbi1zdHJldGNoLWggc21lLWRyb3Bkb3duLXRvZ2dsZVwiXHJcbiAgICBbY2xhc3Muc21lLXRvZ2dsZWRdPVwiZHJvcERvd24uaXNPcGVuXCIgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJkcm9wRG93bi5pc09wZW5cIiBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiIFtzbWVEaXNhYmxlZF09XCIhaXRlbS5lbmFibGVkIHx8IGl0ZW0uYnVzeSB8fCAhaXRlbS5yZWFkeVwiIFt0aXRsZV09XCJhY3Rpb25UaXRsZVwiIFthdHRyLmRhdGEtdXRhLWlkXT1cImFjdGlvbkRyb3Bkb3duSWRcIj5cclxuICAgIDxwICpuZ0lmPVwiYWN0aW9uVGl0bGVcIiBjbGFzcz1cInNtZS1zY3JlZW4tcmVhZGVyXCI+e3sgYWN0aW9uVGl0bGUgfX08L3A+XHJcbiAgICA8c3BhbiBbbmdDbGFzc109XCJpdGVtLmljb25DbGFzcyB8fCAnJ1wiPjwvc3Bhbj5cclxuICAgIDxzcGFuIFtjbGFzcy5zbWUtc2NyZWVuLXJlYWRlcl09XCJpdGVtLmNvbnRhaW5lci5jb21wYWN0XCI+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJpdGVtLmNvbnRhaW5lcj8ub3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCdcIiBjbGFzcz1cInNtZS1pY29uIHNtZS1pY29uLXNpemUteHhzIHNtZS1pY29uLWNoZXZyb25Eb3duIHNtZS1tYXJnaW4tbGVmdC14c1wiPjwvc3Bhbj5cclxuICAgIDxzcGFuICpuZ0lmPVwiaXRlbS5jb250YWluZXI/Lm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCdcIiBjbGFzcz1cInNtZS1pY29uIHNtZS1pY29uLXNpemUteHhzIHNtZS1pY29uLWNoZXZyb25SaWdodCBzbWUtcG9zaXRpb24tcmlnaHQtaW5saW5lXCI+PC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxzbWUtYWN0aW9uLW1lbnUgW2FjdGlvbnNdPVwiaXRlbS5hY3Rpb25zXCIgcm9sZT1cIm1lbnVcIiBjbGFzcz1cInNtZS1kcm9wZG93bi1jb250ZW50XCIgWyh0YXJnZXQpXT1cIml0ZW0uY29udGFpbmVyLnRhcmdldFwiIChlcnJvcik9XCJpdGVtLmNvbnRhaW5lci5lcnJvci5lbWl0KCRldmVudClcIlxyXG4gICAgKGV4ZWN1dGVkKT1cIml0ZW0uY29udGFpbmVyLmV4ZWN1dGVkLmVtaXQoJGV2ZW50KVwiPjwvc21lLWFjdGlvbi1tZW51PlxyXG48L3NtZS1kcm9wZG93bj5cclxuIl19
|
|
@@ -106,10 +106,12 @@ export class ActionItemComponent {
|
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
/** @nocollapse */ ActionItemComponent.ɵfac = function ActionItemComponent_Factory(t) { return new (t || ActionItemComponent)(); };
|
|
109
|
-
/** @nocollapse */ ActionItemComponent.ɵdir = i0.ɵɵdefineDirective({ type: ActionItemComponent, inputs: { hidden: "hidden", enabled: "enabled", toggled: "toggled", text: "text", iconClass: "iconClass" }, features: [i0.ɵɵNgOnChangesFeature] });
|
|
109
|
+
/** @nocollapse */ ActionItemComponent.ɵdir = i0.ɵɵdefineDirective({ type: ActionItemComponent, inputs: { actionId: "actionId", hidden: "hidden", enabled: "enabled", toggled: "toggled", text: "text", name: "name", iconClass: "iconClass" }, features: [i0.ɵɵNgOnChangesFeature] });
|
|
110
110
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionItemComponent, [{
|
|
111
111
|
type: Directive
|
|
112
|
-
}], function () { return []; }, {
|
|
112
|
+
}], function () { return []; }, { actionId: [{
|
|
113
|
+
type: Input
|
|
114
|
+
}], hidden: [{
|
|
113
115
|
type: Input
|
|
114
116
|
}], enabled: [{
|
|
115
117
|
type: Input
|
|
@@ -117,7 +119,9 @@ export class ActionItemComponent {
|
|
|
117
119
|
type: Input
|
|
118
120
|
}], text: [{
|
|
119
121
|
type: Input
|
|
122
|
+
}], name: [{
|
|
123
|
+
type: Input
|
|
120
124
|
}], iconClass: [{
|
|
121
125
|
type: Input
|
|
122
126
|
}] }); })();
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYW5ndWxhci9zcmMvY29udHJvbHMvYWN0aW9ucy9pdGVtcy9hY3Rpb24taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWtDLE1BQU0sZUFBZSxDQUFDOztBQUlqRjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQXFEbkI7OztPQUdHO0lBQ0gsWUFBNEIsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQXhEckMsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFpQjNCOztXQUVHO1FBQ0ksU0FBSSxHQUFHLEtBQUssQ0FBQztRQUVwQjs7V0FFRztRQUNJLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdEI7O1dBRUc7UUFDSSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXZCOztXQUVHO1FBQ0ksV0FBTSxHQUFHLEtBQUssQ0FBQztRQVl0Qjs7V0FFRztRQUNJLFVBQUssR0FBRyxLQUFLLENBQUM7SUFNOEIsQ0FBQztJQUVwRDs7OztPQUlHO0lBQ0ksY0FBYyxDQUFDLE1BQVcsRUFBRSxTQUEwQjtRQUN6RCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUUzQixNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZ0JBQWdCO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksZ0JBQWdCLENBQUMsTUFBVyxFQUFFLFNBQTBCO1FBQzNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7T0FFRztJQUNJLG9CQUFvQjtRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsd0JBQXdCLENBQUMsTUFBVztRQUMxQyxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0NBQ0o7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTywyQkFBMkI7SUFFN0IsV0FBVyxDQUFDLElBQU87UUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDckIsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFFSCxtREFBbUQ7QUFDbkQsTUFBTSxPQUFnQixtQkFBbUI7SUF1Q3JDOztPQUVHO0lBQ0g7UUF4Q08sWUFBTyxHQUFZLE9BQU8sQ0FBQyxVQUFVLEVBQVcsQ0FBQztRQXlDcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBSUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsT0FBc0I7UUFDckMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzt5R0F6RGlCLG1CQUFtQjsyRUFBbkIsbUJBQW1CO3VGQUFuQixtQkFBbUI7Y0FGeEMsU0FBUztzQ0FVQyxNQUFNO2tCQURaLEtBQUs7WUFPQyxPQUFPO2tCQURiLEtBQUs7WUFPQyxPQUFPO2tCQURiLEtBQUs7WUFPQyxJQUFJO2tCQURWLEtBQUs7WUFPQyxTQUFTO2tCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RyaW5ncyB9IGZyb20gJy4uLy4uLy4uL2dlbmVyYXRlZC9zdHJpbmdzJztcclxuaW1wb3J0IHsgQWN0aW9uQ29udGFpbmVyIH0gZnJvbSAnLi4vY29udGFpbmVycy9hY3Rpb24tY29udGFpbmVyJztcclxuXHJcbi8qKlxyXG4gKiBEZWZpbmVzIHRoZSBtb2RlbCBvZiBhbiBhY3Rpb24gaXRlbSBpbmNsdWRpbmcgd2hpY2ggcmVuZGVyZXIgdG8gdXNlLlxyXG4gKiBUaGUgY29uc3VtZXIgY2FuIHByb3ZpZGUgYW4gYXJyYXkgb2YgdGhlc2UgdG8gdGhlIGFjdGlvbiBiYXIgJ2FjdGlvbnMnIGF0dHJpYnV0ZS5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25JdGVtIHtcclxuICAgIHByb3RlY3RlZCBidXN5VGFyZ2V0cyA9IFtdO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ1NTIGNsYXNzIGZvciBpY29uIHRvIGJlIGRpc3BsYXllZCB3aXRoIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaWNvbkNsYXNzOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMYWJlbCB0byBiZSBkaXNwbGF5ZWQgZm9yIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgdGV4dDogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRml4ZWQgcGl4ZWwgd2lkdGggdG8gYmUgdXNlZCBmb3IgdGhlIEFjdGlvbkl0ZW0uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB3aWR0aDogbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyBzZXQgdG8gaW5kaWNhdGUgdGhlIEFjdGlvbkl0ZW0gaXMgY3VycmVudGx5IGluIHRoZSBidXN5IHN0YXRlIChkZWZhdWx0cyB0byBmYWxzZSkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBidXN5ID0gZmFsc2U7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHNldCB0byBpbmRpY2F0ZSB3aGV0aGVyIG9yIG5vdCB0aGUgQWN0aW9uSXRlbSBpcyBlbmFibGVkIChkZWZhdWx0cyB0byB0cnVlKS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGVuYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyBzZXQgdG8gaW5kaWNhdGUgd2hldGhlciBvciBub3QgdGhlIEFjdGlvbkl0ZW0gaXMgdG9nZ2xlZCAoZGVmYXVsdHMgdG8gZmFsc2UpLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgdG9nZ2xlZCA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyBzZXQgdG8gaW5kaWNhdGUgd2hldGhlciBvciBub3QgdGhlIEFjdGlvbkl0ZW0gaXMgaGlkZGVuIChkZWZhdWx0cyB0byBmYWxzZSkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBoaWRkZW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSB0YXJnZXQgb2JqZWN0IGZvciB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHRhcmdldDogYW55O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHBhcmVudCBBY3Rpb25Db250YWluZXIgb2YgdGhlIEFjdGlvbkl0ZW0uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjb250YWluZXI6IEFjdGlvbkNvbnRhaW5lcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEZsYWcgc2V0IHRvIGluZGljYXRlIHdoZXRoZXIgb3Igbm90IHRoZSBBY3Rpb25JdGVtIGNhbiBiZSBydW4gKGRlZmF1bHRzIHRvIGZhbHNlIGFuZCBzZXQgdG8gdHJ1ZSBvbmNlIGFkZGVkIHRvIGEgY29udGFpbmVyKS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlYWR5ID0gZmFsc2U7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb25zdHJ1Y3RvciBmb3IgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSByZW5kZXJlciBUaGUgcmVuZGVyZXIgaW5zdGFuY2UgdXNlZCB3aXRoIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgcmVuZGVyZXI6IFR5cGU8YW55PikgeyB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNZXRob2QgdG8gc2V0IHRoZSBzdGF0ZSBvZiB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBvYmplY3QgdG8gYmUgdXNlZCBieSB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSBjb250YWluZXIgVGhlIEFjdGlvbkNvbnRhaW5lciB0byBwbGFjZSB0aGUgQWN0aW9uSXRlbSBpbi5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldEFjdGlvblN0YXRlKHRhcmdldDogYW55LCBjb250YWluZXI6IEFjdGlvbkNvbnRhaW5lcikge1xyXG4gICAgICAgIHRoaXMudGFyZ2V0ID0gdGFyZ2V0O1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyID0gY29udGFpbmVyO1xyXG5cclxuICAgICAgICBjb25zdCB0YXJnZXRVbmlxdWVSZWZlcmVuY2UgPSB0aGlzLmdldFRhcmdldFVuaXF1ZVJlZmVyZW5jZSh0YXJnZXQpO1xyXG4gICAgICAgIHRoaXMuYnVzeSA9IHRoaXMuYnVzeVRhcmdldHMuaW5kZXhPZih0YXJnZXRVbmlxdWVSZWZlcmVuY2UpICE9PSAtMTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFNldHMgdGhlIHRhcmdldCBhbmQgY29udGFpbmVyIG9mIHRoZSBBY3Rpb25JdGVtIHRvIG51bGwuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjbGVhckFjdGlvblN0YXRlKCkge1xyXG4gICAgICAgIHRoaXMudGFyZ2V0ID0gbnVsbDtcclxuICAgICAgICB0aGlzLmNvbnRhaW5lciA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGRzIHRoZSBBY3Rpb25JdGVtIHRvIHRoZSBnaXZlbiBjb250YWluZXIgYW5kIHNldHMgdGhlIEFjdGlvbkl0ZW0gdGFyZ2V0LiBTZXRzIHJlYWR5IHRvIHRydWUuXHJcbiAgICAgKiBAcGFyYW0gdGFyZ2V0IFRhcmdldCBvYmplY3QgdG8gYmUgdXNlZCBieSB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSBjb250YWluZXIgQWN0aW9uQ29udGFpbmVyIHRvIHNldCBhcyB0aGUgcGFyZW50IG9mIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWRkZWRUb0NvbnRhaW5lcih0YXJnZXQ6IGFueSwgY29udGFpbmVyOiBBY3Rpb25Db250YWluZXIpIHtcclxuICAgICAgICB0aGlzLnJlYWR5ID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNldEFjdGlvblN0YXRlKHRhcmdldCwgY29udGFpbmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlbW92ZXMgdGhlIEFjdGlvbkl0ZW0gZnJvbSBpdHMgY3VycmVudCBjb250YWluZXIgYW5kIHNldHMgcmVhZHkgdG8gZmFsc2UuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZW1vdmVkRnJvbUNvbnRhaW5lcigpIHtcclxuICAgICAgICB0aGlzLnJlYWR5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jbGVhckFjdGlvblN0YXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldFRhcmdldFVuaXF1ZVJlZmVyZW5jZSh0YXJnZXQ6IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIHRhcmdldDtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFRoZSBiYXNlIGNsYXNzIGZvciB0aGUgY29tcG9uZW50cyB0aGF0IGFjdHVhbGx5IHJlbmRlcnMgYWN0aW9ucy5cclxuICogVGhpcyBpcyByZWZlcmVlZCB0byBieSB0aGUgJ3JlbmRlcmVyJyBwcm9wZXJ0eSBvZiBBY3Rpb25JdGVtXHJcbiAqIEludGVybmFsbHkgaXQgaXMgdXNlZCBieSB0aGUgRHluYW1pY0FjdGlvbkl0ZW1Db21wb25lbnQgdG8gY3JlYXRlIGFuIGFjdGlvbiBpdGVtXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgQWN0aW9uSXRlbVJlbmRlcmVyQ29tcG9uZW50PFQgZXh0ZW5kcyBBY3Rpb25JdGVtPiB7XHJcbiAgICBwdWJsaWMgaXRlbTogVDtcclxuICAgIHB1YmxpYyBpdGVtQ2hhbmdlZChpdGVtOiBUKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtID0gaXRlbTtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFByb3ZpZGVzIHRoZSBhYmlsaXR5IHRvIGFkZCBhY3Rpb24gaXRlbXMgZnJvbSBodG1sIGJlc3QgZm9yIHNpbXBsZSBzY2VuYXJpb3Mgd2l0aG91dCBhIGNvbXBsZXggY29tbWFuZCBtb2RlbFxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWN0aW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgICBwcm90ZWN0ZWQgbG9nU291cmNlTmFtZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHN0cmluZ3M6IFN0cmluZ3MgPSBNc2Z0U21lLmdldFN0cmluZ3M8U3RyaW5ncz4oKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEZsYWcgc2V0IHRvIGhpZGUgdGhlIEFjdGlvbkl0ZW1Db21wb25lbnQuIFRydWUgZm9yIGhpZGRlbiwgZmFsc2Ugb3RoZXJ3aXNlLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGhpZGRlbjogYm9vbGVhbjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEZsYWcgc2V0IHRvIGVuYWJsZSBvciBkaXNhYmxlIHRoZSBBY3Rpb25JdGVtQ29tcG9uZW50LiBUcnVlIGZvciBlbmFibGVkLCBmYWxzZSBmb3IgZGlzYWJsZWQuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgZW5hYmxlZDogYm9vbGVhbjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEZsYWcgc2V0IHRvIGluZGljYXRlIGlmIEFjdGlvbkl0ZW1Db21wb25lbnQgaXMgY3VycmVudGx5IHRvZ2dsZWQuIFRydWUgZm9yIHRvZ2dsZWQsIGZhbHNlIGlmIG5vdC5cclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB0b2dnbGVkOiBib29sZWFuO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogTGFiZWwgdG8gYmUgZGlzcGxheWVkIGZvciB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyB0ZXh0OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDU1MgY2xhc3MgZm9yIGljb24gdG8gYmUgZGlzcGxheWVkIHdpdGggdGhlIEFjdGlvbkl0ZW0uXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgaWNvbkNsYXNzOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBY3Rpb25JdGVtIG9iamVjdCBhc3NvY2lhdGVkIHdpdGggdGhpcyBBY3Rpb25JdGVtQ29tcG9uZW50LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWN0aW9uOiBBY3Rpb25JdGVtO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ29uc3RydWN0b3IgZm9yIEFjdGlvbkl0ZW1Db21wb25lbnQuXHJcbiAgICAgKi9cclxuICAgIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgICAgIHRoaXMuYWN0aW9uID0gdGhpcy5jcmVhdGVBY3Rpb25JdGVtKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGNyZWF0ZUFjdGlvbkl0ZW0oKTogQWN0aW9uSXRlbTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIENhbGxiYWNrIG1ldGhvZCBydW4gYWZ0ZXIgZGVmYXVsdCBjaGFuZ2UgZGV0ZWN0b3IgaGFzIGV4ZWN1dGVkLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgICAgIGNvbnN0IHByb3BzID0gT2JqZWN0LmtleXMoY2hhbmdlcyk7XHJcbiAgICAgICAgcHJvcHMuZm9yRWFjaChwcm9wID0+IHtcclxuICAgICAgICAgICAgY29uc3QgY2hhbmdlID0gY2hhbmdlc1twcm9wXTtcclxuICAgICAgICAgICAgdGhpcy5hY3Rpb25bcHJvcF0gPSBjaGFuZ2UuY3VycmVudFZhbHVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vYW5ndWxhci9zcmMvY29udHJvbHMvYWN0aW9ucy9pdGVtcy9hY3Rpb24taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWtDLE1BQU0sZUFBZSxDQUFDOztBQUlqRjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQTREbkI7OztPQUdHO0lBQ0gsWUFBNEIsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQS9EckMsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUF3QjNCOztXQUVHO1FBQ0ksU0FBSSxHQUFHLEtBQUssQ0FBQztRQUVwQjs7V0FFRztRQUNJLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFdEI7O1dBRUc7UUFDSSxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRXZCOztXQUVHO1FBQ0ksV0FBTSxHQUFHLEtBQUssQ0FBQztRQVl0Qjs7V0FFRztRQUNJLFVBQUssR0FBRyxLQUFLLENBQUM7SUFNOEIsQ0FBQztJQUVwRDs7OztPQUlHO0lBQ0ksY0FBYyxDQUFDLE1BQVcsRUFBRSxTQUEwQjtRQUN6RCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUUzQixNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZ0JBQWdCO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksZ0JBQWdCLENBQUMsTUFBVyxFQUFFLFNBQTBCO1FBQzNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7T0FFRztJQUNJLG9CQUFvQjtRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsd0JBQXdCLENBQUMsTUFBVztRQUMxQyxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0NBQ0o7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sT0FBTywyQkFBMkI7SUFFN0IsV0FBVyxDQUFDLElBQU87UUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDckIsQ0FBQztDQUNKO0FBRUQ7O0dBRUc7QUFFSCxtREFBbUQ7QUFDbkQsTUFBTSxPQUFnQixtQkFBbUI7SUFnRHJDOztPQUVHO0lBQ0g7UUFqRE8sWUFBTyxHQUFZLE9BQU8sQ0FBQyxVQUFVLEVBQVcsQ0FBQztRQWtEcEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBSUQ7O09BRUc7SUFDSSxXQUFXLENBQUMsT0FBc0I7UUFDckMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzt5R0FsRWlCLG1CQUFtQjsyRUFBbkIsbUJBQW1CO3VGQUFuQixtQkFBbUI7Y0FGeEMsU0FBUztzQ0FPQyxRQUFRO2tCQURkLEtBQUs7WUFPQyxNQUFNO2tCQURaLEtBQUs7WUFPQyxPQUFPO2tCQURiLEtBQUs7WUFPQyxPQUFPO2tCQURiLEtBQUs7WUFPQyxJQUFJO2tCQURWLEtBQUs7WUFPQyxJQUFJO2tCQURWLEtBQUs7WUFPQyxTQUFTO2tCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RyaW5ncyB9IGZyb20gJy4uLy4uLy4uL2dlbmVyYXRlZC9zdHJpbmdzJztcclxuaW1wb3J0IHsgQWN0aW9uQ29udGFpbmVyIH0gZnJvbSAnLi4vY29udGFpbmVycy9hY3Rpb24tY29udGFpbmVyJztcclxuXHJcbi8qKlxyXG4gKiBEZWZpbmVzIHRoZSBtb2RlbCBvZiBhbiBhY3Rpb24gaXRlbSBpbmNsdWRpbmcgd2hpY2ggcmVuZGVyZXIgdG8gdXNlLlxyXG4gKiBUaGUgY29uc3VtZXIgY2FuIHByb3ZpZGUgYW4gYXJyYXkgb2YgdGhlc2UgdG8gdGhlIGFjdGlvbiBiYXIgJ2FjdGlvbnMnIGF0dHJpYnV0ZS5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25JdGVtIHtcclxuICAgIHByb3RlY3RlZCBidXN5VGFyZ2V0cyA9IFtdO1xyXG5cclxuICAgIHB1YmxpYyBhY3Rpb25JZDogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ1NTIGNsYXNzIGZvciBpY29uIHRvIGJlIGRpc3BsYXllZCB3aXRoIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgaWNvbkNsYXNzOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBOYW1lIG9mIGFjdGlvbiBpdGVtIHRvIGJlIHJlYWQgb3V0IGJ5IHNjcmVlbiByZWFkZXIuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBMYWJlbCB0byBiZSBkaXNwbGF5ZWQgZm9yIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgdGV4dDogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRml4ZWQgcGl4ZWwgd2lkdGggdG8gYmUgdXNlZCBmb3IgdGhlIEFjdGlvbkl0ZW0uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB3aWR0aDogbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyBzZXQgdG8gaW5kaWNhdGUgdGhlIEFjdGlvbkl0ZW0gaXMgY3VycmVudGx5IGluIHRoZSBidXN5IHN0YXRlIChkZWZhdWx0cyB0byBmYWxzZSkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBidXN5ID0gZmFsc2U7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHNldCB0byBpbmRpY2F0ZSB3aGV0aGVyIG9yIG5vdCB0aGUgQWN0aW9uSXRlbSBpcyBlbmFibGVkIChkZWZhdWx0cyB0byB0cnVlKS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIGVuYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyBzZXQgdG8gaW5kaWNhdGUgd2hldGhlciBvciBub3QgdGhlIEFjdGlvbkl0ZW0gaXMgdG9nZ2xlZCAoZGVmYXVsdHMgdG8gZmFsc2UpLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgdG9nZ2xlZCA9IGZhbHNlO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRmxhZyBzZXQgdG8gaW5kaWNhdGUgd2hldGhlciBvciBub3QgdGhlIEFjdGlvbkl0ZW0gaXMgaGlkZGVuIChkZWZhdWx0cyB0byBmYWxzZSkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBoaWRkZW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSB0YXJnZXQgb2JqZWN0IGZvciB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHRhcmdldDogYW55O1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHBhcmVudCBBY3Rpb25Db250YWluZXIgb2YgdGhlIEFjdGlvbkl0ZW0uXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjb250YWluZXI6IEFjdGlvbkNvbnRhaW5lcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEZsYWcgc2V0IHRvIGluZGljYXRlIHdoZXRoZXIgb3Igbm90IHRoZSBBY3Rpb25JdGVtIGNhbiBiZSBydW4gKGRlZmF1bHRzIHRvIGZhbHNlIGFuZCBzZXQgdG8gdHJ1ZSBvbmNlIGFkZGVkIHRvIGEgY29udGFpbmVyKS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlYWR5ID0gZmFsc2U7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb25zdHJ1Y3RvciBmb3IgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSByZW5kZXJlciBUaGUgcmVuZGVyZXIgaW5zdGFuY2UgdXNlZCB3aXRoIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgcmVuZGVyZXI6IFR5cGU8YW55PikgeyB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNZXRob2QgdG8gc2V0IHRoZSBzdGF0ZSBvZiB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSB0YXJnZXQgVGhlIHRhcmdldCBvYmplY3QgdG8gYmUgdXNlZCBieSB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSBjb250YWluZXIgVGhlIEFjdGlvbkNvbnRhaW5lciB0byBwbGFjZSB0aGUgQWN0aW9uSXRlbSBpbi5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldEFjdGlvblN0YXRlKHRhcmdldDogYW55LCBjb250YWluZXI6IEFjdGlvbkNvbnRhaW5lcikge1xyXG4gICAgICAgIHRoaXMudGFyZ2V0ID0gdGFyZ2V0O1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyID0gY29udGFpbmVyO1xyXG5cclxuICAgICAgICBjb25zdCB0YXJnZXRVbmlxdWVSZWZlcmVuY2UgPSB0aGlzLmdldFRhcmdldFVuaXF1ZVJlZmVyZW5jZSh0YXJnZXQpO1xyXG4gICAgICAgIHRoaXMuYnVzeSA9IHRoaXMuYnVzeVRhcmdldHMuaW5kZXhPZih0YXJnZXRVbmlxdWVSZWZlcmVuY2UpICE9PSAtMTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFNldHMgdGhlIHRhcmdldCBhbmQgY29udGFpbmVyIG9mIHRoZSBBY3Rpb25JdGVtIHRvIG51bGwuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjbGVhckFjdGlvblN0YXRlKCkge1xyXG4gICAgICAgIHRoaXMudGFyZ2V0ID0gbnVsbDtcclxuICAgICAgICB0aGlzLmNvbnRhaW5lciA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBZGRzIHRoZSBBY3Rpb25JdGVtIHRvIHRoZSBnaXZlbiBjb250YWluZXIgYW5kIHNldHMgdGhlIEFjdGlvbkl0ZW0gdGFyZ2V0LiBTZXRzIHJlYWR5IHRvIHRydWUuXHJcbiAgICAgKiBAcGFyYW0gdGFyZ2V0IFRhcmdldCBvYmplY3QgdG8gYmUgdXNlZCBieSB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqIEBwYXJhbSBjb250YWluZXIgQWN0aW9uQ29udGFpbmVyIHRvIHNldCBhcyB0aGUgcGFyZW50IG9mIHRoZSBBY3Rpb25JdGVtLlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWRkZWRUb0NvbnRhaW5lcih0YXJnZXQ6IGFueSwgY29udGFpbmVyOiBBY3Rpb25Db250YWluZXIpIHtcclxuICAgICAgICB0aGlzLnJlYWR5ID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNldEFjdGlvblN0YXRlKHRhcmdldCwgY29udGFpbmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlbW92ZXMgdGhlIEFjdGlvbkl0ZW0gZnJvbSBpdHMgY3VycmVudCBjb250YWluZXIgYW5kIHNldHMgcmVhZHkgdG8gZmFsc2UuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyByZW1vdmVkRnJvbUNvbnRhaW5lcigpIHtcclxuICAgICAgICB0aGlzLnJlYWR5ID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jbGVhckFjdGlvblN0YXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldFRhcmdldFVuaXF1ZVJlZmVyZW5jZSh0YXJnZXQ6IGFueSk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIHRhcmdldDtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFRoZSBiYXNlIGNsYXNzIGZvciB0aGUgY29tcG9uZW50cyB0aGF0IGFjdHVhbGx5IHJlbmRlcnMgYWN0aW9ucy5cclxuICogVGhpcyBpcyByZWZlcmVlZCB0byBieSB0aGUgJ3JlbmRlcmVyJyBwcm9wZXJ0eSBvZiBBY3Rpb25JdGVtXHJcbiAqIEludGVybmFsbHkgaXQgaXMgdXNlZCBieSB0aGUgRHluYW1pY0FjdGlvbkl0ZW1Db21wb25lbnQgdG8gY3JlYXRlIGFuIGFjdGlvbiBpdGVtXHJcbiAqXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgQWN0aW9uSXRlbVJlbmRlcmVyQ29tcG9uZW50PFQgZXh0ZW5kcyBBY3Rpb25JdGVtPiB7XHJcbiAgICBwdWJsaWMgaXRlbTogVDtcclxuICAgIHB1YmxpYyBpdGVtQ2hhbmdlZChpdGVtOiBUKSB7XHJcbiAgICAgICAgdGhpcy5pdGVtID0gaXRlbTtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFByb3ZpZGVzIHRoZSBhYmlsaXR5IHRvIGFkZCBhY3Rpb24gaXRlbXMgZnJvbSBodG1sIGJlc3QgZm9yIHNpbXBsZSBzY2VuYXJpb3Mgd2l0aG91dCBhIGNvbXBsZXggY29tbWFuZCBtb2RlbFxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogZGlyZWN0aXZlLWNsYXNzLXN1ZmZpeFxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWN0aW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcbiAgICBwcm90ZWN0ZWQgbG9nU291cmNlTmFtZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHN0cmluZ3M6IFN0cmluZ3MgPSBNc2Z0U21lLmdldFN0cmluZ3M8U3RyaW5ncz4oKTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGFjdGlvbklkOiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHNldCB0byBoaWRlIHRoZSBBY3Rpb25JdGVtQ29tcG9uZW50LiBUcnVlIGZvciBoaWRkZW4sIGZhbHNlIG90aGVyd2lzZS5cclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBoaWRkZW46IGJvb2xlYW47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHNldCB0byBlbmFibGUgb3IgZGlzYWJsZSB0aGUgQWN0aW9uSXRlbUNvbXBvbmVudC4gVHJ1ZSBmb3IgZW5hYmxlZCwgZmFsc2UgZm9yIGRpc2FibGVkLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGVuYWJsZWQ6IGJvb2xlYW47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBGbGFnIHNldCB0byBpbmRpY2F0ZSBpZiBBY3Rpb25JdGVtQ29tcG9uZW50IGlzIGN1cnJlbnRseSB0b2dnbGVkLiBUcnVlIGZvciB0b2dnbGVkLCBmYWxzZSBpZiBub3QuXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgdG9nZ2xlZDogYm9vbGVhbjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIExhYmVsIHRvIGJlIGRpc3BsYXllZCBmb3IgdGhlIEFjdGlvbkl0ZW0uXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgdGV4dDogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogTmFtZSBvZiBhY3Rpb24gaXRlbSB0byBiZSByZWFkIG91dCBieSBzY3JlZW4gcmVhZGVyLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIG5hbWU6IHN0cmluZztcclxuXHJcbiAgICAvKipcclxuICAgICAqIENTUyBjbGFzcyBmb3IgaWNvbiB0byBiZSBkaXNwbGF5ZWQgd2l0aCB0aGUgQWN0aW9uSXRlbS5cclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBpY29uQ2xhc3M6IHN0cmluZztcclxuXHJcbiAgICAvKipcclxuICAgICAqIEFjdGlvbkl0ZW0gb2JqZWN0IGFzc29jaWF0ZWQgd2l0aCB0aGlzIEFjdGlvbkl0ZW1Db21wb25lbnQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBhY3Rpb246IEFjdGlvbkl0ZW07XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDb25zdHJ1Y3RvciBmb3IgQWN0aW9uSXRlbUNvbXBvbmVudC5cclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5hY3Rpb24gPSB0aGlzLmNyZWF0ZUFjdGlvbkl0ZW0oKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQWN0aW9uSXRlbSgpOiBBY3Rpb25JdGVtO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2FsbGJhY2sgbWV0aG9kIHJ1biBhZnRlciBkZWZhdWx0IGNoYW5nZSBkZXRlY3RvciBoYXMgZXhlY3V0ZWQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgY29uc3QgcHJvcHMgPSBPYmplY3Qua2V5cyhjaGFuZ2VzKTtcclxuICAgICAgICBwcm9wcy5mb3JFYWNoKHByb3AgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBjaGFuZ2UgPSBjaGFuZ2VzW3Byb3BdO1xyXG4gICAgICAgICAgICB0aGlzLmFjdGlvbltwcm9wXSA9IGNoYW5nZS5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|