@koobiq/components 18.22.0 → 18.24.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/alert/_alert-theme.scss +4 -0
- package/alert/alert-tokens.scss +1 -1
- package/alert/alert.component.d.ts +8 -2
- package/badge/badge-tokens.scss +2 -2
- package/checkbox/checkbox.d.ts +6 -6
- package/code-block/code-block-highlight.d.ts +1 -1
- package/code-block/code-block.d.ts +2 -2
- package/core/animation/animation.d.ts +5 -2
- package/core/common-behaviors/checkbox.d.ts +5 -0
- package/core/common-behaviors/index.d.ts +1 -0
- package/core/formatters/date/formatter.d.ts +4 -3
- package/core/pop-up/pop-up-trigger.d.ts +9 -1
- package/core/utils/utils.d.ts +2 -0
- package/esm2022/actions-panel/actions-panel-container.mjs +1 -1
- package/esm2022/actions-panel/actions-panel.mjs +1 -1
- package/esm2022/alert/alert.component.mjs +11 -5
- package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +1 -1
- package/esm2022/badge/badge.component.mjs +2 -2
- package/esm2022/breadcrumbs/breadcrumbs.mjs +1 -1
- package/esm2022/button/button.component.mjs +3 -2
- package/esm2022/button-toggle/button-toggle.component.mjs +1 -1
- package/esm2022/checkbox/checkbox.mjs +5 -5
- package/esm2022/code-block/code-block-highlight.mjs +7 -6
- package/esm2022/code-block/code-block.mjs +7 -7
- package/esm2022/core/animation/animation.mjs +4 -1
- package/esm2022/core/common-behaviors/checkbox.mjs +2 -0
- package/esm2022/core/common-behaviors/color.mjs +1 -1
- package/esm2022/core/common-behaviors/index.mjs +2 -1
- package/esm2022/core/formatters/date/formatter.mjs +5 -10
- package/esm2022/core/formatters/number/formatter.mjs +1 -1
- package/esm2022/core/forms/validators.mjs +1 -1
- package/esm2022/core/line/line.mjs +1 -1
- package/esm2022/core/overlay/overlay-position-map.mjs +1 -1
- package/esm2022/core/pop-up/pop-up-trigger.mjs +26 -11
- package/esm2022/core/pop-up/pop-up.mjs +1 -4
- package/esm2022/core/select/common.mjs +1 -1
- package/esm2022/core/services/measure-scrollbar.service.mjs +1 -1
- package/esm2022/core/utils/utils.mjs +5 -1
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +1 -1
- package/esm2022/datepicker/datepicker-input.directive.mjs +1 -1
- package/esm2022/datepicker/datepicker.component.mjs +1 -1
- package/esm2022/datepicker/month-view.component.mjs +1 -1
- package/esm2022/dropdown/dropdown-item.component.mjs +1 -1
- package/esm2022/dropdown/dropdown-trigger.directive.mjs +1 -1
- package/esm2022/dropdown/dropdown.component.mjs +1 -1
- package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +1 -1
- package/esm2022/file-upload/file-drop.mjs +1 -1
- package/esm2022/file-upload/file-upload.mjs +1 -1
- package/esm2022/file-upload/single-file-upload.component.mjs +1 -1
- package/esm2022/filter-bar/filter-bar-button.mjs +2 -1
- package/esm2022/filter-bar/filter-bar.mjs +14 -1
- package/esm2022/filter-bar/filter-bar.module.mjs +5 -3
- package/esm2022/filter-bar/filter-bar.types.mjs +27 -2
- package/esm2022/filter-bar/filter-reset.mjs +15 -5
- package/esm2022/filter-bar/filter-search.mjs +18 -5
- package/esm2022/filter-bar/filters.mjs +22 -6
- package/esm2022/filter-bar/pipe-add.mjs +14 -4
- package/esm2022/filter-bar/pipe.directive.mjs +7 -25
- package/esm2022/filter-bar/pipes/base-pipe.mjs +31 -6
- package/esm2022/filter-bar/pipes/pipe-button.mjs +12 -6
- package/esm2022/filter-bar/pipes/pipe-date.mjs +26 -8
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +27 -8
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +8 -3
- package/esm2022/filter-bar/pipes/pipe-select.mjs +8 -3
- package/esm2022/filter-bar/pipes/pipe-state.mjs +2 -1
- package/esm2022/filter-bar/pipes/pipe-text.mjs +12 -3
- package/esm2022/filter-bar/pipes/pipe-title.mjs +2 -1
- package/esm2022/form-field/form-field.mjs +1 -1
- package/esm2022/form-field/validate.directive.mjs +1 -1
- package/esm2022/input/input-number.mjs +1 -1
- package/esm2022/list/list-selection.component.mjs +1 -1
- package/esm2022/markdown/markdown.component.mjs +2 -2
- package/esm2022/modal/modal.component.mjs +1 -1
- package/esm2022/modal/modal.service.mjs +1 -1
- package/esm2022/navbar/navbar.component.mjs +9 -12
- package/esm2022/navbar/vertical-navbar.component.mjs +9 -13
- package/esm2022/overflow-items/overflow-items.mjs +1 -1
- package/esm2022/popover/popover-confirm.component.mjs +1 -1
- package/esm2022/radio/radio.component.mjs +3 -3
- package/esm2022/scrollbar/scrollbar.component.mjs +1 -1
- package/esm2022/scrollbar/scrollbar.directive.mjs +1 -1
- package/esm2022/select/select.component.mjs +1 -1
- package/esm2022/sidepanel/sidepanel.service.mjs +1 -1
- package/esm2022/splitter/splitter.component.mjs +1 -1
- package/esm2022/tabs/paginated-tab-header.mjs +1 -1
- package/esm2022/tabs/tab-body.component.mjs +1 -1
- package/esm2022/tabs/tab-group.component.mjs +1 -1
- package/esm2022/tags/tag-input.mjs +1 -1
- package/esm2022/tags/tag-list.component.mjs +1 -1
- package/esm2022/tags/tag.component.mjs +1 -1
- package/esm2022/textarea/textarea.component.mjs +1 -1
- package/esm2022/timepicker/timepicker.directive.mjs +1 -1
- package/esm2022/toggle/toggle.component.mjs +95 -16
- package/esm2022/tree/control/base-tree-control.mjs +1 -1
- package/esm2022/tree/control/flat-tree-control.filters.mjs +1 -1
- package/esm2022/tree/control/nested-tree-control.mjs +1 -1
- package/esm2022/tree/data-source/flat-data-source.mjs +1 -1
- package/esm2022/tree/padding.directive.mjs +1 -1
- package/esm2022/tree/tree-base.mjs +1 -1
- package/esm2022/tree/tree-selection.component.mjs +1 -1
- package/esm2022/tree-select/tree-select.component.mjs +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-alert.mjs +10 -4
- package/fesm2022/koobiq-components-alert.mjs.map +1 -1
- package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
- package/fesm2022/koobiq-components-badge.mjs +2 -2
- package/fesm2022/koobiq-components-badge.mjs.map +1 -1
- package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +2 -1
- package/fesm2022/koobiq-components-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +4 -4
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +12 -11
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +36 -23
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +1481 -1323
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-markdown.mjs +2 -2
- package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +15 -22
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-radio.mjs +2 -2
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +94 -15
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/filter-bar/filter-bar-button.d.ts +1 -0
- package/filter-bar/filter-bar.d.ts +14 -0
- package/filter-bar/filter-bar.types.d.ts +13 -3
- package/filter-bar/filter-reset.d.ts +6 -2
- package/filter-bar/filter-search.d.ts +17 -10
- package/filter-bar/filters.d.ts +26 -11
- package/filter-bar/pipe-add.d.ts +10 -0
- package/filter-bar/pipe.directive.d.ts +5 -5
- package/filter-bar/pipes/base-pipe.d.ts +31 -3
- package/filter-bar/pipes/pipe-button.d.ts +6 -1
- package/filter-bar/pipes/pipe-date.d.ts +30 -10
- package/filter-bar/pipes/pipe-date.scss +29 -27
- package/filter-bar/pipes/pipe-datetime.d.ts +31 -10
- package/filter-bar/pipes/pipe-multi-select.d.ts +7 -0
- package/filter-bar/pipes/pipe-select.d.ts +7 -0
- package/filter-bar/pipes/pipe-state.d.ts +1 -0
- package/filter-bar/pipes/pipe-text.d.ts +7 -0
- package/link/_link-theme.scss +14 -0
- package/markdown/markdown.scss +1 -5
- package/navbar/navbar.component.d.ts +2 -2
- package/navbar/vertical-navbar.component.d.ts +3 -3
- package/package.json +5 -5
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/prebuilt-themes/theme.css +1 -1
- package/radio/radio.scss +0 -1
- package/schematics/ng-add/index.js +3 -3
- package/toggle/_toggle-theme.scss +12 -3
- package/toggle/toggle-tokens.scss +2 -2
- package/toggle/toggle.component.d.ts +22 -4
- package/toggle/toggle.scss +37 -0
|
@@ -99,7 +99,7 @@ export class KbqBadge {
|
|
|
99
99
|
this._badgeColor = value || KbqBadgeColors.FadeContrast;
|
|
100
100
|
}
|
|
101
101
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqBadge, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: KbqBadge, selector: "kbq-badge", inputs: { compact: "compact", outline: "outline", badgeColor: "badgeColor" }, host: { properties: { "class.kbq-badge_compact": "compact", "class.kbq-badge-filled": "!outline", "class.kbq-badge-outline": "outline", "class": "badgeColor" }, classAttribute: "kbq-badge" }, queries: [{ propertyName: "iconItem", first: true, predicate: KbqIconItem, descendants: true }], ngImport: i0, template: '<ng-content />', isInline: true, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast-fade);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast-fade);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
102
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: KbqBadge, selector: "kbq-badge", inputs: { compact: "compact", outline: "outline", badgeColor: "badgeColor" }, host: { properties: { "class.kbq-badge_compact": "compact", "class.kbq-badge-filled": "!outline", "class.kbq-badge-outline": "outline", "class": "badgeColor" }, classAttribute: "kbq-badge" }, queries: [{ propertyName: "iconItem", first: true, predicate: KbqIconItem, descendants: true }], ngImport: i0, template: '<ng-content />', isInline: true, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
103
103
|
}
|
|
104
104
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: KbqBadge, decorators: [{
|
|
105
105
|
type: Component,
|
|
@@ -109,7 +109,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
109
109
|
'[class.kbq-badge-filled]': '!outline',
|
|
110
110
|
'[class.kbq-badge-outline]': 'outline',
|
|
111
111
|
'[class]': 'badgeColor'
|
|
112
|
-
}, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast-fade);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast-fade);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error)}\n"] }]
|
|
112
|
+
}, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error)}\n"] }]
|
|
113
113
|
}], propDecorators: { iconItem: [{
|
|
114
114
|
type: ContentChild,
|
|
115
115
|
args: [KbqIconItem]
|
|
@@ -259,4 +259,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
259
259
|
type: ViewChildren,
|
|
260
260
|
args: [KbqOverflowItem, { read: ElementRef }]
|
|
261
261
|
}] } });
|
|
262
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2JyZWFkY3J1bWJzL2JyZWFkY3J1bWJzLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9icmVhZGNydW1icy9icmVhZGNydW1icy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFFSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBR0wsU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFtQixlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUs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c0JBQTlELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBTTdCLElBQUk7c0JBQVosS0FBSztnQkFNRyxHQUFHO3NCQUFYLEtBQUs7Z0JBS2tDLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSTdCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR2EsU0FBUztzQkFEM0IsWUFBWTt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBSXpDLEtBQUs7c0JBRHZCLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2dCQUluQyxNQUFNO3NCQUR0QixTQUFTO3VCQUFDLHNCQUFzQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJdEMsYUFBYTtzQkFEN0IsWUFBWTt1QkFBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEZXN0cm95UmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBQcm92aWRlcixcbiAgICBRdWVyeUxpc3QsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgS2JxQnV0dG9uLCBLYnFCdXR0b25Nb2R1bGUsIEticUJ1dHRvblN0eWxlcyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgS2JxQ29tcG9uZW50Q29sb3JzLCBLYnFEZWZhdWx0U2l6ZXMsIFBvcFVwUGxhY2VtZW50cyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticURyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEticUljb25Nb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBLYnFPdmVyZmxvd0l0ZW0sIEticU92ZXJmbG93SXRlbXNNb2R1bGUsIEticU92ZXJmbG93SXRlbXNSZXN1bHQgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvb3ZlcmZsb3ctaXRlbXMnO1xuaW1wb3J0IHsgS2JxVGl0bGVNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdGl0bGUnO1xuaW1wb3J0IHsgUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSwgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQHJhZGl4LW5nL3ByaW1pdGl2ZXMvcm92aW5nLWZvY3VzJztcbmltcG9ydCB7IEticUJyZWFkY3J1bWJzQ29uZmlndXJhdGlvbiwgS2JxQnJlYWRjcnVtYnNXcmFwTW9kZSB9IGZyb20gJy4vYnJlYWRjcnVtYnMudHlwZXMnO1xuXG5jb25zdCBLQlFfQlJFQURDUlVNQlNfREVGQVVMVF9DT05GSUdVUkFUSU9OOiBLYnFCcmVhZGNydW1ic0NvbmZpZ3VyYXRpb24gPSB7XG4gICAgbWF4OiA0LFxuICAgIHNpemU6ICdub3JtYWwnLFxuICAgIGZpcnN0SXRlbU5lZ2F0aXZlTWFyZ2luOiB0cnVlLFxuICAgIHdyYXBNb2RlOiAnYXV0bydcbn07XG5cbi8qKiBCcmVhZGNydW1icyBvcHRpb25zIGdsb2JhbCBjb25maWd1cmF0aW9uIHByb3ZpZGVyLiAqL1xuZXhwb3J0IGNvbnN0IEtCUV9CUkVBRENSVU1CU19DT05GSUdVUkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPEticUJyZWFkY3J1bWJzQ29uZmlndXJhdGlvbj4oXG4gICAgJ0tCUV9CUkVBRENSVU1CU19DT05GSUdVUkFUSU9OJyxcbiAgICB7IGZhY3Rvcnk6ICgpID0+IEtCUV9CUkVBRENSVU1CU19ERUZBVUxUX0NPTkZJR1VSQVRJT04gfVxuKTtcblxuLyoqIFV0aWxpdHkgcHJvdmlkZXIgZm9yIGBLQlFfQlJFQURDUlVNQlNfQ09ORklHVVJBVElPTmAuICovXG5leHBvcnQgY29uc3Qga2JxQnJlYWRjcnVtYnNDb25maWd1cmF0aW9uUHJvdmlkZXIgPSAoY29uZmlndXJhdGlvbjogUGFydGlhbDxLYnFCcmVhZGNydW1ic0NvbmZpZ3VyYXRpb24+KTogUHJvdmlkZXIgPT4gKHtcbiAgICBwcm92aWRlOiBLQlFfQlJFQURDUlVNQlNfQ09ORklHVVJBVElPTixcbiAgICB1c2VWYWx1ZTogeyAuLi5LQlFfQlJFQURDUlVNQlNfREVGQVVMVF9DT05GSUdVUkFUSU9OLCAuLi5jb25maWd1cmF0aW9uIH1cbn0pO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25nLXRlbXBsYXRlW2ticUJyZWFkY3J1bWJzU2VwYXJhdG9yXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWJyZWFkY3J1bWJzLXNlcGFyYXRvcidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticUJyZWFkY3J1bWJzU2VwYXJhdG9yIHtcbiAgICByZWFkb25seSB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZik7XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHN0eWxlIGFuZCBjb25maWd1cmUgYnV0dG9ucyB1c2VkIGFzIGJyZWFkY3J1bWIgaXRlbXMuXG4gKiAtIEluaGVyaXRzIGZvY3VzIG1hbmFnZW1lbnQgYmVoYXZpb3IgZnJvbSBgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlYC5cbiAqIC0gT3B0aW9uYWxseSBpbmplY3RzIGBLYnFCdXR0b25gIHRvIGN1c3RvbWl6ZSBpdHMgc3R5bGUgZm9yIGJyZWFkY3J1bWIgdXNhZ2UuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdba2JxLWJ1dHRvbl1ba2JxQnJlYWRjcnVtYl0nLFxuICAgIGhvc3Q6IHsgY2xhc3M6ICdrYnEtYnJlYWRjcnVtYi1pdGVtJyB9LFxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBLYnFCcmVhZGNydW1iQnV0dG9uIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGJ1dHRvbiA9IGluamVjdChLYnFCdXR0b24sIHsgb3B0aW9uYWw6IHRydWUsIHNlbGY6IHRydWUgfSk7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuYnV0dG9uKSB7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbi5jb2xvciA9IEticUNvbXBvbmVudENvbG9ycy5Db250cmFzdDtcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uLmticVN0eWxlID0gS2JxQnV0dG9uU3R5bGVzLlRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIERpcmVjdGl2ZSBwcm92aWRlcyBhIHdheSB0byBkZWZpbmUgYSBjdXN0b20gdGVtcGxhdGUgZm9yIGJyZWFkY3J1bWIgcmVuZGVyaW5nLCBsZXZlcmFnaW5nIFRlbXBsYXRlUmVmXG4gKlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW2ticUJyZWFkY3J1bWJWaWV3XSdcbn0pXG5leHBvcnQgY2xhc3MgS2JxQnJlYWRjcnVtYlZpZXcge1xuICAgIHJlYWRvbmx5IHRlbXBsYXRlUmVmID0gaW5qZWN0KFRlbXBsYXRlUmVmKTtcbn1cblxuLyoqXG4gKiBDb21wb25lbnQgcmVwcmVzZW50cyBhbiBpbmRpdmlkdWFsIGJyZWFkY3J1bWIgaXRlbSB3aXRoIG9wdGlvbmFsIHN1cHBvcnQgZm9yIHJvdXRlciBuYXZpZ2F0aW9uIGFuZCBzdHlsaW5nLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAna2JxLWJyZWFkY3J1bWItaXRlbScsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICBgLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEticUJyZWFkY3J1bWJJdGVtIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdGV4dCBkaXNwbGF5ZWQgZm9yIHRoZSBicmVhZGNydW1iIGl0ZW0uXG4gICAgICogVGhpcyB0ZXh0IHdpbGwgYmUgc2hvd24gaWYgYnJlYWRjcnVtYiBpdGVtIGlzIGhpZGRlbiBpbiBkcm9wZG93bi5cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0ZXh0OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGJyZWFkY3J1bWIgaXRlbSBpcyBkaXNhYmxlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGJyZWFkY3J1bWIgaXRlbSBpcyB0aGUgY3VycmVudC9hY3RpdmUgaXRlbS5cbiAgICAgKiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBjdXJyZW50OiBib29sZWFuID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogQSByZWZlcmVuY2UgdG8gYSBjdXN0b20gdGVtcGxhdGUgcHJvdmlkZWQgZm9yIHRoZSBicmVhZGNydW1iIGl0ZW0gY29udGVudC5cbiAgICAgKiBUaGUgdGVtcGxhdGUgY2FuIGJlIHVzZWQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0aGUgYnJlYWRjcnVtYi5cbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKEticUJyZWFkY3J1bWJWaWV3LCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGN1c3RvbVRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIC8qKlxuICAgICAqIEFuIG9wdGlvbmFsIGBSb3V0ZXJMaW5rYCBpbnN0YW5jZSBmb3IgbmF2aWdhdGluZyB0byBhIHNwZWNpZmljIHJvdXRlLlxuICAgICAqIEluamVjdGVkIGZyb20gdGhlIGhvc3QgZWxlbWVudCwgaWYgYXZhaWxhYmxlIGFuZCBwcm9qZWN0aW5nIHRvIHRoZSBoaWRkZW4gYnJlYWRjcnVtYiBpdGVtIGluIGRyb3Bkb3duLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJvdXRlckxpbmsgPSBpbmplY3QoUm91dGVyTGluaywgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KTtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2ticS1icmVhZGNydW1icyxba2JxLWJyZWFkY3J1bWJzXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JyZWFkY3J1bWJzLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JyZWFkY3J1bWJzLnNjc3MnLCAnLi9icmVhZGNydW1icy10b2tlbnMuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBSb3V0ZXJMaW5rLFxuICAgICAgICBLYnFJY29uTW9kdWxlLFxuICAgICAgICBLYnFCdXR0b25Nb2R1bGUsXG4gICAgICAgIEticURyb3Bkb3duTW9kdWxlLFxuICAgICAgICBLYnFCcmVhZGNydW1iSXRlbSxcbiAgICAgICAgS2JxQnJlYWRjcnVtYkJ1dHRvbixcbiAgICAgICAgUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSxcbiAgICAgICAgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlLFxuICAgICAgICBLYnFUaXRsZU1vZHVsZSxcbiAgICAgICAgS2JxT3ZlcmZsb3dJdGVtc01vZHVsZVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1icmVhZGNydW1icycsXG4gICAgICAgICdbY2xhc3Mua2JxLWJyZWFkY3J1bWJzX2NvbXBhY3RdJzogJ3NpemUgPT09IFwiY29tcGFjdFwiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfbm9ybWFsXSc6ICdzaXplID09PSBcIm5vcm1hbFwiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfYmlnXSc6ICdzaXplID09PSBcImJpZ1wiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfd3JhcF0nOiAnd3JhcE1vZGUgPT09IFwid3JhcFwiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfZmlyc3QtaXRlbS1uZWdhdGl2ZS1tYXJnaW5dJzogJ2ZpcnN0SXRlbU5lZ2F0aXZlTWFyZ2luJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtbGFiZWxdJzogXCInYnJlYWRjcnVtYidcIlxuICAgIH0sXG4gICAgLy8gQFRPRE8gYWRkIHN1cHBvcnQgZm9yIEhvbWUsRW5kIGtleXMgaW50ZXJhY3Rpb24gKCNEUy0zMzM0KVxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgS2JxQnJlYWRjcnVtYnMgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29uZmlndXJhdGlvbiA9IGluamVjdChLQlFfQlJFQURDUlVNQlNfQ09ORklHVVJBVElPTik7XG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lcyBpZiBhIG5lZ2F0aXZlIG1hcmdpbiBzaG91bGQgYmUgYXBwbGllZCB0byB0aGUgZmlyc3QgYnJlYWRjcnVtYiBpdGVtLlxuICAgICAqXG4gICAgICogQHNlZSBLYnFCcmVhZGNydW1ic0NvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZmlyc3RJdGVtTmVnYXRpdmVNYXJnaW46IGJvb2xlYW4gPVxuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24uZmlyc3RJdGVtTmVnYXRpdmVNYXJnaW47XG4gICAgLyoqXG4gICAgICogU2l6ZSBvZiB0aGUgYnJlYWRjcnVtYnMuIEFmZmVjdHMgZm9udCBzaXplLlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgQElucHV0KCkgc2l6ZTogS2JxRGVmYXVsdFNpemVzID0gdGhpcy5jb25maWd1cmF0aW9uLnNpemU7XG4gICAgLyoqXG4gICAgICogTWF4aW11bSBudW1iZXIgb2YgdmlzaWJsZSBicmVhZGNydW1iIGl0ZW1zLlxuICAgICAqIFJlbWFpbmluZyBpdGVtcyBhcmUgY29sbGFwc2VkIGludG8gYSBkcm9wZG93biBpZiB0aGUgdG90YWwgZXhjZWVkcyB0aGlzIHZhbHVlLlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgQElucHV0KCkgbWF4OiBudW1iZXIgfCBudWxsID0gdGhpcy5jb25maWd1cmF0aW9uLm1heDtcbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgYnJlYWRjcnVtYnMgYXJlIGRpc2FibGVkLlxuICAgICAqIFdoZW4gZGlzYWJsZWQsIHVzZXIgaW50ZXJhY3Rpb25zIGFyZSBibG9ja2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIFdyYXBwaW5nIGJlaGF2aW9yIG9mIHRoZSBicmVhZGNydW1iIGl0ZW1zLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHdyYXBNb2RlOiBLYnFCcmVhZGNydW1ic1dyYXBNb2RlID0gdGhpcy5jb25maWd1cmF0aW9uLndyYXBNb2RlO1xuXG4gICAgQENvbnRlbnRDaGlsZChLYnFCcmVhZGNydW1ic1NlcGFyYXRvciwgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXBhcmF0b3I/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEticUJyZWFkY3J1bWJJdGVtKSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXM6IFF1ZXJ5TGlzdDxLYnFCcmVhZGNydW1iSXRlbT47XG5cbiAgICBAVmlld0NoaWxkKEticU92ZXJmbG93SXRlbXNSZXN1bHQsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzdWx0OiBFbGVtZW50UmVmO1xuXG4gICAgQFZpZXdDaGlsZHJlbihLYnFPdmVyZmxvd0l0ZW0sIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3ZlcmZsb3dJdGVtczogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gICAgLyoqXG4gICAgICogRW5zdXJlcyBhdCBsZWFzdCBtaW5pbXVtIG51bWJlciBvZiBicmVhZGNydW1iIGl0ZW1zIGFyZSBzaG93bi5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWluVmlzaWJsZUl0ZW1zID0gMjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgS2JxQ29tcG9uZW50Q29sb3JzID0gS2JxQ29tcG9uZW50Q29sb3JzO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBLYnFCdXR0b25TdHlsZXMgPSBLYnFCdXR0b25TdHlsZXM7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IFBvcFVwUGxhY2VtZW50cyA9IFBvcFVwUGxhY2VtZW50cztcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgLyoqIEBkb2NzLXByaXZhdGUgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0IGl0ZW1zRXhjbHVkaW5nRWRnZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLnRvQXJyYXkoKS5zbGljZSgxLCAtMSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyB0aGUgdG90YWwgd2lkdGggb2YgdmlzaWJsZSBpdGVtcyBiYXNlZCBvbiB0aGUgYG1heGAgdmFsdWUgYW5kIG92ZXJmbG93IGl0ZW1zLlxuICAgICAqIEByZXR1cm5zIHtudW1iZXIgfCBudWxsfSBUaGUgY29tcHV0ZWQgbWF4IHdpZHRoIGZvciBvdmVyZmxvdyBpdGVtcyBvciBudWxsIGlmIGNvbmRpdGlvbnMgYXJlIG5vdCBtZXQuXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXQgbWF4V2lkdGgoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLm92ZXJmbG93SXRlbXMgfHxcbiAgICAgICAgICAgICF0aGlzLm92ZXJmbG93SXRlbXMubGVuZ3RoIHx8XG4gICAgICAgICAgICB0aGlzLm1heCA9PT0gbnVsbCB8fFxuICAgICAgICAgICAgdGhpcy5tYXggPj0gdGhpcy5pdGVtcy5sZW5ndGggfHxcbiAgICAgICAgICAgIHRoaXMubWF4IDwgdGhpcy5taW5WaXNpYmxlSXRlbXNcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCB2aXNpYmxlSXRlbXNXaWR0aCA9IHRoaXMuZ2V0SXRlbVdpZHRoKHRoaXMucmVzdWx0KTtcbiAgICAgICAgLy8gUmVvcmRlcnMgb3ZlcmZsb3cgaXRlbXMgdG8gcHJpb3JpdGl6ZSB0aGUgZmlyc3QgYW5kIGxhc3QgZWxlbWVudHNcbiAgICAgICAgY29uc3Qgc29ydGVkSXRlbXMgPSBbXG4gICAgICAgICAgICAuLi50aGlzLm92ZXJmbG93SXRlbXMudG9BcnJheSgpLnNsaWNlKDEsIC0xKSxcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dJdGVtcy5maXJzdCxcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dJdGVtcy5sYXN0XG4gICAgICAgIF07XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm1heCAtIDE7IGkrKykge1xuICAgICAgICAgICAgdmlzaWJsZUl0ZW1zV2lkdGggKz0gdGhpcy5nZXRJdGVtV2lkdGgoc29ydGVkSXRlbXNbc29ydGVkSXRlbXMubGVuZ3RoIC0gaSAtIDFdKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmlzaWJsZUl0ZW1zV2lkdGg7XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgICAgICB0aGlzLml0ZW1zLmNoYW5nZXMucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEl0ZW1XaWR0aChpdGVtPzogRWxlbWVudFJlZikge1xuICAgICAgICByZXR1cm4gaXRlbSA/IGl0ZW0ubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCA6IDA7XG4gICAgfVxufVxuIiwiQGlmIChpdGVtcy5sZW5ndGggPCBtaW5WaXNpYmxlSXRlbXMgfHwgd3JhcE1vZGUgIT09ICdhdXRvJykge1xuICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXM7IHRyYWNrIGl0ZW07IGxldCBsYXN0ID0gJGxhc3QpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1icmVhZGNydW1iLWl0ZW1fX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJyZWFkY3J1bWJUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0sIGxhc3Q6IGxhc3QgfVwiIC8+XG4gICAgICAgICAgICBAaWYgKCFsYXN0KSB7XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzZXBhcmF0b3JUZW1wbGF0ZVwiIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbn0gQGVsc2Uge1xuICAgIDxkaXZcbiAgICAgICAgI2ticU92ZXJmbG93SXRlbXM9XCJrYnFPdmVyZmxvd0l0ZW1zXCJcbiAgICAgICAga2JxT3ZlcmZsb3dJdGVtc1xuICAgICAgICByZXZlcnNlT3ZlcmZsb3dPcmRlclxuICAgICAgICBjbGFzcz1cImxheW91dC1hbGlnbi1zdGFydC1jZW50ZXJcIlxuICAgICAgICBbc3R5bGUubWF4LXdpZHRoLnB4XT1cIm1heFdpZHRoXCJcbiAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtYnJlYWRjcnVtYi1pdGVtX19jb250YWluZXJcIiBba2JxT3ZlcmZsb3dJdGVtXT1cIjBcIiBbb3JkZXJdPVwiaXRlbXMubGVuZ3RoXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnJlYWRjcnVtYlRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbXMuZmlyc3QsIGxhc3Q6IGZhbHNlIH1cIiAvPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzZXBhcmF0b3JUZW1wbGF0ZVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEBUT0RPIGRlbGF5IHJlbmRlcmluZyBmb3IgcHJvcGVyIGVsZW1lbnRzIG9yZGVyICgjRFMtMzMzNCktLS0+XG4gICAgICAgIEBpZiAodHJ1ZSkge1xuICAgICAgICAgICAgPGRpdiBrYnFPdmVyZmxvd0l0ZW1zUmVzdWx0IGNsYXNzPVwia2JxLWJyZWFkY3J1bWItaXRlbV9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBrYnEtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGticUJyZWFkY3J1bWJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJrYnEtYnJlYWRjcnVtYl9fZXhwYW5kXCJcbiAgICAgICAgICAgICAgICAgICAgW2ticURyb3Bkb3duVHJpZ2dlckZvcl09XCJoaWRkZW5CcmVhZGNydW1ic0Ryb3Bkb3duXCJcbiAgICAgICAgICAgICAgICAgICAgW2ticVN0eWxlXT1cIkticUJ1dHRvblN0eWxlcy5UcmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICAgIFtvcGVuQnlBcnJvd0Rvd25dPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGkga2JxLWljb249XCJrYnEtZWxsaXBzaXMtaG9yaXpvbnRhbF8xNlwiIFtjb2xvcl09XCJLYnFDb21wb25lbnRDb2xvcnMuQ29udHJhc3RGYWRlXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwic2VwYXJhdG9yVGVtcGxhdGVcIiAvPlxuXG4gICAgICAgICAgICAgICAgPGticS1kcm9wZG93biAjaGlkZGVuQnJlYWRjcnVtYnNEcm9wZG93bj1cImticURyb3Bkb3duXCI+XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXM7IHRyYWNrIGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoa2JxT3ZlcmZsb3dJdGVtcy5oaWRkZW5JdGVtSURzKCkuaGFzKCRpbmRleCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cImticS1icmVhZGNydW1iLWl0ZW1fX2xpbmstYmVoYXZpb3JcIiBbcm91dGVyTGlua109XCJpdGVtLnJvdXRlckxpbms/LnVybFRyZWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBrYnEtZHJvcGRvd24taXRlbSBbZGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZFwiPnt7IGl0ZW0udGV4dCB9fTwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwva2JxLWRyb3Bkb3duPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtc0V4Y2x1ZGluZ0VkZ2VzOyB0cmFjayBpdGVtOyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtYnJlYWRjcnVtYi1pdGVtX19jb250YWluZXJcIiBba2JxT3ZlcmZsb3dJdGVtXT1cImluZGV4ICsgMVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJicmVhZGNydW1iVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtLCBsYXN0OiBmYWxzZSB9XCIgLz5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlcGFyYXRvclRlbXBsYXRlXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIDxkaXYgYWx3YXlzVmlzaWJsZSBjbGFzcz1cImticS1icmVhZGNydW1iLWl0ZW1fX2NvbnRhaW5lclwiIFtrYnFPdmVyZmxvd0l0ZW1dPVwiaXRlbXMubGVuZ3RoIC0gMVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJyZWFkY3J1bWJUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW1zLmxhc3QsIGxhc3Q6IHRydWUgfVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxufVxuXG48bmctdGVtcGxhdGUgI2JyZWFkY3J1bWJUZW1wbGF0ZSBsZXQtaXRlbSBsZXQtbGFzdD1cImxhc3RcIj5cbiAgICBAaWYgKGl0ZW0uY3VzdG9tVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtLmN1c3RvbVRlbXBsYXRlUmVmXCIgLz5cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgPGEgdGFiaW5kZXg9XCItMVwiIGNsYXNzPVwia2JxLWJyZWFkY3J1bWItaXRlbV9fbGluay1iZWhhdmlvclwiIFtyb3V0ZXJMaW5rXT1cIml0ZW0ucm91dGVyTGluaz8udXJsVHJlZVwiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGticS1idXR0b25cbiAgICAgICAgICAgICAgICBrYnEtdGl0bGVcbiAgICAgICAgICAgICAgICBrYnFCcmVhZGNydW1iXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jdXJyZW50XT1cImxhc3QgPyAncGFnZScgOiBudWxsXCJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXRlbS5kaXNhYmxlZCB8fCBsYXN0XCJcbiAgICAgICAgICAgICAgICBba2JxUGxhY2VtZW50UHJpb3JpdHldPVwiUG9wVXBQbGFjZW1lbnRzLkJvdHRvbVwiXG4gICAgICAgICAgICAgICAgW2ticVRvb2x0aXBBcnJvd109XCJmYWxzZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgaXRlbS50ZXh0IH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9hPlxuICAgIH1cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2VwYXJhdG9yVGVtcGxhdGU+XG4gICAgQGlmIChzZXBhcmF0b3IpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzZXBhcmF0b3JcIiAvPlxuICAgIH0gQGVsc2Uge1xuICAgICAgICA8aSBrYnEtaWNvbj1cIlwiIGNsYXNzPVwia2JxLWJyZWFkY3J1bWJfX3NlcGFyYXRvclwiIFtjb2xvcl09XCJLYnFDb21wb25lbnRDb2xvcnMuQ29udHJhc3RGYWRlXCI+Jm5ic3A7LyZuYnNwOzwvaT5cbiAgICB9XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
262
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2JyZWFkY3J1bWJzL2JyZWFkY3J1bWJzLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9icmVhZGNydW1icy9icmVhZGNydW1icy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFFSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBR0wsU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFtQixlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUs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c0JBQTlELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBTTdCLElBQUk7c0JBQVosS0FBSztnQkFNRyxHQUFHO3NCQUFYLEtBQUs7Z0JBS2tDLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSTdCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR2EsU0FBUztzQkFEM0IsWUFBWTt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBSXpDLEtBQUs7c0JBRHZCLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO2dCQUluQyxNQUFNO3NCQUR0QixTQUFTO3VCQUFDLHNCQUFzQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJdEMsYUFBYTtzQkFEN0IsWUFBWTt1QkFBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEZXN0cm95UmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgaW5qZWN0LFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBQcm92aWRlcixcbiAgICBRdWVyeUxpc3QsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFJvdXRlckxpbmsgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgS2JxQnV0dG9uLCBLYnFCdXR0b25Nb2R1bGUsIEticUJ1dHRvblN0eWxlcyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgS2JxQ29tcG9uZW50Q29sb3JzLCBLYnFEZWZhdWx0U2l6ZXMsIFBvcFVwUGxhY2VtZW50cyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticURyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2Ryb3Bkb3duJztcbmltcG9ydCB7IEticUljb25Nb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBLYnFPdmVyZmxvd0l0ZW0sIEticU92ZXJmbG93SXRlbXNNb2R1bGUsIEticU92ZXJmbG93SXRlbXNSZXN1bHQgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvb3ZlcmZsb3ctaXRlbXMnO1xuaW1wb3J0IHsgS2JxVGl0bGVNb2R1bGUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvdGl0bGUnO1xuaW1wb3J0IHsgUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSwgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQHJhZGl4LW5nL3ByaW1pdGl2ZXMvcm92aW5nLWZvY3VzJztcbmltcG9ydCB7IEticUJyZWFkY3J1bWJzQ29uZmlndXJhdGlvbiwgS2JxQnJlYWRjcnVtYnNXcmFwTW9kZSB9IGZyb20gJy4vYnJlYWRjcnVtYnMudHlwZXMnO1xuXG5jb25zdCBLQlFfQlJFQURDUlVNQlNfREVGQVVMVF9DT05GSUdVUkFUSU9OOiBLYnFCcmVhZGNydW1ic0NvbmZpZ3VyYXRpb24gPSB7XG4gICAgbWF4OiA0LFxuICAgIHNpemU6ICdub3JtYWwnLFxuICAgIGZpcnN0SXRlbU5lZ2F0aXZlTWFyZ2luOiB0cnVlLFxuICAgIHdyYXBNb2RlOiAnYXV0bydcbn07XG5cbi8qKiBCcmVhZGNydW1icyBvcHRpb25zIGdsb2JhbCBjb25maWd1cmF0aW9uIHByb3ZpZGVyLiAqL1xuZXhwb3J0IGNvbnN0IEtCUV9CUkVBRENSVU1CU19DT05GSUdVUkFUSU9OID0gbmV3IEluamVjdGlvblRva2VuPEticUJyZWFkY3J1bWJzQ29uZmlndXJhdGlvbj4oXG4gICAgJ0tCUV9CUkVBRENSVU1CU19DT05GSUdVUkFUSU9OJyxcbiAgICB7IGZhY3Rvcnk6ICgpID0+IEtCUV9CUkVBRENSVU1CU19ERUZBVUxUX0NPTkZJR1VSQVRJT04gfVxuKTtcblxuLyoqIFV0aWxpdHkgcHJvdmlkZXIgZm9yIGBLQlFfQlJFQURDUlVNQlNfQ09ORklHVVJBVElPTmAuICovXG5leHBvcnQgY29uc3Qga2JxQnJlYWRjcnVtYnNDb25maWd1cmF0aW9uUHJvdmlkZXIgPSAoY29uZmlndXJhdGlvbjogUGFydGlhbDxLYnFCcmVhZGNydW1ic0NvbmZpZ3VyYXRpb24+KTogUHJvdmlkZXIgPT4gKHtcbiAgICBwcm92aWRlOiBLQlFfQlJFQURDUlVNQlNfQ09ORklHVVJBVElPTixcbiAgICB1c2VWYWx1ZTogeyAuLi5LQlFfQlJFQURDUlVNQlNfREVGQVVMVF9DT05GSUdVUkFUSU9OLCAuLi5jb25maWd1cmF0aW9uIH1cbn0pO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ25nLXRlbXBsYXRlW2ticUJyZWFkY3J1bWJzU2VwYXJhdG9yXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWJyZWFkY3J1bWJzLXNlcGFyYXRvcidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticUJyZWFkY3J1bWJzU2VwYXJhdG9yIHtcbiAgICByZWFkb25seSB0ZW1wbGF0ZVJlZiA9IGluamVjdChUZW1wbGF0ZVJlZik7XG59XG5cbi8qKlxuICogRGlyZWN0aXZlIHRvIHN0eWxlIGFuZCBjb25maWd1cmUgYnV0dG9ucyB1c2VkIGFzIGJyZWFkY3J1bWIgaXRlbXMuXG4gKiAtIEluaGVyaXRzIGZvY3VzIG1hbmFnZW1lbnQgYmVoYXZpb3IgZnJvbSBgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlYC5cbiAqIC0gT3B0aW9uYWxseSBpbmplY3RzIGBLYnFCdXR0b25gIHRvIGN1c3RvbWl6ZSBpdHMgc3R5bGUgZm9yIGJyZWFkY3J1bWIgdXNhZ2UuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdba2JxLWJ1dHRvbl1ba2JxQnJlYWRjcnVtYl0nLFxuICAgIGhvc3Q6IHsgY2xhc3M6ICdrYnEtYnJlYWRjcnVtYi1pdGVtJyB9LFxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBLYnFCcmVhZGNydW1iQnV0dG9uIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGJ1dHRvbiA9IGluamVjdChLYnFCdXR0b24sIHsgb3B0aW9uYWw6IHRydWUsIHNlbGY6IHRydWUgfSk7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMuYnV0dG9uKSB7XG4gICAgICAgICAgICB0aGlzLmJ1dHRvbi5jb2xvciA9IEticUNvbXBvbmVudENvbG9ycy5Db250cmFzdDtcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uLmticVN0eWxlID0gS2JxQnV0dG9uU3R5bGVzLlRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIERpcmVjdGl2ZSBwcm92aWRlcyBhIHdheSB0byBkZWZpbmUgYSBjdXN0b20gdGVtcGxhdGUgZm9yIGJyZWFkY3J1bWIgcmVuZGVyaW5nLCBsZXZlcmFnaW5nIFRlbXBsYXRlUmVmXG4gKlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW2ticUJyZWFkY3J1bWJWaWV3XSdcbn0pXG5leHBvcnQgY2xhc3MgS2JxQnJlYWRjcnVtYlZpZXcge1xuICAgIHJlYWRvbmx5IHRlbXBsYXRlUmVmID0gaW5qZWN0KFRlbXBsYXRlUmVmKTtcbn1cblxuLyoqXG4gKiBDb21wb25lbnQgcmVwcmVzZW50cyBhbiBpbmRpdmlkdWFsIGJyZWFkY3J1bWIgaXRlbSB3aXRoIG9wdGlvbmFsIHN1cHBvcnQgZm9yIHJvdXRlciBuYXZpZ2F0aW9uIGFuZCBzdHlsaW5nLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAna2JxLWJyZWFkY3J1bWItaXRlbScsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICBgLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEticUJyZWFkY3J1bWJJdGVtIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdGV4dCBkaXNwbGF5ZWQgZm9yIHRoZSBicmVhZGNydW1iIGl0ZW0uXG4gICAgICogVGhpcyB0ZXh0IHdpbGwgYmUgc2hvd24gaWYgYnJlYWRjcnVtYiBpdGVtIGlzIGhpZGRlbiBpbiBkcm9wZG93bi5cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0ZXh0OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGJyZWFkY3J1bWIgaXRlbSBpcyBkaXNhYmxlZC5cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGJyZWFkY3J1bWIgaXRlbSBpcyB0aGUgY3VycmVudC9hY3RpdmUgaXRlbS5cbiAgICAgKiBEZWZhdWx0cyB0byBgZmFsc2VgLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBjdXJyZW50OiBib29sZWFuID0gZmFsc2U7XG4gICAgLyoqXG4gICAgICogQSByZWZlcmVuY2UgdG8gYSBjdXN0b20gdGVtcGxhdGUgcHJvdmlkZWQgZm9yIHRoZSBicmVhZGNydW1iIGl0ZW0gY29udGVudC5cbiAgICAgKiBUaGUgdGVtcGxhdGUgY2FuIGJlIHVzZWQgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgYXBwZWFyYW5jZSBvZiB0aGUgYnJlYWRjcnVtYi5cbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKEticUJyZWFkY3J1bWJWaWV3LCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGN1c3RvbVRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIC8qKlxuICAgICAqIEFuIG9wdGlvbmFsIGBSb3V0ZXJMaW5rYCBpbnN0YW5jZSBmb3IgbmF2aWdhdGluZyB0byBhIHNwZWNpZmljIHJvdXRlLlxuICAgICAqIEluamVjdGVkIGZyb20gdGhlIGhvc3QgZWxlbWVudCwgaWYgYXZhaWxhYmxlIGFuZCBwcm9qZWN0aW5nIHRvIHRoZSBoaWRkZW4gYnJlYWRjcnVtYiBpdGVtIGluIGRyb3Bkb3duLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJvdXRlckxpbmsgPSBpbmplY3QoUm91dGVyTGluaywgeyBvcHRpb25hbDogdHJ1ZSwgaG9zdDogdHJ1ZSB9KTtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2ticS1icmVhZGNydW1icyxba2JxLWJyZWFkY3J1bWJzXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JyZWFkY3J1bWJzLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JyZWFkY3J1bWJzLnNjc3MnLCAnLi9icmVhZGNydW1icy10b2tlbnMuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBSb3V0ZXJMaW5rLFxuICAgICAgICBLYnFJY29uTW9kdWxlLFxuICAgICAgICBLYnFCdXR0b25Nb2R1bGUsXG4gICAgICAgIEticURyb3Bkb3duTW9kdWxlLFxuICAgICAgICBLYnFCcmVhZGNydW1iSXRlbSxcbiAgICAgICAgS2JxQnJlYWRjcnVtYkJ1dHRvbixcbiAgICAgICAgUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSxcbiAgICAgICAgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlLFxuICAgICAgICBLYnFUaXRsZU1vZHVsZSxcbiAgICAgICAgS2JxT3ZlcmZsb3dJdGVtc01vZHVsZVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1icmVhZGNydW1icycsXG4gICAgICAgICdbY2xhc3Mua2JxLWJyZWFkY3J1bWJzX2NvbXBhY3RdJzogJ3NpemUgPT09IFwiY29tcGFjdFwiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfbm9ybWFsXSc6ICdzaXplID09PSBcIm5vcm1hbFwiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfYmlnXSc6ICdzaXplID09PSBcImJpZ1wiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfd3JhcF0nOiAnd3JhcE1vZGUgPT09IFwid3JhcFwiJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnJlYWRjcnVtYnNfZmlyc3QtaXRlbS1uZWdhdGl2ZS1tYXJnaW5dJzogJ2ZpcnN0SXRlbU5lZ2F0aXZlTWFyZ2luJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtbGFiZWxdJzogXCInYnJlYWRjcnVtYidcIlxuICAgIH0sXG4gICAgLy8gQFRPRE8gYWRkIHN1cHBvcnQgZm9yIEhvbWUsRW5kIGtleXMgaW50ZXJhY3Rpb24gKCNEUy0zMzM0KVxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgS2JxQnJlYWRjcnVtYnMgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29uZmlndXJhdGlvbiA9IGluamVjdChLQlFfQlJFQURDUlVNQlNfQ09ORklHVVJBVElPTik7XG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lcyBpZiBhIG5lZ2F0aXZlIG1hcmdpbiBzaG91bGQgYmUgYXBwbGllZCB0byB0aGUgZmlyc3QgYnJlYWRjcnVtYiBpdGVtLlxuICAgICAqXG4gICAgICogQHNlZSBLYnFCcmVhZGNydW1ic0NvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZmlyc3RJdGVtTmVnYXRpdmVNYXJnaW46IGJvb2xlYW4gPVxuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24uZmlyc3RJdGVtTmVnYXRpdmVNYXJnaW47XG4gICAgLyoqXG4gICAgICogU2l6ZSBvZiB0aGUgYnJlYWRjcnVtYnMuIEFmZmVjdHMgZm9udCBzaXplLlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgQElucHV0KCkgc2l6ZTogS2JxRGVmYXVsdFNpemVzID0gdGhpcy5jb25maWd1cmF0aW9uLnNpemU7XG4gICAgLyoqXG4gICAgICogTWF4aW11bSBudW1iZXIgb2YgdmlzaWJsZSBicmVhZGNydW1iIGl0ZW1zLlxuICAgICAqIFJlbWFpbmluZyBpdGVtcyBhcmUgY29sbGFwc2VkIGludG8gYSBkcm9wZG93biBpZiB0aGUgdG90YWwgZXhjZWVkcyB0aGlzIHZhbHVlLlxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgQElucHV0KCkgbWF4OiBudW1iZXIgfCBudWxsID0gdGhpcy5jb25maWd1cmF0aW9uLm1heDtcbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgYnJlYWRjcnVtYnMgYXJlIGRpc2FibGVkLlxuICAgICAqIFdoZW4gZGlzYWJsZWQsIHVzZXIgaW50ZXJhY3Rpb25zIGFyZSBibG9ja2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIC8qKlxuICAgICAqIFdyYXBwaW5nIGJlaGF2aW9yIG9mIHRoZSBicmVhZGNydW1iIGl0ZW1zLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHdyYXBNb2RlOiBLYnFCcmVhZGNydW1ic1dyYXBNb2RlID0gdGhpcy5jb25maWd1cmF0aW9uLndyYXBNb2RlO1xuXG4gICAgQENvbnRlbnRDaGlsZChLYnFCcmVhZGNydW1ic1NlcGFyYXRvciwgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXBhcmF0b3I/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEticUJyZWFkY3J1bWJJdGVtKSlcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXRlbXM6IFF1ZXJ5TGlzdDxLYnFCcmVhZGNydW1iSXRlbT47XG5cbiAgICBAVmlld0NoaWxkKEticU92ZXJmbG93SXRlbXNSZXN1bHQsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzdWx0OiBFbGVtZW50UmVmO1xuXG4gICAgQFZpZXdDaGlsZHJlbihLYnFPdmVyZmxvd0l0ZW0sIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3ZlcmZsb3dJdGVtczogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gICAgLyoqXG4gICAgICogRW5zdXJlcyBhdCBsZWFzdCBtaW5pbXVtIG51bWJlciBvZiBicmVhZGNydW1iIGl0ZW1zIGFyZSBzaG93bi5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWluVmlzaWJsZUl0ZW1zID0gMjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgS2JxQ29tcG9uZW50Q29sb3JzID0gS2JxQ29tcG9uZW50Q29sb3JzO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBLYnFCdXR0b25TdHlsZXMgPSBLYnFCdXR0b25TdHlsZXM7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IFBvcFVwUGxhY2VtZW50cyA9IFBvcFVwUGxhY2VtZW50cztcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgLyoqIEBkb2NzLXByaXZhdGUgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0IGl0ZW1zRXhjbHVkaW5nRWRnZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLnRvQXJyYXkoKS5zbGljZSgxLCAtMSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlcyB0aGUgdG90YWwgd2lkdGggb2YgdmlzaWJsZSBpdGVtcyBiYXNlZCBvbiB0aGUgYG1heGAgdmFsdWUgYW5kIG92ZXJmbG93IGl0ZW1zLlxuICAgICAqIEByZXR1cm5zIHtudW1iZXIgfCBudWxsfSBUaGUgY29tcHV0ZWQgbWF4IHdpZHRoIGZvciBvdmVyZmxvdyBpdGVtcyBvciBudWxsIGlmIGNvbmRpdGlvbnMgYXJlIG5vdCBtZXQuXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXQgbWF4V2lkdGgoKTogbnVtYmVyIHwgbnVsbCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLm92ZXJmbG93SXRlbXMgfHxcbiAgICAgICAgICAgICF0aGlzLm92ZXJmbG93SXRlbXMubGVuZ3RoIHx8XG4gICAgICAgICAgICB0aGlzLm1heCA9PT0gbnVsbCB8fFxuICAgICAgICAgICAgdGhpcy5tYXggPj0gdGhpcy5pdGVtcy5sZW5ndGggfHxcbiAgICAgICAgICAgIHRoaXMubWF4IDwgdGhpcy5taW5WaXNpYmxlSXRlbXNcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCB2aXNpYmxlSXRlbXNXaWR0aCA9IHRoaXMuZ2V0SXRlbVdpZHRoKHRoaXMucmVzdWx0KTtcbiAgICAgICAgLy8gUmVvcmRlcnMgb3ZlcmZsb3cgaXRlbXMgdG8gcHJpb3JpdGl6ZSB0aGUgZmlyc3QgYW5kIGxhc3QgZWxlbWVudHNcbiAgICAgICAgY29uc3Qgc29ydGVkSXRlbXMgPSBbXG4gICAgICAgICAgICAuLi50aGlzLm92ZXJmbG93SXRlbXMudG9BcnJheSgpLnNsaWNlKDEsIC0xKSxcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dJdGVtcy5maXJzdCxcbiAgICAgICAgICAgIHRoaXMub3ZlcmZsb3dJdGVtcy5sYXN0XG4gICAgICAgIF07XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm1heCAtIDE7IGkrKykge1xuICAgICAgICAgICAgdmlzaWJsZUl0ZW1zV2lkdGggKz0gdGhpcy5nZXRJdGVtV2lkdGgoc29ydGVkSXRlbXNbc29ydGVkSXRlbXMubGVuZ3RoIC0gaSAtIDFdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB2aXNpYmxlSXRlbXNXaWR0aDtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMuaXRlbXMuY2hhbmdlcy5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jZHIubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SXRlbVdpZHRoKGl0ZW0/OiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHJldHVybiBpdGVtID8gaXRlbS5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIDogMDtcbiAgICB9XG59XG4iLCJAaWYgKGl0ZW1zLmxlbmd0aCA8IG1pblZpc2libGVJdGVtcyB8fCB3cmFwTW9kZSAhPT0gJ2F1dG8nKSB7XG4gICAgQGZvciAoaXRlbSBvZiBpdGVtczsgdHJhY2sgaXRlbTsgbGV0IGxhc3QgPSAkbGFzdCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWJyZWFkY3J1bWItaXRlbV9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnJlYWRjcnVtYlRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSwgbGFzdDogbGFzdCB9XCIgLz5cbiAgICAgICAgICAgIEBpZiAoIWxhc3QpIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlcGFyYXRvclRlbXBsYXRlXCIgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxufSBAZWxzZSB7XG4gICAgPGRpdlxuICAgICAgICAja2JxT3ZlcmZsb3dJdGVtcz1cImticU92ZXJmbG93SXRlbXNcIlxuICAgICAgICBrYnFPdmVyZmxvd0l0ZW1zXG4gICAgICAgIHJldmVyc2VPdmVyZmxvd09yZGVyXG4gICAgICAgIGNsYXNzPVwibGF5b3V0LWFsaWduLXN0YXJ0LWNlbnRlclwiXG4gICAgICAgIFtzdHlsZS5tYXgtd2lkdGgucHhdPVwibWF4V2lkdGhcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1icmVhZGNydW1iLWl0ZW1fX2NvbnRhaW5lclwiIFtrYnFPdmVyZmxvd0l0ZW1dPVwiMFwiIFtvcmRlcl09XCJpdGVtcy5sZW5ndGhcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJicmVhZGNydW1iVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtcy5maXJzdCwgbGFzdDogZmFsc2UgfVwiIC8+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlcGFyYXRvclRlbXBsYXRlXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDwhLS0gQFRPRE8gZGVsYXkgcmVuZGVyaW5nIGZvciBwcm9wZXIgZWxlbWVudHMgb3JkZXIgKCNEUy0zMzM0KS0tLT5cbiAgICAgICAgQGlmICh0cnVlKSB7XG4gICAgICAgICAgICA8ZGl2IGticU92ZXJmbG93SXRlbXNSZXN1bHQgY2xhc3M9XCJrYnEtYnJlYWRjcnVtYi1pdGVtX19jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGticS1idXR0b25cbiAgICAgICAgICAgICAgICAgICAga2JxQnJlYWRjcnVtYlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImticS1icmVhZGNydW1iX19leHBhbmRcIlxuICAgICAgICAgICAgICAgICAgICBba2JxRHJvcGRvd25UcmlnZ2VyRm9yXT1cImhpZGRlbkJyZWFkY3J1bWJzRHJvcGRvd25cIlxuICAgICAgICAgICAgICAgICAgICBba2JxU3R5bGVdPVwiS2JxQnV0dG9uU3R5bGVzLlRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgW29wZW5CeUFycm93RG93bl09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8aSBrYnEtaWNvbj1cImticS1lbGxpcHNpcy1ob3Jpem9udGFsXzE2XCIgW2NvbG9yXT1cIkticUNvbXBvbmVudENvbG9ycy5Db250cmFzdEZhZGVcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJzZXBhcmF0b3JUZW1wbGF0ZVwiIC8+XG5cbiAgICAgICAgICAgICAgICA8a2JxLWRyb3Bkb3duICNoaWRkZW5CcmVhZGNydW1ic0Ryb3Bkb3duPVwia2JxRHJvcGRvd25cIj5cbiAgICAgICAgICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtczsgdHJhY2sgaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChrYnFPdmVyZmxvd0l0ZW1zLmhpZGRlbkl0ZW1JRHMoKS5oYXMoJGluZGV4KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwia2JxLWJyZWFkY3J1bWItaXRlbV9fbGluay1iZWhhdmlvclwiIFtyb3V0ZXJMaW5rXT1cIml0ZW0ucm91dGVyTGluaz8udXJsVHJlZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGticS1kcm9wZG93bi1pdGVtIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCI+e3sgaXRlbS50ZXh0IH19PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9rYnEtZHJvcGRvd24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zRXhjbHVkaW5nRWRnZXM7IHRyYWNrIGl0ZW07IGxldCBpbmRleCA9ICRpbmRleCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1icmVhZGNydW1iLWl0ZW1fX2NvbnRhaW5lclwiIFtrYnFPdmVyZmxvd0l0ZW1dPVwiaW5kZXggKyAxXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJyZWFkY3J1bWJUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0sIGxhc3Q6IGZhbHNlIH1cIiAvPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwic2VwYXJhdG9yVGVtcGxhdGVcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPGRpdiBhbHdheXNWaXNpYmxlIGNsYXNzPVwia2JxLWJyZWFkY3J1bWItaXRlbV9fY29udGFpbmVyXCIgW2ticU92ZXJmbG93SXRlbV09XCJpdGVtcy5sZW5ndGggLSAxXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYnJlYWRjcnVtYlRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbXMubGFzdCwgbGFzdDogdHJ1ZSB9XCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG59XG5cbjxuZy10ZW1wbGF0ZSAjYnJlYWRjcnVtYlRlbXBsYXRlIGxldC1pdGVtIGxldC1sYXN0PVwibGFzdFwiPlxuICAgIEBpZiAoaXRlbS5jdXN0b21UZW1wbGF0ZVJlZikge1xuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW0uY3VzdG9tVGVtcGxhdGVSZWZcIiAvPlxuICAgIH0gQGVsc2Uge1xuICAgICAgICA8YSB0YWJpbmRleD1cIi0xXCIgY2xhc3M9XCJrYnEtYnJlYWRjcnVtYi1pdGVtX19saW5rLWJlaGF2aW9yXCIgW3JvdXRlckxpbmtdPVwiaXRlbS5yb3V0ZXJMaW5rPy51cmxUcmVlXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAgICAgIGticS10aXRsZVxuICAgICAgICAgICAgICAgIGticUJyZWFkY3J1bWJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWN1cnJlbnRdPVwibGFzdCA/ICdwYWdlJyA6IG51bGxcIlxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkIHx8IGxhc3RcIlxuICAgICAgICAgICAgICAgIFtrYnFQbGFjZW1lbnRQcmlvcml0eV09XCJQb3BVcFBsYWNlbWVudHMuQm90dG9tXCJcbiAgICAgICAgICAgICAgICBba2JxVG9vbHRpcEFycm93XT1cImZhbHNlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpdGVtLnRleHQgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2E+XG4gICAgfVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZXBhcmF0b3JUZW1wbGF0ZT5cbiAgICBAaWYgKHNlcGFyYXRvcikge1xuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInNlcGFyYXRvclwiIC8+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIDxpIGticS1pY29uPVwiXCIgY2xhc3M9XCJrYnEtYnJlYWRjcnVtYl9fc2VwYXJhdG9yXCIgW2NvbG9yXT1cIkticUNvbXBvbmVudENvbG9ycy5Db250cmFzdEZhZGVcIj4mbmJzcDsvJm5ic3A7PC9pPlxuICAgIH1cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
2
2
|
import { booleanAttribute, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, Directive, ElementRef, forwardRef, Input, numberAttribute, QueryList, Renderer2, SkipSelf, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
3
|
-
import { getNodesWithoutComments, KBQ_TITLE_TEXT_REF, KbqColorDirective, leftIconClassName, rightIconClassName } from '@koobiq/components/core';
|
|
3
|
+
import { getNodesWithoutComments, KBQ_TITLE_TEXT_REF, KbqColorDirective, KbqComponentColors, leftIconClassName, rightIconClassName } from '@koobiq/components/core';
|
|
4
4
|
import { KbqIcon } from '@koobiq/components/icon';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/cdk/a11y";
|
|
@@ -103,6 +103,7 @@ export class KbqButton extends KbqColorDirective {
|
|
|
103
103
|
this._kbqStyle = KbqButtonStyles.Filled;
|
|
104
104
|
this._disabled = false;
|
|
105
105
|
this._tabIndex = 0;
|
|
106
|
+
this.color = KbqComponentColors.ContrastFade;
|
|
106
107
|
}
|
|
107
108
|
ngAfterViewInit() {
|
|
108
109
|
this.runFocusMonitor();
|
|
@@ -173,4 +174,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
173
174
|
type: Input,
|
|
174
175
|
args: [{ transform: numberAttribute }]
|
|
175
176
|
}] } });
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFHSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssRUFDTCxlQUFlLEVBRWYsU0FBUyxFQUNULFNBQVMsRUFDVCxRQUFRLEVBQ1IsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFFakIsaUJBQWlCLEVBQ2pCLGtCQUFrQixFQUNyQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUVsRCxNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3ZCLG9DQUFpQixDQUFBO0lBQ2pCLHNDQUFtQixDQUFBO0lBQ25CLDhDQUEyQixDQUFBO0FBQy9CLENBQUMsRUFKVyxlQUFlLEtBQWYsZUFBZSxRQUkxQjtBQUVELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLHNCQUFzQixDQUFDO0FBQzlELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLHVCQUF1QixDQUFDO0FBU2hFLE1BQU0sT0FBTyxrQkFBa0I7SUFPM0IsWUFDSSxVQUFzQixFQUNkLFFBQW1CLEVBQ1AsR0FBc0I7UUFEbEMsYUFBUSxHQUFSLFFBQVEs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ci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBudW1iZXJBdHRyaWJ1dGUsXG4gICAgT25EZXN0cm95LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBSZW5kZXJlcjIsXG4gICAgU2tpcFNlbGYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBnZXROb2Rlc1dpdGhvdXRDb21tZW50cyxcbiAgICBLQlFfVElUTEVfVEVYVF9SRUYsXG4gICAgS2JxQ29sb3JEaXJlY3RpdmUsXG4gICAgS2JxVGl0bGVUZXh0UmVmLFxuICAgIGxlZnRJY29uQ2xhc3NOYW1lLFxuICAgIHJpZ2h0SWNvbkNsYXNzTmFtZVxufSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBLYnFJY29uIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2ljb24nO1xuXG5leHBvcnQgZW51bSBLYnFCdXR0b25TdHlsZXMge1xuICAgIEZpbGxlZCA9ICdmaWxsZWQnLFxuICAgIE91dGxpbmUgPSAnb3V0bGluZScsXG4gICAgVHJhbnNwYXJlbnQgPSAndHJhbnNwYXJlbnQnXG59XG5cbmV4cG9ydCBjb25zdCBidXR0b25MZWZ0SWNvbkNsYXNzTmFtZSA9ICdrYnEtYnV0dG9uLWljb25fbGVmdCc7XG5leHBvcnQgY29uc3QgYnV0dG9uUmlnaHRJY29uQ2xhc3NOYW1lID0gJ2ticS1idXR0b24taWNvbl9yaWdodCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticS1idXR0b25dJyxcbiAgICBob3N0OiB7XG4gICAgICAgICdbY2xhc3Mua2JxLWJ1dHRvbl0nOiAnIWlzSWNvbkJ1dHRvbicsXG4gICAgICAgICdbY2xhc3Mua2JxLWJ1dHRvbi1pY29uXSc6ICdpc0ljb25CdXR0b24nXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFCdXR0b25Dc3NTdHlsZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gS2JxSWNvbikpIGljb25zOiBRdWVyeUxpc3Q8S2JxSWNvbj47XG5cbiAgICBuYXRpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICAgIGlzSWNvbkJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQFNraXBTZWxmKCkgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHRoaXMubmF0aXZlRWxlbWVudCA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMudXBkYXRlQ2xhc3NNb2RpZmllckZvckljb25zKCk7XG4gICAgfVxuXG4gICAgdXBkYXRlQ2xhc3NNb2RpZmllckZvckljb25zKCkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgYnV0dG9uTGVmdEljb25DbGFzc05hbWUpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgYnV0dG9uUmlnaHRJY29uQ2xhc3NOYW1lKTtcbiAgICAgICAgdGhpcy5pY29uc1xuICAgICAgICAgICAgLm1hcCgoaXRlbSkgPT4gaXRlbS5nZXRIb3N0RWxlbWVudCgpKVxuICAgICAgICAgICAgLmZvckVhY2goKGljb25Ib3N0RWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoaWNvbkhvc3RFbGVtZW50LCBsZWZ0SWNvbkNsYXNzTmFtZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhpY29uSG9zdEVsZW1lbnQsIHJpZ2h0SWNvbkNsYXNzTmFtZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCB0d29JY29ucyA9IDI7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkTm9kZXNXaXRob3V0Q29tbWVudHMgPSBnZXROb2Rlc1dpdGhvdXRDb21tZW50cyhcbiAgICAgICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcua2JxLWJ1dHRvbi13cmFwcGVyJykhLmNoaWxkTm9kZXMgYXMgTm9kZUxpc3RcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBjdXJyZW50SXNJY29uQnV0dG9uVmFsdWUgPVxuICAgICAgICAgICAgISF0aGlzLmljb25zLmxlbmd0aCAmJlxuICAgICAgICAgICAgdGhpcy5pY29ucy5sZW5ndGggPT09IGZpbHRlcmVkTm9kZXNXaXRob3V0Q29tbWVudHMubGVuZ3RoICYmXG4gICAgICAgICAgICB0aGlzLmljb25zLmxlbmd0aCA8PSB0d29JY29ucztcblxuICAgICAgICBpZiAoY3VycmVudElzSWNvbkJ1dHRvblZhbHVlICE9PSB0aGlzLmlzSWNvbkJ1dHRvbikge1xuICAgICAgICAgICAgdGhpcy5pc0ljb25CdXR0b24gPSBjdXJyZW50SXNJY29uQnV0dG9uVmFsdWU7XG4gICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pY29ucy5sZW5ndGggJiYgZmlsdGVyZWROb2Rlc1dpdGhvdXRDb21tZW50cy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgICB0aGlzLmljb25zXG4gICAgICAgICAgICAgICAgLm1hcCgoaXRlbSkgPT4gaXRlbS5nZXRIb3N0RWxlbWVudCgpKVxuICAgICAgICAgICAgICAgIC5mb3JFYWNoKChpY29uSG9zdEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaWNvbkluZGV4ID0gZmlsdGVyZWROb2Rlc1dpdGhvdXRDb21tZW50cy5maW5kSW5kZXgoKG5vZGUpID0+IG5vZGUgPT09IGljb25Ib3N0RWxlbWVudCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGljb25JbmRleCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhpY29uSG9zdEVsZW1lbnQsIGxlZnRJY29uQ2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5uYXRpdmVFbGVtZW50LCBidXR0b25MZWZ0SWNvbkNsYXNzTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpZiAoaWNvbkluZGV4ID09PSBmaWx0ZXJlZE5vZGVzV2l0aG91dENvbW1lbnRzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoaWNvbkhvc3RFbGVtZW50LCByaWdodEljb25DbGFzc05hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIGJ1dHRvblJpZ2h0SWNvbkNsYXNzTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdba2JxLWJ1dHRvbl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2J1dHRvbi5zY3NzJywgJy4vYnV0dG9uLXRva2Vucy5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kaXNhYmxlZF0nOiAnZGlzYWJsZWQgfHwgbnVsbCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWRpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgICAgICdbYXR0ci50YWJJbmRleF0nOiAndGFiSW5kZXgnLFxuICAgICAgICAnW2NsYXNzXSc6ICdrYnFTdHlsZScsXG5cbiAgICAgICAgJyhmb2N1cyknOiAnb25Gb2N1cygkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdvbkJsdXIoKSdcbiAgICB9LFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IEtCUV9USVRMRV9URVhUX1JFRiwgdXNlRXhpc3Rpbmc6IEticUJ1dHRvbiB9XVxufSlcbmV4cG9ydCBjbGFzcyBLYnFCdXR0b24gZXh0ZW5kcyBLYnFDb2xvckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCwgS2JxVGl0bGVUZXh0UmVmIHtcbiAgICBoYXNGb2N1czogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQFZpZXdDaGlsZCgna2JxVGl0bGVUZXh0JywgeyBzdGF0aWM6IGZhbHNlIH0pIHRleHRFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQga2JxU3R5bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGBrYnEtYnV0dG9uXyR7dGhpcy5fa2JxU3R5bGV9YDtcbiAgICB9XG5cbiAgICBzZXQga2JxU3R5bGUodmFsdWU6IHN0cmluZyB8IEticUJ1dHRvblN0eWxlcykge1xuICAgICAgICB0aGlzLl9rYnFTdHlsZSA9IHZhbHVlIHx8IEticUJ1dHRvblN0eWxlcy5GaWxsZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfa2JxU3R5bGU6IHN0cmluZyB8IEticUJ1dHRvblN0eWxlcyA9IEticUJ1dHRvblN0eWxlcy5GaWxsZWQ7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcblxuICAgICAgICB0aGlzLl9kaXNhYmxlZCA/IHRoaXMuc3RvcEZvY3VzTW9uaXRvcigpIDogdGhpcy5ydW5Gb2N1c01vbml0b3IoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSlcbiAgICBnZXQgdGFiSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgPyAtMSA6IHRoaXMuX3RhYkluZGV4O1xuICAgIH1cblxuICAgIHNldCB0YWJJbmRleCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX3RhYkluZGV4ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdGFiSW5kZXggPSAwO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgICAgIHByaXZhdGUgc3R5bGVyOiBLYnFCdXR0b25Dc3NTdHlsZXJcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVuRm9jdXNNb25pdG9yKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuc3RvcEZvY3VzTW9uaXRvcigpO1xuICAgIH1cblxuICAgIG9uRm9jdXMoJGV2ZW50KSB7XG4gICAgICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmhhc0ZvY3VzID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBvbkJsdXIoKSB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBnZXRIb3N0RWxlbWVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhhc0ZvY3VzID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLmdldEhvc3RFbGVtZW50KCkuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBmb2N1c1ZpYUtleWJvYXJkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhhc0ZvY3VzID0gdHJ1ZTtcblxuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvci5mb2N1c1ZpYSh0aGlzLmdldEhvc3RFbGVtZW50KCksICdrZXlib2FyZCcpO1xuICAgIH1cblxuICAgIGhhbHREaXNhYmxlZEV2ZW50cyhldmVudDogRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvamVjdENvbnRlbnRDaGFuZ2VkKCkge1xuICAgICAgICB0aGlzLnN0eWxlci51cGRhdGVDbGFzc01vZGlmaWVyRm9ySWNvbnMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJ1bkZvY3VzTW9uaXRvcigpIHtcbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdG9wRm9jdXNNb25pdG9yKCkge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxufVxuIiwiPGRpdiAja2JxVGl0bGVUZXh0IGNsYXNzPVwia2JxLWJ1dHRvbi13cmFwcGVyXCIgKGNka09ic2VydmVDb250ZW50KT1cInByb2plY3RDb250ZW50Q2hhbmdlZCgpXCI+XG4gICAgPG5nLWNvbnRlbnQgLz5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImticS1idXR0b24tb3ZlcmxheVwiIChjbGljayk9XCJoYWx0RGlzYWJsZWRFdmVudHMoJGV2ZW50KVwiPjwvZGl2PlxuIl19
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFHSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLEtBQUssRUFDTCxlQUFlLEVBRWYsU0FBUyxFQUNULFNBQVMsRUFDVCxRQUFRLEVBQ1IsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQixpQkFBaUIsRUFDakIsa0JBQWtCLEVBRWxCLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDckIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFFbEQsTUFBTSxDQUFOLElBQVksZUFJWDtBQUpELFdBQVksZUFBZTtJQUN2QixvQ0FBaUIsQ0FBQTtJQUNqQixzQ0FBbUIsQ0FBQTtJQUNuQiw4Q0FBMkIsQ0FBQTtBQUMvQixDQUFDLEVBSlcsZUFBZSxLQUFmLGVBQWUsUUFJMUI7QUFFRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxzQkFBc0IsQ0FBQztBQUM5RCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyx1QkFBdUIsQ0FBQztBQVNoRSxNQUFNLE9BQU8sa0JBQWtCO0lBTzNCLFlBQ0ksVUFBc0IsRUFDZCxRQUFtQixFQUNQLEdBQXNCO1FBRGxDLGFB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QUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9jdXNNb25pdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5wdXQsXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIE9uRGVzdHJveSxcbiAgICBRdWVyeUxpc3QsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNraXBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgZ2V0Tm9kZXNXaXRob3V0Q29tbWVudHMsXG4gICAgS0JRX1RJVExFX1RFWFRfUkVGLFxuICAgIEticUNvbG9yRGlyZWN0aXZlLFxuICAgIEticUNvbXBvbmVudENvbG9ycyxcbiAgICBLYnFUaXRsZVRleHRSZWYsXG4gICAgbGVmdEljb25DbGFzc05hbWUsXG4gICAgcmlnaHRJY29uQ2xhc3NOYW1lXG59IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticUljb24gfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvaWNvbic7XG5cbmV4cG9ydCBlbnVtIEticUJ1dHRvblN0eWxlcyB7XG4gICAgRmlsbGVkID0gJ2ZpbGxlZCcsXG4gICAgT3V0bGluZSA9ICdvdXRsaW5lJyxcbiAgICBUcmFuc3BhcmVudCA9ICd0cmFuc3BhcmVudCdcbn1cblxuZXhwb3J0IGNvbnN0IGJ1dHRvbkxlZnRJY29uQ2xhc3NOYW1lID0gJ2ticS1idXR0b24taWNvbl9sZWZ0JztcbmV4cG9ydCBjb25zdCBidXR0b25SaWdodEljb25DbGFzc05hbWUgPSAna2JxLWJ1dHRvbi1pY29uX3JpZ2h0JztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdba2JxLWJ1dHRvbl0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnV0dG9uXSc6ICchaXNJY29uQnV0dG9uJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtYnV0dG9uLWljb25dJzogJ2lzSWNvbkJ1dHRvbidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticUJ1dHRvbkNzc1N0eWxlciBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBLYnFJY29uKSkgaWNvbnM6IFF1ZXJ5TGlzdDxLYnFJY29uPjtcblxuICAgIG5hdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gICAgaXNJY29uQnV0dG9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBAU2tpcFNlbGYoKSBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50ID0gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVDbGFzc01vZGlmaWVyRm9ySWNvbnMoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVDbGFzc01vZGlmaWVyRm9ySWNvbnMoKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5uYXRpdmVFbGVtZW50LCBidXR0b25MZWZ0SWNvbkNsYXNzTmFtZSk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5uYXRpdmVFbGVtZW50LCBidXR0b25SaWdodEljb25DbGFzc05hbWUpO1xuICAgICAgICB0aGlzLmljb25zXG4gICAgICAgICAgICAubWFwKChpdGVtKSA9PiBpdGVtLmdldEhvc3RFbGVtZW50KCkpXG4gICAgICAgICAgICAuZm9yRWFjaCgoaWNvbkhvc3RFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhpY29uSG9zdEVsZW1lbnQsIGxlZnRJY29uQ2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGljb25Ib3N0RWxlbWVudCwgcmlnaHRJY29uQ2xhc3NOYW1lKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IHR3b0ljb25zID0gMjtcbiAgICAgICAgY29uc3QgZmlsdGVyZWROb2Rlc1dpdGhvdXRDb21tZW50cyA9IGdldE5vZGVzV2l0aG91dENvbW1lbnRzKFxuICAgICAgICAgICAgdGhpcy5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5rYnEtYnV0dG9uLXdyYXBwZXInKSEuY2hpbGROb2RlcyBhcyBOb2RlTGlzdFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRJc0ljb25CdXR0b25WYWx1ZSA9XG4gICAgICAgICAgICAhIXRoaXMuaWNvbnMubGVuZ3RoICYmXG4gICAgICAgICAgICB0aGlzLmljb25zLmxlbmd0aCA9PT0gZmlsdGVyZWROb2Rlc1dpdGhvdXRDb21tZW50cy5sZW5ndGggJiZcbiAgICAgICAgICAgIHRoaXMuaWNvbnMubGVuZ3RoIDw9IHR3b0ljb25zO1xuXG4gICAgICAgIGlmIChjdXJyZW50SXNJY29uQnV0dG9uVmFsdWUgIT09IHRoaXMuaXNJY29uQnV0dG9uKSB7XG4gICAgICAgICAgICB0aGlzLmlzSWNvbkJ1dHRvbiA9IGN1cnJlbnRJc0ljb25CdXR0b25WYWx1ZTtcbiAgICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmljb25zLmxlbmd0aCAmJiBmaWx0ZXJlZE5vZGVzV2l0aG91dENvbW1lbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIHRoaXMuaWNvbnNcbiAgICAgICAgICAgICAgICAubWFwKChpdGVtKSA9PiBpdGVtLmdldEhvc3RFbGVtZW50KCkpXG4gICAgICAgICAgICAgICAgLmZvckVhY2goKGljb25Ib3N0RWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpY29uSW5kZXggPSBmaWx0ZXJlZE5vZGVzV2l0aG91dENvbW1lbnRzLmZpbmRJbmRleCgobm9kZSkgPT4gbm9kZSA9PT0gaWNvbkhvc3RFbGVtZW50KTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoaWNvbkluZGV4ID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGljb25Ib3N0RWxlbWVudCwgbGVmdEljb25DbGFzc05hbWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQsIGJ1dHRvbkxlZnRJY29uQ2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpY29uSW5kZXggPT09IGZpbHRlcmVkTm9kZXNXaXRob3V0Q29tbWVudHMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhpY29uSG9zdEVsZW1lbnQsIHJpZ2h0SWNvbkNsYXNzTmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgYnV0dG9uUmlnaHRJY29uQ2xhc3NOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ1trYnEtYnV0dG9uXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLnNjc3MnLCAnLi9idXR0b24tdG9rZW5zLnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRpc2FibGVkXSc6ICdkaXNhYmxlZCB8fCBudWxsJyxcbiAgICAgICAgJ1tjbGFzcy5rYnEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkJyxcbiAgICAgICAgJ1thdHRyLnRhYkluZGV4XSc6ICd0YWJJbmRleCcsXG4gICAgICAgICdbY2xhc3NdJzogJ2ticVN0eWxlJyxcblxuICAgICAgICAnKGZvY3VzKSc6ICdvbkZvY3VzKCRldmVudCknLFxuICAgICAgICAnKGJsdXIpJzogJ29uQmx1cigpJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogS0JRX1RJVExFX1RFWFRfUkVGLCB1c2VFeGlzdGluZzogS2JxQnV0dG9uIH1dXG59KVxuZXhwb3J0IGNsYXNzIEticUJ1dHRvbiBleHRlbmRzIEticUNvbG9yRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBLYnFUaXRsZVRleHRSZWYge1xuICAgIGhhc0ZvY3VzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAVmlld0NoaWxkKCdrYnFUaXRsZVRleHQnLCB7IHN0YXRpYzogZmFsc2UgfSkgdGV4dEVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBrYnFTdHlsZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYGticS1idXR0b25fJHt0aGlzLl9rYnFTdHlsZX1gO1xuICAgIH1cblxuICAgIHNldCBrYnFTdHlsZSh2YWx1ZTogc3RyaW5nIHwgS2JxQnV0dG9uU3R5bGVzKSB7XG4gICAgICAgIHRoaXMuX2ticVN0eWxlID0gdmFsdWUgfHwgS2JxQnV0dG9uU3R5bGVzLkZpbGxlZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9rYnFTdHlsZTogc3RyaW5nIHwgS2JxQnV0dG9uU3R5bGVzID0gS2JxQnV0dG9uU3R5bGVzLkZpbGxlZDtcblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICAgIH1cblxuICAgIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbHVlO1xuXG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID8gdGhpcy5zdG9wRm9jdXNNb25pdG9yKCkgOiB0aGlzLnJ1bkZvY3VzTW9uaXRvcigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KVxuICAgIGdldCB0YWJJbmRleCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZCA/IC0xIDogdGhpcy5fdGFiSW5kZXg7XG4gICAgfVxuXG4gICAgc2V0IHRhYkluZGV4KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5fdGFiSW5kZXggPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF90YWJJbmRleCA9IDA7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICAgICAgcHJpdmF0ZSBzdHlsZXI6IEticUJ1dHRvbkNzc1N0eWxlclxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIHRoaXMuY29sb3IgPSBLYnFDb21wb25lbnRDb2xvcnMuQ29udHJhc3RGYWRlO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ydW5Gb2N1c01vbml0b3IoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5zdG9wRm9jdXNNb25pdG9yKCk7XG4gICAgfVxuXG4gICAgb25Gb2N1cygkZXZlbnQpIHtcbiAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSB0cnVlO1xuICAgIH1cblxuICAgIG9uQmx1cigpIHtcbiAgICAgICAgdGhpcy5oYXNGb2N1cyA9IGZhbHNlO1xuICAgIH1cblxuICAgIGdldEhvc3RFbGVtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5mb2N1cygpO1xuICAgIH1cblxuICAgIGZvY3VzVmlhS2V5Ym9hcmQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaGFzRm9jdXMgPSB0cnVlO1xuXG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yLmZvY3VzVmlhKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSwgJ2tleWJvYXJkJyk7XG4gICAgfVxuXG4gICAgaGFsdERpc2FibGVkRXZlbnRzKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm9qZWN0Q29udGVudENoYW5nZWQoKSB7XG4gICAgICAgIHRoaXMuc3R5bGVyLnVwZGF0ZUNsYXNzTW9kaWZpZXJGb3JJY29ucygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcnVuRm9jdXNNb25pdG9yKCkge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvci5tb25pdG9yKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0cnVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0b3BGb2N1c01vbml0b3IoKSB7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG59XG4iLCI8ZGl2ICNrYnFUaXRsZVRleHQgY2xhc3M9XCJrYnEtYnV0dG9uLXdyYXBwZXJcIiAoY2RrT2JzZXJ2ZUNvbnRlbnQpPVwicHJvamVjdENvbnRlbnRDaGFuZ2VkKClcIj5cbiAgICA8bmctY29udGVudCAvPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwia2JxLWJ1dHRvbi1vdmVybGF5XCIgKGNsaWNrKT1cImhhbHREaXNhYmxlZEV2ZW50cygkZXZlbnQpXCI+PC9kaXY+XG4iXX0=
|
|
@@ -381,4 +381,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
381
381
|
}], change: [{
|
|
382
382
|
type: Output
|
|
383
383
|
}] } });
|
|
384
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2J1dHRvbi10b2dnbGUvYnV0dG9uLXRvZ2dsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBR0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBR0wsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7QUFLbEQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFRO0lBQ3ZELE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztJQUNuRCxLQUFLLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFRixxREFBcUQ7QUFDckQsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QjtJQUNJLCtDQUErQztJQUN4QyxNQUF1QjtJQUM5QixnREFBZ0Q7SUFD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cEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxZQUFZO1FBQ1IsaUVBQWlFO1FBQ2pFLGdFQUFnRTtRQUNoRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUMsQ0FBQztpSUE1SFEsZUFBZTtxSEFBZixlQUFlLHNUQUNQLE9BQU8sMEZBeUJiLFNBQVMsK0VBbERWOzs7Ozs7Ozs7Ozs7Ozs7S0FlVDs7MkZBU1EsZUFBZTtrQkEzQjNCLFNBQVM7K0JBQ0ksbUJBQW1CLFlBQ25CLGlCQUFpQixZQUNqQjs7Ozs7Ozs7Ozs7Ozs7O0tBZVQsaUJBRWMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixLQUFLLEVBQUUsbUJBQW1CO3dCQUMxQixTQUFTLEVBQUUsZ0NBQWdDO3FCQUM5Qzs7MEJBcURJLFFBQVE7NkhBbERvQyxLQUFLO3NCQUFyRCxlQUFlO3VCQUFDLE9BQU8sRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSTNDLE9BQU87c0JBRFYsS0FBSztnQkFzQm1DLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFHOUIsS0FBSztzQkFBYixLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0YsUUFBUTtzQkFEWCxLQUFLO2dCQVVhLE1BQU07c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgS2JxQnV0dG9uIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBnZXROb2Rlc1dpdGhvdXRDb21tZW50cyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticUljb24gfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvaWNvbic7XG5cbi8qKiBBY2NlcHRhYmxlIHR5cGVzIGZvciBhIGJ1dHRvbiB0b2dnbGUuICovXG5leHBvcnQgdHlwZSBUb2dnbGVUeXBlID0gJ2NoZWNrYm94JyB8ICdyYWRpbyc7XG5cbi8qKlxuICogUHJvdmlkZXIgRXhwcmVzc2lvbiB0aGF0IGFsbG93cyBrYnEtYnV0dG9uLXRvZ2dsZS1ncm91cCB0byByZWdpc3RlciBhcyBhIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICogVGhpcyBhbGxvd3MgaXQgdG8gc3VwcG9ydCBbKG5nTW9kZWwpXS5cbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IEtCUV9CVVRUT05fVE9HR0xFX0dST1VQX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gS2JxQnV0dG9uVG9nZ2xlR3JvdXApLFxuICAgIG11bHRpOiB0cnVlXG59O1xuXG4vKiogQ2hhbmdlIGV2ZW50IG9iamVjdCBlbWl0dGVkIGJ5IE3RgUJ1dHRvblRvZ2dsZS4gKi9cbmV4cG9ydCBjbGFzcyBLYnFCdXR0b25Ub2dnbGVDaGFuZ2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICAvKiogVGhlIE3RgUJ1dHRvblRvZ2dsZSB0aGF0IGVtaXRzIHRoZSBldmVudC4gKi9cbiAgICAgICAgcHVibGljIHNvdXJjZTogS2JxQnV0dG9uVG9nZ2xlLFxuICAgICAgICAvKiogVGhlIHZhbHVlIGFzc2lnbmVkIHRvIHRoZSBN0YFCdXR0b25Ub2dnbGUuICovXG4gICAgICAgIHB1YmxpYyB2YWx1ZTogYW55XG4gICAgKSB7fVxufVxuXG4vKiogRXhjbHVzaXZlIHNlbGVjdGlvbiBidXR0b24gdG9nZ2xlIGdyb3VwIHRoYXQgYmVoYXZlcyBsaWtlIGEgcmFkaW8tYnV0dG9uIGdyb3VwLiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdrYnEtYnV0dG9uLXRvZ2dsZS1ncm91cCcsXG4gICAgcHJvdmlkZXJzOiBbS0JRX0JVVFRPTl9UT0dHTEVfR1JPVVBfVkFMVUVfQUNDRVNTT1JdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtYnV0dG9uLXRvZ2dsZS1ncm91cCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWJ1dHRvbi10b2dnbGVfdmVydGljYWxdJzogJ3ZlcnRpY2FsJ1xuICAgIH0sXG4gICAgZXhwb3J0QXM6ICdrYnFCdXR0b25Ub2dnbGVHcm91cCdcbn0pXG5leHBvcnQgY2xhc3MgS2JxQnV0dG9uVG9nZ2xlR3JvdXAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgICAvKiogV2hldGhlciB0aGUgdG9nZ2xlIGdyb3VwIGlzIHZlcnRpY2FsLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHZlcnRpY2FsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmVydGljYWw7XG4gICAgfVxuXG4gICAgc2V0IHZlcnRpY2FsKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3ZlcnRpY2FsID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogVmFsdWUgb2YgdGhlIHRvZ2dsZSBncm91cC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuc2VsZWN0aW9uTW9kZWwgPyB0aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdGVkIDogW107XG5cbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZC5tYXAoKHRvZ2dsZSkgPT4gdG9nZ2xlLnZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzZWxlY3RlZFswXSA/IHNlbGVjdGVkWzBdLnZhbHVlIDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZShuZXdWYWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0aW9uQnlWYWx1ZShuZXdWYWx1ZSk7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogU2VsZWN0ZWQgYnV0dG9uIHRvZ2dsZXMgaW4gdGhlIGdyb3VwLiAqL1xuICAgIGdldCBzZWxlY3RlZCgpOiBhbnkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuc2VsZWN0aW9uTW9kZWwuc2VsZWN0ZWQ7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGUgPyBzZWxlY3RlZCA6IHNlbGVjdGVkWzBdIHx8IG51bGw7XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgbXVsdGlwbGUgYnV0dG9uIHRvZ2dsZXMgY2FuIGJlIHNlbGVjdGVkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IG11bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlwbGU7XG4gICAgfVxuXG4gICAgc2V0IG11bHRpcGxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX211bHRpcGxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQ2hpbGQgYnV0dG9uIHRvZ2dsZSBidXR0b25zLiAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBLYnFCdXR0b25Ub2dnbGUpKSBidXR0b25Ub2dnbGVzOiBRdWVyeUxpc3Q8S2JxQnV0dG9uVG9nZ2xlPjtcblxuICAgIC8qKiBXaGV0aGVyIG11bHRpcGxlIGJ1dHRvbiB0b2dnbGUgZ3JvdXAgaXMgZGlzYWJsZWQuICovXG4gICAgQElucHV0KClcbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuXG4gICAgICAgIGlmICghdGhpcy5idXR0b25Ub2dnbGVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmJ1dHRvblRvZ2dsZXMuZm9yRWFjaCgodG9nZ2xlKSA9PiB0b2dnbGUubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV2ZW50IHRoYXQgZW1pdHMgd2hlbmV2ZXIgdGhlIHZhbHVlIG9mIHRoZSBncm91cCBjaGFuZ2VzLlxuICAgICAqIFVzZWQgdG8gZmFjaWxpdGF0ZSB0d28td2F5IGRhdGEgYmluZGluZy5cbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBncm91cCdzIHZhbHVlIGNoYW5nZXMuICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPEticUJ1dHRvblRvZ2dsZUNoYW5nZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEticUJ1dHRvblRvZ2dsZUNoYW5nZT4oKTtcbiAgICBwcml2YXRlIF92ZXJ0aWNhbCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX211bHRpcGxlID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxLYnFCdXR0b25Ub2dnbGU+O1xuXG4gICAgLyoqXG4gICAgICogUmVmZXJlbmNlIHRvIHRoZSByYXcgdmFsdWUgdGhhdCB0aGUgY29uc3VtZXIgdHJpZWQgdG8gYXNzaWduLiBUaGUgcmVhbFxuICAgICAqIHZhbHVlIHdpbGwgZXhjbHVkZSBhbnkgdmFsdWVzIGZyb20gdGhpcyBvbmUgdGhhdCBkb24ndCBjb3JyZXNwb25kIHRvIGFcbiAgICAgKiB0b2dnbGUuIFVzZWZ1bCBmb3IgdGhlIGNhc2VzIHdoZXJlIHRoZSB2YWx1ZSBpcyBhc3NpZ25lZCBiZWZvcmUgdGhlIHRvZ2dsZXNcbiAgICAgKiBoYXZlIGJlZW4gaW5pdGlhbGl6ZWQgb3IgYXQgdGhlIHNhbWUgdGhhdCB0aGV5J3JlIGJlaW5nIHN3YXBwZWQgb3V0LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmF3VmFsdWU6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIC8qKlxuICAgICAqIFRoZSBtZXRob2QgdG8gYmUgY2FsbGVkIGluIG9yZGVyIHRvIHVwZGF0ZSBuZ01vZGVsLlxuICAgICAqIE5vdyBgbmdNb2RlbGAgYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkIGluIG11bHRpcGxlIHNlbGVjdGlvbiBtb2RlLlxuICAgICAqL1xuICAgIGNvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm46ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICAvKiogb25Ub3VjaCBmdW5jdGlvbiByZWdpc3RlcmVkIHZpYSByZWdpc3Rlck9uVG91Y2ggKENvbnRyb2xWYWx1ZUFjY2Vzc29yKS4gKi9cbiAgICBvblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9O1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwgPSBuZXcgU2VsZWN0aW9uTW9kZWw8S2JxQnV0dG9uVG9nZ2xlPih0aGlzLm11bHRpcGxlLCB1bmRlZmluZWQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuc2VsZWN0KC4uLnRoaXMuYnV0dG9uVG9nZ2xlcy5maWx0ZXIoKHRvZ2dsZSkgPT4gdG9nZ2xlLmNoZWNrZWQpKTtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMuX2Rpc2FibGVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIG1vZGVsIHZhbHVlLiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgICAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byBiZSBzZXQgdG8gdGhlIG1vZGVsLlxuICAgICAqL1xuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICAgICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuID0gZm47XG4gICAgfVxuXG4gICAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqIERpc3BhdGNoIGNoYW5nZSBldmVudCB3aXRoIGN1cnJlbnQgc2VsZWN0aW9uIGFuZCBncm91cCB2YWx1ZS4gKi9cbiAgICBlbWl0Q2hhbmdlRXZlbnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5zZWxlY3RlZDtcbiAgICAgICAgY29uc3Qgc291cmNlID0gQXJyYXkuaXNBcnJheShzZWxlY3RlZCkgPyBzZWxlY3RlZFtzZWxlY3RlZC5sZW5ndGggLSAxXSA6IHNlbGVjdGVkO1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBLYnFCdXR0b25Ub2dnbGVDaGFuZ2Uoc291cmNlLCB0aGlzLnZhbHVlKTtcbiAgICAgICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKGV2ZW50LnZhbHVlKTtcbiAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3luY3MgYSBidXR0b24gdG9nZ2xlJ3Mgc2VsZWN0ZWQgc3RhdGUgd2l0aCB0aGUgbW9kZWwgdmFsdWUuXG4gICAgICogQHBhcmFtIHRvZ2dsZSBUb2dnbGUgdG8gYmUgc3luY2VkLlxuICAgICAqIEBwYXJhbSBzZWxlY3QgV2hldGhlciB0aGUgdG9nZ2xlIHNob3VsZCBiZSBzZWxlY3RlZC5cbiAgICAgKiBAcGFyYW0gaXNVc2VySW5wdXQgV2hldGhlciB0aGUgY2hhbmdlIHdhcyBhIHJlc3VsdCBvZiBhIHVzZXIgaW50ZXJhY3Rpb24uXG4gICAgICovXG4gICAgc3luY0J1dHRvblRvZ2dsZSh0b2dnbGU6IEticUJ1dHRvblRvZ2dsZSwgc2VsZWN0OiBib29sZWFuLCBpc1VzZXJJbnB1dCA9IGZhbHNlKSB7XG4gICAgICAgIC8vIERlc2VsZWN0IHRoZSBjdXJyZW50bHktc2VsZWN0ZWQgdG9nZ2xlLCBpZiB3ZSdyZSBpbiBzaW5nbGUtc2VsZWN0aW9uXG4gICAgICAgIC8vIG1vZGUgYW5kIHRoZSBidXR0b24gYmVpbmcgdG9nZ2xlZCBpc24ndCBzZWxlY3RlZCBhdCB0aGUgbW9tZW50LlxuICAgICAgICBpZiAoIXRoaXMubXVsdGlwbGUgJiYgdGhpcy5zZWxlY3RlZCAmJiAhdG9nZ2xlLmNoZWNrZWQpIHtcbiAgICAgICAgICAgICh0aGlzLnNlbGVjdGVkIGFzIEticUJ1dHRvblRvZ2dsZSkuY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGVjdCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5zZWxlY3QodG9nZ2xlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuZGVzZWxlY3QodG9nZ2xlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgZW1pdCB0aGUgY2hhbmdlIGV2ZW50IGZvciB1c2VyIGlucHV0LlxuICAgICAgICBpZiAoaXNVc2VySW5wdXQpIHtcbiAgICAgICAgICAgIHRoaXMuZW1pdENoYW5nZUV2ZW50KCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBOb3RlOiB3ZSBlbWl0IHRoaXMgb25lIG5vIG1hdHRlciB3aGV0aGVyIGl0IHdhcyBhIHVzZXIgaW50ZXJhY3Rpb24sIGJlY2F1c2VcbiAgICAgICAgLy8gaXQgaXMgdXNlZCBieSBBbmd1bGFyIHRvIHN5bmMgdXAgdGhlIHR3by13YXkgZGF0YSBiaW5kaW5nLlxuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqIENoZWNrcyB3aGV0aGVyIGEgYnV0dG9uIHRvZ2dsZSBpcyBzZWxlY3RlZC4gKi9cbiAgICBpc1NlbGVjdGVkKHRvZ2dsZTogS2JxQnV0dG9uVG9nZ2xlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdGlvbk1vZGVsLmlzU2VsZWN0ZWQodG9nZ2xlKTtcbiAgICB9XG5cbiAgICAvKiogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgYnV0dG9uIHRvZ2dsZSBzaG91bGQgYmUgY2hlY2tlZCBvbiBpbml0LiAqL1xuICAgIGlzUHJlY2hlY2tlZCh0b2dnbGU6IEticUJ1dHRvblRvZ2dsZSkge1xuICAgICAgICBpZiAodGhpcy5yYXdWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5tdWx0aXBsZSAmJiBBcnJheS5pc0FycmF5KHRoaXMucmF3VmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yYXdWYWx1ZS5zb21lKCh2YWx1ZSkgPT4gdG9nZ2xlLnZhbHVlICE9IG51bGwgJiYgdmFsdWUgPT09IHRvZ2dsZS52YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdG9nZ2xlLnZhbHVlID09PSB0aGlzLnJhd1ZhbHVlO1xuICAgIH1cblxuICAgIC8qKiBVcGRhdGVzIHRoZSBzZWxlY3Rpb24gc3RhdGUgb2YgdGhlIHRvZ2dsZXMgaW4gdGhlIGdyb3VwIGJhc2VkIG9uIGEgdmFsdWUuICovXG4gICAgcHJpdmF0ZSBzZXRTZWxlY3Rpb25CeVZhbHVlKHZhbHVlOiBhbnkgfCBhbnlbXSkge1xuICAgICAgICB0aGlzLnJhd1ZhbHVlID0gdmFsdWU7XG5cbiAgICAgICAgaWYgKCF0aGlzLmJ1dHRvblRvZ2dsZXMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm11bHRpcGxlICYmIHZhbHVlKSB7XG4gICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ1ZhbHVlIG11c3QgYmUgYW4gYXJyYXkgaW4gbXVsdGlwbGUtc2VsZWN0aW9uIG1vZGUuJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24oKTtcbiAgICAgICAgICAgIHZhbHVlLmZvckVhY2goKGN1cnJlbnRWYWx1ZTogYW55KSA9PiB0aGlzLnNlbGVjdFZhbHVlKGN1cnJlbnRWYWx1ZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5jbGVhclNlbGVjdGlvbigpO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQ2xlYXJzIHRoZSBzZWxlY3RlZCB0b2dnbGVzLiAqL1xuICAgIHByaXZhdGUgY2xlYXJTZWxlY3Rpb24oKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5idXR0b25Ub2dnbGVzLmZvckVhY2goKHRvZ2dsZSkgPT4gKHRvZ2dsZS5jaGVja2VkID0gZmFsc2UpKTtcbiAgICB9XG5cbiAgICAvKiogU2VsZWN0cyBhIHZhbHVlIGlmIHRoZXJlJ3MgYSB0b2dnbGUgdGhhdCBjb3JyZXNwb25kcyB0byBpdC4gKi9cbiAgICBwcml2YXRlIHNlbGVjdFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgY29uc3QgY29ycmVzcG9uZGluZ09wdGlvbiA9IHRoaXMuYnV0dG9uVG9nZ2xlcy5maW5kKCh0b2dnbGUpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB0b2dnbGUudmFsdWUgIT0gbnVsbCAmJiB0b2dnbGUudmFsdWUgPT09IHZhbHVlO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoY29ycmVzcG9uZGluZ09wdGlvbikge1xuICAgICAgICAgICAgY29ycmVzcG9uZGluZ09wdGlvbi5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuc2VsZWN0KGNvcnJlc3BvbmRpbmdPcHRpb24pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiogU2luZ2xlIGJ1dHRvbiBpbnNpZGUgb2YgYSB0b2dnbGUgZ3JvdXAuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ticS1idXR0b24tdG9nZ2xlJyxcbiAgICBleHBvcnRBczogJ2ticUJ1dHRvblRvZ2dsZScsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgW2ticVN0eWxlXT1cIid0cmFuc3BhcmVudCdcIlxuICAgICAgICAgICAgW2NsYXNzLmticS1zZWxlY3RlZF09XCJjaGVja2VkXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICBbdGFiSW5kZXhdPVwidGFiSW5kZXggfHwgMFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVDbGljaygpXCJcbiAgICAgICAgICAgIGticS1idXR0b25cbiAgICAgICAgICAgIGticS10aXRsZVxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtYnV0dG9uLXRvZ2dsZS13cmFwcGVyXCIgI2ticVRpdGxlVGV4dD5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudCAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIGAsXG4gICAgc3R5bGVVcmxzOiBbJ2J1dHRvbi10b2dnbGUuc2NzcycsICdidXR0b24tdG9nZ2xlLXRva2Vucy5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWJ1dHRvbi10b2dnbGUnLFxuICAgICAgICAnW2NsYXNzXSc6ICdcImticS1idXR0b24tdG9nZ2xlXCIgKyBpY29uVHlwZSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticUJ1dHRvblRvZ2dsZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICBAQ29udGVudENoaWxkcmVuKEticUljb24sIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgaWNvbnM6IFF1ZXJ5TGlzdDxLYnFJY29uPjtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBidXR0b24gaXMgY2hlY2tlZC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5idXR0b25Ub2dnbGVHcm91cCA/IHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAuaXNTZWxlY3RlZCh0aGlzKSA6IHRoaXMuX2NoZWNrZWQ7XG4gICAgfVxuXG4gICAgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuXG4gICAgICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5fY2hlY2tlZCkge1xuICAgICAgICAgICAgdGhpcy5fY2hlY2tlZCA9IG5ld1ZhbHVlO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5idXR0b25Ub2dnbGVHcm91cCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAuc3luY0J1dHRvblRvZ2dsZSh0aGlzLCB0aGlzLl9jaGVja2VkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHR5cGU6IFRvZ2dsZVR5cGU7XG4gICAgaWNvblR5cGU6IHN0cmluZyA9ICcnO1xuXG4gICAgQFZpZXdDaGlsZChLYnFCdXR0b24sIHsgc3RhdGljOiBmYWxzZSB9KSBtY0J1dHRvbjogS2JxQnV0dG9uO1xuXG4gICAgLyoqIEticUJ1dHRvblRvZ2dsZUdyb3VwIHJlYWRzIHRoaXMgdG8gYXNzaWduIGl0cyBvd24gdmFsdWUuICovXG4gICAgQElucHV0KCkgdmFsdWU6IGFueTtcblxuICAgIC8qKiBUYWJpbmRleCBmb3IgdGhlIHRvZ2dsZS4gKi9cbiAgICBASW5wdXQoKSB0YWJJbmRleDogbnVtYmVyIHwgbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfHwgKHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAgJiYgdGhpcy5idXR0b25Ub2dnbGVHcm91cC5kaXNhYmxlZCk7XG4gICAgfVxuXG4gICAgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2Rpc2FibGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBncm91cCB2YWx1ZSBjaGFuZ2VzLiAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxLYnFCdXR0b25Ub2dnbGVDaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcjxLYnFCdXR0b25Ub2dnbGVDaGFuZ2U+KCk7XG5cbiAgICBwcml2YXRlIGlzU2luZ2xlU2VsZWN0b3IgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9jaGVja2VkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBwdWJsaWMgYnV0dG9uVG9nZ2xlR3JvdXA6IEticUJ1dHRvblRvZ2dsZUdyb3VwLFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBmb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuaXNTaW5nbGVTZWxlY3RvciA9IHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAgJiYgIXRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAubXVsdGlwbGU7XG4gICAgICAgIHRoaXMudHlwZSA9IHRoaXMuaXNTaW5nbGVTZWxlY3RvciA/ICdyYWRpbycgOiAnY2hlY2tib3gnO1xuXG4gICAgICAgIGlmICh0aGlzLmJ1dHRvblRvZ2dsZUdyb3VwICYmIHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAuaXNQcmVjaGVja2VkKHRoaXMpKSB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pY29ucy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IG5vZGVzV2l0aG91dENvbW1lbnRzID0gZ2V0Tm9kZXNXaXRob3V0Q29tbWVudHMoXG4gICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLmticS1idXR0b24tdG9nZ2xlLXdyYXBwZXInKSEuY2hpbGROb2RlcyBhcyBOb2RlTGlzdFxuICAgICAgICAgICAgKS5sZW5ndGg7XG4gICAgICAgICAgICB0aGlzLmljb25UeXBlID0gbm9kZXNXaXRob3V0Q29tbWVudHMgPT09IHRoaXMuaWNvbnMubGVuZ3RoID8gJy1pY29uJyA6ICctaWNvbi10ZXh0JztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3IubW9uaXRvcih0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwID0gdGhpcy5idXR0b25Ub2dnbGVHcm91cDtcblxuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCk7XG5cbiAgICAgICAgLy8gUmVtb3ZlIHRoZSB0b2dnbGUgZnJvbSB0aGUgc2VsZWN0aW9uIG9uY2UgaXQncyBkZXN0cm95ZWQuIE5lZWRzIHRvIGhhcHBlblxuICAgICAgICAvLyBvbiB0aGUgbmV4dCB0aWNrIGluIG9yZGVyIHRvIGF2b2lkIFwiY2hhbmdlZCBhZnRlciBjaGVja2VkXCIgZXJyb3JzLlxuICAgICAgICBpZiAoZ3JvdXAgJiYgZ3JvdXAuaXNTZWxlY3RlZCh0aGlzKSkge1xuICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiBncm91cC5zeW5jQnV0dG9uVG9nZ2xlKHRoaXMsIGZhbHNlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogRm9jdXNlcyB0aGUgYnV0dG9uLiAqL1xuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKiBDaGVja3MgdGhlIGJ1dHRvbiB0b2dnbGUgZHVlIHRvIGFuIGludGVyYWN0aW9uIHdpdGggdGhlIHVuZGVybHlpbmcgbmF0aXZlIGJ1dHRvbi4gKi9cbiAgICBvblRvZ2dsZUNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbmV3Q2hlY2tlZCA9IHRoaXMuaXNTaW5nbGVTZWxlY3RvciA/IHRydWUgOiAhdGhpcy5fY2hlY2tlZDtcblxuICAgICAgICBpZiAobmV3Q2hlY2tlZCAhPT0gdGhpcy5fY2hlY2tlZCkge1xuICAgICAgICAgICAgdGhpcy5fY2hlY2tlZCA9IG5ld0NoZWNrZWQ7XG4gICAgICAgICAgICBpZiAodGhpcy5idXR0b25Ub2dnbGVHcm91cCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAuc3luY0J1dHRvblRvZ2dsZSh0aGlzLCB0aGlzLl9jaGVja2VkLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJ1dHRvblRvZ2dsZUdyb3VwLm9uVG91Y2hlZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIEVtaXQgYSBjaGFuZ2UgZXZlbnQgd2hlbiBpdCdzIHRoZSBzaW5nbGUgc2VsZWN0b3JcbiAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdChuZXcgS2JxQnV0dG9uVG9nZ2xlQ2hhbmdlKHRoaXMsIHRoaXMudmFsdWUpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNYXJrcyB0aGUgYnV0dG9uIHRvZ2dsZSBhcyBuZWVkaW5nIGNoZWNraW5nIGZvciBjaGFuZ2UgZGV0ZWN0aW9uLlxuICAgICAqIFRoaXMgbWV0aG9kIGlzIGV4cG9zZWQgYmVjYXVzZSB0aGUgcGFyZW50IGJ1dHRvbiB0b2dnbGUgZ3JvdXAgd2lsbCBkaXJlY3RseVxuICAgICAqIHVwZGF0ZSBib3VuZCBwcm9wZXJ0aWVzIG9mIHRoZSByYWRpbyBidXR0b24uXG4gICAgICovXG4gICAgbWFya0ZvckNoZWNrKCkge1xuICAgICAgICAvLyBXaGVuIHRoZSBncm91cCB2YWx1ZSBjaGFuZ2VzLCB0aGUgYnV0dG9uIHdpbGwgbm90IGJlIG5vdGlmaWVkLlxuICAgICAgICAvLyBVc2UgYG1hcmtGb3JDaGVja2AgdG8gZXhwbGljaXQgdXBkYXRlIGJ1dHRvbiB0b2dnbGUncyBzdGF0dXMuXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxufVxuIl19
|
|
384
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2J1dHRvbi10b2dnbGUvYnV0dG9uLXRvZ2dsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBR0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixLQUFLLEVBR0wsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7QUFLbEQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFRO0lBQ3ZELE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztJQUNuRCxLQUFLLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFRixxREFBcUQ7QUFDckQsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QjtJQUNJLCtDQUErQztJQUN4QyxNQUF1QjtJQUM5QixnREFBZ0Q7SUFD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cEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxZQUFZO1FBQ1IsaUVBQWlFO1FBQ2pFLGdFQUFnRTtRQUNoRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUMsQ0FBQztpSUEvSFEsZUFBZTtxSEFBZixlQUFlLHNUQUNQLE9BQU8sMEZBeUJiLFNBQVMsK0VBbERWOzs7Ozs7Ozs7Ozs7Ozs7S0FlVDs7MkZBU1EsZUFBZTtrQkEzQjNCLFNBQVM7K0JBQ0ksbUJBQW1CLFlBQ25CLGlCQUFpQixZQUNqQjs7Ozs7Ozs7Ozs7Ozs7O0tBZVQsaUJBRWMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixLQUFLLEVBQUUsbUJBQW1CO3dCQUMxQixTQUFTLEVBQUUsZ0NBQWdDO3FCQUM5Qzs7MEJBcURJLFFBQVE7NkhBbERvQyxLQUFLO3NCQUFyRCxlQUFlO3VCQUFDLE9BQU8sRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBSTNDLE9BQU87c0JBRFYsS0FBSztnQkFzQm1DLFFBQVE7c0JBQWhELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFHOUIsS0FBSztzQkFBYixLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0YsUUFBUTtzQkFEWCxLQUFLO2dCQVVhLE1BQU07c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgS2JxQnV0dG9uIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBnZXROb2Rlc1dpdGhvdXRDb21tZW50cyB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy9jb3JlJztcbmltcG9ydCB7IEticUljb24gfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvaWNvbic7XG5cbi8qKiBBY2NlcHRhYmxlIHR5cGVzIGZvciBhIGJ1dHRvbiB0b2dnbGUuICovXG5leHBvcnQgdHlwZSBUb2dnbGVUeXBlID0gJ2NoZWNrYm94JyB8ICdyYWRpbyc7XG5cbi8qKlxuICogUHJvdmlkZXIgRXhwcmVzc2lvbiB0aGF0IGFsbG93cyBrYnEtYnV0dG9uLXRvZ2dsZS1ncm91cCB0byByZWdpc3RlciBhcyBhIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICogVGhpcyBhbGxvd3MgaXQgdG8gc3VwcG9ydCBbKG5nTW9kZWwpXS5cbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuZXhwb3J0IGNvbnN0IEtCUV9CVVRUT05fVE9HR0xFX0dST1VQX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gS2JxQnV0dG9uVG9nZ2xlR3JvdXApLFxuICAgIG11bHRpOiB0cnVlXG59O1xuXG4vKiogQ2hhbmdlIGV2ZW50IG9iamVjdCBlbWl0dGVkIGJ5IE3RgUJ1dHRvblRvZ2dsZS4gKi9cbmV4cG9ydCBjbGFzcyBLYnFCdXR0b25Ub2dnbGVDaGFuZ2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICAvKiogVGhlIE3RgUJ1dHRvblRvZ2dsZSB0aGF0IGVtaXRzIHRoZSBldmVudC4gKi9cbiAgICAgICAgcHVibGljIHNvdXJjZTogS2JxQnV0dG9uVG9nZ2xlLFxuICAgICAgICAvKiogVGhlIHZhbHVlIGFzc2lnbmVkIHRvIHRoZSBN0YFCdXR0b25Ub2dnbGUuICovXG4gICAgICAgIHB1YmxpYyB2YWx1ZTogYW55XG4gICAgKSB7fVxufVxuXG4vKiogRXhjbHVzaXZlIHNlbGVjdGlvbiBidXR0b24gdG9nZ2xlIGdyb3VwIHRoYXQgYmVoYXZlcyBsaWtlIGEgcmFkaW8tYnV0dG9uIGdyb3VwLiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdrYnEtYnV0dG9uLXRvZ2dsZS1ncm91cCcsXG4gICAgcHJvdmlkZXJzOiBbS0JRX0JVVFRPTl9UT0dHTEVfR1JPVVBfVkFMVUVfQUNDRVNTT1JdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtYnV0dG9uLXRvZ2dsZS1ncm91cCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWJ1dHRvbi10b2dnbGVfdmVydGljYWxdJzogJ3ZlcnRpY2FsJ1xuICAgIH0sXG4gICAgZXhwb3J0QXM6ICdrYnFCdXR0b25Ub2dnbGVHcm91cCdcbn0pXG5leHBvcnQgY2xhc3MgS2JxQnV0dG9uVG9nZ2xlR3JvdXAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgICAvKiogV2hldGhlciB0aGUgdG9nZ2xlIGdyb3VwIGlzIHZlcnRpY2FsLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHZlcnRpY2FsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmVydGljYWw7XG4gICAgfVxuXG4gICAgc2V0IHZlcnRpY2FsKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3ZlcnRpY2FsID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogVmFsdWUgb2YgdGhlIHRvZ2dsZSBncm91cC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGdldCB2YWx1ZSgpOiBhbnkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuc2VsZWN0aW9uTW9kZWwgPyB0aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdGVkIDogW107XG5cbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZC5tYXAoKHRvZ2dsZSkgPT4gdG9nZ2xlLnZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzZWxlY3RlZFswXSA/IHNlbGVjdGVkWzBdLnZhbHVlIDogdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZShuZXdWYWx1ZTogYW55KSB7XG4gICAgICAgIHRoaXMuc2V0U2VsZWN0aW9uQnlWYWx1ZShuZXdWYWx1ZSk7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogU2VsZWN0ZWQgYnV0dG9uIHRvZ2dsZXMgaW4gdGhlIGdyb3VwLiAqL1xuICAgIGdldCBzZWxlY3RlZCgpOiBhbnkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZCA9IHRoaXMuc2VsZWN0aW9uTW9kZWwuc2VsZWN0ZWQ7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGUgPyBzZWxlY3RlZCA6IHNlbGVjdGVkWzBdIHx8IG51bGw7XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgbXVsdGlwbGUgYnV0dG9uIHRvZ2dsZXMgY2FuIGJlIHNlbGVjdGVkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IG11bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlwbGU7XG4gICAgfVxuXG4gICAgc2V0IG11bHRpcGxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX211bHRpcGxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQ2hpbGQgYnV0dG9uIHRvZ2dsZSBidXR0b25zLiAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBLYnFCdXR0b25Ub2dnbGUpKSBidXR0b25Ub2dnbGVzOiBRdWVyeUxpc3Q8S2JxQnV0dG9uVG9nZ2xlPjtcblxuICAgIC8qKiBXaGV0aGVyIG11bHRpcGxlIGJ1dHRvbiB0b2dnbGUgZ3JvdXAgaXMgZGlzYWJsZWQuICovXG4gICAgQElucHV0KClcbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuXG4gICAgICAgIGlmICghdGhpcy5idXR0b25Ub2dnbGVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmJ1dHRvblRvZ2dsZXMuZm9yRWFjaCgodG9nZ2xlKSA9PiB0b2dnbGUubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV2ZW50IHRoYXQgZW1pdHMgd2hlbmV2ZXIgdGhlIHZhbHVlIG9mIHRoZSBncm91cCBjaGFuZ2VzLlxuICAgICAqIFVzZWQgdG8gZmFjaWxpdGF0ZSB0d28td2F5IGRhdGEgYmluZGluZy5cbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBncm91cCdzIHZhbHVlIGNoYW5nZXMuICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPEticUJ1dHRvblRvZ2dsZUNoYW5nZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEticUJ1dHRvblRvZ2dsZUNoYW5nZT4oKTtcbiAgICBwcml2YXRlIF92ZXJ0aWNhbCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX211bHRpcGxlID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxLYnFCdXR0b25Ub2dnbGU+O1xuXG4gICAgLyoqXG4gICAgICogUmVmZXJlbmNlIHRvIHRoZSByYXcgdmFsdWUgdGhhdCB0aGUgY29uc3VtZXIgdHJpZWQgdG8gYXNzaWduLiBUaGUgcmVhbFxuICAgICAqIHZhbHVlIHdpbGwgZXhjbHVkZSBhbnkgdmFsdWVzIGZyb20gdGhpcyBvbmUgdGhhdCBkb24ndCBjb3JyZXNwb25kIHRvIGFcbiAgICAgKiB0b2dnbGUuIFVzZWZ1bCBmb3IgdGhlIGNhc2VzIHdoZXJlIHRoZSB2YWx1ZSBpcyBhc3NpZ25lZCBiZWZvcmUgdGhlIHRvZ2dsZXNcbiAgICAgKiBoYXZlIGJlZW4gaW5pdGlhbGl6ZWQgb3IgYXQgdGhlIHNhbWUgdGhhdCB0aGV5J3JlIGJlaW5nIHN3YXBwZWQgb3V0LlxuICAgICAqL1xuICAgIHByaXZhdGUgcmF3VmFsdWU6IGFueTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIC8qKlxuICAgICAqIFRoZSBtZXRob2QgdG8gYmUgY2FsbGVkIGluIG9yZGVyIHRvIHVwZGF0ZSBuZ01vZGVsLlxuICAgICAqIE5vdyBgbmdNb2RlbGAgYmluZGluZyBpcyBub3Qgc3VwcG9ydGVkIGluIG11bHRpcGxlIHNlbGVjdGlvbiBtb2RlLlxuICAgICAqL1xuICAgIGNvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm46ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICAvKiogb25Ub3VjaCBmdW5jdGlvbiByZWdpc3RlcmVkIHZpYSByZWdpc3Rlck9uVG91Y2ggKENvbnRyb2xWYWx1ZUFjY2Vzc29yKS4gKi9cbiAgICBvblRvdWNoZWQ6ICgpID0+IGFueSA9ICgpID0+IHt9O1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwgPSBuZXcgU2VsZWN0aW9uTW9kZWw8S2JxQnV0dG9uVG9nZ2xlPih0aGlzLm11bHRpcGxlLCB1bmRlZmluZWQsIGZhbHNlKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwuc2VsZWN0KC4uLnRoaXMuYnV0dG9uVG9nZ2xlcy5maWx0ZXIoKHRvZ2dsZSkgPT4gdG9nZ2xlLmNoZWNrZWQpKTtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMuX2Rpc2FibGVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIG1vZGVsIHZhbHVlLiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgICAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSB0byBiZSBzZXQgdG8gdGhlIG1vZGVsLlxuICAgICAqL1xuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8vIEltcGxlbWVudGVkIGFzIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICAgICAgdGhpcy5jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuID0gZm47XG4gICAgfVxuXG4gICAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqIERpc3BhdGNoIGNoYW5nZSBldmVudCB3aXRoIGN1cnJlbnQgc2VsZWN0aW9uIGFuZCBncm91cCB2YWx1ZS4gKi9cbiAgICBlbWl0Q2hhbmdlRXZlbnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5zZWxlY3RlZDtcbiAgICAgICAgY29uc3Qgc291cmNlID0gQXJyYXkuaXNBcnJheShzZWxlY3RlZCkgPyBzZWxlY3RlZFtzZWxlY3RlZC5sZW5ndGggLSAxXSA6IHNlbGVjdGVkO1xuICAgICAgICBjb25zdCBldmVudCA9IG5ldyBLYnFCdXR0b25Ub2dnbGVDaGFuZ2Uoc291cmNlLCB0aGlzLnZhbHVlKTtcblxuICAgICAgICB0aGlzLmNvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm4oZXZlbnQudmFsdWUpO1xuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTeW5jcyBhIGJ1dHRvbiB0b2dnbGUncyBzZWxlY3RlZCBzdGF0ZSB3aXRoIHRoZSBtb2RlbCB2YWx1ZS5cbiAgICAgKiBAcGFyYW0gdG9nZ2xlIFRvZ2dsZSB0byBiZSBzeW5jZWQuXG4gICAgICogQHBhcmFtIHNlbGVjdCBXaGV0aGVyIHRoZSB0b2dnbGUgc2hvdWxkIGJlIHNlbGVjdGVkLlxuICAgICAqIEBwYXJhbSBpc1VzZXJJbnB1dCBXaGV0aGVyIHRoZSBjaGFuZ2Ugd2FzIGEgcmVzdWx0IG9mIGEgdXNlciBpbnRlcmFjdGlvbi5cbiAgICAgKi9cbiAgICBzeW5jQnV0dG9uVG9nZ2xlKHRvZ2dsZTogS2JxQnV0dG9uVG9nZ2xlLCBzZWxlY3Q6IGJvb2xlYW4sIGlzVXNlcklucHV0ID0gZmFsc2UpIHtcbiAgICAgICAgLy8gRGVzZWxlY3QgdGhlIGN1cnJlbnRseS1zZWxlY3RlZCB0b2dnbGUsIGlmIHdlJ3JlIGluIHNpbmdsZS1zZWxlY3Rpb25cbiAgICAgICAgLy8gbW9kZSBhbmQgdGhlIGJ1dHRvbiBiZWluZyB0b2dnbGVkIGlzbid0IHNlbGVjdGVkIGF0IHRoZSBtb21lbnQuXG4gICAgICAgIGlmICghdGhpcy5tdWx0aXBsZSAmJiB0aGlzLnNlbGVjdGVkICYmICF0b2dnbGUuY2hlY2tlZCkge1xuICAgICAgICAgICAgKHRoaXMuc2VsZWN0ZWQgYXMgS2JxQnV0dG9uVG9nZ2xlKS5jaGVja2VkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZWN0KSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnNlbGVjdCh0b2dnbGUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5kZXNlbGVjdCh0b2dnbGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSBlbWl0IHRoZSBjaGFuZ2UgZXZlbnQgZm9yIHVzZXIgaW5wdXQuXG4gICAgICAgIGlmIChpc1VzZXJJbnB1dCkge1xuICAgICAgICAgICAgdGhpcy5lbWl0Q2hhbmdlRXZlbnQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE5vdGU6IHdlIGVtaXQgdGhpcyBvbmUgbm8gbWF0dGVyIHdoZXRoZXIgaXQgd2FzIGEgdXNlciBpbnRlcmFjdGlvbiwgYmVjYXVzZVxuICAgICAgICAvLyBpdCBpcyB1c2VkIGJ5IEFuZ3VsYXIgdG8gc3luYyB1cCB0aGUgdHdvLXdheSBkYXRhIGJpbmRpbmcuXG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQ2hlY2tzIHdoZXRoZXIgYSBidXR0b24gdG9nZ2xlIGlzIHNlbGVjdGVkLiAqL1xuICAgIGlzU2VsZWN0ZWQodG9nZ2xlOiBLYnFCdXR0b25Ub2dnbGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uTW9kZWwuaXNTZWxlY3RlZCh0b2dnbGUpO1xuICAgIH1cblxuICAgIC8qKiBEZXRlcm1pbmVzIHdoZXRoZXIgYSBidXR0b24gdG9nZ2xlIHNob3VsZCBiZSBjaGVja2VkIG9uIGluaXQuICovXG4gICAgaXNQcmVjaGVja2VkKHRvZ2dsZTogS2JxQnV0dG9uVG9nZ2xlKSB7XG4gICAgICAgIGlmICh0aGlzLnJhd1ZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLm11bHRpcGxlICYmIEFycmF5LmlzQXJyYXkodGhpcy5yYXdWYWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJhd1ZhbHVlLnNvbWUoKHZhbHVlKSA9PiB0b2dnbGUudmFsdWUgIT0gbnVsbCAmJiB2YWx1ZSA9PT0gdG9nZ2xlLnZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0b2dnbGUudmFsdWUgPT09IHRoaXMucmF3VmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIFVwZGF0ZXMgdGhlIHNlbGVjdGlvbiBzdGF0ZSBvZiB0aGUgdG9nZ2xlcyBpbiB0aGUgZ3JvdXAgYmFzZWQgb24gYSB2YWx1ZS4gKi9cbiAgICBwcml2YXRlIHNldFNlbGVjdGlvbkJ5VmFsdWUodmFsdWU6IGFueSB8IGFueVtdKSB7XG4gICAgICAgIHRoaXMucmF3VmFsdWUgPSB2YWx1ZTtcblxuICAgICAgICBpZiAoIXRoaXMuYnV0dG9uVG9nZ2xlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUgJiYgdmFsdWUpIHtcbiAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBFcnJvcignVmFsdWUgbXVzdCBiZSBhbiBhcnJheSBpbiBtdWx0aXBsZS1zZWxlY3Rpb24gbW9kZS4nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5jbGVhclNlbGVjdGlvbigpO1xuICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCgoY3VycmVudFZhbHVlOiBhbnkpID0+IHRoaXMuc2VsZWN0VmFsdWUoY3VycmVudFZhbHVlKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmNsZWFyU2VsZWN0aW9uKCk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdFZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBDbGVhcnMgdGhlIHNlbGVjdGVkIHRvZ2dsZXMuICovXG4gICAgcHJpdmF0ZSBjbGVhclNlbGVjdGlvbigpIHtcbiAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5jbGVhcigpO1xuICAgICAgICB0aGlzLmJ1dHRvblRvZ2dsZXMuZm9yRWFjaCgodG9nZ2xlKSA9PiAodG9nZ2xlLmNoZWNrZWQgPSBmYWxzZSkpO1xuICAgIH1cblxuICAgIC8qKiBTZWxlY3RzIGEgdmFsdWUgaWYgdGhlcmUncyBhIHRvZ2dsZSB0aGF0IGNvcnJlc3BvbmRzIHRvIGl0LiAqL1xuICAgIHByaXZhdGUgc2VsZWN0VmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICBjb25zdCBjb3JyZXNwb25kaW5nT3B0aW9uID0gdGhpcy5idXR0b25Ub2dnbGVzLmZpbmQoKHRvZ2dsZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRvZ2dsZS52YWx1ZSAhPSBudWxsICYmIHRvZ2dsZS52YWx1ZSA9PT0gdmFsdWU7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChjb3JyZXNwb25kaW5nT3B0aW9uKSB7XG4gICAgICAgICAgICBjb3JyZXNwb25kaW5nT3B0aW9uLmNoZWNrZWQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5zZWxlY3QoY29ycmVzcG9uZGluZ09wdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKiBTaW5nbGUgYnV0dG9uIGluc2lkZSBvZiBhIHRvZ2dsZSBncm91cC4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna2JxLWJ1dHRvbi10b2dnbGUnLFxuICAgIGV4cG9ydEFzOiAna2JxQnV0dG9uVG9nZ2xlJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBba2JxU3R5bGVdPVwiJ3RyYW5zcGFyZW50J1wiXG4gICAgICAgICAgICBbY2xhc3Mua2JxLXNlbGVjdGVkXT1cImNoZWNrZWRcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAgIFt0YWJJbmRleF09XCJ0YWJJbmRleCB8fCAwXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblRvZ2dsZUNsaWNrKClcIlxuICAgICAgICAgICAga2JxLWJ1dHRvblxuICAgICAgICAgICAga2JxLXRpdGxlXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1idXR0b24tdG9nZ2xlLXdyYXBwZXJcIiAja2JxVGl0bGVUZXh0PlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgYCxcbiAgICBzdHlsZVVybHM6IFsnYnV0dG9uLXRvZ2dsZS5zY3NzJywgJ2J1dHRvbi10b2dnbGUtdG9rZW5zLnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdrYnEtYnV0dG9uLXRvZ2dsZScsXG4gICAgICAgICdbY2xhc3NdJzogJ1wia2JxLWJ1dHRvbi10b2dnbGVcIiArIGljb25UeXBlJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxQnV0dG9uVG9nZ2xlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxSWNvbiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSBpY29uczogUXVlcnlMaXN0PEticUljb24+O1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGJ1dHRvbiBpcyBjaGVja2VkLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGNoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1dHRvblRvZ2dsZUdyb3VwID8gdGhpcy5idXR0b25Ub2dnbGVHcm91cC5pc1NlbGVjdGVkKHRoaXMpIDogdGhpcy5fY2hlY2tlZDtcbiAgICB9XG5cbiAgICBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG5cbiAgICAgICAgaWYgKG5ld1ZhbHVlICE9PSB0aGlzLl9jaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGVja2VkID0gbmV3VmFsdWU7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmJ1dHRvblRvZ2dsZUdyb3VwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5idXR0b25Ub2dnbGVHcm91cC5zeW5jQnV0dG9uVG9nZ2xlKHRoaXMsIHRoaXMuX2NoZWNrZWQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdHlwZTogVG9nZ2xlVHlwZTtcbiAgICBpY29uVHlwZTogc3RyaW5nID0gJyc7XG5cbiAgICBAVmlld0NoaWxkKEticUJ1dHRvbiwgeyBzdGF0aWM6IGZhbHNlIH0pIG1jQnV0dG9uOiBLYnFCdXR0b247XG5cbiAgICAvKiogS2JxQnV0dG9uVG9nZ2xlR3JvdXAgcmVhZHMgdGhpcyB0byBhc3NpZ24gaXRzIG93biB2YWx1ZS4gKi9cbiAgICBASW5wdXQoKSB2YWx1ZTogYW55O1xuXG4gICAgLyoqIFRhYmluZGV4IGZvciB0aGUgdG9nZ2xlLiAqL1xuICAgIEBJbnB1dCgpIHRhYkluZGV4OiBudW1iZXIgfCBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCB8fCAodGhpcy5idXR0b25Ub2dnbGVHcm91cCAmJiB0aGlzLmJ1dHRvblRvZ2dsZUdyb3VwLmRpc2FibGVkKTtcbiAgICB9XG5cbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGdyb3VwIHZhbHVlIGNoYW5nZXMuICovXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZTogRXZlbnRFbWl0dGVyPEticUJ1dHRvblRvZ2dsZUNoYW5nZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEticUJ1dHRvblRvZ2dsZUNoYW5nZT4oKTtcblxuICAgIHByaXZhdGUgaXNTaW5nbGVTZWxlY3RvciA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9kaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIHB1YmxpYyBidXR0b25Ub2dnbGVHcm91cDogS2JxQnV0dG9uVG9nZ2xlR3JvdXAsXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIGZvY3VzTW9uaXRvcjogRm9jdXNNb25pdG9yLFxuICAgICAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWZcbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5pc1NpbmdsZVNlbGVjdG9yID0gdGhpcy5idXR0b25Ub2dnbGVHcm91cCAmJiAhdGhpcy5idXR0b25Ub2dnbGVHcm91cC5tdWx0aXBsZTtcbiAgICAgICAgdGhpcy50eXBlID0gdGhpcy5pc1NpbmdsZVNlbGVjdG9yID8gJ3JhZGlvJyA6ICdjaGVja2JveCc7XG5cbiAgICAgICAgaWYgKHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAgJiYgdGhpcy5idXR0b25Ub2dnbGVHcm91cC5pc1ByZWNoZWNrZWQodGhpcykpIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmljb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3Qgbm9kZXNXaXRob3V0Q29tbWVudHMgPSBnZXROb2Rlc1dpdGhvdXRDb21tZW50cyhcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcua2JxLWJ1dHRvbi10b2dnbGUtd3JhcHBlcicpIS5jaGlsZE5vZGVzIGFzIE5vZGVMaXN0XG4gICAgICAgICAgICApLmxlbmd0aDtcblxuICAgICAgICAgICAgdGhpcy5pY29uVHlwZSA9IG5vZGVzV2l0aG91dENvbW1lbnRzID09PSB0aGlzLmljb25zLmxlbmd0aCA/ICctaWNvbicgOiAnLWljb24tdGV4dCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yLm1vbml0b3IodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRydWUpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBjb25zdCBncm91cCA9IHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXA7XG5cbiAgICAgICAgdGhpcy5mb2N1c01vbml0b3Iuc3RvcE1vbml0b3JpbmcodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgIC8vIFJlbW92ZSB0aGUgdG9nZ2xlIGZyb20gdGhlIHNlbGVjdGlvbiBvbmNlIGl0J3MgZGVzdHJveWVkLiBOZWVkcyB0byBoYXBwZW5cbiAgICAgICAgLy8gb24gdGhlIG5leHQgdGljayBpbiBvcmRlciB0byBhdm9pZCBcImNoYW5nZWQgYWZ0ZXIgY2hlY2tlZFwiIGVycm9ycy5cbiAgICAgICAgaWYgKGdyb3VwICYmIGdyb3VwLmlzU2VsZWN0ZWQodGhpcykpIHtcbiAgICAgICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4gZ3JvdXAuc3luY0J1dHRvblRvZ2dsZSh0aGlzLCBmYWxzZSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEZvY3VzZXMgdGhlIGJ1dHRvbi4gKi9cbiAgICBmb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvKiogQ2hlY2tzIHRoZSBidXR0b24gdG9nZ2xlIGR1ZSB0byBhbiBpbnRlcmFjdGlvbiB3aXRoIHRoZSB1bmRlcmx5aW5nIG5hdGl2ZSBidXR0b24uICovXG4gICAgb25Ub2dnbGVDbGljaygpIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld0NoZWNrZWQgPSB0aGlzLmlzU2luZ2xlU2VsZWN0b3IgPyB0cnVlIDogIXRoaXMuX2NoZWNrZWQ7XG5cbiAgICAgICAgaWYgKG5ld0NoZWNrZWQgIT09IHRoaXMuX2NoZWNrZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX2NoZWNrZWQgPSBuZXdDaGVja2VkO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5idXR0b25Ub2dnbGVHcm91cCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYnV0dG9uVG9nZ2xlR3JvdXAuc3luY0J1dHRvblRvZ2dsZSh0aGlzLCB0aGlzLl9jaGVja2VkLCB0cnVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLmJ1dHRvblRvZ2dsZUdyb3VwLm9uVG91Y2hlZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRW1pdCBhIGNoYW5nZSBldmVudCB3aGVuIGl0J3MgdGhlIHNpbmdsZSBzZWxlY3RvclxuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KG5ldyBLYnFCdXR0b25Ub2dnbGVDaGFuZ2UodGhpcywgdGhpcy52YWx1ZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1hcmtzIHRoZSBidXR0b24gdG9nZ2xlIGFzIG5lZWRpbmcgY2hlY2tpbmcgZm9yIGNoYW5nZSBkZXRlY3Rpb24uXG4gICAgICogVGhpcyBtZXRob2QgaXMgZXhwb3NlZCBiZWNhdXNlIHRoZSBwYXJlbnQgYnV0dG9uIHRvZ2dsZSBncm91cCB3aWxsIGRpcmVjdGx5XG4gICAgICogdXBkYXRlIGJvdW5kIHByb3BlcnRpZXMgb2YgdGhlIHJhZGlvIGJ1dHRvbi5cbiAgICAgKi9cbiAgICBtYXJrRm9yQ2hlY2soKSB7XG4gICAgICAgIC8vIFdoZW4gdGhlIGdyb3VwIHZhbHVlIGNoYW5nZXMsIHRoZSBidXR0b24gd2lsbCBub3QgYmUgbm90aWZpZWQuXG4gICAgICAgIC8vIFVzZSBgbWFya0ZvckNoZWNrYCB0byBleHBsaWNpdCB1cGRhdGUgYnV0dG9uIHRvZ2dsZSdzIHN0YXR1cy5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG59XG4iXX0=
|