@siemens/ix-angular 2.6.1 → 3.0.0-alpha.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/{control-value-accessors → common/directives/control-value-accessors}/boolean-value-accessor.d.ts +3 -3
- package/common/directives/control-value-accessors/date-value-accessor.d.ts +9 -0
- package/{control-value-accessors → common/directives/control-value-accessors}/radio-value-accessor.d.ts +3 -3
- package/{control-value-accessors → common/directives/control-value-accessors}/select-value-accessor.d.ts +3 -3
- package/common/directives/control-value-accessors/text-value-accessor.d.ts +9 -0
- package/{control-value-accessors → common/directives/control-value-accessors}/value-accessor.d.ts +10 -4
- package/common/directives/dropdown-trigger.d.ts +10 -0
- package/{tree → common/directives}/tree.d.ts +5 -5
- package/common/index.d.ts +6 -0
- package/common/providers/modal/index.d.ts +3 -0
- package/{modal → common/providers/modal}/modal.config.d.ts +1 -1
- package/{modal → common/providers/modal}/modal.service.d.ts +5 -0
- package/{toast → common/providers/toast}/index.d.ts +1 -0
- package/{toast → common/providers/toast}/toast.config.d.ts +1 -1
- package/common/utils/create-value-accessor-provider.d.ts +2 -0
- package/components.d.ts +137 -135
- package/declare-components.d.ts +1 -1
- package/directives/control-value-accessors/boolean-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/date-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/index.d.ts +5 -0
- package/directives/control-value-accessors/radio-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/select-value-accessor.d.ts +8 -0
- package/directives/control-value-accessors/text-value-accessor.d.ts +8 -0
- package/directives/dropdown-trigger.d.ts +10 -0
- package/{esm2020 → esm2022}/angular-component-lib/utils.mjs +1 -1
- package/esm2022/common/directives/control-value-accessors/boolean-value-accessor.mjs +32 -0
- package/esm2022/common/directives/control-value-accessors/date-value-accessor.mjs +28 -0
- package/esm2022/common/directives/control-value-accessors/index.mjs +14 -0
- package/esm2022/common/directives/control-value-accessors/radio-value-accessor.mjs +34 -0
- package/esm2022/common/directives/control-value-accessors/select-value-accessor.mjs +28 -0
- package/esm2022/common/directives/control-value-accessors/text-value-accessor.mjs +31 -0
- package/esm2022/common/directives/control-value-accessors/value-accessor.mjs +157 -0
- package/esm2022/common/directives/dropdown-trigger.mjs +28 -0
- package/esm2022/common/directives/tree.mjs +70 -0
- package/esm2022/common/index.mjs +15 -0
- package/esm2022/common/providers/modal/index.mjs +11 -0
- package/esm2022/common/providers/modal/modal-ref.mjs +41 -0
- package/esm2022/common/providers/modal/modal.config.mjs +10 -0
- package/esm2022/common/providers/modal/modal.service.mjs +90 -0
- package/esm2022/common/providers/toast/index.mjs +11 -0
- package/esm2022/common/providers/toast/toast.config.mjs +10 -0
- package/esm2022/common/providers/toast/toast.service.mjs +52 -0
- package/esm2022/common/siemens-ix-angular-common.mjs +5 -0
- package/esm2022/common/utils/create-value-accessor-provider.mjs +17 -0
- package/esm2022/components.mjs +2809 -0
- package/{esm2020 → esm2022}/declare-components.mjs +1 -2
- package/esm2022/directives/control-value-accessors/boolean-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/date-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/index.mjs +14 -0
- package/esm2022/directives/control-value-accessors/radio-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/select-value-accessor.mjs +26 -0
- package/esm2022/directives/control-value-accessors/text-value-accessor.mjs +26 -0
- package/esm2022/directives/dropdown-trigger.mjs +31 -0
- package/esm2022/index.mjs +19 -0
- package/esm2022/ix-icon.mjs +40 -0
- package/esm2022/module.mjs +78 -0
- package/esm2022/providers/modal/index.mjs +11 -0
- package/esm2022/providers/modal/modal.service.mjs +28 -0
- package/esm2022/providers/theme/index.mjs +10 -0
- package/esm2022/providers/theme/theme.service.mjs +40 -0
- package/esm2022/providers/toast/index.mjs +2 -0
- package/esm2022/providers/toast/toast.service.mjs +52 -0
- package/esm2022/standalone/angular-component-lib/utils.mjs +59 -0
- package/esm2022/standalone/components.mjs +3126 -0
- package/esm2022/standalone/directives/control-value-accessors/boolean-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/date-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/index.mjs +14 -0
- package/esm2022/standalone/directives/control-value-accessors/radio-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/select-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/control-value-accessors/text-value-accessor.mjs +30 -0
- package/esm2022/standalone/directives/dropdown-trigger.mjs +32 -0
- package/esm2022/standalone/index.mjs +18 -0
- package/esm2022/standalone/internal-components.mjs +19 -0
- package/esm2022/standalone/ix-icon.mjs +44 -0
- package/esm2022/standalone/providers/modal.mjs +26 -0
- package/esm2022/standalone/providers/toast.mjs +31 -0
- package/esm2022/standalone/siemens-ix-angular-standalone.mjs +5 -0
- package/esm2022/standalone/tree.mjs +41 -0
- package/esm2022/standalone/utils/value-accessor-directives.mjs +23 -0
- package/esm2022/tree.mjs +39 -0
- package/esm2022/utils/app-initialize.mjs +25 -0
- package/fesm2022/siemens-ix-angular-common.mjs +633 -0
- package/fesm2022/siemens-ix-angular-common.mjs.map +1 -0
- package/fesm2022/siemens-ix-angular-standalone.mjs +3415 -0
- package/fesm2022/siemens-ix-angular-standalone.mjs.map +1 -0
- package/fesm2022/siemens-ix-angular.mjs +3307 -0
- package/fesm2022/siemens-ix-angular.mjs.map +1 -0
- package/index.d.ts +6 -6
- package/ix-icon.d.ts +1 -1
- package/module.d.ts +9 -9
- package/package.json +21 -15
- package/providers/modal/index.d.ts +2 -0
- package/providers/modal/modal.service.d.ts +15 -0
- package/{theme → providers/theme}/theme.service.d.ts +3 -2
- package/providers/toast/index.d.ts +2 -0
- package/providers/toast/toast.service.d.ts +9 -0
- package/standalone/angular-component-lib/utils.d.ts +9 -0
- package/standalone/components.d.ts +1331 -0
- package/standalone/directives/control-value-accessors/boolean-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/date-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/index.d.ts +5 -0
- package/standalone/directives/control-value-accessors/radio-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/select-value-accessor.d.ts +11 -0
- package/standalone/directives/control-value-accessors/text-value-accessor.d.ts +11 -0
- package/{dropdown/trigger.directive.d.ts → standalone/directives/dropdown-trigger.d.ts} +3 -3
- package/standalone/index.d.ts +9 -0
- package/standalone/internal-components.d.ts +1 -0
- package/standalone/ix-icon.d.ts +9 -0
- package/standalone/providers/modal.d.ts +11 -0
- package/standalone/providers/toast.d.ts +11 -0
- package/standalone/tree.d.ts +9 -0
- package/standalone/utils/value-accessor-directives.d.ts +16 -0
- package/tree.d.ts +9 -0
- package/utils/app-initialize.d.ts +1 -0
- package/app-initialize.d.ts +0 -1
- package/control-value-accessors/date-value-accessor.d.ts +0 -9
- package/control-value-accessors/text-value-accessor.d.ts +0 -9
- package/esm2020/app-initialize.mjs +0 -25
- package/esm2020/components.mjs +0 -2631
- package/esm2020/control-value-accessors/boolean-value-accessor.mjs +0 -49
- package/esm2020/control-value-accessors/date-value-accessor.mjs +0 -45
- package/esm2020/control-value-accessors/index.mjs +0 -14
- package/esm2020/control-value-accessors/radio-value-accessor.mjs +0 -51
- package/esm2020/control-value-accessors/select-value-accessor.mjs +0 -45
- package/esm2020/control-value-accessors/text-value-accessor.mjs +0 -48
- package/esm2020/control-value-accessors/value-accessor.mjs +0 -125
- package/esm2020/dropdown/trigger.directive.mjs +0 -29
- package/esm2020/index.mjs +0 -19
- package/esm2020/ix-icon.mjs +0 -38
- package/esm2020/modal/index.mjs +0 -11
- package/esm2020/modal/modal-ref.mjs +0 -39
- package/esm2020/modal/modal.config.mjs +0 -10
- package/esm2020/modal/modal.service.mjs +0 -87
- package/esm2020/module.mjs +0 -78
- package/esm2020/theme/index.mjs +0 -10
- package/esm2020/theme/theme.service.mjs +0 -38
- package/esm2020/toast/index.mjs +0 -10
- package/esm2020/toast/toast.config.mjs +0 -10
- package/esm2020/toast/toast.service.mjs +0 -52
- package/esm2020/tree/index.mjs +0 -10
- package/esm2020/tree/tree.mjs +0 -81
- package/fesm2015/siemens-ix-angular.mjs +0 -3486
- package/fesm2015/siemens-ix-angular.mjs.map +0 -1
- package/fesm2020/siemens-ix-angular.mjs +0 -3504
- package/fesm2020/siemens-ix-angular.mjs.map +0 -1
- package/modal/index.d.ts +0 -2
- package/tree/index.d.ts +0 -1
- /package/{control-value-accessors → common/directives/control-value-accessors}/index.d.ts +0 -0
- /package/{modal → common/providers/modal}/modal-ref.d.ts +0 -0
- /package/{toast → common/providers/toast}/toast.service.d.ts +0 -0
- /package/{esm2020 → esm2022}/siemens-ix-angular.mjs +0 -0
- /package/{theme → providers/theme}/index.d.ts +0 -0
|
@@ -0,0 +1,3126 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated angular directive proxies */
|
|
4
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
5
|
+
import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils';
|
|
6
|
+
import { defineCustomElement as defineIxActionCard } from '@siemens/ix/components/ix-action-card.js';
|
|
7
|
+
import { defineCustomElement as defineIxApplication } from '@siemens/ix/components/ix-application.js';
|
|
8
|
+
import { defineCustomElement as defineIxApplicationHeader } from '@siemens/ix/components/ix-application-header.js';
|
|
9
|
+
import { defineCustomElement as defineIxAvatar } from '@siemens/ix/components/ix-avatar.js';
|
|
10
|
+
import { defineCustomElement as defineIxBasicNavigation } from '@siemens/ix/components/ix-basic-navigation.js';
|
|
11
|
+
import { defineCustomElement as defineIxBlind } from '@siemens/ix/components/ix-blind.js';
|
|
12
|
+
import { defineCustomElement as defineIxBreadcrumb } from '@siemens/ix/components/ix-breadcrumb.js';
|
|
13
|
+
import { defineCustomElement as defineIxBreadcrumbItem } from '@siemens/ix/components/ix-breadcrumb-item.js';
|
|
14
|
+
import { defineCustomElement as defineIxButton } from '@siemens/ix/components/ix-button.js';
|
|
15
|
+
import { defineCustomElement as defineIxCard } from '@siemens/ix/components/ix-card.js';
|
|
16
|
+
import { defineCustomElement as defineIxCardAccordion } from '@siemens/ix/components/ix-card-accordion.js';
|
|
17
|
+
import { defineCustomElement as defineIxCardContent } from '@siemens/ix/components/ix-card-content.js';
|
|
18
|
+
import { defineCustomElement as defineIxCardList } from '@siemens/ix/components/ix-card-list.js';
|
|
19
|
+
import { defineCustomElement as defineIxCardTitle } from '@siemens/ix/components/ix-card-title.js';
|
|
20
|
+
import { defineCustomElement as defineIxCategoryFilter } from '@siemens/ix/components/ix-category-filter.js';
|
|
21
|
+
import { defineCustomElement as defineIxCheckbox } from '@siemens/ix/components/ix-checkbox.js';
|
|
22
|
+
import { defineCustomElement as defineIxCheckboxGroup } from '@siemens/ix/components/ix-checkbox-group.js';
|
|
23
|
+
import { defineCustomElement as defineIxChip } from '@siemens/ix/components/ix-chip.js';
|
|
24
|
+
import { defineCustomElement as defineIxCol } from '@siemens/ix/components/ix-col.js';
|
|
25
|
+
import { defineCustomElement as defineIxContent } from '@siemens/ix/components/ix-content.js';
|
|
26
|
+
import { defineCustomElement as defineIxContentHeader } from '@siemens/ix/components/ix-content-header.js';
|
|
27
|
+
import { defineCustomElement as defineIxCustomField } from '@siemens/ix/components/ix-custom-field.js';
|
|
28
|
+
import { defineCustomElement as defineIxDateDropdown } from '@siemens/ix/components/ix-date-dropdown.js';
|
|
29
|
+
import { defineCustomElement as defineIxDateInput } from '@siemens/ix/components/ix-date-input.js';
|
|
30
|
+
import { defineCustomElement as defineIxDatePicker } from '@siemens/ix/components/ix-date-picker.js';
|
|
31
|
+
import { defineCustomElement as defineIxDatetimePicker } from '@siemens/ix/components/ix-datetime-picker.js';
|
|
32
|
+
import { defineCustomElement as defineIxDivider } from '@siemens/ix/components/ix-divider.js';
|
|
33
|
+
import { defineCustomElement as defineIxDrawer } from '@siemens/ix/components/ix-drawer.js';
|
|
34
|
+
import { defineCustomElement as defineIxDropdown } from '@siemens/ix/components/ix-dropdown.js';
|
|
35
|
+
import { defineCustomElement as defineIxDropdownButton } from '@siemens/ix/components/ix-dropdown-button.js';
|
|
36
|
+
import { defineCustomElement as defineIxDropdownHeader } from '@siemens/ix/components/ix-dropdown-header.js';
|
|
37
|
+
import { defineCustomElement as defineIxDropdownItem } from '@siemens/ix/components/ix-dropdown-item.js';
|
|
38
|
+
import { defineCustomElement as defineIxDropdownQuickActions } from '@siemens/ix/components/ix-dropdown-quick-actions.js';
|
|
39
|
+
import { defineCustomElement as defineIxEmptyState } from '@siemens/ix/components/ix-empty-state.js';
|
|
40
|
+
import { defineCustomElement as defineIxEventList } from '@siemens/ix/components/ix-event-list.js';
|
|
41
|
+
import { defineCustomElement as defineIxEventListItem } from '@siemens/ix/components/ix-event-list-item.js';
|
|
42
|
+
import { defineCustomElement as defineIxExpandingSearch } from '@siemens/ix/components/ix-expanding-search.js';
|
|
43
|
+
import { defineCustomElement as defineIxFieldLabel } from '@siemens/ix/components/ix-field-label.js';
|
|
44
|
+
import { defineCustomElement as defineIxFilterChip } from '@siemens/ix/components/ix-filter-chip.js';
|
|
45
|
+
import { defineCustomElement as defineIxFlipTile } from '@siemens/ix/components/ix-flip-tile.js';
|
|
46
|
+
import { defineCustomElement as defineIxFlipTileContent } from '@siemens/ix/components/ix-flip-tile-content.js';
|
|
47
|
+
import { defineCustomElement as defineIxGroup } from '@siemens/ix/components/ix-group.js';
|
|
48
|
+
import { defineCustomElement as defineIxGroupContextMenu } from '@siemens/ix/components/ix-group-context-menu.js';
|
|
49
|
+
import { defineCustomElement as defineIxGroupItem } from '@siemens/ix/components/ix-group-item.js';
|
|
50
|
+
import { defineCustomElement as defineIxHelperText } from '@siemens/ix/components/ix-helper-text.js';
|
|
51
|
+
import { defineCustomElement as defineIxIconButton } from '@siemens/ix/components/ix-icon-button.js';
|
|
52
|
+
import { defineCustomElement as defineIxIconToggleButton } from '@siemens/ix/components/ix-icon-toggle-button.js';
|
|
53
|
+
import { defineCustomElement as defineIxInput } from '@siemens/ix/components/ix-input.js';
|
|
54
|
+
import { defineCustomElement as defineIxInputGroup } from '@siemens/ix/components/ix-input-group.js';
|
|
55
|
+
import { defineCustomElement as defineIxKeyValue } from '@siemens/ix/components/ix-key-value.js';
|
|
56
|
+
import { defineCustomElement as defineIxKeyValueList } from '@siemens/ix/components/ix-key-value-list.js';
|
|
57
|
+
import { defineCustomElement as defineIxKpi } from '@siemens/ix/components/ix-kpi.js';
|
|
58
|
+
import { defineCustomElement as defineIxLayoutAuto } from '@siemens/ix/components/ix-layout-auto.js';
|
|
59
|
+
import { defineCustomElement as defineIxLayoutGrid } from '@siemens/ix/components/ix-layout-grid.js';
|
|
60
|
+
import { defineCustomElement as defineIxLinkButton } from '@siemens/ix/components/ix-link-button.js';
|
|
61
|
+
import { defineCustomElement as defineIxMapNavigation } from '@siemens/ix/components/ix-map-navigation.js';
|
|
62
|
+
import { defineCustomElement as defineIxMapNavigationOverlay } from '@siemens/ix/components/ix-map-navigation-overlay.js';
|
|
63
|
+
import { defineCustomElement as defineIxMenu } from '@siemens/ix/components/ix-menu.js';
|
|
64
|
+
import { defineCustomElement as defineIxMenuAbout } from '@siemens/ix/components/ix-menu-about.js';
|
|
65
|
+
import { defineCustomElement as defineIxMenuAboutItem } from '@siemens/ix/components/ix-menu-about-item.js';
|
|
66
|
+
import { defineCustomElement as defineIxMenuAboutNews } from '@siemens/ix/components/ix-menu-about-news.js';
|
|
67
|
+
import { defineCustomElement as defineIxMenuAvatar } from '@siemens/ix/components/ix-menu-avatar.js';
|
|
68
|
+
import { defineCustomElement as defineIxMenuAvatarItem } from '@siemens/ix/components/ix-menu-avatar-item.js';
|
|
69
|
+
import { defineCustomElement as defineIxMenuCategory } from '@siemens/ix/components/ix-menu-category.js';
|
|
70
|
+
import { defineCustomElement as defineIxMenuItem } from '@siemens/ix/components/ix-menu-item.js';
|
|
71
|
+
import { defineCustomElement as defineIxMenuSettings } from '@siemens/ix/components/ix-menu-settings.js';
|
|
72
|
+
import { defineCustomElement as defineIxMenuSettingsItem } from '@siemens/ix/components/ix-menu-settings-item.js';
|
|
73
|
+
import { defineCustomElement as defineIxMessageBar } from '@siemens/ix/components/ix-message-bar.js';
|
|
74
|
+
import { defineCustomElement as defineIxModal } from '@siemens/ix/components/ix-modal.js';
|
|
75
|
+
import { defineCustomElement as defineIxModalContent } from '@siemens/ix/components/ix-modal-content.js';
|
|
76
|
+
import { defineCustomElement as defineIxModalFooter } from '@siemens/ix/components/ix-modal-footer.js';
|
|
77
|
+
import { defineCustomElement as defineIxModalHeader } from '@siemens/ix/components/ix-modal-header.js';
|
|
78
|
+
import { defineCustomElement as defineIxNumberInput } from '@siemens/ix/components/ix-number-input.js';
|
|
79
|
+
import { defineCustomElement as defineIxPagination } from '@siemens/ix/components/ix-pagination.js';
|
|
80
|
+
import { defineCustomElement as defineIxPane } from '@siemens/ix/components/ix-pane.js';
|
|
81
|
+
import { defineCustomElement as defineIxPaneLayout } from '@siemens/ix/components/ix-pane-layout.js';
|
|
82
|
+
import { defineCustomElement as defineIxPill } from '@siemens/ix/components/ix-pill.js';
|
|
83
|
+
import { defineCustomElement as defineIxPushCard } from '@siemens/ix/components/ix-push-card.js';
|
|
84
|
+
import { defineCustomElement as defineIxRadio } from '@siemens/ix/components/ix-radio.js';
|
|
85
|
+
import { defineCustomElement as defineIxRadioGroup } from '@siemens/ix/components/ix-radio-group.js';
|
|
86
|
+
import { defineCustomElement as defineIxRow } from '@siemens/ix/components/ix-row.js';
|
|
87
|
+
import { defineCustomElement as defineIxSelect } from '@siemens/ix/components/ix-select.js';
|
|
88
|
+
import { defineCustomElement as defineIxSelectItem } from '@siemens/ix/components/ix-select-item.js';
|
|
89
|
+
import { defineCustomElement as defineIxSlider } from '@siemens/ix/components/ix-slider.js';
|
|
90
|
+
import { defineCustomElement as defineIxSpinner } from '@siemens/ix/components/ix-spinner.js';
|
|
91
|
+
import { defineCustomElement as defineIxSplitButton } from '@siemens/ix/components/ix-split-button.js';
|
|
92
|
+
import { defineCustomElement as defineIxTabItem } from '@siemens/ix/components/ix-tab-item.js';
|
|
93
|
+
import { defineCustomElement as defineIxTabs } from '@siemens/ix/components/ix-tabs.js';
|
|
94
|
+
import { defineCustomElement as defineIxTextarea } from '@siemens/ix/components/ix-textarea.js';
|
|
95
|
+
import { defineCustomElement as defineIxTile } from '@siemens/ix/components/ix-tile.js';
|
|
96
|
+
import { defineCustomElement as defineIxTimePicker } from '@siemens/ix/components/ix-time-picker.js';
|
|
97
|
+
import { defineCustomElement as defineIxToast } from '@siemens/ix/components/ix-toast.js';
|
|
98
|
+
import { defineCustomElement as defineIxToastContainer } from '@siemens/ix/components/ix-toast-container.js';
|
|
99
|
+
import { defineCustomElement as defineIxToggle } from '@siemens/ix/components/ix-toggle.js';
|
|
100
|
+
import { defineCustomElement as defineIxToggleButton } from '@siemens/ix/components/ix-toggle-button.js';
|
|
101
|
+
import { defineCustomElement as defineIxTooltip } from '@siemens/ix/components/ix-tooltip.js';
|
|
102
|
+
import { defineCustomElement as defineIxTreeItem } from '@siemens/ix/components/ix-tree-item.js';
|
|
103
|
+
import { defineCustomElement as defineIxTypography } from '@siemens/ix/components/ix-typography.js';
|
|
104
|
+
import { defineCustomElement as defineIxUpload } from '@siemens/ix/components/ix-upload.js';
|
|
105
|
+
import { defineCustomElement as defineIxValidationTooltip } from '@siemens/ix/components/ix-validation-tooltip.js';
|
|
106
|
+
import { defineCustomElement as defineIxWorkflowStep } from '@siemens/ix/components/ix-workflow-step.js';
|
|
107
|
+
import { defineCustomElement as defineIxWorkflowSteps } from '@siemens/ix/components/ix-workflow-steps.js';
|
|
108
|
+
import * as i0 from "@angular/core";
|
|
109
|
+
let IxActionCard = class IxActionCard {
|
|
110
|
+
z;
|
|
111
|
+
el;
|
|
112
|
+
constructor(c, r, z) {
|
|
113
|
+
this.z = z;
|
|
114
|
+
c.detach();
|
|
115
|
+
this.el = r.nativeElement;
|
|
116
|
+
}
|
|
117
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxActionCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
118
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxActionCard, isStandalone: true, selector: "ix-action-card", inputs: { heading: "heading", icon: "icon", selected: "selected", subheading: "subheading", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
119
|
+
};
|
|
120
|
+
IxActionCard = __decorate([
|
|
121
|
+
ProxyCmp({
|
|
122
|
+
defineCustomElementFn: defineIxActionCard,
|
|
123
|
+
inputs: ['heading', 'icon', 'selected', 'subheading', 'variant']
|
|
124
|
+
})
|
|
125
|
+
], IxActionCard);
|
|
126
|
+
export { IxActionCard };
|
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxActionCard, decorators: [{
|
|
128
|
+
type: Component,
|
|
129
|
+
args: [{
|
|
130
|
+
selector: 'ix-action-card',
|
|
131
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
132
|
+
template: '<ng-content></ng-content>',
|
|
133
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
134
|
+
inputs: ['heading', 'icon', 'selected', 'subheading', 'variant'],
|
|
135
|
+
standalone: true
|
|
136
|
+
}]
|
|
137
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
138
|
+
let IxApplication = class IxApplication {
|
|
139
|
+
z;
|
|
140
|
+
el;
|
|
141
|
+
constructor(c, r, z) {
|
|
142
|
+
this.z = z;
|
|
143
|
+
c.detach();
|
|
144
|
+
this.el = r.nativeElement;
|
|
145
|
+
}
|
|
146
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxApplication, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
147
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxApplication, isStandalone: true, selector: "ix-application", inputs: { appSwitchConfig: "appSwitchConfig", breakpoints: "breakpoints", forceBreakpoint: "forceBreakpoint", theme: "theme", themeSystemAppearance: "themeSystemAppearance" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
148
|
+
};
|
|
149
|
+
IxApplication = __decorate([
|
|
150
|
+
ProxyCmp({
|
|
151
|
+
defineCustomElementFn: defineIxApplication,
|
|
152
|
+
inputs: ['appSwitchConfig', 'breakpoints', 'forceBreakpoint', 'theme', 'themeSystemAppearance']
|
|
153
|
+
})
|
|
154
|
+
], IxApplication);
|
|
155
|
+
export { IxApplication };
|
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxApplication, decorators: [{
|
|
157
|
+
type: Component,
|
|
158
|
+
args: [{
|
|
159
|
+
selector: 'ix-application',
|
|
160
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
161
|
+
template: '<ng-content></ng-content>',
|
|
162
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
163
|
+
inputs: ['appSwitchConfig', 'breakpoints', 'forceBreakpoint', 'theme', 'themeSystemAppearance'],
|
|
164
|
+
standalone: true
|
|
165
|
+
}]
|
|
166
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
167
|
+
let IxApplicationHeader = class IxApplicationHeader {
|
|
168
|
+
z;
|
|
169
|
+
el;
|
|
170
|
+
constructor(c, r, z) {
|
|
171
|
+
this.z = z;
|
|
172
|
+
c.detach();
|
|
173
|
+
this.el = r.nativeElement;
|
|
174
|
+
proxyOutputs(this, this.el, ['menuToggle', 'openAppSwitch']);
|
|
175
|
+
}
|
|
176
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxApplicationHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
177
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxApplicationHeader, isStandalone: true, selector: "ix-application-header", inputs: { name: "name", showMenu: "showMenu" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
178
|
+
};
|
|
179
|
+
IxApplicationHeader = __decorate([
|
|
180
|
+
ProxyCmp({
|
|
181
|
+
defineCustomElementFn: defineIxApplicationHeader,
|
|
182
|
+
inputs: ['name', 'showMenu']
|
|
183
|
+
})
|
|
184
|
+
], IxApplicationHeader);
|
|
185
|
+
export { IxApplicationHeader };
|
|
186
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxApplicationHeader, decorators: [{
|
|
187
|
+
type: Component,
|
|
188
|
+
args: [{
|
|
189
|
+
selector: 'ix-application-header',
|
|
190
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
191
|
+
template: '<ng-content></ng-content>',
|
|
192
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
193
|
+
inputs: ['name', 'showMenu'],
|
|
194
|
+
standalone: true
|
|
195
|
+
}]
|
|
196
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
197
|
+
let IxAvatar = class IxAvatar {
|
|
198
|
+
z;
|
|
199
|
+
el;
|
|
200
|
+
constructor(c, r, z) {
|
|
201
|
+
this.z = z;
|
|
202
|
+
c.detach();
|
|
203
|
+
this.el = r.nativeElement;
|
|
204
|
+
}
|
|
205
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxAvatar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
206
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxAvatar, isStandalone: true, selector: "ix-avatar", inputs: { extra: "extra", image: "image", initials: "initials", username: "username" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
207
|
+
};
|
|
208
|
+
IxAvatar = __decorate([
|
|
209
|
+
ProxyCmp({
|
|
210
|
+
defineCustomElementFn: defineIxAvatar,
|
|
211
|
+
inputs: ['extra', 'image', 'initials', 'username']
|
|
212
|
+
})
|
|
213
|
+
], IxAvatar);
|
|
214
|
+
export { IxAvatar };
|
|
215
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxAvatar, decorators: [{
|
|
216
|
+
type: Component,
|
|
217
|
+
args: [{
|
|
218
|
+
selector: 'ix-avatar',
|
|
219
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
220
|
+
template: '<ng-content></ng-content>',
|
|
221
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
222
|
+
inputs: ['extra', 'image', 'initials', 'username'],
|
|
223
|
+
standalone: true
|
|
224
|
+
}]
|
|
225
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
226
|
+
let IxBasicNavigation = class IxBasicNavigation {
|
|
227
|
+
z;
|
|
228
|
+
el;
|
|
229
|
+
constructor(c, r, z) {
|
|
230
|
+
this.z = z;
|
|
231
|
+
c.detach();
|
|
232
|
+
this.el = r.nativeElement;
|
|
233
|
+
}
|
|
234
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBasicNavigation, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
235
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxBasicNavigation, isStandalone: true, selector: "ix-basic-navigation", inputs: { applicationName: "applicationName", breakpoints: "breakpoints", forceBreakpoint: "forceBreakpoint", hideHeader: "hideHeader" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
236
|
+
};
|
|
237
|
+
IxBasicNavigation = __decorate([
|
|
238
|
+
ProxyCmp({
|
|
239
|
+
defineCustomElementFn: defineIxBasicNavigation,
|
|
240
|
+
inputs: ['applicationName', 'breakpoints', 'forceBreakpoint', 'hideHeader']
|
|
241
|
+
})
|
|
242
|
+
], IxBasicNavigation);
|
|
243
|
+
export { IxBasicNavigation };
|
|
244
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBasicNavigation, decorators: [{
|
|
245
|
+
type: Component,
|
|
246
|
+
args: [{
|
|
247
|
+
selector: 'ix-basic-navigation',
|
|
248
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
249
|
+
template: '<ng-content></ng-content>',
|
|
250
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
251
|
+
inputs: ['applicationName', 'breakpoints', 'forceBreakpoint', 'hideHeader'],
|
|
252
|
+
standalone: true
|
|
253
|
+
}]
|
|
254
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
255
|
+
let IxBlind = class IxBlind {
|
|
256
|
+
z;
|
|
257
|
+
el;
|
|
258
|
+
constructor(c, r, z) {
|
|
259
|
+
this.z = z;
|
|
260
|
+
c.detach();
|
|
261
|
+
this.el = r.nativeElement;
|
|
262
|
+
proxyOutputs(this, this.el, ['collapsedChange']);
|
|
263
|
+
}
|
|
264
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBlind, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
265
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxBlind, isStandalone: true, selector: "ix-blind", inputs: { collapsed: "collapsed", icon: "icon", label: "label", sublabel: "sublabel", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
266
|
+
};
|
|
267
|
+
IxBlind = __decorate([
|
|
268
|
+
ProxyCmp({
|
|
269
|
+
defineCustomElementFn: defineIxBlind,
|
|
270
|
+
inputs: ['collapsed', 'icon', 'label', 'sublabel', 'variant']
|
|
271
|
+
})
|
|
272
|
+
], IxBlind);
|
|
273
|
+
export { IxBlind };
|
|
274
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBlind, decorators: [{
|
|
275
|
+
type: Component,
|
|
276
|
+
args: [{
|
|
277
|
+
selector: 'ix-blind',
|
|
278
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
279
|
+
template: '<ng-content></ng-content>',
|
|
280
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
281
|
+
inputs: ['collapsed', 'icon', 'label', 'sublabel', 'variant'],
|
|
282
|
+
standalone: true
|
|
283
|
+
}]
|
|
284
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
285
|
+
let IxBreadcrumb = class IxBreadcrumb {
|
|
286
|
+
z;
|
|
287
|
+
el;
|
|
288
|
+
constructor(c, r, z) {
|
|
289
|
+
this.z = z;
|
|
290
|
+
c.detach();
|
|
291
|
+
this.el = r.nativeElement;
|
|
292
|
+
proxyOutputs(this, this.el, ['itemClick', 'nextClick']);
|
|
293
|
+
}
|
|
294
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBreadcrumb, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
295
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxBreadcrumb, isStandalone: true, selector: "ix-breadcrumb", inputs: { ariaLabelPreviousButton: "ariaLabelPreviousButton", ghost: "ghost", nextItems: "nextItems", visibleItemCount: "visibleItemCount" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
296
|
+
};
|
|
297
|
+
IxBreadcrumb = __decorate([
|
|
298
|
+
ProxyCmp({
|
|
299
|
+
defineCustomElementFn: defineIxBreadcrumb,
|
|
300
|
+
inputs: ['ariaLabelPreviousButton', 'ghost', 'nextItems', 'visibleItemCount']
|
|
301
|
+
})
|
|
302
|
+
], IxBreadcrumb);
|
|
303
|
+
export { IxBreadcrumb };
|
|
304
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBreadcrumb, decorators: [{
|
|
305
|
+
type: Component,
|
|
306
|
+
args: [{
|
|
307
|
+
selector: 'ix-breadcrumb',
|
|
308
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
309
|
+
template: '<ng-content></ng-content>',
|
|
310
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
311
|
+
inputs: ['ariaLabelPreviousButton', 'ghost', 'nextItems', 'visibleItemCount'],
|
|
312
|
+
standalone: true
|
|
313
|
+
}]
|
|
314
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
315
|
+
let IxBreadcrumbItem = class IxBreadcrumbItem {
|
|
316
|
+
z;
|
|
317
|
+
el;
|
|
318
|
+
constructor(c, r, z) {
|
|
319
|
+
this.z = z;
|
|
320
|
+
c.detach();
|
|
321
|
+
this.el = r.nativeElement;
|
|
322
|
+
}
|
|
323
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBreadcrumbItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
324
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxBreadcrumbItem, isStandalone: true, selector: "ix-breadcrumb-item", inputs: { icon: "icon", label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
325
|
+
};
|
|
326
|
+
IxBreadcrumbItem = __decorate([
|
|
327
|
+
ProxyCmp({
|
|
328
|
+
defineCustomElementFn: defineIxBreadcrumbItem,
|
|
329
|
+
inputs: ['icon', 'label']
|
|
330
|
+
})
|
|
331
|
+
], IxBreadcrumbItem);
|
|
332
|
+
export { IxBreadcrumbItem };
|
|
333
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxBreadcrumbItem, decorators: [{
|
|
334
|
+
type: Component,
|
|
335
|
+
args: [{
|
|
336
|
+
selector: 'ix-breadcrumb-item',
|
|
337
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
338
|
+
template: '<ng-content></ng-content>',
|
|
339
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
340
|
+
inputs: ['icon', 'label'],
|
|
341
|
+
standalone: true
|
|
342
|
+
}]
|
|
343
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
344
|
+
let IxButton = class IxButton {
|
|
345
|
+
z;
|
|
346
|
+
el;
|
|
347
|
+
constructor(c, r, z) {
|
|
348
|
+
this.z = z;
|
|
349
|
+
c.detach();
|
|
350
|
+
this.el = r.nativeElement;
|
|
351
|
+
}
|
|
352
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
353
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxButton, isStandalone: true, selector: "ix-button", inputs: { disabled: "disabled", ghost: "ghost", icon: "icon", loading: "loading", outline: "outline", type: "type", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
354
|
+
};
|
|
355
|
+
IxButton = __decorate([
|
|
356
|
+
ProxyCmp({
|
|
357
|
+
defineCustomElementFn: defineIxButton,
|
|
358
|
+
inputs: ['disabled', 'ghost', 'icon', 'loading', 'outline', 'type', 'variant']
|
|
359
|
+
})
|
|
360
|
+
], IxButton);
|
|
361
|
+
export { IxButton };
|
|
362
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxButton, decorators: [{
|
|
363
|
+
type: Component,
|
|
364
|
+
args: [{
|
|
365
|
+
selector: 'ix-button',
|
|
366
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
367
|
+
template: '<ng-content></ng-content>',
|
|
368
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
369
|
+
inputs: ['disabled', 'ghost', 'icon', 'loading', 'outline', 'type', 'variant'],
|
|
370
|
+
standalone: true
|
|
371
|
+
}]
|
|
372
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
373
|
+
let IxCard = class IxCard {
|
|
374
|
+
z;
|
|
375
|
+
el;
|
|
376
|
+
constructor(c, r, z) {
|
|
377
|
+
this.z = z;
|
|
378
|
+
c.detach();
|
|
379
|
+
this.el = r.nativeElement;
|
|
380
|
+
}
|
|
381
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
382
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCard, isStandalone: true, selector: "ix-card", inputs: { selected: "selected", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
383
|
+
};
|
|
384
|
+
IxCard = __decorate([
|
|
385
|
+
ProxyCmp({
|
|
386
|
+
defineCustomElementFn: defineIxCard,
|
|
387
|
+
inputs: ['selected', 'variant']
|
|
388
|
+
})
|
|
389
|
+
], IxCard);
|
|
390
|
+
export { IxCard };
|
|
391
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCard, decorators: [{
|
|
392
|
+
type: Component,
|
|
393
|
+
args: [{
|
|
394
|
+
selector: 'ix-card',
|
|
395
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
396
|
+
template: '<ng-content></ng-content>',
|
|
397
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
398
|
+
inputs: ['selected', 'variant'],
|
|
399
|
+
standalone: true
|
|
400
|
+
}]
|
|
401
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
402
|
+
let IxCardAccordion = class IxCardAccordion {
|
|
403
|
+
z;
|
|
404
|
+
el;
|
|
405
|
+
constructor(c, r, z) {
|
|
406
|
+
this.z = z;
|
|
407
|
+
c.detach();
|
|
408
|
+
this.el = r.nativeElement;
|
|
409
|
+
}
|
|
410
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardAccordion, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
411
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCardAccordion, isStandalone: true, selector: "ix-card-accordion", inputs: { collapse: "collapse" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
412
|
+
};
|
|
413
|
+
IxCardAccordion = __decorate([
|
|
414
|
+
ProxyCmp({
|
|
415
|
+
defineCustomElementFn: defineIxCardAccordion,
|
|
416
|
+
inputs: ['collapse']
|
|
417
|
+
})
|
|
418
|
+
], IxCardAccordion);
|
|
419
|
+
export { IxCardAccordion };
|
|
420
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardAccordion, decorators: [{
|
|
421
|
+
type: Component,
|
|
422
|
+
args: [{
|
|
423
|
+
selector: 'ix-card-accordion',
|
|
424
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
425
|
+
template: '<ng-content></ng-content>',
|
|
426
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
427
|
+
inputs: ['collapse'],
|
|
428
|
+
standalone: true
|
|
429
|
+
}]
|
|
430
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
431
|
+
let IxCardContent = class IxCardContent {
|
|
432
|
+
z;
|
|
433
|
+
el;
|
|
434
|
+
constructor(c, r, z) {
|
|
435
|
+
this.z = z;
|
|
436
|
+
c.detach();
|
|
437
|
+
this.el = r.nativeElement;
|
|
438
|
+
}
|
|
439
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardContent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
440
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCardContent, isStandalone: true, selector: "ix-card-content", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
441
|
+
};
|
|
442
|
+
IxCardContent = __decorate([
|
|
443
|
+
ProxyCmp({
|
|
444
|
+
defineCustomElementFn: defineIxCardContent
|
|
445
|
+
})
|
|
446
|
+
], IxCardContent);
|
|
447
|
+
export { IxCardContent };
|
|
448
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardContent, decorators: [{
|
|
449
|
+
type: Component,
|
|
450
|
+
args: [{
|
|
451
|
+
selector: 'ix-card-content',
|
|
452
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
453
|
+
template: '<ng-content></ng-content>',
|
|
454
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
455
|
+
inputs: [],
|
|
456
|
+
standalone: true
|
|
457
|
+
}]
|
|
458
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
459
|
+
let IxCardList = class IxCardList {
|
|
460
|
+
z;
|
|
461
|
+
el;
|
|
462
|
+
constructor(c, r, z) {
|
|
463
|
+
this.z = z;
|
|
464
|
+
c.detach();
|
|
465
|
+
this.el = r.nativeElement;
|
|
466
|
+
proxyOutputs(this, this.el, ['collapseChanged', 'showAllClick', 'showMoreCardClick']);
|
|
467
|
+
}
|
|
468
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
469
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCardList, isStandalone: true, selector: "ix-card-list", inputs: { collapse: "collapse", hideShowAll: "hideShowAll", i18nMoreCards: "i18nMoreCards", i18nShowAll: "i18nShowAll", label: "label", listStyle: "listStyle", showAllCount: "showAllCount", suppressOverflowHandling: "suppressOverflowHandling" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
470
|
+
};
|
|
471
|
+
IxCardList = __decorate([
|
|
472
|
+
ProxyCmp({
|
|
473
|
+
defineCustomElementFn: defineIxCardList,
|
|
474
|
+
inputs: ['collapse', 'hideShowAll', 'i18nMoreCards', 'i18nShowAll', 'label', 'listStyle', 'showAllCount', 'suppressOverflowHandling']
|
|
475
|
+
})
|
|
476
|
+
], IxCardList);
|
|
477
|
+
export { IxCardList };
|
|
478
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardList, decorators: [{
|
|
479
|
+
type: Component,
|
|
480
|
+
args: [{
|
|
481
|
+
selector: 'ix-card-list',
|
|
482
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
483
|
+
template: '<ng-content></ng-content>',
|
|
484
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
485
|
+
inputs: ['collapse', 'hideShowAll', 'i18nMoreCards', 'i18nShowAll', 'label', 'listStyle', 'showAllCount', 'suppressOverflowHandling'],
|
|
486
|
+
standalone: true
|
|
487
|
+
}]
|
|
488
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
489
|
+
let IxCardTitle = class IxCardTitle {
|
|
490
|
+
z;
|
|
491
|
+
el;
|
|
492
|
+
constructor(c, r, z) {
|
|
493
|
+
this.z = z;
|
|
494
|
+
c.detach();
|
|
495
|
+
this.el = r.nativeElement;
|
|
496
|
+
}
|
|
497
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardTitle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
498
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCardTitle, isStandalone: true, selector: "ix-card-title", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
499
|
+
};
|
|
500
|
+
IxCardTitle = __decorate([
|
|
501
|
+
ProxyCmp({
|
|
502
|
+
defineCustomElementFn: defineIxCardTitle
|
|
503
|
+
})
|
|
504
|
+
], IxCardTitle);
|
|
505
|
+
export { IxCardTitle };
|
|
506
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCardTitle, decorators: [{
|
|
507
|
+
type: Component,
|
|
508
|
+
args: [{
|
|
509
|
+
selector: 'ix-card-title',
|
|
510
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
511
|
+
template: '<ng-content></ng-content>',
|
|
512
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
513
|
+
inputs: [],
|
|
514
|
+
standalone: true
|
|
515
|
+
}]
|
|
516
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
517
|
+
let IxCategoryFilter = class IxCategoryFilter {
|
|
518
|
+
z;
|
|
519
|
+
el;
|
|
520
|
+
constructor(c, r, z) {
|
|
521
|
+
this.z = z;
|
|
522
|
+
c.detach();
|
|
523
|
+
this.el = r.nativeElement;
|
|
524
|
+
proxyOutputs(this, this.el, ['categoryChanged', 'inputChanged', 'filterChanged', 'filterCleared']);
|
|
525
|
+
}
|
|
526
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCategoryFilter, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
527
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCategoryFilter, isStandalone: true, selector: "ix-category-filter", inputs: { categories: "categories", disabled: "disabled", filterState: "filterState", hideIcon: "hideIcon", i18nPlainText: "i18nPlainText", icon: "icon", labelCategories: "labelCategories", nonSelectableCategories: "nonSelectableCategories", placeholder: "placeholder", readonly: "readonly", repeatCategories: "repeatCategories", staticOperator: "staticOperator", suggestions: "suggestions" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
528
|
+
};
|
|
529
|
+
IxCategoryFilter = __decorate([
|
|
530
|
+
ProxyCmp({
|
|
531
|
+
defineCustomElementFn: defineIxCategoryFilter,
|
|
532
|
+
inputs: ['categories', 'disabled', 'filterState', 'hideIcon', 'i18nPlainText', 'icon', 'labelCategories', 'nonSelectableCategories', 'placeholder', 'readonly', 'repeatCategories', 'staticOperator', 'suggestions']
|
|
533
|
+
})
|
|
534
|
+
], IxCategoryFilter);
|
|
535
|
+
export { IxCategoryFilter };
|
|
536
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCategoryFilter, decorators: [{
|
|
537
|
+
type: Component,
|
|
538
|
+
args: [{
|
|
539
|
+
selector: 'ix-category-filter',
|
|
540
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
541
|
+
template: '<ng-content></ng-content>',
|
|
542
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
543
|
+
inputs: ['categories', 'disabled', 'filterState', 'hideIcon', 'i18nPlainText', 'icon', 'labelCategories', 'nonSelectableCategories', 'placeholder', 'readonly', 'repeatCategories', 'staticOperator', 'suggestions'],
|
|
544
|
+
standalone: true
|
|
545
|
+
}]
|
|
546
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
547
|
+
let IxCheckbox = class IxCheckbox {
|
|
548
|
+
z;
|
|
549
|
+
el;
|
|
550
|
+
constructor(c, r, z) {
|
|
551
|
+
this.z = z;
|
|
552
|
+
c.detach();
|
|
553
|
+
this.el = r.nativeElement;
|
|
554
|
+
proxyOutputs(this, this.el, ['checkedChange', 'valueChange']);
|
|
555
|
+
}
|
|
556
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCheckbox, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
557
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCheckbox, isStandalone: true, selector: "ix-checkbox", inputs: { checked: "checked", disabled: "disabled", indeterminate: "indeterminate", label: "label", name: "name", required: "required", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
558
|
+
};
|
|
559
|
+
IxCheckbox = __decorate([
|
|
560
|
+
ProxyCmp({
|
|
561
|
+
defineCustomElementFn: defineIxCheckbox,
|
|
562
|
+
inputs: ['checked', 'disabled', 'indeterminate', 'label', 'name', 'required', 'value']
|
|
563
|
+
})
|
|
564
|
+
], IxCheckbox);
|
|
565
|
+
export { IxCheckbox };
|
|
566
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCheckbox, decorators: [{
|
|
567
|
+
type: Component,
|
|
568
|
+
args: [{
|
|
569
|
+
selector: 'ix-checkbox',
|
|
570
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
571
|
+
template: '<ng-content></ng-content>',
|
|
572
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
573
|
+
inputs: ['checked', 'disabled', 'indeterminate', 'label', 'name', 'required', 'value'],
|
|
574
|
+
standalone: true
|
|
575
|
+
}]
|
|
576
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
577
|
+
let IxCheckboxGroup = class IxCheckboxGroup {
|
|
578
|
+
z;
|
|
579
|
+
el;
|
|
580
|
+
constructor(c, r, z) {
|
|
581
|
+
this.z = z;
|
|
582
|
+
c.detach();
|
|
583
|
+
this.el = r.nativeElement;
|
|
584
|
+
}
|
|
585
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCheckboxGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
586
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCheckboxGroup, isStandalone: true, selector: "ix-checkbox-group", inputs: { direction: "direction", helperText: "helperText", infoText: "infoText", invalidText: "invalidText", label: "label", showTextAsTooltip: "showTextAsTooltip", validText: "validText", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
587
|
+
};
|
|
588
|
+
IxCheckboxGroup = __decorate([
|
|
589
|
+
ProxyCmp({
|
|
590
|
+
defineCustomElementFn: defineIxCheckboxGroup,
|
|
591
|
+
inputs: ['direction', 'helperText', 'infoText', 'invalidText', 'label', 'showTextAsTooltip', 'validText', 'warningText']
|
|
592
|
+
})
|
|
593
|
+
], IxCheckboxGroup);
|
|
594
|
+
export { IxCheckboxGroup };
|
|
595
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCheckboxGroup, decorators: [{
|
|
596
|
+
type: Component,
|
|
597
|
+
args: [{
|
|
598
|
+
selector: 'ix-checkbox-group',
|
|
599
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
600
|
+
template: '<ng-content></ng-content>',
|
|
601
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
602
|
+
inputs: ['direction', 'helperText', 'infoText', 'invalidText', 'label', 'showTextAsTooltip', 'validText', 'warningText'],
|
|
603
|
+
standalone: true
|
|
604
|
+
}]
|
|
605
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
606
|
+
let IxChip = class IxChip {
|
|
607
|
+
z;
|
|
608
|
+
el;
|
|
609
|
+
constructor(c, r, z) {
|
|
610
|
+
this.z = z;
|
|
611
|
+
c.detach();
|
|
612
|
+
this.el = r.nativeElement;
|
|
613
|
+
proxyOutputs(this, this.el, ['closeChip']);
|
|
614
|
+
}
|
|
615
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxChip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
616
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxChip, isStandalone: true, selector: "ix-chip", inputs: { active: "active", background: "background", chipColor: "chipColor", closable: "closable", icon: "icon", outline: "outline", tooltipText: "tooltipText", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
617
|
+
};
|
|
618
|
+
IxChip = __decorate([
|
|
619
|
+
ProxyCmp({
|
|
620
|
+
defineCustomElementFn: defineIxChip,
|
|
621
|
+
inputs: ['active', 'background', 'chipColor', 'closable', 'icon', 'outline', 'tooltipText', 'variant']
|
|
622
|
+
})
|
|
623
|
+
], IxChip);
|
|
624
|
+
export { IxChip };
|
|
625
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxChip, decorators: [{
|
|
626
|
+
type: Component,
|
|
627
|
+
args: [{
|
|
628
|
+
selector: 'ix-chip',
|
|
629
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
630
|
+
template: '<ng-content></ng-content>',
|
|
631
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
632
|
+
inputs: ['active', 'background', 'chipColor', 'closable', 'icon', 'outline', 'tooltipText', 'variant'],
|
|
633
|
+
standalone: true
|
|
634
|
+
}]
|
|
635
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
636
|
+
let IxCol = class IxCol {
|
|
637
|
+
z;
|
|
638
|
+
el;
|
|
639
|
+
constructor(c, r, z) {
|
|
640
|
+
this.z = z;
|
|
641
|
+
c.detach();
|
|
642
|
+
this.el = r.nativeElement;
|
|
643
|
+
}
|
|
644
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCol, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
645
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCol, isStandalone: true, selector: "ix-col", inputs: { size: "size", sizeLg: "sizeLg", sizeMd: "sizeMd", sizeSm: "sizeSm" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
646
|
+
};
|
|
647
|
+
IxCol = __decorate([
|
|
648
|
+
ProxyCmp({
|
|
649
|
+
defineCustomElementFn: defineIxCol,
|
|
650
|
+
inputs: ['size', 'sizeLg', 'sizeMd', 'sizeSm']
|
|
651
|
+
})
|
|
652
|
+
], IxCol);
|
|
653
|
+
export { IxCol };
|
|
654
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCol, decorators: [{
|
|
655
|
+
type: Component,
|
|
656
|
+
args: [{
|
|
657
|
+
selector: 'ix-col',
|
|
658
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
659
|
+
template: '<ng-content></ng-content>',
|
|
660
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
661
|
+
inputs: ['size', 'sizeLg', 'sizeMd', 'sizeSm'],
|
|
662
|
+
standalone: true
|
|
663
|
+
}]
|
|
664
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
665
|
+
let IxContent = class IxContent {
|
|
666
|
+
z;
|
|
667
|
+
el;
|
|
668
|
+
constructor(c, r, z) {
|
|
669
|
+
this.z = z;
|
|
670
|
+
c.detach();
|
|
671
|
+
this.el = r.nativeElement;
|
|
672
|
+
}
|
|
673
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxContent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
674
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxContent, isStandalone: true, selector: "ix-content", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
675
|
+
};
|
|
676
|
+
IxContent = __decorate([
|
|
677
|
+
ProxyCmp({
|
|
678
|
+
defineCustomElementFn: defineIxContent
|
|
679
|
+
})
|
|
680
|
+
], IxContent);
|
|
681
|
+
export { IxContent };
|
|
682
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxContent, decorators: [{
|
|
683
|
+
type: Component,
|
|
684
|
+
args: [{
|
|
685
|
+
selector: 'ix-content',
|
|
686
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
687
|
+
template: '<ng-content></ng-content>',
|
|
688
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
689
|
+
inputs: [],
|
|
690
|
+
standalone: true
|
|
691
|
+
}]
|
|
692
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
693
|
+
let IxContentHeader = class IxContentHeader {
|
|
694
|
+
z;
|
|
695
|
+
el;
|
|
696
|
+
constructor(c, r, z) {
|
|
697
|
+
this.z = z;
|
|
698
|
+
c.detach();
|
|
699
|
+
this.el = r.nativeElement;
|
|
700
|
+
proxyOutputs(this, this.el, ['backButtonClick']);
|
|
701
|
+
}
|
|
702
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxContentHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
703
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxContentHeader, isStandalone: true, selector: "ix-content-header", inputs: { hasBackButton: "hasBackButton", headerSubtitle: "headerSubtitle", headerTitle: "headerTitle", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
704
|
+
};
|
|
705
|
+
IxContentHeader = __decorate([
|
|
706
|
+
ProxyCmp({
|
|
707
|
+
defineCustomElementFn: defineIxContentHeader,
|
|
708
|
+
inputs: ['hasBackButton', 'headerSubtitle', 'headerTitle', 'variant']
|
|
709
|
+
})
|
|
710
|
+
], IxContentHeader);
|
|
711
|
+
export { IxContentHeader };
|
|
712
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxContentHeader, decorators: [{
|
|
713
|
+
type: Component,
|
|
714
|
+
args: [{
|
|
715
|
+
selector: 'ix-content-header',
|
|
716
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
717
|
+
template: '<ng-content></ng-content>',
|
|
718
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
719
|
+
inputs: ['hasBackButton', 'headerSubtitle', 'headerTitle', 'variant'],
|
|
720
|
+
standalone: true
|
|
721
|
+
}]
|
|
722
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
723
|
+
let IxCustomField = class IxCustomField {
|
|
724
|
+
z;
|
|
725
|
+
el;
|
|
726
|
+
constructor(c, r, z) {
|
|
727
|
+
this.z = z;
|
|
728
|
+
c.detach();
|
|
729
|
+
this.el = r.nativeElement;
|
|
730
|
+
}
|
|
731
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCustomField, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
732
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxCustomField, isStandalone: true, selector: "ix-custom-field", inputs: { helperText: "helperText", infoText: "infoText", invalidText: "invalidText", label: "label", required: "required", showTextAsTooltip: "showTextAsTooltip", validText: "validText", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
733
|
+
};
|
|
734
|
+
IxCustomField = __decorate([
|
|
735
|
+
ProxyCmp({
|
|
736
|
+
defineCustomElementFn: defineIxCustomField,
|
|
737
|
+
inputs: ['helperText', 'infoText', 'invalidText', 'label', 'required', 'showTextAsTooltip', 'validText', 'warningText']
|
|
738
|
+
})
|
|
739
|
+
], IxCustomField);
|
|
740
|
+
export { IxCustomField };
|
|
741
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxCustomField, decorators: [{
|
|
742
|
+
type: Component,
|
|
743
|
+
args: [{
|
|
744
|
+
selector: 'ix-custom-field',
|
|
745
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
746
|
+
template: '<ng-content></ng-content>',
|
|
747
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
748
|
+
inputs: ['helperText', 'infoText', 'invalidText', 'label', 'required', 'showTextAsTooltip', 'validText', 'warningText'],
|
|
749
|
+
standalone: true
|
|
750
|
+
}]
|
|
751
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
752
|
+
let IxDateDropdown = class IxDateDropdown {
|
|
753
|
+
z;
|
|
754
|
+
el;
|
|
755
|
+
constructor(c, r, z) {
|
|
756
|
+
this.z = z;
|
|
757
|
+
c.detach();
|
|
758
|
+
this.el = r.nativeElement;
|
|
759
|
+
proxyOutputs(this, this.el, ['dateRangeChange']);
|
|
760
|
+
}
|
|
761
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDateDropdown, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
762
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDateDropdown, isStandalone: true, selector: "ix-date-dropdown", inputs: { customRangeAllowed: "customRangeAllowed", dateRangeId: "dateRangeId", dateRangeOptions: "dateRangeOptions", disabled: "disabled", format: "format", from: "from", ghost: "ghost", i18nCustomItem: "i18nCustomItem", i18nDone: "i18nDone", i18nNoRange: "i18nNoRange", loading: "loading", locale: "locale", maxDate: "maxDate", minDate: "minDate", outline: "outline", range: "range", showWeekNumbers: "showWeekNumbers", to: "to", variant: "variant", weekStartIndex: "weekStartIndex" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
763
|
+
};
|
|
764
|
+
IxDateDropdown = __decorate([
|
|
765
|
+
ProxyCmp({
|
|
766
|
+
defineCustomElementFn: defineIxDateDropdown,
|
|
767
|
+
inputs: ['customRangeAllowed', 'dateRangeId', 'dateRangeOptions', 'disabled', 'format', 'from', 'ghost', 'i18nCustomItem', 'i18nDone', 'i18nNoRange', 'loading', 'locale', 'maxDate', 'minDate', 'outline', 'range', 'showWeekNumbers', 'to', 'variant', 'weekStartIndex'],
|
|
768
|
+
methods: ['getDateRange']
|
|
769
|
+
})
|
|
770
|
+
], IxDateDropdown);
|
|
771
|
+
export { IxDateDropdown };
|
|
772
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDateDropdown, decorators: [{
|
|
773
|
+
type: Component,
|
|
774
|
+
args: [{
|
|
775
|
+
selector: 'ix-date-dropdown',
|
|
776
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
777
|
+
template: '<ng-content></ng-content>',
|
|
778
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
779
|
+
inputs: ['customRangeAllowed', 'dateRangeId', 'dateRangeOptions', 'disabled', 'format', 'from', 'ghost', 'i18nCustomItem', 'i18nDone', 'i18nNoRange', 'loading', 'locale', 'maxDate', 'minDate', 'outline', 'range', 'showWeekNumbers', 'to', 'variant', 'weekStartIndex'],
|
|
780
|
+
standalone: true
|
|
781
|
+
}]
|
|
782
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
783
|
+
let IxDateInput = class IxDateInput {
|
|
784
|
+
z;
|
|
785
|
+
el;
|
|
786
|
+
constructor(c, r, z) {
|
|
787
|
+
this.z = z;
|
|
788
|
+
c.detach();
|
|
789
|
+
this.el = r.nativeElement;
|
|
790
|
+
proxyOutputs(this, this.el, ['valueChange', 'validityStateChange']);
|
|
791
|
+
}
|
|
792
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDateInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
793
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDateInput, isStandalone: true, selector: "ix-date-input", inputs: { disabled: "disabled", format: "format", helperText: "helperText", i18nErrorDateUnparsable: "i18nErrorDateUnparsable", infoText: "infoText", invalidText: "invalidText", label: "label", locale: "locale", name: "name", placeholder: "placeholder", readonly: "readonly", required: "required", showTextAsTooltip: "showTextAsTooltip", showWeekNumbers: "showWeekNumbers", validText: "validText", value: "value", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
794
|
+
};
|
|
795
|
+
IxDateInput = __decorate([
|
|
796
|
+
ProxyCmp({
|
|
797
|
+
defineCustomElementFn: defineIxDateInput,
|
|
798
|
+
inputs: ['disabled', 'format', 'helperText', 'i18nErrorDateUnparsable', 'infoText', 'invalidText', 'label', 'locale', 'name', 'placeholder', 'readonly', 'required', 'showTextAsTooltip', 'showWeekNumbers', 'validText', 'value', 'warningText'],
|
|
799
|
+
methods: ['getNativeInputElement', 'focusInput']
|
|
800
|
+
})
|
|
801
|
+
], IxDateInput);
|
|
802
|
+
export { IxDateInput };
|
|
803
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDateInput, decorators: [{
|
|
804
|
+
type: Component,
|
|
805
|
+
args: [{
|
|
806
|
+
selector: 'ix-date-input',
|
|
807
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
808
|
+
template: '<ng-content></ng-content>',
|
|
809
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
810
|
+
inputs: ['disabled', 'format', 'helperText', 'i18nErrorDateUnparsable', 'infoText', 'invalidText', 'label', 'locale', 'name', 'placeholder', 'readonly', 'required', 'showTextAsTooltip', 'showWeekNumbers', 'validText', 'value', 'warningText'],
|
|
811
|
+
standalone: true
|
|
812
|
+
}]
|
|
813
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
814
|
+
let IxDatePicker = class IxDatePicker {
|
|
815
|
+
z;
|
|
816
|
+
el;
|
|
817
|
+
constructor(c, r, z) {
|
|
818
|
+
this.z = z;
|
|
819
|
+
c.detach();
|
|
820
|
+
this.el = r.nativeElement;
|
|
821
|
+
proxyOutputs(this, this.el, ['dateChange', 'dateRangeChange', 'dateSelect']);
|
|
822
|
+
}
|
|
823
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDatePicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
824
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDatePicker, isStandalone: true, selector: "ix-date-picker", inputs: { corners: "corners", format: "format", from: "from", i18nDone: "i18nDone", locale: "locale", maxDate: "maxDate", minDate: "minDate", range: "range", showWeekNumbers: "showWeekNumbers", to: "to", weekStartIndex: "weekStartIndex" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
825
|
+
};
|
|
826
|
+
IxDatePicker = __decorate([
|
|
827
|
+
ProxyCmp({
|
|
828
|
+
defineCustomElementFn: defineIxDatePicker,
|
|
829
|
+
inputs: ['corners', 'format', 'from', 'i18nDone', 'locale', 'maxDate', 'minDate', 'range', 'showWeekNumbers', 'to', 'weekStartIndex'],
|
|
830
|
+
methods: ['getCurrentDate']
|
|
831
|
+
})
|
|
832
|
+
], IxDatePicker);
|
|
833
|
+
export { IxDatePicker };
|
|
834
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDatePicker, decorators: [{
|
|
835
|
+
type: Component,
|
|
836
|
+
args: [{
|
|
837
|
+
selector: 'ix-date-picker',
|
|
838
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
839
|
+
template: '<ng-content></ng-content>',
|
|
840
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
841
|
+
inputs: ['corners', 'format', 'from', 'i18nDone', 'locale', 'maxDate', 'minDate', 'range', 'showWeekNumbers', 'to', 'weekStartIndex'],
|
|
842
|
+
standalone: true
|
|
843
|
+
}]
|
|
844
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
845
|
+
let IxDatetimePicker = class IxDatetimePicker {
|
|
846
|
+
z;
|
|
847
|
+
el;
|
|
848
|
+
constructor(c, r, z) {
|
|
849
|
+
this.z = z;
|
|
850
|
+
c.detach();
|
|
851
|
+
this.el = r.nativeElement;
|
|
852
|
+
proxyOutputs(this, this.el, ['timeChange', 'dateChange', 'dateSelect']);
|
|
853
|
+
}
|
|
854
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDatetimePicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
855
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDatetimePicker, isStandalone: true, selector: "ix-datetime-picker", inputs: { dateFormat: "dateFormat", from: "from", i18nDone: "i18nDone", i18nTime: "i18nTime", locale: "locale", maxDate: "maxDate", minDate: "minDate", range: "range", showHour: "showHour", showMinutes: "showMinutes", showSeconds: "showSeconds", showTimeReference: "showTimeReference", showWeekNumbers: "showWeekNumbers", time: "time", timeFormat: "timeFormat", timeReference: "timeReference", to: "to", weekStartIndex: "weekStartIndex" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
856
|
+
};
|
|
857
|
+
IxDatetimePicker = __decorate([
|
|
858
|
+
ProxyCmp({
|
|
859
|
+
defineCustomElementFn: defineIxDatetimePicker,
|
|
860
|
+
inputs: ['dateFormat', 'from', 'i18nDone', 'i18nTime', 'locale', 'maxDate', 'minDate', 'range', 'showHour', 'showMinutes', 'showSeconds', 'showTimeReference', 'showWeekNumbers', 'time', 'timeFormat', 'timeReference', 'to', 'weekStartIndex']
|
|
861
|
+
})
|
|
862
|
+
], IxDatetimePicker);
|
|
863
|
+
export { IxDatetimePicker };
|
|
864
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDatetimePicker, decorators: [{
|
|
865
|
+
type: Component,
|
|
866
|
+
args: [{
|
|
867
|
+
selector: 'ix-datetime-picker',
|
|
868
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
869
|
+
template: '<ng-content></ng-content>',
|
|
870
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
871
|
+
inputs: ['dateFormat', 'from', 'i18nDone', 'i18nTime', 'locale', 'maxDate', 'minDate', 'range', 'showHour', 'showMinutes', 'showSeconds', 'showTimeReference', 'showWeekNumbers', 'time', 'timeFormat', 'timeReference', 'to', 'weekStartIndex'],
|
|
872
|
+
standalone: true
|
|
873
|
+
}]
|
|
874
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
875
|
+
let IxDivider = class IxDivider {
|
|
876
|
+
z;
|
|
877
|
+
el;
|
|
878
|
+
constructor(c, r, z) {
|
|
879
|
+
this.z = z;
|
|
880
|
+
c.detach();
|
|
881
|
+
this.el = r.nativeElement;
|
|
882
|
+
}
|
|
883
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDivider, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
884
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDivider, isStandalone: true, selector: "ix-divider", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
885
|
+
};
|
|
886
|
+
IxDivider = __decorate([
|
|
887
|
+
ProxyCmp({
|
|
888
|
+
defineCustomElementFn: defineIxDivider
|
|
889
|
+
})
|
|
890
|
+
], IxDivider);
|
|
891
|
+
export { IxDivider };
|
|
892
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDivider, decorators: [{
|
|
893
|
+
type: Component,
|
|
894
|
+
args: [{
|
|
895
|
+
selector: 'ix-divider',
|
|
896
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
897
|
+
template: '<ng-content></ng-content>',
|
|
898
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
899
|
+
inputs: [],
|
|
900
|
+
standalone: true
|
|
901
|
+
}]
|
|
902
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
903
|
+
let IxDrawer = class IxDrawer {
|
|
904
|
+
z;
|
|
905
|
+
el;
|
|
906
|
+
constructor(c, r, z) {
|
|
907
|
+
this.z = z;
|
|
908
|
+
c.detach();
|
|
909
|
+
this.el = r.nativeElement;
|
|
910
|
+
proxyOutputs(this, this.el, ['open', 'drawerClose']);
|
|
911
|
+
}
|
|
912
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDrawer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
913
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDrawer, isStandalone: true, selector: "ix-drawer", inputs: { closeOnClickOutside: "closeOnClickOutside", fullHeight: "fullHeight", maxWidth: "maxWidth", minWidth: "minWidth", show: "show", width: "width" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
914
|
+
};
|
|
915
|
+
IxDrawer = __decorate([
|
|
916
|
+
ProxyCmp({
|
|
917
|
+
defineCustomElementFn: defineIxDrawer,
|
|
918
|
+
inputs: ['closeOnClickOutside', 'fullHeight', 'maxWidth', 'minWidth', 'show', 'width'],
|
|
919
|
+
methods: ['toggleDrawer']
|
|
920
|
+
})
|
|
921
|
+
], IxDrawer);
|
|
922
|
+
export { IxDrawer };
|
|
923
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDrawer, decorators: [{
|
|
924
|
+
type: Component,
|
|
925
|
+
args: [{
|
|
926
|
+
selector: 'ix-drawer',
|
|
927
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
928
|
+
template: '<ng-content></ng-content>',
|
|
929
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
930
|
+
inputs: ['closeOnClickOutside', 'fullHeight', 'maxWidth', 'minWidth', 'show', 'width'],
|
|
931
|
+
standalone: true
|
|
932
|
+
}]
|
|
933
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
934
|
+
let IxDropdown = class IxDropdown {
|
|
935
|
+
z;
|
|
936
|
+
el;
|
|
937
|
+
constructor(c, r, z) {
|
|
938
|
+
this.z = z;
|
|
939
|
+
c.detach();
|
|
940
|
+
this.el = r.nativeElement;
|
|
941
|
+
proxyOutputs(this, this.el, ['showChanged']);
|
|
942
|
+
}
|
|
943
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdown, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
944
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDropdown, isStandalone: true, selector: "ix-dropdown", inputs: { anchor: "anchor", closeBehavior: "closeBehavior", header: "header", placement: "placement", positioningStrategy: "positioningStrategy", show: "show", suppressAutomaticPlacement: "suppressAutomaticPlacement", trigger: "trigger" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
945
|
+
};
|
|
946
|
+
IxDropdown = __decorate([
|
|
947
|
+
ProxyCmp({
|
|
948
|
+
defineCustomElementFn: defineIxDropdown,
|
|
949
|
+
inputs: ['anchor', 'closeBehavior', 'header', 'placement', 'positioningStrategy', 'show', 'suppressAutomaticPlacement', 'trigger'],
|
|
950
|
+
methods: ['updatePosition']
|
|
951
|
+
})
|
|
952
|
+
], IxDropdown);
|
|
953
|
+
export { IxDropdown };
|
|
954
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdown, decorators: [{
|
|
955
|
+
type: Component,
|
|
956
|
+
args: [{
|
|
957
|
+
selector: 'ix-dropdown',
|
|
958
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
959
|
+
template: '<ng-content></ng-content>',
|
|
960
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
961
|
+
inputs: ['anchor', 'closeBehavior', 'header', 'placement', 'positioningStrategy', 'show', 'suppressAutomaticPlacement', 'trigger'],
|
|
962
|
+
standalone: true
|
|
963
|
+
}]
|
|
964
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
965
|
+
let IxDropdownButton = class IxDropdownButton {
|
|
966
|
+
z;
|
|
967
|
+
el;
|
|
968
|
+
constructor(c, r, z) {
|
|
969
|
+
this.z = z;
|
|
970
|
+
c.detach();
|
|
971
|
+
this.el = r.nativeElement;
|
|
972
|
+
}
|
|
973
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
974
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDropdownButton, isStandalone: true, selector: "ix-dropdown-button", inputs: { closeBehavior: "closeBehavior", disabled: "disabled", ghost: "ghost", icon: "icon", label: "label", outline: "outline", placement: "placement", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
975
|
+
};
|
|
976
|
+
IxDropdownButton = __decorate([
|
|
977
|
+
ProxyCmp({
|
|
978
|
+
defineCustomElementFn: defineIxDropdownButton,
|
|
979
|
+
inputs: ['closeBehavior', 'disabled', 'ghost', 'icon', 'label', 'outline', 'placement', 'variant']
|
|
980
|
+
})
|
|
981
|
+
], IxDropdownButton);
|
|
982
|
+
export { IxDropdownButton };
|
|
983
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownButton, decorators: [{
|
|
984
|
+
type: Component,
|
|
985
|
+
args: [{
|
|
986
|
+
selector: 'ix-dropdown-button',
|
|
987
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
988
|
+
template: '<ng-content></ng-content>',
|
|
989
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
990
|
+
inputs: ['closeBehavior', 'disabled', 'ghost', 'icon', 'label', 'outline', 'placement', 'variant'],
|
|
991
|
+
standalone: true
|
|
992
|
+
}]
|
|
993
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
994
|
+
let IxDropdownHeader = class IxDropdownHeader {
|
|
995
|
+
z;
|
|
996
|
+
el;
|
|
997
|
+
constructor(c, r, z) {
|
|
998
|
+
this.z = z;
|
|
999
|
+
c.detach();
|
|
1000
|
+
this.el = r.nativeElement;
|
|
1001
|
+
}
|
|
1002
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1003
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDropdownHeader, isStandalone: true, selector: "ix-dropdown-header", inputs: { label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1004
|
+
};
|
|
1005
|
+
IxDropdownHeader = __decorate([
|
|
1006
|
+
ProxyCmp({
|
|
1007
|
+
defineCustomElementFn: defineIxDropdownHeader,
|
|
1008
|
+
inputs: ['label']
|
|
1009
|
+
})
|
|
1010
|
+
], IxDropdownHeader);
|
|
1011
|
+
export { IxDropdownHeader };
|
|
1012
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownHeader, decorators: [{
|
|
1013
|
+
type: Component,
|
|
1014
|
+
args: [{
|
|
1015
|
+
selector: 'ix-dropdown-header',
|
|
1016
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1017
|
+
template: '<ng-content></ng-content>',
|
|
1018
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1019
|
+
inputs: ['label'],
|
|
1020
|
+
standalone: true
|
|
1021
|
+
}]
|
|
1022
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1023
|
+
let IxDropdownItem = class IxDropdownItem {
|
|
1024
|
+
z;
|
|
1025
|
+
el;
|
|
1026
|
+
constructor(c, r, z) {
|
|
1027
|
+
this.z = z;
|
|
1028
|
+
c.detach();
|
|
1029
|
+
this.el = r.nativeElement;
|
|
1030
|
+
}
|
|
1031
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1032
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDropdownItem, isStandalone: true, selector: "ix-dropdown-item", inputs: { checked: "checked", disabled: "disabled", hover: "hover", icon: "icon", label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1033
|
+
};
|
|
1034
|
+
IxDropdownItem = __decorate([
|
|
1035
|
+
ProxyCmp({
|
|
1036
|
+
defineCustomElementFn: defineIxDropdownItem,
|
|
1037
|
+
inputs: ['checked', 'disabled', 'hover', 'icon', 'label']
|
|
1038
|
+
})
|
|
1039
|
+
], IxDropdownItem);
|
|
1040
|
+
export { IxDropdownItem };
|
|
1041
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownItem, decorators: [{
|
|
1042
|
+
type: Component,
|
|
1043
|
+
args: [{
|
|
1044
|
+
selector: 'ix-dropdown-item',
|
|
1045
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1046
|
+
template: '<ng-content></ng-content>',
|
|
1047
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1048
|
+
inputs: ['checked', 'disabled', 'hover', 'icon', 'label'],
|
|
1049
|
+
standalone: true
|
|
1050
|
+
}]
|
|
1051
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1052
|
+
let IxDropdownQuickActions = class IxDropdownQuickActions {
|
|
1053
|
+
z;
|
|
1054
|
+
el;
|
|
1055
|
+
constructor(c, r, z) {
|
|
1056
|
+
this.z = z;
|
|
1057
|
+
c.detach();
|
|
1058
|
+
this.el = r.nativeElement;
|
|
1059
|
+
}
|
|
1060
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownQuickActions, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1061
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxDropdownQuickActions, isStandalone: true, selector: "ix-dropdown-quick-actions", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1062
|
+
};
|
|
1063
|
+
IxDropdownQuickActions = __decorate([
|
|
1064
|
+
ProxyCmp({
|
|
1065
|
+
defineCustomElementFn: defineIxDropdownQuickActions
|
|
1066
|
+
})
|
|
1067
|
+
], IxDropdownQuickActions);
|
|
1068
|
+
export { IxDropdownQuickActions };
|
|
1069
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxDropdownQuickActions, decorators: [{
|
|
1070
|
+
type: Component,
|
|
1071
|
+
args: [{
|
|
1072
|
+
selector: 'ix-dropdown-quick-actions',
|
|
1073
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1074
|
+
template: '<ng-content></ng-content>',
|
|
1075
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1076
|
+
inputs: [],
|
|
1077
|
+
standalone: true
|
|
1078
|
+
}]
|
|
1079
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1080
|
+
let IxEmptyState = class IxEmptyState {
|
|
1081
|
+
z;
|
|
1082
|
+
el;
|
|
1083
|
+
constructor(c, r, z) {
|
|
1084
|
+
this.z = z;
|
|
1085
|
+
c.detach();
|
|
1086
|
+
this.el = r.nativeElement;
|
|
1087
|
+
proxyOutputs(this, this.el, ['actionClick']);
|
|
1088
|
+
}
|
|
1089
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxEmptyState, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1090
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxEmptyState, isStandalone: true, selector: "ix-empty-state", inputs: { action: "action", header: "header", icon: "icon", layout: "layout", subHeader: "subHeader" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1091
|
+
};
|
|
1092
|
+
IxEmptyState = __decorate([
|
|
1093
|
+
ProxyCmp({
|
|
1094
|
+
defineCustomElementFn: defineIxEmptyState,
|
|
1095
|
+
inputs: ['action', 'header', 'icon', 'layout', 'subHeader']
|
|
1096
|
+
})
|
|
1097
|
+
], IxEmptyState);
|
|
1098
|
+
export { IxEmptyState };
|
|
1099
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxEmptyState, decorators: [{
|
|
1100
|
+
type: Component,
|
|
1101
|
+
args: [{
|
|
1102
|
+
selector: 'ix-empty-state',
|
|
1103
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1104
|
+
template: '<ng-content></ng-content>',
|
|
1105
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1106
|
+
inputs: ['action', 'header', 'icon', 'layout', 'subHeader'],
|
|
1107
|
+
standalone: true
|
|
1108
|
+
}]
|
|
1109
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1110
|
+
let IxEventList = class IxEventList {
|
|
1111
|
+
z;
|
|
1112
|
+
el;
|
|
1113
|
+
constructor(c, r, z) {
|
|
1114
|
+
this.z = z;
|
|
1115
|
+
c.detach();
|
|
1116
|
+
this.el = r.nativeElement;
|
|
1117
|
+
}
|
|
1118
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxEventList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1119
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxEventList, isStandalone: true, selector: "ix-event-list", inputs: { animated: "animated", chevron: "chevron", compact: "compact", itemHeight: "itemHeight" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1120
|
+
};
|
|
1121
|
+
IxEventList = __decorate([
|
|
1122
|
+
ProxyCmp({
|
|
1123
|
+
defineCustomElementFn: defineIxEventList,
|
|
1124
|
+
inputs: ['animated', 'chevron', 'compact', 'itemHeight']
|
|
1125
|
+
})
|
|
1126
|
+
], IxEventList);
|
|
1127
|
+
export { IxEventList };
|
|
1128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxEventList, decorators: [{
|
|
1129
|
+
type: Component,
|
|
1130
|
+
args: [{
|
|
1131
|
+
selector: 'ix-event-list',
|
|
1132
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1133
|
+
template: '<ng-content></ng-content>',
|
|
1134
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1135
|
+
inputs: ['animated', 'chevron', 'compact', 'itemHeight'],
|
|
1136
|
+
standalone: true
|
|
1137
|
+
}]
|
|
1138
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1139
|
+
let IxEventListItem = class IxEventListItem {
|
|
1140
|
+
z;
|
|
1141
|
+
el;
|
|
1142
|
+
constructor(c, r, z) {
|
|
1143
|
+
this.z = z;
|
|
1144
|
+
c.detach();
|
|
1145
|
+
this.el = r.nativeElement;
|
|
1146
|
+
proxyOutputs(this, this.el, ['itemClick']);
|
|
1147
|
+
}
|
|
1148
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxEventListItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1149
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxEventListItem, isStandalone: true, selector: "ix-event-list-item", inputs: { chevron: "chevron", disabled: "disabled", itemColor: "itemColor", selected: "selected" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1150
|
+
};
|
|
1151
|
+
IxEventListItem = __decorate([
|
|
1152
|
+
ProxyCmp({
|
|
1153
|
+
defineCustomElementFn: defineIxEventListItem,
|
|
1154
|
+
inputs: ['chevron', 'disabled', 'itemColor', 'selected']
|
|
1155
|
+
})
|
|
1156
|
+
], IxEventListItem);
|
|
1157
|
+
export { IxEventListItem };
|
|
1158
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxEventListItem, decorators: [{
|
|
1159
|
+
type: Component,
|
|
1160
|
+
args: [{
|
|
1161
|
+
selector: 'ix-event-list-item',
|
|
1162
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1163
|
+
template: '<ng-content></ng-content>',
|
|
1164
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1165
|
+
inputs: ['chevron', 'disabled', 'itemColor', 'selected'],
|
|
1166
|
+
standalone: true
|
|
1167
|
+
}]
|
|
1168
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1169
|
+
let IxExpandingSearch = class IxExpandingSearch {
|
|
1170
|
+
z;
|
|
1171
|
+
el;
|
|
1172
|
+
constructor(c, r, z) {
|
|
1173
|
+
this.z = z;
|
|
1174
|
+
c.detach();
|
|
1175
|
+
this.el = r.nativeElement;
|
|
1176
|
+
proxyOutputs(this, this.el, ['valueChange']);
|
|
1177
|
+
}
|
|
1178
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxExpandingSearch, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1179
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxExpandingSearch, isStandalone: true, selector: "ix-expanding-search", inputs: { fullWidth: "fullWidth", ghost: "ghost", icon: "icon", outline: "outline", placeholder: "placeholder", value: "value", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1180
|
+
};
|
|
1181
|
+
IxExpandingSearch = __decorate([
|
|
1182
|
+
ProxyCmp({
|
|
1183
|
+
defineCustomElementFn: defineIxExpandingSearch,
|
|
1184
|
+
inputs: ['fullWidth', 'ghost', 'icon', 'outline', 'placeholder', 'value', 'variant']
|
|
1185
|
+
})
|
|
1186
|
+
], IxExpandingSearch);
|
|
1187
|
+
export { IxExpandingSearch };
|
|
1188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxExpandingSearch, decorators: [{
|
|
1189
|
+
type: Component,
|
|
1190
|
+
args: [{
|
|
1191
|
+
selector: 'ix-expanding-search',
|
|
1192
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1193
|
+
template: '<ng-content></ng-content>',
|
|
1194
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1195
|
+
inputs: ['fullWidth', 'ghost', 'icon', 'outline', 'placeholder', 'value', 'variant'],
|
|
1196
|
+
standalone: true
|
|
1197
|
+
}]
|
|
1198
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1199
|
+
let IxFieldLabel = class IxFieldLabel {
|
|
1200
|
+
z;
|
|
1201
|
+
el;
|
|
1202
|
+
constructor(c, r, z) {
|
|
1203
|
+
this.z = z;
|
|
1204
|
+
c.detach();
|
|
1205
|
+
this.el = r.nativeElement;
|
|
1206
|
+
}
|
|
1207
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFieldLabel, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1208
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxFieldLabel, isStandalone: true, selector: "ix-field-label", inputs: { htmlFor: "htmlFor", required: "required" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1209
|
+
};
|
|
1210
|
+
IxFieldLabel = __decorate([
|
|
1211
|
+
ProxyCmp({
|
|
1212
|
+
defineCustomElementFn: defineIxFieldLabel,
|
|
1213
|
+
inputs: ['htmlFor', 'required']
|
|
1214
|
+
})
|
|
1215
|
+
], IxFieldLabel);
|
|
1216
|
+
export { IxFieldLabel };
|
|
1217
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFieldLabel, decorators: [{
|
|
1218
|
+
type: Component,
|
|
1219
|
+
args: [{
|
|
1220
|
+
selector: 'ix-field-label',
|
|
1221
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1222
|
+
template: '<ng-content></ng-content>',
|
|
1223
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1224
|
+
inputs: ['htmlFor', 'required'],
|
|
1225
|
+
standalone: true
|
|
1226
|
+
}]
|
|
1227
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1228
|
+
let IxFilterChip = class IxFilterChip {
|
|
1229
|
+
z;
|
|
1230
|
+
el;
|
|
1231
|
+
constructor(c, r, z) {
|
|
1232
|
+
this.z = z;
|
|
1233
|
+
c.detach();
|
|
1234
|
+
this.el = r.nativeElement;
|
|
1235
|
+
proxyOutputs(this, this.el, ['closeClick']);
|
|
1236
|
+
}
|
|
1237
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFilterChip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1238
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxFilterChip, isStandalone: true, selector: "ix-filter-chip", inputs: { disabled: "disabled", readonly: "readonly" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1239
|
+
};
|
|
1240
|
+
IxFilterChip = __decorate([
|
|
1241
|
+
ProxyCmp({
|
|
1242
|
+
defineCustomElementFn: defineIxFilterChip,
|
|
1243
|
+
inputs: ['disabled', 'readonly']
|
|
1244
|
+
})
|
|
1245
|
+
], IxFilterChip);
|
|
1246
|
+
export { IxFilterChip };
|
|
1247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFilterChip, decorators: [{
|
|
1248
|
+
type: Component,
|
|
1249
|
+
args: [{
|
|
1250
|
+
selector: 'ix-filter-chip',
|
|
1251
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1252
|
+
template: '<ng-content></ng-content>',
|
|
1253
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1254
|
+
inputs: ['disabled', 'readonly'],
|
|
1255
|
+
standalone: true
|
|
1256
|
+
}]
|
|
1257
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1258
|
+
let IxFlipTile = class IxFlipTile {
|
|
1259
|
+
z;
|
|
1260
|
+
el;
|
|
1261
|
+
constructor(c, r, z) {
|
|
1262
|
+
this.z = z;
|
|
1263
|
+
c.detach();
|
|
1264
|
+
this.el = r.nativeElement;
|
|
1265
|
+
proxyOutputs(this, this.el, ['toggle']);
|
|
1266
|
+
}
|
|
1267
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFlipTile, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1268
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxFlipTile, isStandalone: true, selector: "ix-flip-tile", inputs: { height: "height", index: "index", state: "state", width: "width" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1269
|
+
};
|
|
1270
|
+
IxFlipTile = __decorate([
|
|
1271
|
+
ProxyCmp({
|
|
1272
|
+
defineCustomElementFn: defineIxFlipTile,
|
|
1273
|
+
inputs: ['height', 'index', 'state', 'width']
|
|
1274
|
+
})
|
|
1275
|
+
], IxFlipTile);
|
|
1276
|
+
export { IxFlipTile };
|
|
1277
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFlipTile, decorators: [{
|
|
1278
|
+
type: Component,
|
|
1279
|
+
args: [{
|
|
1280
|
+
selector: 'ix-flip-tile',
|
|
1281
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1282
|
+
template: '<ng-content></ng-content>',
|
|
1283
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1284
|
+
inputs: ['height', 'index', 'state', 'width'],
|
|
1285
|
+
standalone: true
|
|
1286
|
+
}]
|
|
1287
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1288
|
+
let IxFlipTileContent = class IxFlipTileContent {
|
|
1289
|
+
z;
|
|
1290
|
+
el;
|
|
1291
|
+
constructor(c, r, z) {
|
|
1292
|
+
this.z = z;
|
|
1293
|
+
c.detach();
|
|
1294
|
+
this.el = r.nativeElement;
|
|
1295
|
+
}
|
|
1296
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFlipTileContent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1297
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxFlipTileContent, isStandalone: true, selector: "ix-flip-tile-content", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1298
|
+
};
|
|
1299
|
+
IxFlipTileContent = __decorate([
|
|
1300
|
+
ProxyCmp({
|
|
1301
|
+
defineCustomElementFn: defineIxFlipTileContent
|
|
1302
|
+
})
|
|
1303
|
+
], IxFlipTileContent);
|
|
1304
|
+
export { IxFlipTileContent };
|
|
1305
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxFlipTileContent, decorators: [{
|
|
1306
|
+
type: Component,
|
|
1307
|
+
args: [{
|
|
1308
|
+
selector: 'ix-flip-tile-content',
|
|
1309
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1310
|
+
template: '<ng-content></ng-content>',
|
|
1311
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1312
|
+
inputs: [],
|
|
1313
|
+
standalone: true
|
|
1314
|
+
}]
|
|
1315
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1316
|
+
let IxGroup = class IxGroup {
|
|
1317
|
+
z;
|
|
1318
|
+
el;
|
|
1319
|
+
constructor(c, r, z) {
|
|
1320
|
+
this.z = z;
|
|
1321
|
+
c.detach();
|
|
1322
|
+
this.el = r.nativeElement;
|
|
1323
|
+
proxyOutputs(this, this.el, ['selectGroup', 'selectItem', 'collapsedChanged']);
|
|
1324
|
+
}
|
|
1325
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1326
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxGroup, isStandalone: true, selector: "ix-group", inputs: { collapsed: "collapsed", expandOnHeaderClick: "expandOnHeaderClick", header: "header", index: "index", selected: "selected", subHeader: "subHeader", suppressHeaderSelection: "suppressHeaderSelection" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1327
|
+
};
|
|
1328
|
+
IxGroup = __decorate([
|
|
1329
|
+
ProxyCmp({
|
|
1330
|
+
defineCustomElementFn: defineIxGroup,
|
|
1331
|
+
inputs: ['collapsed', 'expandOnHeaderClick', 'header', 'index', 'selected', 'subHeader', 'suppressHeaderSelection']
|
|
1332
|
+
})
|
|
1333
|
+
], IxGroup);
|
|
1334
|
+
export { IxGroup };
|
|
1335
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxGroup, decorators: [{
|
|
1336
|
+
type: Component,
|
|
1337
|
+
args: [{
|
|
1338
|
+
selector: 'ix-group',
|
|
1339
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1340
|
+
template: '<ng-content></ng-content>',
|
|
1341
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1342
|
+
inputs: ['collapsed', 'expandOnHeaderClick', 'header', 'index', 'selected', 'subHeader', 'suppressHeaderSelection'],
|
|
1343
|
+
standalone: true
|
|
1344
|
+
}]
|
|
1345
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1346
|
+
let IxGroupContextMenu = class IxGroupContextMenu {
|
|
1347
|
+
z;
|
|
1348
|
+
el;
|
|
1349
|
+
constructor(c, r, z) {
|
|
1350
|
+
this.z = z;
|
|
1351
|
+
c.detach();
|
|
1352
|
+
this.el = r.nativeElement;
|
|
1353
|
+
}
|
|
1354
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxGroupContextMenu, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1355
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxGroupContextMenu, isStandalone: true, selector: "ix-group-context-menu", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1356
|
+
};
|
|
1357
|
+
IxGroupContextMenu = __decorate([
|
|
1358
|
+
ProxyCmp({
|
|
1359
|
+
defineCustomElementFn: defineIxGroupContextMenu
|
|
1360
|
+
})
|
|
1361
|
+
], IxGroupContextMenu);
|
|
1362
|
+
export { IxGroupContextMenu };
|
|
1363
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxGroupContextMenu, decorators: [{
|
|
1364
|
+
type: Component,
|
|
1365
|
+
args: [{
|
|
1366
|
+
selector: 'ix-group-context-menu',
|
|
1367
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1368
|
+
template: '<ng-content></ng-content>',
|
|
1369
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1370
|
+
inputs: [],
|
|
1371
|
+
standalone: true
|
|
1372
|
+
}]
|
|
1373
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1374
|
+
let IxGroupItem = class IxGroupItem {
|
|
1375
|
+
z;
|
|
1376
|
+
el;
|
|
1377
|
+
constructor(c, r, z) {
|
|
1378
|
+
this.z = z;
|
|
1379
|
+
c.detach();
|
|
1380
|
+
this.el = r.nativeElement;
|
|
1381
|
+
proxyOutputs(this, this.el, ['selectedChanged']);
|
|
1382
|
+
}
|
|
1383
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxGroupItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1384
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxGroupItem, isStandalone: true, selector: "ix-group-item", inputs: { focusable: "focusable", icon: "icon", index: "index", secondaryText: "secondaryText", selected: "selected", suppressSelection: "suppressSelection", text: "text" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1385
|
+
};
|
|
1386
|
+
IxGroupItem = __decorate([
|
|
1387
|
+
ProxyCmp({
|
|
1388
|
+
defineCustomElementFn: defineIxGroupItem,
|
|
1389
|
+
inputs: ['focusable', 'icon', 'index', 'secondaryText', 'selected', 'suppressSelection', 'text']
|
|
1390
|
+
})
|
|
1391
|
+
], IxGroupItem);
|
|
1392
|
+
export { IxGroupItem };
|
|
1393
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxGroupItem, decorators: [{
|
|
1394
|
+
type: Component,
|
|
1395
|
+
args: [{
|
|
1396
|
+
selector: 'ix-group-item',
|
|
1397
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1398
|
+
template: '<ng-content></ng-content>',
|
|
1399
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1400
|
+
inputs: ['focusable', 'icon', 'index', 'secondaryText', 'selected', 'suppressSelection', 'text'],
|
|
1401
|
+
standalone: true
|
|
1402
|
+
}]
|
|
1403
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1404
|
+
let IxHelperText = class IxHelperText {
|
|
1405
|
+
z;
|
|
1406
|
+
el;
|
|
1407
|
+
constructor(c, r, z) {
|
|
1408
|
+
this.z = z;
|
|
1409
|
+
c.detach();
|
|
1410
|
+
this.el = r.nativeElement;
|
|
1411
|
+
}
|
|
1412
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxHelperText, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1413
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxHelperText, isStandalone: true, selector: "ix-helper-text", inputs: { helperText: "helperText", htmlFor: "htmlFor", infoText: "infoText", invalidText: "invalidText", validText: "validText", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1414
|
+
};
|
|
1415
|
+
IxHelperText = __decorate([
|
|
1416
|
+
ProxyCmp({
|
|
1417
|
+
defineCustomElementFn: defineIxHelperText,
|
|
1418
|
+
inputs: ['helperText', 'htmlFor', 'infoText', 'invalidText', 'validText', 'warningText']
|
|
1419
|
+
})
|
|
1420
|
+
], IxHelperText);
|
|
1421
|
+
export { IxHelperText };
|
|
1422
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxHelperText, decorators: [{
|
|
1423
|
+
type: Component,
|
|
1424
|
+
args: [{
|
|
1425
|
+
selector: 'ix-helper-text',
|
|
1426
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1427
|
+
template: '<ng-content></ng-content>',
|
|
1428
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1429
|
+
inputs: ['helperText', 'htmlFor', 'infoText', 'invalidText', 'validText', 'warningText'],
|
|
1430
|
+
standalone: true
|
|
1431
|
+
}]
|
|
1432
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1433
|
+
let IxIconButton = class IxIconButton {
|
|
1434
|
+
z;
|
|
1435
|
+
el;
|
|
1436
|
+
constructor(c, r, z) {
|
|
1437
|
+
this.z = z;
|
|
1438
|
+
c.detach();
|
|
1439
|
+
this.el = r.nativeElement;
|
|
1440
|
+
}
|
|
1441
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxIconButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1442
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxIconButton, isStandalone: true, selector: "ix-icon-button", inputs: { a11yLabel: "a11yLabel", disabled: "disabled", ghost: "ghost", icon: "icon", iconColor: "iconColor", loading: "loading", outline: "outline", oval: "oval", size: "size", type: "type", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1443
|
+
};
|
|
1444
|
+
IxIconButton = __decorate([
|
|
1445
|
+
ProxyCmp({
|
|
1446
|
+
defineCustomElementFn: defineIxIconButton,
|
|
1447
|
+
inputs: ['a11yLabel', 'disabled', 'ghost', 'icon', 'iconColor', 'loading', 'outline', 'oval', 'size', 'type', 'variant']
|
|
1448
|
+
})
|
|
1449
|
+
], IxIconButton);
|
|
1450
|
+
export { IxIconButton };
|
|
1451
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxIconButton, decorators: [{
|
|
1452
|
+
type: Component,
|
|
1453
|
+
args: [{
|
|
1454
|
+
selector: 'ix-icon-button',
|
|
1455
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1456
|
+
template: '<ng-content></ng-content>',
|
|
1457
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1458
|
+
inputs: ['a11yLabel', 'disabled', 'ghost', 'icon', 'iconColor', 'loading', 'outline', 'oval', 'size', 'type', 'variant'],
|
|
1459
|
+
standalone: true
|
|
1460
|
+
}]
|
|
1461
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1462
|
+
let IxIconToggleButton = class IxIconToggleButton {
|
|
1463
|
+
z;
|
|
1464
|
+
el;
|
|
1465
|
+
constructor(c, r, z) {
|
|
1466
|
+
this.z = z;
|
|
1467
|
+
c.detach();
|
|
1468
|
+
this.el = r.nativeElement;
|
|
1469
|
+
proxyOutputs(this, this.el, ['pressedChange']);
|
|
1470
|
+
}
|
|
1471
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxIconToggleButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1472
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxIconToggleButton, isStandalone: true, selector: "ix-icon-toggle-button", inputs: { disabled: "disabled", ghost: "ghost", icon: "icon", loading: "loading", outline: "outline", pressed: "pressed", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1473
|
+
};
|
|
1474
|
+
IxIconToggleButton = __decorate([
|
|
1475
|
+
ProxyCmp({
|
|
1476
|
+
defineCustomElementFn: defineIxIconToggleButton,
|
|
1477
|
+
inputs: ['disabled', 'ghost', 'icon', 'loading', 'outline', 'pressed', 'size', 'variant']
|
|
1478
|
+
})
|
|
1479
|
+
], IxIconToggleButton);
|
|
1480
|
+
export { IxIconToggleButton };
|
|
1481
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxIconToggleButton, decorators: [{
|
|
1482
|
+
type: Component,
|
|
1483
|
+
args: [{
|
|
1484
|
+
selector: 'ix-icon-toggle-button',
|
|
1485
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1486
|
+
template: '<ng-content></ng-content>',
|
|
1487
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1488
|
+
inputs: ['disabled', 'ghost', 'icon', 'loading', 'outline', 'pressed', 'size', 'variant'],
|
|
1489
|
+
standalone: true
|
|
1490
|
+
}]
|
|
1491
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1492
|
+
let IxInput = class IxInput {
|
|
1493
|
+
z;
|
|
1494
|
+
el;
|
|
1495
|
+
constructor(c, r, z) {
|
|
1496
|
+
this.z = z;
|
|
1497
|
+
c.detach();
|
|
1498
|
+
this.el = r.nativeElement;
|
|
1499
|
+
proxyOutputs(this, this.el, ['valueChange', 'validityStateChange', 'ixBlur']);
|
|
1500
|
+
}
|
|
1501
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1502
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxInput, isStandalone: true, selector: "ix-input", inputs: { allowedCharactersPattern: "allowedCharactersPattern", disabled: "disabled", helperText: "helperText", infoText: "infoText", invalidText: "invalidText", label: "label", maxLength: "maxLength", minLength: "minLength", name: "name", pattern: "pattern", placeholder: "placeholder", readonly: "readonly", required: "required", showTextAsTooltip: "showTextAsTooltip", type: "type", validText: "validText", value: "value", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1503
|
+
};
|
|
1504
|
+
IxInput = __decorate([
|
|
1505
|
+
ProxyCmp({
|
|
1506
|
+
defineCustomElementFn: defineIxInput,
|
|
1507
|
+
inputs: ['allowedCharactersPattern', 'disabled', 'helperText', 'infoText', 'invalidText', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showTextAsTooltip', 'type', 'validText', 'value', 'warningText'],
|
|
1508
|
+
methods: ['getNativeInputElement', 'focusInput']
|
|
1509
|
+
})
|
|
1510
|
+
], IxInput);
|
|
1511
|
+
export { IxInput };
|
|
1512
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxInput, decorators: [{
|
|
1513
|
+
type: Component,
|
|
1514
|
+
args: [{
|
|
1515
|
+
selector: 'ix-input',
|
|
1516
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1517
|
+
template: '<ng-content></ng-content>',
|
|
1518
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1519
|
+
inputs: ['allowedCharactersPattern', 'disabled', 'helperText', 'infoText', 'invalidText', 'label', 'maxLength', 'minLength', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showTextAsTooltip', 'type', 'validText', 'value', 'warningText'],
|
|
1520
|
+
standalone: true
|
|
1521
|
+
}]
|
|
1522
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1523
|
+
let IxInputGroup = class IxInputGroup {
|
|
1524
|
+
z;
|
|
1525
|
+
el;
|
|
1526
|
+
constructor(c, r, z) {
|
|
1527
|
+
this.z = z;
|
|
1528
|
+
c.detach();
|
|
1529
|
+
this.el = r.nativeElement;
|
|
1530
|
+
}
|
|
1531
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxInputGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1532
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxInputGroup, isStandalone: true, selector: "ix-input-group", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1533
|
+
};
|
|
1534
|
+
IxInputGroup = __decorate([
|
|
1535
|
+
ProxyCmp({
|
|
1536
|
+
defineCustomElementFn: defineIxInputGroup
|
|
1537
|
+
})
|
|
1538
|
+
], IxInputGroup);
|
|
1539
|
+
export { IxInputGroup };
|
|
1540
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxInputGroup, decorators: [{
|
|
1541
|
+
type: Component,
|
|
1542
|
+
args: [{
|
|
1543
|
+
selector: 'ix-input-group',
|
|
1544
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1545
|
+
template: '<ng-content></ng-content>',
|
|
1546
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1547
|
+
inputs: [],
|
|
1548
|
+
standalone: true
|
|
1549
|
+
}]
|
|
1550
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1551
|
+
let IxKeyValue = class IxKeyValue {
|
|
1552
|
+
z;
|
|
1553
|
+
el;
|
|
1554
|
+
constructor(c, r, z) {
|
|
1555
|
+
this.z = z;
|
|
1556
|
+
c.detach();
|
|
1557
|
+
this.el = r.nativeElement;
|
|
1558
|
+
}
|
|
1559
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxKeyValue, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1560
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxKeyValue, isStandalone: true, selector: "ix-key-value", inputs: { icon: "icon", label: "label", labelPosition: "labelPosition", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1561
|
+
};
|
|
1562
|
+
IxKeyValue = __decorate([
|
|
1563
|
+
ProxyCmp({
|
|
1564
|
+
defineCustomElementFn: defineIxKeyValue,
|
|
1565
|
+
inputs: ['icon', 'label', 'labelPosition', 'value']
|
|
1566
|
+
})
|
|
1567
|
+
], IxKeyValue);
|
|
1568
|
+
export { IxKeyValue };
|
|
1569
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxKeyValue, decorators: [{
|
|
1570
|
+
type: Component,
|
|
1571
|
+
args: [{
|
|
1572
|
+
selector: 'ix-key-value',
|
|
1573
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1574
|
+
template: '<ng-content></ng-content>',
|
|
1575
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1576
|
+
inputs: ['icon', 'label', 'labelPosition', 'value'],
|
|
1577
|
+
standalone: true
|
|
1578
|
+
}]
|
|
1579
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1580
|
+
let IxKeyValueList = class IxKeyValueList {
|
|
1581
|
+
z;
|
|
1582
|
+
el;
|
|
1583
|
+
constructor(c, r, z) {
|
|
1584
|
+
this.z = z;
|
|
1585
|
+
c.detach();
|
|
1586
|
+
this.el = r.nativeElement;
|
|
1587
|
+
}
|
|
1588
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxKeyValueList, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1589
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxKeyValueList, isStandalone: true, selector: "ix-key-value-list", inputs: { striped: "striped" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1590
|
+
};
|
|
1591
|
+
IxKeyValueList = __decorate([
|
|
1592
|
+
ProxyCmp({
|
|
1593
|
+
defineCustomElementFn: defineIxKeyValueList,
|
|
1594
|
+
inputs: ['striped']
|
|
1595
|
+
})
|
|
1596
|
+
], IxKeyValueList);
|
|
1597
|
+
export { IxKeyValueList };
|
|
1598
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxKeyValueList, decorators: [{
|
|
1599
|
+
type: Component,
|
|
1600
|
+
args: [{
|
|
1601
|
+
selector: 'ix-key-value-list',
|
|
1602
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1603
|
+
template: '<ng-content></ng-content>',
|
|
1604
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1605
|
+
inputs: ['striped'],
|
|
1606
|
+
standalone: true
|
|
1607
|
+
}]
|
|
1608
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1609
|
+
let IxKpi = class IxKpi {
|
|
1610
|
+
z;
|
|
1611
|
+
el;
|
|
1612
|
+
constructor(c, r, z) {
|
|
1613
|
+
this.z = z;
|
|
1614
|
+
c.detach();
|
|
1615
|
+
this.el = r.nativeElement;
|
|
1616
|
+
}
|
|
1617
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxKpi, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1618
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxKpi, isStandalone: true, selector: "ix-kpi", inputs: { label: "label", orientation: "orientation", state: "state", unit: "unit", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1619
|
+
};
|
|
1620
|
+
IxKpi = __decorate([
|
|
1621
|
+
ProxyCmp({
|
|
1622
|
+
defineCustomElementFn: defineIxKpi,
|
|
1623
|
+
inputs: ['label', 'orientation', 'state', 'unit', 'value']
|
|
1624
|
+
})
|
|
1625
|
+
], IxKpi);
|
|
1626
|
+
export { IxKpi };
|
|
1627
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxKpi, decorators: [{
|
|
1628
|
+
type: Component,
|
|
1629
|
+
args: [{
|
|
1630
|
+
selector: 'ix-kpi',
|
|
1631
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1632
|
+
template: '<ng-content></ng-content>',
|
|
1633
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1634
|
+
inputs: ['label', 'orientation', 'state', 'unit', 'value'],
|
|
1635
|
+
standalone: true
|
|
1636
|
+
}]
|
|
1637
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1638
|
+
let IxLayoutAuto = class IxLayoutAuto {
|
|
1639
|
+
z;
|
|
1640
|
+
el;
|
|
1641
|
+
constructor(c, r, z) {
|
|
1642
|
+
this.z = z;
|
|
1643
|
+
c.detach();
|
|
1644
|
+
this.el = r.nativeElement;
|
|
1645
|
+
}
|
|
1646
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxLayoutAuto, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1647
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxLayoutAuto, isStandalone: true, selector: "ix-layout-auto", inputs: { layout: "layout" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1648
|
+
};
|
|
1649
|
+
IxLayoutAuto = __decorate([
|
|
1650
|
+
ProxyCmp({
|
|
1651
|
+
defineCustomElementFn: defineIxLayoutAuto,
|
|
1652
|
+
inputs: ['layout']
|
|
1653
|
+
})
|
|
1654
|
+
], IxLayoutAuto);
|
|
1655
|
+
export { IxLayoutAuto };
|
|
1656
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxLayoutAuto, decorators: [{
|
|
1657
|
+
type: Component,
|
|
1658
|
+
args: [{
|
|
1659
|
+
selector: 'ix-layout-auto',
|
|
1660
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1661
|
+
template: '<ng-content></ng-content>',
|
|
1662
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1663
|
+
inputs: ['layout'],
|
|
1664
|
+
standalone: true
|
|
1665
|
+
}]
|
|
1666
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1667
|
+
let IxLayoutGrid = class IxLayoutGrid {
|
|
1668
|
+
z;
|
|
1669
|
+
el;
|
|
1670
|
+
constructor(c, r, z) {
|
|
1671
|
+
this.z = z;
|
|
1672
|
+
c.detach();
|
|
1673
|
+
this.el = r.nativeElement;
|
|
1674
|
+
}
|
|
1675
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxLayoutGrid, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1676
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxLayoutGrid, isStandalone: true, selector: "ix-layout-grid", inputs: { columns: "columns", gap: "gap", noMargin: "noMargin" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1677
|
+
};
|
|
1678
|
+
IxLayoutGrid = __decorate([
|
|
1679
|
+
ProxyCmp({
|
|
1680
|
+
defineCustomElementFn: defineIxLayoutGrid,
|
|
1681
|
+
inputs: ['columns', 'gap', 'noMargin']
|
|
1682
|
+
})
|
|
1683
|
+
], IxLayoutGrid);
|
|
1684
|
+
export { IxLayoutGrid };
|
|
1685
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxLayoutGrid, decorators: [{
|
|
1686
|
+
type: Component,
|
|
1687
|
+
args: [{
|
|
1688
|
+
selector: 'ix-layout-grid',
|
|
1689
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1690
|
+
template: '<ng-content></ng-content>',
|
|
1691
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1692
|
+
inputs: ['columns', 'gap', 'noMargin'],
|
|
1693
|
+
standalone: true
|
|
1694
|
+
}]
|
|
1695
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1696
|
+
let IxLinkButton = class IxLinkButton {
|
|
1697
|
+
z;
|
|
1698
|
+
el;
|
|
1699
|
+
constructor(c, r, z) {
|
|
1700
|
+
this.z = z;
|
|
1701
|
+
c.detach();
|
|
1702
|
+
this.el = r.nativeElement;
|
|
1703
|
+
}
|
|
1704
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxLinkButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1705
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxLinkButton, isStandalone: true, selector: "ix-link-button", inputs: { disabled: "disabled", target: "target", url: "url" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1706
|
+
};
|
|
1707
|
+
IxLinkButton = __decorate([
|
|
1708
|
+
ProxyCmp({
|
|
1709
|
+
defineCustomElementFn: defineIxLinkButton,
|
|
1710
|
+
inputs: ['disabled', 'target', 'url']
|
|
1711
|
+
})
|
|
1712
|
+
], IxLinkButton);
|
|
1713
|
+
export { IxLinkButton };
|
|
1714
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxLinkButton, decorators: [{
|
|
1715
|
+
type: Component,
|
|
1716
|
+
args: [{
|
|
1717
|
+
selector: 'ix-link-button',
|
|
1718
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1719
|
+
template: '<ng-content></ng-content>',
|
|
1720
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1721
|
+
inputs: ['disabled', 'target', 'url'],
|
|
1722
|
+
standalone: true
|
|
1723
|
+
}]
|
|
1724
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1725
|
+
let IxMapNavigation = class IxMapNavigation {
|
|
1726
|
+
z;
|
|
1727
|
+
el;
|
|
1728
|
+
constructor(c, r, z) {
|
|
1729
|
+
this.z = z;
|
|
1730
|
+
c.detach();
|
|
1731
|
+
this.el = r.nativeElement;
|
|
1732
|
+
proxyOutputs(this, this.el, ['navigationToggled', 'contextMenuClick']);
|
|
1733
|
+
}
|
|
1734
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMapNavigation, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1735
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMapNavigation, isStandalone: true, selector: "ix-map-navigation", inputs: { applicationName: "applicationName", hideContextMenu: "hideContextMenu", navigationTitle: "navigationTitle" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1736
|
+
};
|
|
1737
|
+
IxMapNavigation = __decorate([
|
|
1738
|
+
ProxyCmp({
|
|
1739
|
+
defineCustomElementFn: defineIxMapNavigation,
|
|
1740
|
+
inputs: ['applicationName', 'hideContextMenu', 'navigationTitle'],
|
|
1741
|
+
methods: ['toggleSidebar', 'openOverlay', 'closeOverlay']
|
|
1742
|
+
})
|
|
1743
|
+
], IxMapNavigation);
|
|
1744
|
+
export { IxMapNavigation };
|
|
1745
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMapNavigation, decorators: [{
|
|
1746
|
+
type: Component,
|
|
1747
|
+
args: [{
|
|
1748
|
+
selector: 'ix-map-navigation',
|
|
1749
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1750
|
+
template: '<ng-content></ng-content>',
|
|
1751
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1752
|
+
inputs: ['applicationName', 'hideContextMenu', 'navigationTitle'],
|
|
1753
|
+
standalone: true
|
|
1754
|
+
}]
|
|
1755
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1756
|
+
let IxMapNavigationOverlay = class IxMapNavigationOverlay {
|
|
1757
|
+
z;
|
|
1758
|
+
el;
|
|
1759
|
+
constructor(c, r, z) {
|
|
1760
|
+
this.z = z;
|
|
1761
|
+
c.detach();
|
|
1762
|
+
this.el = r.nativeElement;
|
|
1763
|
+
proxyOutputs(this, this.el, ['closeClick']);
|
|
1764
|
+
}
|
|
1765
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMapNavigationOverlay, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1766
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMapNavigationOverlay, isStandalone: true, selector: "ix-map-navigation-overlay", inputs: { color: "color", icon: "icon", iconColor: "iconColor", name: "name" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1767
|
+
};
|
|
1768
|
+
IxMapNavigationOverlay = __decorate([
|
|
1769
|
+
ProxyCmp({
|
|
1770
|
+
defineCustomElementFn: defineIxMapNavigationOverlay,
|
|
1771
|
+
inputs: ['color', 'icon', 'iconColor', 'name']
|
|
1772
|
+
})
|
|
1773
|
+
], IxMapNavigationOverlay);
|
|
1774
|
+
export { IxMapNavigationOverlay };
|
|
1775
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMapNavigationOverlay, decorators: [{
|
|
1776
|
+
type: Component,
|
|
1777
|
+
args: [{
|
|
1778
|
+
selector: 'ix-map-navigation-overlay',
|
|
1779
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1780
|
+
template: '<ng-content></ng-content>',
|
|
1781
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1782
|
+
inputs: ['color', 'icon', 'iconColor', 'name'],
|
|
1783
|
+
standalone: true
|
|
1784
|
+
}]
|
|
1785
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1786
|
+
let IxMenu = class IxMenu {
|
|
1787
|
+
z;
|
|
1788
|
+
el;
|
|
1789
|
+
constructor(c, r, z) {
|
|
1790
|
+
this.z = z;
|
|
1791
|
+
c.detach();
|
|
1792
|
+
this.el = r.nativeElement;
|
|
1793
|
+
proxyOutputs(this, this.el, ['expandChange', 'mapExpandChange', 'openAppSwitch', 'openSettings', 'openAbout']);
|
|
1794
|
+
}
|
|
1795
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenu, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1796
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenu, isStandalone: true, selector: "ix-menu", inputs: { applicationDescription: "applicationDescription", applicationName: "applicationName", enableSettings: "enableSettings", enableToggleTheme: "enableToggleTheme", expand: "expand", i18nCollapse: "i18nCollapse", i18nExpand: "i18nExpand", i18nExpandSidebar: "i18nExpandSidebar", i18nLegal: "i18nLegal", i18nSettings: "i18nSettings", i18nToggleTheme: "i18nToggleTheme", pinned: "pinned", showAbout: "showAbout", showSettings: "showSettings", startExpanded: "startExpanded" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1797
|
+
};
|
|
1798
|
+
IxMenu = __decorate([
|
|
1799
|
+
ProxyCmp({
|
|
1800
|
+
defineCustomElementFn: defineIxMenu,
|
|
1801
|
+
inputs: ['applicationDescription', 'applicationName', 'enableSettings', 'enableToggleTheme', 'expand', 'i18nCollapse', 'i18nExpand', 'i18nExpandSidebar', 'i18nLegal', 'i18nSettings', 'i18nToggleTheme', 'pinned', 'showAbout', 'showSettings', 'startExpanded'],
|
|
1802
|
+
methods: ['toggleMapExpand', 'toggleMenu', 'toggleSettings', 'toggleAbout']
|
|
1803
|
+
})
|
|
1804
|
+
], IxMenu);
|
|
1805
|
+
export { IxMenu };
|
|
1806
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenu, decorators: [{
|
|
1807
|
+
type: Component,
|
|
1808
|
+
args: [{
|
|
1809
|
+
selector: 'ix-menu',
|
|
1810
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1811
|
+
template: '<ng-content></ng-content>',
|
|
1812
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1813
|
+
inputs: ['applicationDescription', 'applicationName', 'enableSettings', 'enableToggleTheme', 'expand', 'i18nCollapse', 'i18nExpand', 'i18nExpandSidebar', 'i18nLegal', 'i18nSettings', 'i18nToggleTheme', 'pinned', 'showAbout', 'showSettings', 'startExpanded'],
|
|
1814
|
+
standalone: true
|
|
1815
|
+
}]
|
|
1816
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1817
|
+
let IxMenuAbout = class IxMenuAbout {
|
|
1818
|
+
z;
|
|
1819
|
+
el;
|
|
1820
|
+
constructor(c, r, z) {
|
|
1821
|
+
this.z = z;
|
|
1822
|
+
c.detach();
|
|
1823
|
+
this.el = r.nativeElement;
|
|
1824
|
+
proxyOutputs(this, this.el, ['tabChange', 'close']);
|
|
1825
|
+
}
|
|
1826
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAbout, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1827
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuAbout, isStandalone: true, selector: "ix-menu-about", inputs: { activeTabLabel: "activeTabLabel", label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1828
|
+
};
|
|
1829
|
+
IxMenuAbout = __decorate([
|
|
1830
|
+
ProxyCmp({
|
|
1831
|
+
defineCustomElementFn: defineIxMenuAbout,
|
|
1832
|
+
inputs: ['activeTabLabel', 'label']
|
|
1833
|
+
})
|
|
1834
|
+
], IxMenuAbout);
|
|
1835
|
+
export { IxMenuAbout };
|
|
1836
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAbout, decorators: [{
|
|
1837
|
+
type: Component,
|
|
1838
|
+
args: [{
|
|
1839
|
+
selector: 'ix-menu-about',
|
|
1840
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1841
|
+
template: '<ng-content></ng-content>',
|
|
1842
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1843
|
+
inputs: ['activeTabLabel', 'label'],
|
|
1844
|
+
standalone: true
|
|
1845
|
+
}]
|
|
1846
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1847
|
+
let IxMenuAboutItem = class IxMenuAboutItem {
|
|
1848
|
+
z;
|
|
1849
|
+
el;
|
|
1850
|
+
constructor(c, r, z) {
|
|
1851
|
+
this.z = z;
|
|
1852
|
+
c.detach();
|
|
1853
|
+
this.el = r.nativeElement;
|
|
1854
|
+
proxyOutputs(this, this.el, ['labelChange']);
|
|
1855
|
+
}
|
|
1856
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAboutItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1857
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuAboutItem, isStandalone: true, selector: "ix-menu-about-item", inputs: { label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1858
|
+
};
|
|
1859
|
+
IxMenuAboutItem = __decorate([
|
|
1860
|
+
ProxyCmp({
|
|
1861
|
+
defineCustomElementFn: defineIxMenuAboutItem,
|
|
1862
|
+
inputs: ['label']
|
|
1863
|
+
})
|
|
1864
|
+
], IxMenuAboutItem);
|
|
1865
|
+
export { IxMenuAboutItem };
|
|
1866
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAboutItem, decorators: [{
|
|
1867
|
+
type: Component,
|
|
1868
|
+
args: [{
|
|
1869
|
+
selector: 'ix-menu-about-item',
|
|
1870
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1871
|
+
template: '<ng-content></ng-content>',
|
|
1872
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1873
|
+
inputs: ['label'],
|
|
1874
|
+
standalone: true
|
|
1875
|
+
}]
|
|
1876
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1877
|
+
let IxMenuAboutNews = class IxMenuAboutNews {
|
|
1878
|
+
z;
|
|
1879
|
+
el;
|
|
1880
|
+
constructor(c, r, z) {
|
|
1881
|
+
this.z = z;
|
|
1882
|
+
c.detach();
|
|
1883
|
+
this.el = r.nativeElement;
|
|
1884
|
+
proxyOutputs(this, this.el, ['showMore', 'closePopover']);
|
|
1885
|
+
}
|
|
1886
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAboutNews, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1887
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuAboutNews, isStandalone: true, selector: "ix-menu-about-news", inputs: { aboutItemLabel: "aboutItemLabel", i18nShowMore: "i18nShowMore", label: "label", offsetBottom: "offsetBottom", show: "show" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1888
|
+
};
|
|
1889
|
+
IxMenuAboutNews = __decorate([
|
|
1890
|
+
ProxyCmp({
|
|
1891
|
+
defineCustomElementFn: defineIxMenuAboutNews,
|
|
1892
|
+
inputs: ['aboutItemLabel', 'i18nShowMore', 'label', 'offsetBottom', 'show']
|
|
1893
|
+
})
|
|
1894
|
+
], IxMenuAboutNews);
|
|
1895
|
+
export { IxMenuAboutNews };
|
|
1896
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAboutNews, decorators: [{
|
|
1897
|
+
type: Component,
|
|
1898
|
+
args: [{
|
|
1899
|
+
selector: 'ix-menu-about-news',
|
|
1900
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1901
|
+
template: '<ng-content></ng-content>',
|
|
1902
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1903
|
+
inputs: ['aboutItemLabel', 'i18nShowMore', 'label', 'offsetBottom', 'show'],
|
|
1904
|
+
standalone: true
|
|
1905
|
+
}]
|
|
1906
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1907
|
+
let IxMenuAvatar = class IxMenuAvatar {
|
|
1908
|
+
z;
|
|
1909
|
+
el;
|
|
1910
|
+
constructor(c, r, z) {
|
|
1911
|
+
this.z = z;
|
|
1912
|
+
c.detach();
|
|
1913
|
+
this.el = r.nativeElement;
|
|
1914
|
+
proxyOutputs(this, this.el, ['logoutClick']);
|
|
1915
|
+
}
|
|
1916
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAvatar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1917
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuAvatar, isStandalone: true, selector: "ix-menu-avatar", inputs: { bottom: "bottom", i18nLogout: "i18nLogout", image: "image", initials: "initials", showLogoutButton: "showLogoutButton", top: "top" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1918
|
+
};
|
|
1919
|
+
IxMenuAvatar = __decorate([
|
|
1920
|
+
ProxyCmp({
|
|
1921
|
+
defineCustomElementFn: defineIxMenuAvatar,
|
|
1922
|
+
inputs: ['bottom', 'i18nLogout', 'image', 'initials', 'showLogoutButton', 'top']
|
|
1923
|
+
})
|
|
1924
|
+
], IxMenuAvatar);
|
|
1925
|
+
export { IxMenuAvatar };
|
|
1926
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAvatar, decorators: [{
|
|
1927
|
+
type: Component,
|
|
1928
|
+
args: [{
|
|
1929
|
+
selector: 'ix-menu-avatar',
|
|
1930
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1931
|
+
template: '<ng-content></ng-content>',
|
|
1932
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1933
|
+
inputs: ['bottom', 'i18nLogout', 'image', 'initials', 'showLogoutButton', 'top'],
|
|
1934
|
+
standalone: true
|
|
1935
|
+
}]
|
|
1936
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1937
|
+
let IxMenuAvatarItem = class IxMenuAvatarItem {
|
|
1938
|
+
z;
|
|
1939
|
+
el;
|
|
1940
|
+
constructor(c, r, z) {
|
|
1941
|
+
this.z = z;
|
|
1942
|
+
c.detach();
|
|
1943
|
+
this.el = r.nativeElement;
|
|
1944
|
+
proxyOutputs(this, this.el, ['itemClick']);
|
|
1945
|
+
}
|
|
1946
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAvatarItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1947
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuAvatarItem, isStandalone: true, selector: "ix-menu-avatar-item", inputs: { icon: "icon", label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1948
|
+
};
|
|
1949
|
+
IxMenuAvatarItem = __decorate([
|
|
1950
|
+
ProxyCmp({
|
|
1951
|
+
defineCustomElementFn: defineIxMenuAvatarItem,
|
|
1952
|
+
inputs: ['icon', 'label']
|
|
1953
|
+
})
|
|
1954
|
+
], IxMenuAvatarItem);
|
|
1955
|
+
export { IxMenuAvatarItem };
|
|
1956
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuAvatarItem, decorators: [{
|
|
1957
|
+
type: Component,
|
|
1958
|
+
args: [{
|
|
1959
|
+
selector: 'ix-menu-avatar-item',
|
|
1960
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1961
|
+
template: '<ng-content></ng-content>',
|
|
1962
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1963
|
+
inputs: ['icon', 'label'],
|
|
1964
|
+
standalone: true
|
|
1965
|
+
}]
|
|
1966
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1967
|
+
let IxMenuCategory = class IxMenuCategory {
|
|
1968
|
+
z;
|
|
1969
|
+
el;
|
|
1970
|
+
constructor(c, r, z) {
|
|
1971
|
+
this.z = z;
|
|
1972
|
+
c.detach();
|
|
1973
|
+
this.el = r.nativeElement;
|
|
1974
|
+
}
|
|
1975
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuCategory, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
1976
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuCategory, isStandalone: true, selector: "ix-menu-category", inputs: { icon: "icon", label: "label", notifications: "notifications" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1977
|
+
};
|
|
1978
|
+
IxMenuCategory = __decorate([
|
|
1979
|
+
ProxyCmp({
|
|
1980
|
+
defineCustomElementFn: defineIxMenuCategory,
|
|
1981
|
+
inputs: ['icon', 'label', 'notifications']
|
|
1982
|
+
})
|
|
1983
|
+
], IxMenuCategory);
|
|
1984
|
+
export { IxMenuCategory };
|
|
1985
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuCategory, decorators: [{
|
|
1986
|
+
type: Component,
|
|
1987
|
+
args: [{
|
|
1988
|
+
selector: 'ix-menu-category',
|
|
1989
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1990
|
+
template: '<ng-content></ng-content>',
|
|
1991
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
1992
|
+
inputs: ['icon', 'label', 'notifications'],
|
|
1993
|
+
standalone: true
|
|
1994
|
+
}]
|
|
1995
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
1996
|
+
let IxMenuItem = class IxMenuItem {
|
|
1997
|
+
z;
|
|
1998
|
+
el;
|
|
1999
|
+
constructor(c, r, z) {
|
|
2000
|
+
this.z = z;
|
|
2001
|
+
c.detach();
|
|
2002
|
+
this.el = r.nativeElement;
|
|
2003
|
+
}
|
|
2004
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2005
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuItem, isStandalone: true, selector: "ix-menu-item", inputs: { active: "active", bottom: "bottom", disabled: "disabled", home: "home", icon: "icon", label: "label", notifications: "notifications" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2006
|
+
};
|
|
2007
|
+
IxMenuItem = __decorate([
|
|
2008
|
+
ProxyCmp({
|
|
2009
|
+
defineCustomElementFn: defineIxMenuItem,
|
|
2010
|
+
inputs: ['active', 'bottom', 'disabled', 'home', 'icon', 'label', 'notifications']
|
|
2011
|
+
})
|
|
2012
|
+
], IxMenuItem);
|
|
2013
|
+
export { IxMenuItem };
|
|
2014
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuItem, decorators: [{
|
|
2015
|
+
type: Component,
|
|
2016
|
+
args: [{
|
|
2017
|
+
selector: 'ix-menu-item',
|
|
2018
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2019
|
+
template: '<ng-content></ng-content>',
|
|
2020
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2021
|
+
inputs: ['active', 'bottom', 'disabled', 'home', 'icon', 'label', 'notifications'],
|
|
2022
|
+
standalone: true
|
|
2023
|
+
}]
|
|
2024
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2025
|
+
let IxMenuSettings = class IxMenuSettings {
|
|
2026
|
+
z;
|
|
2027
|
+
el;
|
|
2028
|
+
constructor(c, r, z) {
|
|
2029
|
+
this.z = z;
|
|
2030
|
+
c.detach();
|
|
2031
|
+
this.el = r.nativeElement;
|
|
2032
|
+
proxyOutputs(this, this.el, ['tabChange', 'close']);
|
|
2033
|
+
}
|
|
2034
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuSettings, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2035
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuSettings, isStandalone: true, selector: "ix-menu-settings", inputs: { activeTabLabel: "activeTabLabel", label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2036
|
+
};
|
|
2037
|
+
IxMenuSettings = __decorate([
|
|
2038
|
+
ProxyCmp({
|
|
2039
|
+
defineCustomElementFn: defineIxMenuSettings,
|
|
2040
|
+
inputs: ['activeTabLabel', 'label']
|
|
2041
|
+
})
|
|
2042
|
+
], IxMenuSettings);
|
|
2043
|
+
export { IxMenuSettings };
|
|
2044
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuSettings, decorators: [{
|
|
2045
|
+
type: Component,
|
|
2046
|
+
args: [{
|
|
2047
|
+
selector: 'ix-menu-settings',
|
|
2048
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2049
|
+
template: '<ng-content></ng-content>',
|
|
2050
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2051
|
+
inputs: ['activeTabLabel', 'label'],
|
|
2052
|
+
standalone: true
|
|
2053
|
+
}]
|
|
2054
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2055
|
+
let IxMenuSettingsItem = class IxMenuSettingsItem {
|
|
2056
|
+
z;
|
|
2057
|
+
el;
|
|
2058
|
+
constructor(c, r, z) {
|
|
2059
|
+
this.z = z;
|
|
2060
|
+
c.detach();
|
|
2061
|
+
this.el = r.nativeElement;
|
|
2062
|
+
proxyOutputs(this, this.el, ['labelChange']);
|
|
2063
|
+
}
|
|
2064
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuSettingsItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2065
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMenuSettingsItem, isStandalone: true, selector: "ix-menu-settings-item", inputs: { label: "label" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2066
|
+
};
|
|
2067
|
+
IxMenuSettingsItem = __decorate([
|
|
2068
|
+
ProxyCmp({
|
|
2069
|
+
defineCustomElementFn: defineIxMenuSettingsItem,
|
|
2070
|
+
inputs: ['label']
|
|
2071
|
+
})
|
|
2072
|
+
], IxMenuSettingsItem);
|
|
2073
|
+
export { IxMenuSettingsItem };
|
|
2074
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMenuSettingsItem, decorators: [{
|
|
2075
|
+
type: Component,
|
|
2076
|
+
args: [{
|
|
2077
|
+
selector: 'ix-menu-settings-item',
|
|
2078
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2079
|
+
template: '<ng-content></ng-content>',
|
|
2080
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2081
|
+
inputs: ['label'],
|
|
2082
|
+
standalone: true
|
|
2083
|
+
}]
|
|
2084
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2085
|
+
let IxMessageBar = class IxMessageBar {
|
|
2086
|
+
z;
|
|
2087
|
+
el;
|
|
2088
|
+
constructor(c, r, z) {
|
|
2089
|
+
this.z = z;
|
|
2090
|
+
c.detach();
|
|
2091
|
+
this.el = r.nativeElement;
|
|
2092
|
+
proxyOutputs(this, this.el, ['closedChange', 'closeAnimationCompleted']);
|
|
2093
|
+
}
|
|
2094
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMessageBar, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2095
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxMessageBar, isStandalone: true, selector: "ix-message-bar", inputs: { dismissible: "dismissible", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2096
|
+
};
|
|
2097
|
+
IxMessageBar = __decorate([
|
|
2098
|
+
ProxyCmp({
|
|
2099
|
+
defineCustomElementFn: defineIxMessageBar,
|
|
2100
|
+
inputs: ['dismissible', 'type']
|
|
2101
|
+
})
|
|
2102
|
+
], IxMessageBar);
|
|
2103
|
+
export { IxMessageBar };
|
|
2104
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxMessageBar, decorators: [{
|
|
2105
|
+
type: Component,
|
|
2106
|
+
args: [{
|
|
2107
|
+
selector: 'ix-message-bar',
|
|
2108
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2109
|
+
template: '<ng-content></ng-content>',
|
|
2110
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2111
|
+
inputs: ['dismissible', 'type'],
|
|
2112
|
+
standalone: true
|
|
2113
|
+
}]
|
|
2114
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2115
|
+
let IxModal = class IxModal {
|
|
2116
|
+
z;
|
|
2117
|
+
el;
|
|
2118
|
+
constructor(c, r, z) {
|
|
2119
|
+
this.z = z;
|
|
2120
|
+
c.detach();
|
|
2121
|
+
this.el = r.nativeElement;
|
|
2122
|
+
proxyOutputs(this, this.el, ['dialogClose', 'dialogDismiss']);
|
|
2123
|
+
}
|
|
2124
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModal, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2125
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxModal, isStandalone: true, selector: "ix-modal", inputs: { animation: "animation", backdrop: "backdrop", beforeDismiss: "beforeDismiss", centered: "centered", closeOnBackdropClick: "closeOnBackdropClick", closeOnEscape: "closeOnEscape", size: "size" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2126
|
+
};
|
|
2127
|
+
IxModal = __decorate([
|
|
2128
|
+
ProxyCmp({
|
|
2129
|
+
defineCustomElementFn: defineIxModal,
|
|
2130
|
+
inputs: ['animation', 'backdrop', 'beforeDismiss', 'centered', 'closeOnBackdropClick', 'closeOnEscape', 'size'],
|
|
2131
|
+
methods: ['showModal', 'dismissModal', 'closeModal']
|
|
2132
|
+
})
|
|
2133
|
+
], IxModal);
|
|
2134
|
+
export { IxModal };
|
|
2135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModal, decorators: [{
|
|
2136
|
+
type: Component,
|
|
2137
|
+
args: [{
|
|
2138
|
+
selector: 'ix-modal',
|
|
2139
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2140
|
+
template: '<ng-content></ng-content>',
|
|
2141
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2142
|
+
inputs: ['animation', 'backdrop', 'beforeDismiss', 'centered', 'closeOnBackdropClick', 'closeOnEscape', 'size'],
|
|
2143
|
+
standalone: true
|
|
2144
|
+
}]
|
|
2145
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2146
|
+
let IxModalContent = class IxModalContent {
|
|
2147
|
+
z;
|
|
2148
|
+
el;
|
|
2149
|
+
constructor(c, r, z) {
|
|
2150
|
+
this.z = z;
|
|
2151
|
+
c.detach();
|
|
2152
|
+
this.el = r.nativeElement;
|
|
2153
|
+
}
|
|
2154
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModalContent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2155
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxModalContent, isStandalone: true, selector: "ix-modal-content", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2156
|
+
};
|
|
2157
|
+
IxModalContent = __decorate([
|
|
2158
|
+
ProxyCmp({
|
|
2159
|
+
defineCustomElementFn: defineIxModalContent
|
|
2160
|
+
})
|
|
2161
|
+
], IxModalContent);
|
|
2162
|
+
export { IxModalContent };
|
|
2163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModalContent, decorators: [{
|
|
2164
|
+
type: Component,
|
|
2165
|
+
args: [{
|
|
2166
|
+
selector: 'ix-modal-content',
|
|
2167
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2168
|
+
template: '<ng-content></ng-content>',
|
|
2169
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2170
|
+
inputs: [],
|
|
2171
|
+
standalone: true
|
|
2172
|
+
}]
|
|
2173
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2174
|
+
let IxModalFooter = class IxModalFooter {
|
|
2175
|
+
z;
|
|
2176
|
+
el;
|
|
2177
|
+
constructor(c, r, z) {
|
|
2178
|
+
this.z = z;
|
|
2179
|
+
c.detach();
|
|
2180
|
+
this.el = r.nativeElement;
|
|
2181
|
+
}
|
|
2182
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModalFooter, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2183
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxModalFooter, isStandalone: true, selector: "ix-modal-footer", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2184
|
+
};
|
|
2185
|
+
IxModalFooter = __decorate([
|
|
2186
|
+
ProxyCmp({
|
|
2187
|
+
defineCustomElementFn: defineIxModalFooter
|
|
2188
|
+
})
|
|
2189
|
+
], IxModalFooter);
|
|
2190
|
+
export { IxModalFooter };
|
|
2191
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModalFooter, decorators: [{
|
|
2192
|
+
type: Component,
|
|
2193
|
+
args: [{
|
|
2194
|
+
selector: 'ix-modal-footer',
|
|
2195
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2196
|
+
template: '<ng-content></ng-content>',
|
|
2197
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2198
|
+
inputs: [],
|
|
2199
|
+
standalone: true
|
|
2200
|
+
}]
|
|
2201
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2202
|
+
let IxModalHeader = class IxModalHeader {
|
|
2203
|
+
z;
|
|
2204
|
+
el;
|
|
2205
|
+
constructor(c, r, z) {
|
|
2206
|
+
this.z = z;
|
|
2207
|
+
c.detach();
|
|
2208
|
+
this.el = r.nativeElement;
|
|
2209
|
+
proxyOutputs(this, this.el, ['closeClick']);
|
|
2210
|
+
}
|
|
2211
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModalHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2212
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxModalHeader, isStandalone: true, selector: "ix-modal-header", inputs: { hideClose: "hideClose", icon: "icon", iconColor: "iconColor" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2213
|
+
};
|
|
2214
|
+
IxModalHeader = __decorate([
|
|
2215
|
+
ProxyCmp({
|
|
2216
|
+
defineCustomElementFn: defineIxModalHeader,
|
|
2217
|
+
inputs: ['hideClose', 'icon', 'iconColor']
|
|
2218
|
+
})
|
|
2219
|
+
], IxModalHeader);
|
|
2220
|
+
export { IxModalHeader };
|
|
2221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxModalHeader, decorators: [{
|
|
2222
|
+
type: Component,
|
|
2223
|
+
args: [{
|
|
2224
|
+
selector: 'ix-modal-header',
|
|
2225
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2226
|
+
template: '<ng-content></ng-content>',
|
|
2227
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2228
|
+
inputs: ['hideClose', 'icon', 'iconColor'],
|
|
2229
|
+
standalone: true
|
|
2230
|
+
}]
|
|
2231
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2232
|
+
let IxNumberInput = class IxNumberInput {
|
|
2233
|
+
z;
|
|
2234
|
+
el;
|
|
2235
|
+
constructor(c, r, z) {
|
|
2236
|
+
this.z = z;
|
|
2237
|
+
c.detach();
|
|
2238
|
+
this.el = r.nativeElement;
|
|
2239
|
+
proxyOutputs(this, this.el, ['valueChange', 'validityStateChange', 'ixBlur']);
|
|
2240
|
+
}
|
|
2241
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxNumberInput, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2242
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxNumberInput, isStandalone: true, selector: "ix-number-input", inputs: { allowedCharactersPattern: "allowedCharactersPattern", disabled: "disabled", helperText: "helperText", infoText: "infoText", invalidText: "invalidText", label: "label", max: "max", min: "min", name: "name", pattern: "pattern", placeholder: "placeholder", readonly: "readonly", required: "required", showStepperButtons: "showStepperButtons", showTextAsTooltip: "showTextAsTooltip", validText: "validText", value: "value", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2243
|
+
};
|
|
2244
|
+
IxNumberInput = __decorate([
|
|
2245
|
+
ProxyCmp({
|
|
2246
|
+
defineCustomElementFn: defineIxNumberInput,
|
|
2247
|
+
inputs: ['allowedCharactersPattern', 'disabled', 'helperText', 'infoText', 'invalidText', 'label', 'max', 'min', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showStepperButtons', 'showTextAsTooltip', 'validText', 'value', 'warningText'],
|
|
2248
|
+
methods: ['getNativeInputElement', 'focusInput']
|
|
2249
|
+
})
|
|
2250
|
+
], IxNumberInput);
|
|
2251
|
+
export { IxNumberInput };
|
|
2252
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxNumberInput, decorators: [{
|
|
2253
|
+
type: Component,
|
|
2254
|
+
args: [{
|
|
2255
|
+
selector: 'ix-number-input',
|
|
2256
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2257
|
+
template: '<ng-content></ng-content>',
|
|
2258
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2259
|
+
inputs: ['allowedCharactersPattern', 'disabled', 'helperText', 'infoText', 'invalidText', 'label', 'max', 'min', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'showStepperButtons', 'showTextAsTooltip', 'validText', 'value', 'warningText'],
|
|
2260
|
+
standalone: true
|
|
2261
|
+
}]
|
|
2262
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2263
|
+
let IxPagination = class IxPagination {
|
|
2264
|
+
z;
|
|
2265
|
+
el;
|
|
2266
|
+
constructor(c, r, z) {
|
|
2267
|
+
this.z = z;
|
|
2268
|
+
c.detach();
|
|
2269
|
+
this.el = r.nativeElement;
|
|
2270
|
+
proxyOutputs(this, this.el, ['pageSelected', 'itemCountChanged']);
|
|
2271
|
+
}
|
|
2272
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPagination, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2273
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxPagination, isStandalone: true, selector: "ix-pagination", inputs: { advanced: "advanced", count: "count", i18nItems: "i18nItems", i18nOf: "i18nOf", i18nPage: "i18nPage", itemCount: "itemCount", selectedPage: "selectedPage", showItemCount: "showItemCount" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2274
|
+
};
|
|
2275
|
+
IxPagination = __decorate([
|
|
2276
|
+
ProxyCmp({
|
|
2277
|
+
defineCustomElementFn: defineIxPagination,
|
|
2278
|
+
inputs: ['advanced', 'count', 'i18nItems', 'i18nOf', 'i18nPage', 'itemCount', 'selectedPage', 'showItemCount']
|
|
2279
|
+
})
|
|
2280
|
+
], IxPagination);
|
|
2281
|
+
export { IxPagination };
|
|
2282
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPagination, decorators: [{
|
|
2283
|
+
type: Component,
|
|
2284
|
+
args: [{
|
|
2285
|
+
selector: 'ix-pagination',
|
|
2286
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2287
|
+
template: '<ng-content></ng-content>',
|
|
2288
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2289
|
+
inputs: ['advanced', 'count', 'i18nItems', 'i18nOf', 'i18nPage', 'itemCount', 'selectedPage', 'showItemCount'],
|
|
2290
|
+
standalone: true
|
|
2291
|
+
}]
|
|
2292
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2293
|
+
let IxPane = class IxPane {
|
|
2294
|
+
z;
|
|
2295
|
+
el;
|
|
2296
|
+
constructor(c, r, z) {
|
|
2297
|
+
this.z = z;
|
|
2298
|
+
c.detach();
|
|
2299
|
+
this.el = r.nativeElement;
|
|
2300
|
+
proxyOutputs(this, this.el, ['expandedChanged', 'variantChanged', 'borderlessChanged']);
|
|
2301
|
+
}
|
|
2302
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPane, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2303
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxPane, isStandalone: true, selector: "ix-pane", inputs: { borderless: "borderless", composition: "composition", expanded: "expanded", heading: "heading", hideOnCollapse: "hideOnCollapse", icon: "icon", size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2304
|
+
};
|
|
2305
|
+
IxPane = __decorate([
|
|
2306
|
+
ProxyCmp({
|
|
2307
|
+
defineCustomElementFn: defineIxPane,
|
|
2308
|
+
inputs: ['borderless', 'composition', 'expanded', 'heading', 'hideOnCollapse', 'icon', 'size', 'variant']
|
|
2309
|
+
})
|
|
2310
|
+
], IxPane);
|
|
2311
|
+
export { IxPane };
|
|
2312
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPane, decorators: [{
|
|
2313
|
+
type: Component,
|
|
2314
|
+
args: [{
|
|
2315
|
+
selector: 'ix-pane',
|
|
2316
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2317
|
+
template: '<ng-content></ng-content>',
|
|
2318
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2319
|
+
inputs: ['borderless', 'composition', 'expanded', 'heading', 'hideOnCollapse', 'icon', 'size', 'variant'],
|
|
2320
|
+
standalone: true
|
|
2321
|
+
}]
|
|
2322
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2323
|
+
let IxPaneLayout = class IxPaneLayout {
|
|
2324
|
+
z;
|
|
2325
|
+
el;
|
|
2326
|
+
constructor(c, r, z) {
|
|
2327
|
+
this.z = z;
|
|
2328
|
+
c.detach();
|
|
2329
|
+
this.el = r.nativeElement;
|
|
2330
|
+
}
|
|
2331
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPaneLayout, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2332
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxPaneLayout, isStandalone: true, selector: "ix-pane-layout", inputs: { borderless: "borderless", layout: "layout", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2333
|
+
};
|
|
2334
|
+
IxPaneLayout = __decorate([
|
|
2335
|
+
ProxyCmp({
|
|
2336
|
+
defineCustomElementFn: defineIxPaneLayout,
|
|
2337
|
+
inputs: ['borderless', 'layout', 'variant']
|
|
2338
|
+
})
|
|
2339
|
+
], IxPaneLayout);
|
|
2340
|
+
export { IxPaneLayout };
|
|
2341
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPaneLayout, decorators: [{
|
|
2342
|
+
type: Component,
|
|
2343
|
+
args: [{
|
|
2344
|
+
selector: 'ix-pane-layout',
|
|
2345
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2346
|
+
template: '<ng-content></ng-content>',
|
|
2347
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2348
|
+
inputs: ['borderless', 'layout', 'variant'],
|
|
2349
|
+
standalone: true
|
|
2350
|
+
}]
|
|
2351
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2352
|
+
let IxPill = class IxPill {
|
|
2353
|
+
z;
|
|
2354
|
+
el;
|
|
2355
|
+
constructor(c, r, z) {
|
|
2356
|
+
this.z = z;
|
|
2357
|
+
c.detach();
|
|
2358
|
+
this.el = r.nativeElement;
|
|
2359
|
+
}
|
|
2360
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPill, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2361
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxPill, isStandalone: true, selector: "ix-pill", inputs: { alignLeft: "alignLeft", background: "background", icon: "icon", outline: "outline", pillColor: "pillColor", tooltipText: "tooltipText", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2362
|
+
};
|
|
2363
|
+
IxPill = __decorate([
|
|
2364
|
+
ProxyCmp({
|
|
2365
|
+
defineCustomElementFn: defineIxPill,
|
|
2366
|
+
inputs: ['alignLeft', 'background', 'icon', 'outline', 'pillColor', 'tooltipText', 'variant']
|
|
2367
|
+
})
|
|
2368
|
+
], IxPill);
|
|
2369
|
+
export { IxPill };
|
|
2370
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPill, decorators: [{
|
|
2371
|
+
type: Component,
|
|
2372
|
+
args: [{
|
|
2373
|
+
selector: 'ix-pill',
|
|
2374
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2375
|
+
template: '<ng-content></ng-content>',
|
|
2376
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2377
|
+
inputs: ['alignLeft', 'background', 'icon', 'outline', 'pillColor', 'tooltipText', 'variant'],
|
|
2378
|
+
standalone: true
|
|
2379
|
+
}]
|
|
2380
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2381
|
+
let IxPushCard = class IxPushCard {
|
|
2382
|
+
z;
|
|
2383
|
+
el;
|
|
2384
|
+
constructor(c, r, z) {
|
|
2385
|
+
this.z = z;
|
|
2386
|
+
c.detach();
|
|
2387
|
+
this.el = r.nativeElement;
|
|
2388
|
+
}
|
|
2389
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPushCard, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2390
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxPushCard, isStandalone: true, selector: "ix-push-card", inputs: { collapse: "collapse", heading: "heading", icon: "icon", notification: "notification", subheading: "subheading", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2391
|
+
};
|
|
2392
|
+
IxPushCard = __decorate([
|
|
2393
|
+
ProxyCmp({
|
|
2394
|
+
defineCustomElementFn: defineIxPushCard,
|
|
2395
|
+
inputs: ['collapse', 'heading', 'icon', 'notification', 'subheading', 'variant']
|
|
2396
|
+
})
|
|
2397
|
+
], IxPushCard);
|
|
2398
|
+
export { IxPushCard };
|
|
2399
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxPushCard, decorators: [{
|
|
2400
|
+
type: Component,
|
|
2401
|
+
args: [{
|
|
2402
|
+
selector: 'ix-push-card',
|
|
2403
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2404
|
+
template: '<ng-content></ng-content>',
|
|
2405
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2406
|
+
inputs: ['collapse', 'heading', 'icon', 'notification', 'subheading', 'variant'],
|
|
2407
|
+
standalone: true
|
|
2408
|
+
}]
|
|
2409
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2410
|
+
let IxRadio = class IxRadio {
|
|
2411
|
+
z;
|
|
2412
|
+
el;
|
|
2413
|
+
constructor(c, r, z) {
|
|
2414
|
+
this.z = z;
|
|
2415
|
+
c.detach();
|
|
2416
|
+
this.el = r.nativeElement;
|
|
2417
|
+
proxyOutputs(this, this.el, ['checkedChange', 'valueChange']);
|
|
2418
|
+
}
|
|
2419
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxRadio, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2420
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxRadio, isStandalone: true, selector: "ix-radio", inputs: { checked: "checked", disabled: "disabled", label: "label", name: "name", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2421
|
+
};
|
|
2422
|
+
IxRadio = __decorate([
|
|
2423
|
+
ProxyCmp({
|
|
2424
|
+
defineCustomElementFn: defineIxRadio,
|
|
2425
|
+
inputs: ['checked', 'disabled', 'label', 'name', 'value']
|
|
2426
|
+
})
|
|
2427
|
+
], IxRadio);
|
|
2428
|
+
export { IxRadio };
|
|
2429
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxRadio, decorators: [{
|
|
2430
|
+
type: Component,
|
|
2431
|
+
args: [{
|
|
2432
|
+
selector: 'ix-radio',
|
|
2433
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2434
|
+
template: '<ng-content></ng-content>',
|
|
2435
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2436
|
+
inputs: ['checked', 'disabled', 'label', 'name', 'value'],
|
|
2437
|
+
standalone: true
|
|
2438
|
+
}]
|
|
2439
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2440
|
+
let IxRadioGroup = class IxRadioGroup {
|
|
2441
|
+
z;
|
|
2442
|
+
el;
|
|
2443
|
+
constructor(c, r, z) {
|
|
2444
|
+
this.z = z;
|
|
2445
|
+
c.detach();
|
|
2446
|
+
this.el = r.nativeElement;
|
|
2447
|
+
proxyOutputs(this, this.el, ['valueChange']);
|
|
2448
|
+
}
|
|
2449
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxRadioGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2450
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxRadioGroup, isStandalone: true, selector: "ix-radio-group", inputs: { direction: "direction", helperText: "helperText", infoText: "infoText", invalidText: "invalidText", label: "label", showTextAsTooltip: "showTextAsTooltip", validText: "validText", value: "value", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2451
|
+
};
|
|
2452
|
+
IxRadioGroup = __decorate([
|
|
2453
|
+
ProxyCmp({
|
|
2454
|
+
defineCustomElementFn: defineIxRadioGroup,
|
|
2455
|
+
inputs: ['direction', 'helperText', 'infoText', 'invalidText', 'label', 'showTextAsTooltip', 'validText', 'value', 'warningText']
|
|
2456
|
+
})
|
|
2457
|
+
], IxRadioGroup);
|
|
2458
|
+
export { IxRadioGroup };
|
|
2459
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxRadioGroup, decorators: [{
|
|
2460
|
+
type: Component,
|
|
2461
|
+
args: [{
|
|
2462
|
+
selector: 'ix-radio-group',
|
|
2463
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2464
|
+
template: '<ng-content></ng-content>',
|
|
2465
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2466
|
+
inputs: ['direction', 'helperText', 'infoText', 'invalidText', 'label', 'showTextAsTooltip', 'validText', 'value', 'warningText'],
|
|
2467
|
+
standalone: true
|
|
2468
|
+
}]
|
|
2469
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2470
|
+
let IxRow = class IxRow {
|
|
2471
|
+
z;
|
|
2472
|
+
el;
|
|
2473
|
+
constructor(c, r, z) {
|
|
2474
|
+
this.z = z;
|
|
2475
|
+
c.detach();
|
|
2476
|
+
this.el = r.nativeElement;
|
|
2477
|
+
}
|
|
2478
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxRow, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2479
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxRow, isStandalone: true, selector: "ix-row", ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2480
|
+
};
|
|
2481
|
+
IxRow = __decorate([
|
|
2482
|
+
ProxyCmp({
|
|
2483
|
+
defineCustomElementFn: defineIxRow
|
|
2484
|
+
})
|
|
2485
|
+
], IxRow);
|
|
2486
|
+
export { IxRow };
|
|
2487
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxRow, decorators: [{
|
|
2488
|
+
type: Component,
|
|
2489
|
+
args: [{
|
|
2490
|
+
selector: 'ix-row',
|
|
2491
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2492
|
+
template: '<ng-content></ng-content>',
|
|
2493
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2494
|
+
inputs: [],
|
|
2495
|
+
standalone: true
|
|
2496
|
+
}]
|
|
2497
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2498
|
+
let IxSelect = class IxSelect {
|
|
2499
|
+
z;
|
|
2500
|
+
el;
|
|
2501
|
+
constructor(c, r, z) {
|
|
2502
|
+
this.z = z;
|
|
2503
|
+
c.detach();
|
|
2504
|
+
this.el = r.nativeElement;
|
|
2505
|
+
proxyOutputs(this, this.el, ['valueChange', 'inputChange', 'addItem', 'ixBlur']);
|
|
2506
|
+
}
|
|
2507
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSelect, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2508
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxSelect, isStandalone: true, selector: "ix-select", inputs: { allowClear: "allowClear", disabled: "disabled", dropdownMaxWidth: "dropdownMaxWidth", dropdownWidth: "dropdownWidth", editable: "editable", helperText: "helperText", hideListHeader: "hideListHeader", i18nNoMatches: "i18nNoMatches", i18nPlaceholder: "i18nPlaceholder", i18nPlaceholderEditable: "i18nPlaceholderEditable", i18nSelectListHeader: "i18nSelectListHeader", infoText: "infoText", invalidText: "invalidText", label: "label", mode: "mode", name: "name", readonly: "readonly", required: "required", showTextAsTooltip: "showTextAsTooltip", validText: "validText", value: "value", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2509
|
+
};
|
|
2510
|
+
IxSelect = __decorate([
|
|
2511
|
+
ProxyCmp({
|
|
2512
|
+
defineCustomElementFn: defineIxSelect,
|
|
2513
|
+
inputs: ['allowClear', 'disabled', 'dropdownMaxWidth', 'dropdownWidth', 'editable', 'helperText', 'hideListHeader', 'i18nNoMatches', 'i18nPlaceholder', 'i18nPlaceholderEditable', 'i18nSelectListHeader', 'infoText', 'invalidText', 'label', 'mode', 'name', 'readonly', 'required', 'showTextAsTooltip', 'validText', 'value', 'warningText'],
|
|
2514
|
+
methods: ['getNativeInputElement', 'focusInput']
|
|
2515
|
+
})
|
|
2516
|
+
], IxSelect);
|
|
2517
|
+
export { IxSelect };
|
|
2518
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSelect, decorators: [{
|
|
2519
|
+
type: Component,
|
|
2520
|
+
args: [{
|
|
2521
|
+
selector: 'ix-select',
|
|
2522
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2523
|
+
template: '<ng-content></ng-content>',
|
|
2524
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2525
|
+
inputs: ['allowClear', 'disabled', 'dropdownMaxWidth', 'dropdownWidth', 'editable', 'helperText', 'hideListHeader', 'i18nNoMatches', 'i18nPlaceholder', 'i18nPlaceholderEditable', 'i18nSelectListHeader', 'infoText', 'invalidText', 'label', 'mode', 'name', 'readonly', 'required', 'showTextAsTooltip', 'validText', 'value', 'warningText'],
|
|
2526
|
+
standalone: true
|
|
2527
|
+
}]
|
|
2528
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2529
|
+
let IxSelectItem = class IxSelectItem {
|
|
2530
|
+
z;
|
|
2531
|
+
el;
|
|
2532
|
+
constructor(c, r, z) {
|
|
2533
|
+
this.z = z;
|
|
2534
|
+
c.detach();
|
|
2535
|
+
this.el = r.nativeElement;
|
|
2536
|
+
proxyOutputs(this, this.el, ['itemClick']);
|
|
2537
|
+
}
|
|
2538
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSelectItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2539
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxSelectItem, isStandalone: true, selector: "ix-select-item", inputs: { label: "label", selected: "selected", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2540
|
+
};
|
|
2541
|
+
IxSelectItem = __decorate([
|
|
2542
|
+
ProxyCmp({
|
|
2543
|
+
defineCustomElementFn: defineIxSelectItem,
|
|
2544
|
+
inputs: ['label', 'selected', 'value']
|
|
2545
|
+
})
|
|
2546
|
+
], IxSelectItem);
|
|
2547
|
+
export { IxSelectItem };
|
|
2548
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSelectItem, decorators: [{
|
|
2549
|
+
type: Component,
|
|
2550
|
+
args: [{
|
|
2551
|
+
selector: 'ix-select-item',
|
|
2552
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2553
|
+
template: '<ng-content></ng-content>',
|
|
2554
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2555
|
+
inputs: ['label', 'selected', 'value'],
|
|
2556
|
+
standalone: true
|
|
2557
|
+
}]
|
|
2558
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2559
|
+
let IxSlider = class IxSlider {
|
|
2560
|
+
z;
|
|
2561
|
+
el;
|
|
2562
|
+
constructor(c, r, z) {
|
|
2563
|
+
this.z = z;
|
|
2564
|
+
c.detach();
|
|
2565
|
+
this.el = r.nativeElement;
|
|
2566
|
+
proxyOutputs(this, this.el, ['valueChange']);
|
|
2567
|
+
}
|
|
2568
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSlider, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2569
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxSlider, isStandalone: true, selector: "ix-slider", inputs: { disabled: "disabled", error: "error", marker: "marker", max: "max", min: "min", step: "step", trace: "trace", traceReference: "traceReference", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2570
|
+
};
|
|
2571
|
+
IxSlider = __decorate([
|
|
2572
|
+
ProxyCmp({
|
|
2573
|
+
defineCustomElementFn: defineIxSlider,
|
|
2574
|
+
inputs: ['disabled', 'error', 'marker', 'max', 'min', 'step', 'trace', 'traceReference', 'value']
|
|
2575
|
+
})
|
|
2576
|
+
], IxSlider);
|
|
2577
|
+
export { IxSlider };
|
|
2578
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSlider, decorators: [{
|
|
2579
|
+
type: Component,
|
|
2580
|
+
args: [{
|
|
2581
|
+
selector: 'ix-slider',
|
|
2582
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2583
|
+
template: '<ng-content></ng-content>',
|
|
2584
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2585
|
+
inputs: ['disabled', 'error', 'marker', 'max', 'min', 'step', 'trace', 'traceReference', 'value'],
|
|
2586
|
+
standalone: true
|
|
2587
|
+
}]
|
|
2588
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2589
|
+
let IxSpinner = class IxSpinner {
|
|
2590
|
+
z;
|
|
2591
|
+
el;
|
|
2592
|
+
constructor(c, r, z) {
|
|
2593
|
+
this.z = z;
|
|
2594
|
+
c.detach();
|
|
2595
|
+
this.el = r.nativeElement;
|
|
2596
|
+
}
|
|
2597
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSpinner, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2598
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxSpinner, isStandalone: true, selector: "ix-spinner", inputs: { size: "size", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2599
|
+
};
|
|
2600
|
+
IxSpinner = __decorate([
|
|
2601
|
+
ProxyCmp({
|
|
2602
|
+
defineCustomElementFn: defineIxSpinner,
|
|
2603
|
+
inputs: ['size', 'variant']
|
|
2604
|
+
})
|
|
2605
|
+
], IxSpinner);
|
|
2606
|
+
export { IxSpinner };
|
|
2607
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSpinner, decorators: [{
|
|
2608
|
+
type: Component,
|
|
2609
|
+
args: [{
|
|
2610
|
+
selector: 'ix-spinner',
|
|
2611
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2612
|
+
template: '<ng-content></ng-content>',
|
|
2613
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2614
|
+
inputs: ['size', 'variant'],
|
|
2615
|
+
standalone: true
|
|
2616
|
+
}]
|
|
2617
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2618
|
+
let IxSplitButton = class IxSplitButton {
|
|
2619
|
+
z;
|
|
2620
|
+
el;
|
|
2621
|
+
constructor(c, r, z) {
|
|
2622
|
+
this.z = z;
|
|
2623
|
+
c.detach();
|
|
2624
|
+
this.el = r.nativeElement;
|
|
2625
|
+
proxyOutputs(this, this.el, ['buttonClick']);
|
|
2626
|
+
}
|
|
2627
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSplitButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2628
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxSplitButton, isStandalone: true, selector: "ix-split-button", inputs: { closeBehavior: "closeBehavior", disabled: "disabled", ghost: "ghost", icon: "icon", label: "label", outline: "outline", placement: "placement", splitIcon: "splitIcon", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2629
|
+
};
|
|
2630
|
+
IxSplitButton = __decorate([
|
|
2631
|
+
ProxyCmp({
|
|
2632
|
+
defineCustomElementFn: defineIxSplitButton,
|
|
2633
|
+
inputs: ['closeBehavior', 'disabled', 'ghost', 'icon', 'label', 'outline', 'placement', 'splitIcon', 'variant']
|
|
2634
|
+
})
|
|
2635
|
+
], IxSplitButton);
|
|
2636
|
+
export { IxSplitButton };
|
|
2637
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxSplitButton, decorators: [{
|
|
2638
|
+
type: Component,
|
|
2639
|
+
args: [{
|
|
2640
|
+
selector: 'ix-split-button',
|
|
2641
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2642
|
+
template: '<ng-content></ng-content>',
|
|
2643
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2644
|
+
inputs: ['closeBehavior', 'disabled', 'ghost', 'icon', 'label', 'outline', 'placement', 'splitIcon', 'variant'],
|
|
2645
|
+
standalone: true
|
|
2646
|
+
}]
|
|
2647
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2648
|
+
let IxTabItem = class IxTabItem {
|
|
2649
|
+
z;
|
|
2650
|
+
el;
|
|
2651
|
+
constructor(c, r, z) {
|
|
2652
|
+
this.z = z;
|
|
2653
|
+
c.detach();
|
|
2654
|
+
this.el = r.nativeElement;
|
|
2655
|
+
proxyOutputs(this, this.el, ['tabClick']);
|
|
2656
|
+
}
|
|
2657
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTabItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2658
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTabItem, isStandalone: true, selector: "ix-tab-item", inputs: { counter: "counter", disabled: "disabled", icon: "icon", layout: "layout", placement: "placement", rounded: "rounded", selected: "selected", small: "small" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2659
|
+
};
|
|
2660
|
+
IxTabItem = __decorate([
|
|
2661
|
+
ProxyCmp({
|
|
2662
|
+
defineCustomElementFn: defineIxTabItem,
|
|
2663
|
+
inputs: ['counter', 'disabled', 'icon', 'layout', 'placement', 'rounded', 'selected', 'small']
|
|
2664
|
+
})
|
|
2665
|
+
], IxTabItem);
|
|
2666
|
+
export { IxTabItem };
|
|
2667
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTabItem, decorators: [{
|
|
2668
|
+
type: Component,
|
|
2669
|
+
args: [{
|
|
2670
|
+
selector: 'ix-tab-item',
|
|
2671
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2672
|
+
template: '<ng-content></ng-content>',
|
|
2673
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2674
|
+
inputs: ['counter', 'disabled', 'icon', 'layout', 'placement', 'rounded', 'selected', 'small'],
|
|
2675
|
+
standalone: true
|
|
2676
|
+
}]
|
|
2677
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2678
|
+
let IxTabs = class IxTabs {
|
|
2679
|
+
z;
|
|
2680
|
+
el;
|
|
2681
|
+
constructor(c, r, z) {
|
|
2682
|
+
this.z = z;
|
|
2683
|
+
c.detach();
|
|
2684
|
+
this.el = r.nativeElement;
|
|
2685
|
+
proxyOutputs(this, this.el, ['selectedChange']);
|
|
2686
|
+
}
|
|
2687
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTabs, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2688
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTabs, isStandalone: true, selector: "ix-tabs", inputs: { layout: "layout", placement: "placement", rounded: "rounded", selected: "selected", small: "small" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2689
|
+
};
|
|
2690
|
+
IxTabs = __decorate([
|
|
2691
|
+
ProxyCmp({
|
|
2692
|
+
defineCustomElementFn: defineIxTabs,
|
|
2693
|
+
inputs: ['layout', 'placement', 'rounded', 'selected', 'small']
|
|
2694
|
+
})
|
|
2695
|
+
], IxTabs);
|
|
2696
|
+
export { IxTabs };
|
|
2697
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTabs, decorators: [{
|
|
2698
|
+
type: Component,
|
|
2699
|
+
args: [{
|
|
2700
|
+
selector: 'ix-tabs',
|
|
2701
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2702
|
+
template: '<ng-content></ng-content>',
|
|
2703
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2704
|
+
inputs: ['layout', 'placement', 'rounded', 'selected', 'small'],
|
|
2705
|
+
standalone: true
|
|
2706
|
+
}]
|
|
2707
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2708
|
+
let IxTextarea = class IxTextarea {
|
|
2709
|
+
z;
|
|
2710
|
+
el;
|
|
2711
|
+
constructor(c, r, z) {
|
|
2712
|
+
this.z = z;
|
|
2713
|
+
c.detach();
|
|
2714
|
+
this.el = r.nativeElement;
|
|
2715
|
+
proxyOutputs(this, this.el, ['valueChange', 'validityStateChange', 'ixBlur']);
|
|
2716
|
+
}
|
|
2717
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTextarea, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2718
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTextarea, isStandalone: true, selector: "ix-textarea", inputs: { disabled: "disabled", helperText: "helperText", infoText: "infoText", invalidText: "invalidText", label: "label", maxLength: "maxLength", minLength: "minLength", name: "name", placeholder: "placeholder", readonly: "readonly", required: "required", resizeBehavior: "resizeBehavior", showTextAsTooltip: "showTextAsTooltip", textareaCols: "textareaCols", textareaHeight: "textareaHeight", textareaRows: "textareaRows", textareaWidth: "textareaWidth", validText: "validText", value: "value", warningText: "warningText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2719
|
+
};
|
|
2720
|
+
IxTextarea = __decorate([
|
|
2721
|
+
ProxyCmp({
|
|
2722
|
+
defineCustomElementFn: defineIxTextarea,
|
|
2723
|
+
inputs: ['disabled', 'helperText', 'infoText', 'invalidText', 'label', 'maxLength', 'minLength', 'name', 'placeholder', 'readonly', 'required', 'resizeBehavior', 'showTextAsTooltip', 'textareaCols', 'textareaHeight', 'textareaRows', 'textareaWidth', 'validText', 'value', 'warningText'],
|
|
2724
|
+
methods: ['getNativeInputElement', 'focusInput']
|
|
2725
|
+
})
|
|
2726
|
+
], IxTextarea);
|
|
2727
|
+
export { IxTextarea };
|
|
2728
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTextarea, decorators: [{
|
|
2729
|
+
type: Component,
|
|
2730
|
+
args: [{
|
|
2731
|
+
selector: 'ix-textarea',
|
|
2732
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2733
|
+
template: '<ng-content></ng-content>',
|
|
2734
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2735
|
+
inputs: ['disabled', 'helperText', 'infoText', 'invalidText', 'label', 'maxLength', 'minLength', 'name', 'placeholder', 'readonly', 'required', 'resizeBehavior', 'showTextAsTooltip', 'textareaCols', 'textareaHeight', 'textareaRows', 'textareaWidth', 'validText', 'value', 'warningText'],
|
|
2736
|
+
standalone: true
|
|
2737
|
+
}]
|
|
2738
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2739
|
+
let IxTile = class IxTile {
|
|
2740
|
+
z;
|
|
2741
|
+
el;
|
|
2742
|
+
constructor(c, r, z) {
|
|
2743
|
+
this.z = z;
|
|
2744
|
+
c.detach();
|
|
2745
|
+
this.el = r.nativeElement;
|
|
2746
|
+
}
|
|
2747
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTile, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2748
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTile, isStandalone: true, selector: "ix-tile", inputs: { size: "size" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2749
|
+
};
|
|
2750
|
+
IxTile = __decorate([
|
|
2751
|
+
ProxyCmp({
|
|
2752
|
+
defineCustomElementFn: defineIxTile,
|
|
2753
|
+
inputs: ['size']
|
|
2754
|
+
})
|
|
2755
|
+
], IxTile);
|
|
2756
|
+
export { IxTile };
|
|
2757
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTile, decorators: [{
|
|
2758
|
+
type: Component,
|
|
2759
|
+
args: [{
|
|
2760
|
+
selector: 'ix-tile',
|
|
2761
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2762
|
+
template: '<ng-content></ng-content>',
|
|
2763
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2764
|
+
inputs: ['size'],
|
|
2765
|
+
standalone: true
|
|
2766
|
+
}]
|
|
2767
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2768
|
+
let IxTimePicker = class IxTimePicker {
|
|
2769
|
+
z;
|
|
2770
|
+
el;
|
|
2771
|
+
constructor(c, r, z) {
|
|
2772
|
+
this.z = z;
|
|
2773
|
+
c.detach();
|
|
2774
|
+
this.el = r.nativeElement;
|
|
2775
|
+
proxyOutputs(this, this.el, ['timeSelect', 'timeChange']);
|
|
2776
|
+
}
|
|
2777
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTimePicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2778
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTimePicker, isStandalone: true, selector: "ix-time-picker", inputs: { corners: "corners", format: "format", showHour: "showHour", showMinutes: "showMinutes", showSeconds: "showSeconds", standaloneAppearance: "standaloneAppearance", textSelectTime: "textSelectTime", textTime: "textTime", time: "time", timeReference: "timeReference" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2779
|
+
};
|
|
2780
|
+
IxTimePicker = __decorate([
|
|
2781
|
+
ProxyCmp({
|
|
2782
|
+
defineCustomElementFn: defineIxTimePicker,
|
|
2783
|
+
inputs: ['corners', 'format', 'showHour', 'showMinutes', 'showSeconds', 'standaloneAppearance', 'textSelectTime', 'textTime', 'time', 'timeReference'],
|
|
2784
|
+
methods: ['getCurrentTime']
|
|
2785
|
+
})
|
|
2786
|
+
], IxTimePicker);
|
|
2787
|
+
export { IxTimePicker };
|
|
2788
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTimePicker, decorators: [{
|
|
2789
|
+
type: Component,
|
|
2790
|
+
args: [{
|
|
2791
|
+
selector: 'ix-time-picker',
|
|
2792
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2793
|
+
template: '<ng-content></ng-content>',
|
|
2794
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2795
|
+
inputs: ['corners', 'format', 'showHour', 'showMinutes', 'showSeconds', 'standaloneAppearance', 'textSelectTime', 'textTime', 'time', 'timeReference'],
|
|
2796
|
+
standalone: true
|
|
2797
|
+
}]
|
|
2798
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2799
|
+
let IxToast = class IxToast {
|
|
2800
|
+
z;
|
|
2801
|
+
el;
|
|
2802
|
+
constructor(c, r, z) {
|
|
2803
|
+
this.z = z;
|
|
2804
|
+
c.detach();
|
|
2805
|
+
this.el = r.nativeElement;
|
|
2806
|
+
proxyOutputs(this, this.el, ['closeToast']);
|
|
2807
|
+
}
|
|
2808
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToast, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2809
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxToast, isStandalone: true, selector: "ix-toast", inputs: { autoClose: "autoClose", autoCloseDelay: "autoCloseDelay", icon: "icon", iconColor: "iconColor", toastTitle: "toastTitle", type: "type" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2810
|
+
};
|
|
2811
|
+
IxToast = __decorate([
|
|
2812
|
+
ProxyCmp({
|
|
2813
|
+
defineCustomElementFn: defineIxToast,
|
|
2814
|
+
inputs: ['autoClose', 'autoCloseDelay', 'icon', 'iconColor', 'toastTitle', 'type']
|
|
2815
|
+
})
|
|
2816
|
+
], IxToast);
|
|
2817
|
+
export { IxToast };
|
|
2818
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToast, decorators: [{
|
|
2819
|
+
type: Component,
|
|
2820
|
+
args: [{
|
|
2821
|
+
selector: 'ix-toast',
|
|
2822
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2823
|
+
template: '<ng-content></ng-content>',
|
|
2824
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2825
|
+
inputs: ['autoClose', 'autoCloseDelay', 'icon', 'iconColor', 'toastTitle', 'type'],
|
|
2826
|
+
standalone: true
|
|
2827
|
+
}]
|
|
2828
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2829
|
+
let IxToastContainer = class IxToastContainer {
|
|
2830
|
+
z;
|
|
2831
|
+
el;
|
|
2832
|
+
constructor(c, r, z) {
|
|
2833
|
+
this.z = z;
|
|
2834
|
+
c.detach();
|
|
2835
|
+
this.el = r.nativeElement;
|
|
2836
|
+
}
|
|
2837
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToastContainer, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2838
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxToastContainer, isStandalone: true, selector: "ix-toast-container", inputs: { containerClass: "containerClass", containerId: "containerId", position: "position" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2839
|
+
};
|
|
2840
|
+
IxToastContainer = __decorate([
|
|
2841
|
+
ProxyCmp({
|
|
2842
|
+
defineCustomElementFn: defineIxToastContainer,
|
|
2843
|
+
inputs: ['containerClass', 'containerId', 'position'],
|
|
2844
|
+
methods: ['showToast']
|
|
2845
|
+
})
|
|
2846
|
+
], IxToastContainer);
|
|
2847
|
+
export { IxToastContainer };
|
|
2848
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToastContainer, decorators: [{
|
|
2849
|
+
type: Component,
|
|
2850
|
+
args: [{
|
|
2851
|
+
selector: 'ix-toast-container',
|
|
2852
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2853
|
+
template: '<ng-content></ng-content>',
|
|
2854
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2855
|
+
inputs: ['containerClass', 'containerId', 'position'],
|
|
2856
|
+
standalone: true
|
|
2857
|
+
}]
|
|
2858
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2859
|
+
let IxToggle = class IxToggle {
|
|
2860
|
+
z;
|
|
2861
|
+
el;
|
|
2862
|
+
constructor(c, r, z) {
|
|
2863
|
+
this.z = z;
|
|
2864
|
+
c.detach();
|
|
2865
|
+
this.el = r.nativeElement;
|
|
2866
|
+
proxyOutputs(this, this.el, ['checkedChange']);
|
|
2867
|
+
}
|
|
2868
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToggle, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2869
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxToggle, isStandalone: true, selector: "ix-toggle", inputs: { checked: "checked", disabled: "disabled", hideText: "hideText", indeterminate: "indeterminate", name: "name", required: "required", textIndeterminate: "textIndeterminate", textOff: "textOff", textOn: "textOn", value: "value" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2870
|
+
};
|
|
2871
|
+
IxToggle = __decorate([
|
|
2872
|
+
ProxyCmp({
|
|
2873
|
+
defineCustomElementFn: defineIxToggle,
|
|
2874
|
+
inputs: ['checked', 'disabled', 'hideText', 'indeterminate', 'name', 'required', 'textIndeterminate', 'textOff', 'textOn', 'value']
|
|
2875
|
+
})
|
|
2876
|
+
], IxToggle);
|
|
2877
|
+
export { IxToggle };
|
|
2878
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToggle, decorators: [{
|
|
2879
|
+
type: Component,
|
|
2880
|
+
args: [{
|
|
2881
|
+
selector: 'ix-toggle',
|
|
2882
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2883
|
+
template: '<ng-content></ng-content>',
|
|
2884
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2885
|
+
inputs: ['checked', 'disabled', 'hideText', 'indeterminate', 'name', 'required', 'textIndeterminate', 'textOff', 'textOn', 'value'],
|
|
2886
|
+
standalone: true
|
|
2887
|
+
}]
|
|
2888
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2889
|
+
let IxToggleButton = class IxToggleButton {
|
|
2890
|
+
z;
|
|
2891
|
+
el;
|
|
2892
|
+
constructor(c, r, z) {
|
|
2893
|
+
this.z = z;
|
|
2894
|
+
c.detach();
|
|
2895
|
+
this.el = r.nativeElement;
|
|
2896
|
+
proxyOutputs(this, this.el, ['pressedChange']);
|
|
2897
|
+
}
|
|
2898
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToggleButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2899
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxToggleButton, isStandalone: true, selector: "ix-toggle-button", inputs: { disabled: "disabled", ghost: "ghost", icon: "icon", loading: "loading", outline: "outline", pressed: "pressed", variant: "variant" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2900
|
+
};
|
|
2901
|
+
IxToggleButton = __decorate([
|
|
2902
|
+
ProxyCmp({
|
|
2903
|
+
defineCustomElementFn: defineIxToggleButton,
|
|
2904
|
+
inputs: ['disabled', 'ghost', 'icon', 'loading', 'outline', 'pressed', 'variant']
|
|
2905
|
+
})
|
|
2906
|
+
], IxToggleButton);
|
|
2907
|
+
export { IxToggleButton };
|
|
2908
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxToggleButton, decorators: [{
|
|
2909
|
+
type: Component,
|
|
2910
|
+
args: [{
|
|
2911
|
+
selector: 'ix-toggle-button',
|
|
2912
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2913
|
+
template: '<ng-content></ng-content>',
|
|
2914
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2915
|
+
inputs: ['disabled', 'ghost', 'icon', 'loading', 'outline', 'pressed', 'variant'],
|
|
2916
|
+
standalone: true
|
|
2917
|
+
}]
|
|
2918
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2919
|
+
let IxTooltip = class IxTooltip {
|
|
2920
|
+
z;
|
|
2921
|
+
el;
|
|
2922
|
+
constructor(c, r, z) {
|
|
2923
|
+
this.z = z;
|
|
2924
|
+
c.detach();
|
|
2925
|
+
this.el = r.nativeElement;
|
|
2926
|
+
}
|
|
2927
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2928
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTooltip, isStandalone: true, selector: "ix-tooltip", inputs: { for: "for", interactive: "interactive", placement: "placement", titleContent: "titleContent" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2929
|
+
};
|
|
2930
|
+
IxTooltip = __decorate([
|
|
2931
|
+
ProxyCmp({
|
|
2932
|
+
defineCustomElementFn: defineIxTooltip,
|
|
2933
|
+
inputs: ['for', 'interactive', 'placement', 'titleContent']
|
|
2934
|
+
})
|
|
2935
|
+
], IxTooltip);
|
|
2936
|
+
export { IxTooltip };
|
|
2937
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTooltip, decorators: [{
|
|
2938
|
+
type: Component,
|
|
2939
|
+
args: [{
|
|
2940
|
+
selector: 'ix-tooltip',
|
|
2941
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2942
|
+
template: '<ng-content></ng-content>',
|
|
2943
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2944
|
+
inputs: ['for', 'interactive', 'placement', 'titleContent'],
|
|
2945
|
+
standalone: true
|
|
2946
|
+
}]
|
|
2947
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2948
|
+
let IxTreeItem = class IxTreeItem {
|
|
2949
|
+
z;
|
|
2950
|
+
el;
|
|
2951
|
+
constructor(c, r, z) {
|
|
2952
|
+
this.z = z;
|
|
2953
|
+
c.detach();
|
|
2954
|
+
this.el = r.nativeElement;
|
|
2955
|
+
proxyOutputs(this, this.el, ['toggle', 'itemClick']);
|
|
2956
|
+
}
|
|
2957
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTreeItem, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2958
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTreeItem, isStandalone: true, selector: "ix-tree-item", inputs: { context: "context", hasChildren: "hasChildren", text: "text" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2959
|
+
};
|
|
2960
|
+
IxTreeItem = __decorate([
|
|
2961
|
+
ProxyCmp({
|
|
2962
|
+
defineCustomElementFn: defineIxTreeItem,
|
|
2963
|
+
inputs: ['context', 'hasChildren', 'text']
|
|
2964
|
+
})
|
|
2965
|
+
], IxTreeItem);
|
|
2966
|
+
export { IxTreeItem };
|
|
2967
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTreeItem, decorators: [{
|
|
2968
|
+
type: Component,
|
|
2969
|
+
args: [{
|
|
2970
|
+
selector: 'ix-tree-item',
|
|
2971
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2972
|
+
template: '<ng-content></ng-content>',
|
|
2973
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
2974
|
+
inputs: ['context', 'hasChildren', 'text'],
|
|
2975
|
+
standalone: true
|
|
2976
|
+
}]
|
|
2977
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
2978
|
+
let IxTypography = class IxTypography {
|
|
2979
|
+
z;
|
|
2980
|
+
el;
|
|
2981
|
+
constructor(c, r, z) {
|
|
2982
|
+
this.z = z;
|
|
2983
|
+
c.detach();
|
|
2984
|
+
this.el = r.nativeElement;
|
|
2985
|
+
}
|
|
2986
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTypography, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
2987
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxTypography, isStandalone: true, selector: "ix-typography", inputs: { bold: "bold", format: "format", textColor: "textColor", textDecoration: "textDecoration" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
2988
|
+
};
|
|
2989
|
+
IxTypography = __decorate([
|
|
2990
|
+
ProxyCmp({
|
|
2991
|
+
defineCustomElementFn: defineIxTypography,
|
|
2992
|
+
inputs: ['bold', 'format', 'textColor', 'textDecoration']
|
|
2993
|
+
})
|
|
2994
|
+
], IxTypography);
|
|
2995
|
+
export { IxTypography };
|
|
2996
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxTypography, decorators: [{
|
|
2997
|
+
type: Component,
|
|
2998
|
+
args: [{
|
|
2999
|
+
selector: 'ix-typography',
|
|
3000
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3001
|
+
template: '<ng-content></ng-content>',
|
|
3002
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3003
|
+
inputs: ['bold', 'format', 'textColor', 'textDecoration'],
|
|
3004
|
+
standalone: true
|
|
3005
|
+
}]
|
|
3006
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
3007
|
+
let IxUpload = class IxUpload {
|
|
3008
|
+
z;
|
|
3009
|
+
el;
|
|
3010
|
+
constructor(c, r, z) {
|
|
3011
|
+
this.z = z;
|
|
3012
|
+
c.detach();
|
|
3013
|
+
this.el = r.nativeElement;
|
|
3014
|
+
proxyOutputs(this, this.el, ['filesChanged']);
|
|
3015
|
+
}
|
|
3016
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxUpload, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3017
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxUpload, isStandalone: true, selector: "ix-upload", inputs: { accept: "accept", disabled: "disabled", i18nUploadDisabled: "i18nUploadDisabled", i18nUploadFile: "i18nUploadFile", loadingText: "loadingText", multiline: "multiline", multiple: "multiple", selectFileText: "selectFileText", state: "state", uploadFailedText: "uploadFailedText", uploadSuccessText: "uploadSuccessText" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3018
|
+
};
|
|
3019
|
+
IxUpload = __decorate([
|
|
3020
|
+
ProxyCmp({
|
|
3021
|
+
defineCustomElementFn: defineIxUpload,
|
|
3022
|
+
inputs: ['accept', 'disabled', 'i18nUploadDisabled', 'i18nUploadFile', 'loadingText', 'multiline', 'multiple', 'selectFileText', 'state', 'uploadFailedText', 'uploadSuccessText'],
|
|
3023
|
+
methods: ['setFilesToUpload']
|
|
3024
|
+
})
|
|
3025
|
+
], IxUpload);
|
|
3026
|
+
export { IxUpload };
|
|
3027
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxUpload, decorators: [{
|
|
3028
|
+
type: Component,
|
|
3029
|
+
args: [{
|
|
3030
|
+
selector: 'ix-upload',
|
|
3031
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3032
|
+
template: '<ng-content></ng-content>',
|
|
3033
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3034
|
+
inputs: ['accept', 'disabled', 'i18nUploadDisabled', 'i18nUploadFile', 'loadingText', 'multiline', 'multiple', 'selectFileText', 'state', 'uploadFailedText', 'uploadSuccessText'],
|
|
3035
|
+
standalone: true
|
|
3036
|
+
}]
|
|
3037
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
3038
|
+
let IxValidationTooltip = class IxValidationTooltip {
|
|
3039
|
+
z;
|
|
3040
|
+
el;
|
|
3041
|
+
constructor(c, r, z) {
|
|
3042
|
+
this.z = z;
|
|
3043
|
+
c.detach();
|
|
3044
|
+
this.el = r.nativeElement;
|
|
3045
|
+
}
|
|
3046
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxValidationTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3047
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxValidationTooltip, isStandalone: true, selector: "ix-validation-tooltip", inputs: { message: "message", placement: "placement", suppressAutomaticPlacement: "suppressAutomaticPlacement" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3048
|
+
};
|
|
3049
|
+
IxValidationTooltip = __decorate([
|
|
3050
|
+
ProxyCmp({
|
|
3051
|
+
defineCustomElementFn: defineIxValidationTooltip,
|
|
3052
|
+
inputs: ['message', 'placement', 'suppressAutomaticPlacement']
|
|
3053
|
+
})
|
|
3054
|
+
], IxValidationTooltip);
|
|
3055
|
+
export { IxValidationTooltip };
|
|
3056
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxValidationTooltip, decorators: [{
|
|
3057
|
+
type: Component,
|
|
3058
|
+
args: [{
|
|
3059
|
+
selector: 'ix-validation-tooltip',
|
|
3060
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3061
|
+
template: '<ng-content></ng-content>',
|
|
3062
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3063
|
+
inputs: ['message', 'placement', 'suppressAutomaticPlacement'],
|
|
3064
|
+
standalone: true
|
|
3065
|
+
}]
|
|
3066
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
3067
|
+
let IxWorkflowStep = class IxWorkflowStep {
|
|
3068
|
+
z;
|
|
3069
|
+
el;
|
|
3070
|
+
constructor(c, r, z) {
|
|
3071
|
+
this.z = z;
|
|
3072
|
+
c.detach();
|
|
3073
|
+
this.el = r.nativeElement;
|
|
3074
|
+
}
|
|
3075
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxWorkflowStep, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3076
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxWorkflowStep, isStandalone: true, selector: "ix-workflow-step", inputs: { clickable: "clickable", disabled: "disabled", selected: "selected", status: "status", vertical: "vertical" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3077
|
+
};
|
|
3078
|
+
IxWorkflowStep = __decorate([
|
|
3079
|
+
ProxyCmp({
|
|
3080
|
+
defineCustomElementFn: defineIxWorkflowStep,
|
|
3081
|
+
inputs: ['clickable', 'disabled', 'selected', 'status', 'vertical']
|
|
3082
|
+
})
|
|
3083
|
+
], IxWorkflowStep);
|
|
3084
|
+
export { IxWorkflowStep };
|
|
3085
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxWorkflowStep, decorators: [{
|
|
3086
|
+
type: Component,
|
|
3087
|
+
args: [{
|
|
3088
|
+
selector: 'ix-workflow-step',
|
|
3089
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3090
|
+
template: '<ng-content></ng-content>',
|
|
3091
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3092
|
+
inputs: ['clickable', 'disabled', 'selected', 'status', 'vertical'],
|
|
3093
|
+
standalone: true
|
|
3094
|
+
}]
|
|
3095
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
3096
|
+
let IxWorkflowSteps = class IxWorkflowSteps {
|
|
3097
|
+
z;
|
|
3098
|
+
el;
|
|
3099
|
+
constructor(c, r, z) {
|
|
3100
|
+
this.z = z;
|
|
3101
|
+
c.detach();
|
|
3102
|
+
this.el = r.nativeElement;
|
|
3103
|
+
proxyOutputs(this, this.el, ['stepSelected']);
|
|
3104
|
+
}
|
|
3105
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxWorkflowSteps, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
3106
|
+
/** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IxWorkflowSteps, isStandalone: true, selector: "ix-workflow-steps", inputs: { clickable: "clickable", selectedIndex: "selectedIndex", vertical: "vertical" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3107
|
+
};
|
|
3108
|
+
IxWorkflowSteps = __decorate([
|
|
3109
|
+
ProxyCmp({
|
|
3110
|
+
defineCustomElementFn: defineIxWorkflowSteps,
|
|
3111
|
+
inputs: ['clickable', 'selectedIndex', 'vertical']
|
|
3112
|
+
})
|
|
3113
|
+
], IxWorkflowSteps);
|
|
3114
|
+
export { IxWorkflowSteps };
|
|
3115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IxWorkflowSteps, decorators: [{
|
|
3116
|
+
type: Component,
|
|
3117
|
+
args: [{
|
|
3118
|
+
selector: 'ix-workflow-steps',
|
|
3119
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
3120
|
+
template: '<ng-content></ng-content>',
|
|
3121
|
+
// eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
|
|
3122
|
+
inputs: ['clickable', 'selectedIndex', 'vertical'],
|
|
3123
|
+
standalone: true
|
|
3124
|
+
}]
|
|
3125
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }] });
|
|
3126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3N0YW5kYWxvbmUvc3JjL2NvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG9CQUFvQjtBQUNwQiw4Q0FBOEM7QUFDOUMsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQW9DLE1BQU0sZUFBZSxDQUFDO0FBRXhILE9BQU8sRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJdkUsT0FBTyxFQUFFLG1CQUFtQixJQUFJLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDckcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixJQUFJLHlCQUF5QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDbkgsT0FBTyxFQUFFLG1CQUFtQixJQUFJLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSx1QkFBdUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsbUJBQW1CLElBQUksa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNwRyxPQUFPLEVBQUUsbUJBQW1CLElBQUksc0JBQXNCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUM3RyxPQUFPLEVBQUUsbUJBQW1CLElBQUksY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUYsT0FBTyxFQUFFLG1CQUFtQixJQUFJLFlBQVksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzNHLE9BQU8sRUFBRSxtQkFB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SSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7MkhBTlUsZUFBZTsrR0FBZixlQUFlLHVLQUxoQiwyQkFBMkI7O0FBSzFCLGVBQWU7SUFaM0IsUUFBUSxDQUFDO1FBQ1IscUJBQXFCLEVBQUUscUJBQXFCO1FBQzVDLE1BQU0sRUFBRSxDQUFDLFdBQVcsRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDO0tBQ25ELENBQUM7R0FTVyxlQUFlLENBTzNCOzs0RkFQWSxlQUFlO2tCQVIzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyx1RUFBdUU7b0JBQ3ZFLE1BQU0sRUFBRSxDQUFDLFdBQVcsRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDO29CQUNsRCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuLyogYXV0by1nZW5lcmF0ZWQgYW5ndWxhciBkaXJlY3RpdmUgcHJveGllcyAqL1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFByb3h5Q21wLCBwcm94eU91dHB1dHMgfSBmcm9tICcuL2FuZ3VsYXItY29tcG9uZW50LWxpYi91dGlscyc7XG5cbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50cyB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMnO1xuXG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4QWN0aW9uQ2FyZCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtYWN0aW9uLWNhcmQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEFwcGxpY2F0aW9uIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1hcHBsaWNhdGlvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4QXBwbGljYXRpb25IZWFkZXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWFwcGxpY2F0aW9uLWhlYWRlci5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4QXZhdGFyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1hdmF0YXIuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEJhc2ljTmF2aWdhdGlvbiB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtYmFzaWMtbmF2aWdhdGlvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4QmxpbmQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWJsaW5kLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhCcmVhZGNydW1iIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1icmVhZGNydW1iLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhCcmVhZGNydW1iSXRlbSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtYnJlYWRjcnVtYi1pdGVtLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhCdXR0b24gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWJ1dHRvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4Q2FyZCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtY2FyZC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4Q2FyZEFjY29yZGlvbiB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtY2FyZC1hY2NvcmRpb24uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeENhcmRDb250ZW50IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1jYXJkLWNvbnRlbnQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeENhcmRMaXN0IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1jYXJkLWxpc3QuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeENhcmRUaXRsZSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtY2FyZC10aXRsZS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4Q2F0ZWdvcnlGaWx0ZXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWNhdGVnb3J5LWZpbHRlci5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4Q2hlY2tib3ggfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWNoZWNrYm94LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhDaGVja2JveEdyb3VwIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1jaGVja2JveC1ncm91cC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4Q2hpcCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtY2hpcC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4Q29sIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1jb2wuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeENvbnRlbnQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWNvbnRlbnQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeENvbnRlbnRIZWFkZXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWNvbnRlbnQtaGVhZGVyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhDdXN0b21GaWVsZCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtY3VzdG9tLWZpZWxkLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhEYXRlRHJvcGRvd24gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWRhdGUtZHJvcGRvd24uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERhdGVJbnB1dCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZGF0ZS1pbnB1dC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4RGF0ZVBpY2tlciB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZGF0ZS1waWNrZXIuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERhdGV0aW1lUGlja2VyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1kYXRldGltZS1waWNrZXIuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERpdmlkZXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWRpdmlkZXIuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERyYXdlciB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZHJhd2VyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhEcm9wZG93biB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZHJvcGRvd24uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERyb3Bkb3duQnV0dG9uIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1kcm9wZG93bi1idXR0b24uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERyb3Bkb3duSGVhZGVyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1kcm9wZG93bi1oZWFkZXIuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeERyb3Bkb3duSXRlbSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZHJvcGRvd24taXRlbS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4RHJvcGRvd25RdWlja0FjdGlvbnMgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWRyb3Bkb3duLXF1aWNrLWFjdGlvbnMuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEVtcHR5U3RhdGUgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWVtcHR5LXN0YXRlLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhFdmVudExpc3QgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWV2ZW50LWxpc3QuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEV2ZW50TGlzdEl0ZW0gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWV2ZW50LWxpc3QtaXRlbS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4RXhwYW5kaW5nU2VhcmNoIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1leHBhbmRpbmctc2VhcmNoLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhGaWVsZExhYmVsIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1maWVsZC1sYWJlbC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4RmlsdGVyQ2hpcCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZmlsdGVyLWNoaXAuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEZsaXBUaWxlIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1mbGlwLXRpbGUuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEZsaXBUaWxlQ29udGVudCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZmxpcC10aWxlLWNvbnRlbnQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEdyb3VwIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1ncm91cC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4R3JvdXBDb250ZXh0TWVudSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtZ3JvdXAtY29udGV4dC1tZW51LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhHcm91cEl0ZW0gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWdyb3VwLWl0ZW0uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeEhlbHBlclRleHQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWhlbHBlci10ZXh0LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhJY29uQnV0dG9uIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1pY29uLWJ1dHRvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4SWNvblRvZ2dsZUJ1dHRvbiB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtaWNvbi10b2dnbGUtYnV0dG9uLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhJbnB1dCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtaW5wdXQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeElucHV0R3JvdXAgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWlucHV0LWdyb3VwLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhLZXlWYWx1ZSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgta2V5LXZhbHVlLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhLZXlWYWx1ZUxpc3QgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWtleS12YWx1ZS1saXN0LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhLcGkgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWtwaS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TGF5b3V0QXV0byB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbGF5b3V0LWF1dG8uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeExheW91dEdyaWQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LWxheW91dC1ncmlkLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhMaW5rQnV0dG9uIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1saW5rLWJ1dHRvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TWFwTmF2aWdhdGlvbiB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbWFwLW5hdmlnYXRpb24uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeE1hcE5hdmlnYXRpb25PdmVybGF5IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1tYXAtbmF2aWdhdGlvbi1vdmVybGF5LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhNZW51IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1tZW51LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhNZW51QWJvdXQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1lbnUtYWJvdXQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeE1lbnVBYm91dEl0ZW0gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1lbnUtYWJvdXQtaXRlbS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TWVudUFib3V0TmV3cyB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbWVudS1hYm91dC1uZXdzLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhNZW51QXZhdGFyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1tZW51LWF2YXRhci5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TWVudUF2YXRhckl0ZW0gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1lbnUtYXZhdGFyLWl0ZW0uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeE1lbnVDYXRlZ29yeSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbWVudS1jYXRlZ29yeS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TWVudUl0ZW0gfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1lbnUtaXRlbS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TWVudVNldHRpbmdzIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1tZW51LXNldHRpbmdzLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhNZW51U2V0dGluZ3NJdGVtIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1tZW51LXNldHRpbmdzLWl0ZW0uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeE1lc3NhZ2VCYXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1lc3NhZ2UtYmFyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhNb2RhbCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbW9kYWwuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeE1vZGFsQ29udGVudCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtbW9kYWwtY29udGVudC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TW9kYWxGb290ZXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1vZGFsLWZvb3Rlci5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TW9kYWxIZWFkZXIgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW1vZGFsLWhlYWRlci5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4TnVtYmVySW5wdXQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LW51bWJlci1pbnB1dC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4UGFnaW5hdGlvbiB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtcGFnaW5hdGlvbi5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4UGFuZSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtcGFuZS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4UGFuZUxheW91dCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtcGFuZS1sYXlvdXQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeFBpbGwgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXBpbGwuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeFB1c2hDYXJkIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1wdXNoLWNhcmQuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeFJhZGlvIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1yYWRpby5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4UmFkaW9Hcm91cCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtcmFkaW8tZ3JvdXAuanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeFJvdyB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtcm93LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhTZWxlY3QgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXNlbGVjdC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4U2VsZWN0SXRlbSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtc2VsZWN0LWl0ZW0uanMnO1xuaW1wb3J0IHsgZGVmaW5lQ3VzdG9tRWxlbWVudCBhcyBkZWZpbmVJeFNsaWRlciB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtc2xpZGVyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhTcGlubmVyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC1zcGlubmVyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhTcGxpdEJ1dHRvbiB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtc3BsaXQtYnV0dG9uLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUYWJJdGVtIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC10YWItaXRlbS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4VGFicyB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtdGFicy5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4VGV4dGFyZWEgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXRleHRhcmVhLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUaWxlIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC10aWxlLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUaW1lUGlja2VyIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC10aW1lLXBpY2tlci5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4VG9hc3QgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXRvYXN0LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUb2FzdENvbnRhaW5lciB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtdG9hc3QtY29udGFpbmVyLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUb2dnbGUgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXRvZ2dsZS5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4VG9nZ2xlQnV0dG9uIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC10b2dnbGUtYnV0dG9uLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUb29sdGlwIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC10b29sdGlwLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUcmVlSXRlbSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMvaXgtdHJlZS1pdGVtLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhUeXBvZ3JhcGh5IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC10eXBvZ3JhcGh5LmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhVcGxvYWQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXVwbG9hZC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4VmFsaWRhdGlvblRvb2x0aXAgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzL2l4LXZhbGlkYXRpb24tdG9vbHRpcC5qcyc7XG5pbXBvcnQgeyBkZWZpbmVDdXN0b21FbGVtZW50IGFzIGRlZmluZUl4V29ya2Zsb3dTdGVwIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC13b3JrZmxvdy1zdGVwLmpzJztcbmltcG9ydCB7IGRlZmluZUN1c3RvbUVsZW1lbnQgYXMgZGVmaW5lSXhXb3JrZmxvd1N0ZXBzIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cy9peC13b3JrZmxvdy1zdGVwcy5qcyc7XG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4QWN0aW9uQ2FyZCxcbiAgaW5wdXRzOiBbJ2hlYWRpbmcnLCAnaWNvbicsICdzZWxlY3RlZCcsICdzdWJoZWFkaW5nJywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWFjdGlvbi1jYXJkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydoZWFkaW5nJywgJ2ljb24nLCAnc2VsZWN0ZWQnLCAnc3ViaGVhZGluZycsICd2YXJpYW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhBY3Rpb25DYXJkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhBY3Rpb25DYXJkIGV4dGVuZHMgQ29tcG9uZW50cy5JeEFjdGlvbkNhcmQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4QXBwbGljYXRpb24sXG4gIGlucHV0czogWydhcHBTd2l0Y2hDb25maWcnLCAnYnJlYWtwb2ludHMnLCAnZm9yY2VCcmVha3BvaW50JywgJ3RoZW1lJywgJ3RoZW1lU3lzdGVtQXBwZWFyYW5jZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtYXBwbGljYXRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FwcFN3aXRjaENvbmZpZycsICdicmVha3BvaW50cycsICdmb3JjZUJyZWFrcG9pbnQnLCAndGhlbWUnLCAndGhlbWVTeXN0ZW1BcHBlYXJhbmNlJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhBcHBsaWNhdGlvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4QXBwbGljYXRpb24gZXh0ZW5kcyBDb21wb25lbnRzLkl4QXBwbGljYXRpb24ge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4QXBwbGljYXRpb25IZWFkZXIsXG4gIGlucHV0czogWyduYW1lJywgJ3Nob3dNZW51J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1hcHBsaWNhdGlvbi1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ25hbWUnLCAnc2hvd01lbnUnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeEFwcGxpY2F0aW9uSGVhZGVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnbWVudVRvZ2dsZScsICdvcGVuQXBwU3dpdGNoJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4QXBwbGljYXRpb25IZWFkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkl4QXBwbGljYXRpb25IZWFkZXIge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBtZW51IHRvZ2dsZSBidXR0b24gaXMgY2xpY2tlZCBAc2luY2UgMi41LjBcbiAgICovXG4gIG1lbnVUb2dnbGU6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGFwcCBzd2l0Y2ggYnV0dG9uIGlzIGNsaWNrZWQgQHNpbmNlIDMuMC4wXG4gICAqL1xuICBvcGVuQXBwU3dpdGNoOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhBdmF0YXIsXG4gIGlucHV0czogWydleHRyYScsICdpbWFnZScsICdpbml0aWFscycsICd1c2VybmFtZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtYXZhdGFyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydleHRyYScsICdpbWFnZScsICdpbml0aWFscycsICd1c2VybmFtZSddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4QXZhdGFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhBdmF0YXIgZXh0ZW5kcyBDb21wb25lbnRzLkl4QXZhdGFyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEJhc2ljTmF2aWdhdGlvbixcbiAgaW5wdXRzOiBbJ2FwcGxpY2F0aW9uTmFtZScsICdicmVha3BvaW50cycsICdmb3JjZUJyZWFrcG9pbnQnLCAnaGlkZUhlYWRlciddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtYmFzaWMtbmF2aWdhdGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYXBwbGljYXRpb25OYW1lJywgJ2JyZWFrcG9pbnRzJywgJ2ZvcmNlQnJlYWtwb2ludCcsICdoaWRlSGVhZGVyJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhCYXNpY05hdmlnYXRpb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEJhc2ljTmF2aWdhdGlvbiBleHRlbmRzIENvbXBvbmVudHMuSXhCYXNpY05hdmlnYXRpb24ge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4QmxpbmQsXG4gIGlucHV0czogWydjb2xsYXBzZWQnLCAnaWNvbicsICdsYWJlbCcsICdzdWJsYWJlbCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1ibGluZCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29sbGFwc2VkJywgJ2ljb24nLCAnbGFiZWwnLCAnc3VibGFiZWwnLCAndmFyaWFudCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4QmxpbmQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjb2xsYXBzZWRDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhCbGluZCBleHRlbmRzIENvbXBvbmVudHMuSXhCbGluZCB7XG4gIC8qKlxuICAgKiBDb2xsYXBzZWQgc3RhdGUgY2hhbmdlZFxuICAgKi9cbiAgY29sbGFwc2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhCcmVhZGNydW1iLFxuICBpbnB1dHM6IFsnYXJpYUxhYmVsUHJldmlvdXNCdXR0b24nLCAnZ2hvc3QnLCAnbmV4dEl0ZW1zJywgJ3Zpc2libGVJdGVtQ291bnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWJyZWFkY3J1bWInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FyaWFMYWJlbFByZXZpb3VzQnV0dG9uJywgJ2dob3N0JywgJ25leHRJdGVtcycsICd2aXNpYmxlSXRlbUNvdW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhCcmVhZGNydW1iIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnaXRlbUNsaWNrJywgJ25leHRDbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEJyZWFkY3J1bWIgZXh0ZW5kcyBDb21wb25lbnRzLkl4QnJlYWRjcnVtYiB7XG4gIC8qKlxuICAgKiBDcnVtYiBpdGVtIGNsaWNrZWQgZXZlbnRcbiAgICovXG4gIGl0ZW1DbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKipcbiAgICogTmV4dCBpdGVtIGNsaWNrZWQgZXZlbnRcbiAgICovXG4gIG5leHRDbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHsgZXZlbnQ6IFVJRXZlbnQ7IGl0ZW06IHN0cmluZyB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEJyZWFkY3J1bWJJdGVtLFxuICBpbnB1dHM6IFsnaWNvbicsICdsYWJlbCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtYnJlYWRjcnVtYi1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydpY29uJywgJ2xhYmVsJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhCcmVhZGNydW1iSXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4QnJlYWRjcnVtYkl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkl4QnJlYWRjcnVtYkl0ZW0ge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4QnV0dG9uLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZ2hvc3QnLCAnaWNvbicsICdsb2FkaW5nJywgJ291dGxpbmUnLCAndHlwZScsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2dob3N0JywgJ2ljb24nLCAnbG9hZGluZycsICdvdXRsaW5lJywgJ3R5cGUnLCAndmFyaWFudCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4QnV0dG9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhCdXR0b24gZXh0ZW5kcyBDb21wb25lbnRzLkl4QnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeENhcmQsXG4gIGlucHV0czogWydzZWxlY3RlZCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jYXJkJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzZWxlY3RlZCcsICd2YXJpYW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhDYXJkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhDYXJkIGV4dGVuZHMgQ29tcG9uZW50cy5JeENhcmQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4Q2FyZEFjY29yZGlvbixcbiAgaW5wdXRzOiBbJ2NvbGxhcHNlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jYXJkLWFjY29yZGlvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29sbGFwc2UnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENhcmRBY2NvcmRpb24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeENhcmRBY2NvcmRpb24gZXh0ZW5kcyBDb21wb25lbnRzLkl4Q2FyZEFjY29yZGlvbiB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDYXJkQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWNhcmQtY29udGVudCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4Q2FyZENvbnRlbnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeENhcmRDb250ZW50IGV4dGVuZHMgQ29tcG9uZW50cy5JeENhcmRDb250ZW50IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeENhcmRMaXN0LFxuICBpbnB1dHM6IFsnY29sbGFwc2UnLCAnaGlkZVNob3dBbGwnLCAnaTE4bk1vcmVDYXJkcycsICdpMThuU2hvd0FsbCcsICdsYWJlbCcsICdsaXN0U3R5bGUnLCAnc2hvd0FsbENvdW50JywgJ3N1cHByZXNzT3ZlcmZsb3dIYW5kbGluZyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtY2FyZC1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb2xsYXBzZScsICdoaWRlU2hvd0FsbCcsICdpMThuTW9yZUNhcmRzJywgJ2kxOG5TaG93QWxsJywgJ2xhYmVsJywgJ2xpc3RTdHlsZScsICdzaG93QWxsQ291bnQnLCAnc3VwcHJlc3NPdmVyZmxvd0hhbmRsaW5nJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhDYXJkTGlzdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NvbGxhcHNlQ2hhbmdlZCcsICdzaG93QWxsQ2xpY2snLCAnc2hvd01vcmVDYXJkQ2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhDYXJkTGlzdCBleHRlbmRzIENvbXBvbmVudHMuSXhDYXJkTGlzdCB7XG4gIC8qKlxuICAgKiBGaXJlIGV2ZW50IHdoZW4gdGhlIGNvbGxhcHNlIHN0YXRlIGlzIGNoYW5nZWQgYnkgdGhlIHVzZXJcbiAgICovXG4gIGNvbGxhcHNlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIEZpcmUgZXZlbnQgd2hlbiB0aGUgY29sbGFwc2Ugc3RhdGUgaXMgY2hhbmdlZCBieSB0aGUgdXNlclxuICAgKi9cbiAgc2hvd0FsbENsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8eyBuYXRpdmVFdmVudDogTW91c2VFdmVudDsgfT4+O1xuICAvKipcbiAgICogRmlyZSBldmVudCB3aGVuIHRoZSBzaG93IG1vcmUgY2FyZCBpcyBjbGlja2VkLlxuICAgKi9cbiAgc2hvd01vcmVDYXJkQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx7IG5hdGl2ZUV2ZW50OiBNb3VzZUV2ZW50OyB9Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeENhcmRUaXRsZVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWNhcmQtdGl0bGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENhcmRUaXRsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4Q2FyZFRpdGxlIGV4dGVuZHMgQ29tcG9uZW50cy5JeENhcmRUaXRsZSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDYXRlZ29yeUZpbHRlcixcbiAgaW5wdXRzOiBbJ2NhdGVnb3JpZXMnLCAnZGlzYWJsZWQnLCAnZmlsdGVyU3RhdGUnLCAnaGlkZUljb24nLCAnaTE4blBsYWluVGV4dCcsICdpY29uJywgJ2xhYmVsQ2F0ZWdvcmllcycsICdub25TZWxlY3RhYmxlQ2F0ZWdvcmllcycsICdwbGFjZWhvbGRlcicsICdyZWFkb25seScsICdyZXBlYXRDYXRlZ29yaWVzJywgJ3N0YXRpY09wZXJhdG9yJywgJ3N1Z2dlc3Rpb25zJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jYXRlZ29yeS1maWx0ZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NhdGVnb3JpZXMnLCAnZGlzYWJsZWQnLCAnZmlsdGVyU3RhdGUnLCAnaGlkZUljb24nLCAnaTE4blBsYWluVGV4dCcsICdpY29uJywgJ2xhYmVsQ2F0ZWdvcmllcycsICdub25TZWxlY3RhYmxlQ2F0ZWdvcmllcycsICdwbGFjZWhvbGRlcicsICdyZWFkb25seScsICdyZXBlYXRDYXRlZ29yaWVzJywgJ3N0YXRpY09wZXJhdG9yJywgJ3N1Z2dlc3Rpb25zJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhDYXRlZ29yeUZpbHRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2NhdGVnb3J5Q2hhbmdlZCcsICdpbnB1dENoYW5nZWQnLCAnZmlsdGVyQ2hhbmdlZCcsICdmaWx0ZXJDbGVhcmVkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBJbnB1dFN0YXRlIGFzIElJeENhdGVnb3J5RmlsdGVySW5wdXRTdGF0ZSB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMnO1xuaW1wb3J0IHR5cGUgeyBGaWx0ZXJTdGF0ZSBhcyBJSXhDYXRlZ29yeUZpbHRlckZpbHRlclN0YXRlIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeENhdGVnb3J5RmlsdGVyIGV4dGVuZHMgQ29tcG9uZW50cy5JeENhdGVnb3J5RmlsdGVyIHtcbiAgLyoqXG4gICAqIEV2ZW50IGRpc3BhdGNoZWQgd2hlbmV2ZXIgYSBjYXRlZ29yeSBnZXRzIHNlbGVjdGVkIGluIHRoZSBkcm9wZG93blxuICAgKi9cbiAgY2F0ZWdvcnlDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBFdmVudCBkaXNwYXRjaGVkIHdoZW5ldmVyIHRoZSB0ZXh0IGlucHV0IGNoYW5nZXMuXG4gICAqL1xuICBpbnB1dENoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJSXhDYXRlZ29yeUZpbHRlcklucHV0U3RhdGU+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGRpc3BhdGNoZWQgd2hlbmV2ZXIgdGhlIGZpbHRlciBzdGF0ZSBjaGFuZ2VzLlxuICAgKi9cbiAgZmlsdGVyQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElJeENhdGVnb3J5RmlsdGVyRmlsdGVyU3RhdGU+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGRpc3BhdGNoZWQgd2hlbmV2ZXIgdGhlIGZpbHRlciBnZXRzIGNsZWFyZWQuXG4gICAqL1xuICBmaWx0ZXJDbGVhcmVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDaGVja2JveCxcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaW5kZXRlcm1pbmF0ZScsICdsYWJlbCcsICduYW1lJywgJ3JlcXVpcmVkJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jaGVja2JveCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdpbmRldGVybWluYXRlJywgJ2xhYmVsJywgJ25hbWUnLCAncmVxdWlyZWQnLCAndmFsdWUnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENoZWNrYm94IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2hlY2tlZENoYW5nZScsICd2YWx1ZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeENoZWNrYm94IGV4dGVuZHMgQ29tcG9uZW50cy5JeENoZWNrYm94IHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY2hlY2tlZCBzdGF0ZSBvZiB0aGUgY2hlY2tib3ggY2hhbmdlc1xuICAgKi9cbiAgY2hlY2tlZENoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGNoZWNrYm94IGNoYW5nZXNcbiAgICovXG4gIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeENoZWNrYm94R3JvdXAsXG4gIGlucHV0czogWydkaXJlY3Rpb24nLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdzaG93VGV4dEFzVG9vbHRpcCcsICd2YWxpZFRleHQnLCAnd2FybmluZ1RleHQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWNoZWNrYm94LWdyb3VwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXJlY3Rpb24nLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdzaG93VGV4dEFzVG9vbHRpcCcsICd2YWxpZFRleHQnLCAnd2FybmluZ1RleHQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENoZWNrYm94R3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeENoZWNrYm94R3JvdXAgZXh0ZW5kcyBDb21wb25lbnRzLkl4Q2hlY2tib3hHcm91cCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDaGlwLFxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2JhY2tncm91bmQnLCAnY2hpcENvbG9yJywgJ2Nsb3NhYmxlJywgJ2ljb24nLCAnb3V0bGluZScsICd0b29sdGlwVGV4dCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jaGlwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY3RpdmUnLCAnYmFja2dyb3VuZCcsICdjaGlwQ29sb3InLCAnY2xvc2FibGUnLCAnaWNvbicsICdvdXRsaW5lJywgJ3Rvb2x0aXBUZXh0JywgJ3ZhcmlhbnQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENoaXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjbG9zZUNoaXAnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhDaGlwIGV4dGVuZHMgQ29tcG9uZW50cy5JeENoaXAge1xuICAvKipcbiAgICogRmlyZSBldmVudCBpZiBjbG9zZSBidXR0b24gaXMgY2xpY2tlZCBAc2luY2UgMS41LjBcbiAgICovXG4gIGNsb3NlQ2hpcDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDb2wsXG4gIGlucHV0czogWydzaXplJywgJ3NpemVMZycsICdzaXplTWQnLCAnc2l6ZVNtJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jb2wnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ3NpemUnLCAnc2l6ZUxnJywgJ3NpemVNZCcsICdzaXplU20nXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENvbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4Q29sIGV4dGVuZHMgQ29tcG9uZW50cy5JeENvbCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDb250ZW50XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtY29udGVudCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4Q29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4Q29udGVudCBleHRlbmRzIENvbXBvbmVudHMuSXhDb250ZW50IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeENvbnRlbnRIZWFkZXIsXG4gIGlucHV0czogWydoYXNCYWNrQnV0dG9uJywgJ2hlYWRlclN1YnRpdGxlJywgJ2hlYWRlclRpdGxlJywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWNvbnRlbnQtaGVhZGVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydoYXNCYWNrQnV0dG9uJywgJ2hlYWRlclN1YnRpdGxlJywgJ2hlYWRlclRpdGxlJywgJ3ZhcmlhbnQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeENvbnRlbnRIZWFkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydiYWNrQnV0dG9uQ2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhDb250ZW50SGVhZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5JeENvbnRlbnRIZWFkZXIge1xuICAvKipcbiAgICogVHJpZ2dlcmVkIHdoZW4gYmFjayBidXR0b24gaXMgY2xpY2tlZFxuICAgKi9cbiAgYmFja0J1dHRvbkNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhDdXN0b21GaWVsZCxcbiAgaW5wdXRzOiBbJ2hlbHBlclRleHQnLCAnaW5mb1RleHQnLCAnaW52YWxpZFRleHQnLCAnbGFiZWwnLCAncmVxdWlyZWQnLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAndmFsaWRUZXh0JywgJ3dhcm5pbmdUZXh0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1jdXN0b20tZmllbGQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2hlbHBlclRleHQnLCAnaW5mb1RleHQnLCAnaW52YWxpZFRleHQnLCAnbGFiZWwnLCAncmVxdWlyZWQnLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAndmFsaWRUZXh0JywgJ3dhcm5pbmdUZXh0J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhDdXN0b21GaWVsZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4Q3VzdG9tRmllbGQgZXh0ZW5kcyBDb21wb25lbnRzLkl4Q3VzdG9tRmllbGQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4RGF0ZURyb3Bkb3duLFxuICBpbnB1dHM6IFsnY3VzdG9tUmFuZ2VBbGxvd2VkJywgJ2RhdGVSYW5nZUlkJywgJ2RhdGVSYW5nZU9wdGlvbnMnLCAnZGlzYWJsZWQnLCAnZm9ybWF0JywgJ2Zyb20nLCAnZ2hvc3QnLCAnaTE4bkN1c3RvbUl0ZW0nLCAnaTE4bkRvbmUnLCAnaTE4bk5vUmFuZ2UnLCAnbG9hZGluZycsICdsb2NhbGUnLCAnbWF4RGF0ZScsICdtaW5EYXRlJywgJ291dGxpbmUnLCAncmFuZ2UnLCAnc2hvd1dlZWtOdW1iZXJzJywgJ3RvJywgJ3ZhcmlhbnQnLCAnd2Vla1N0YXJ0SW5kZXgnXSxcbiAgbWV0aG9kczogWydnZXREYXRlUmFuZ2UnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWRhdGUtZHJvcGRvd24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2N1c3RvbVJhbmdlQWxsb3dlZCcsICdkYXRlUmFuZ2VJZCcsICdkYXRlUmFuZ2VPcHRpb25zJywgJ2Rpc2FibGVkJywgJ2Zvcm1hdCcsICdmcm9tJywgJ2dob3N0JywgJ2kxOG5DdXN0b21JdGVtJywgJ2kxOG5Eb25lJywgJ2kxOG5Ob1JhbmdlJywgJ2xvYWRpbmcnLCAnbG9jYWxlJywgJ21heERhdGUnLCAnbWluRGF0ZScsICdvdXRsaW5lJywgJ3JhbmdlJywgJ3Nob3dXZWVrTnVtYmVycycsICd0bycsICd2YXJpYW50JywgJ3dlZWtTdGFydEluZGV4J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhEYXRlRHJvcGRvd24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkYXRlUmFuZ2VDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IERhdGVSYW5nZUNoYW5nZUV2ZW50IGFzIElJeERhdGVEcm9wZG93bkRhdGVSYW5nZUNoYW5nZUV2ZW50IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeERhdGVEcm9wZG93biBleHRlbmRzIENvbXBvbmVudHMuSXhEYXRlRHJvcGRvd24ge1xuICAvKipcbiAgICogRXZlbnRFbWl0dGVyIGZvciBkYXRlIHJhbmdlIGNoYW5nZSBldmVudHMuXG5cblRoaXMgZXZlbnQgaXMgZW1pdHRlZCB3aGVuIHRoZSBkYXRlIHJhbmdlIGNoYW5nZXMgd2l0aGluIHRoZSBjb21wb25lbnQuXG5UaGUgZXZlbnQgcGF5bG9hZCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc2VsZWN0ZWQgZGF0ZSByYW5nZS5cbiAgICovXG4gIGRhdGVSYW5nZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElJeERhdGVEcm9wZG93bkRhdGVSYW5nZUNoYW5nZUV2ZW50Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeERhdGVJbnB1dCxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Zvcm1hdCcsICdoZWxwZXJUZXh0JywgJ2kxOG5FcnJvckRhdGVVbnBhcnNhYmxlJywgJ2luZm9UZXh0JywgJ2ludmFsaWRUZXh0JywgJ2xhYmVsJywgJ2xvY2FsZScsICduYW1lJywgJ3BsYWNlaG9sZGVyJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3Nob3dUZXh0QXNUb29sdGlwJywgJ3Nob3dXZWVrTnVtYmVycycsICd2YWxpZFRleHQnLCAndmFsdWUnLCAnd2FybmluZ1RleHQnXSxcbiAgbWV0aG9kczogWydnZXROYXRpdmVJbnB1dEVsZW1lbnQnLCAnZm9jdXNJbnB1dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZGF0ZS1pbnB1dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnZm9ybWF0JywgJ2hlbHBlclRleHQnLCAnaTE4bkVycm9yRGF0ZVVucGFyc2FibGUnLCAnaW5mb1RleHQnLCAnaW52YWxpZFRleHQnLCAnbGFiZWwnLCAnbG9jYWxlJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAnc2hvd1dlZWtOdW1iZXJzJywgJ3ZhbGlkVGV4dCcsICd2YWx1ZScsICd3YXJuaW5nVGV4dCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RGF0ZUlucHV0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndmFsdWVDaGFuZ2UnLCAndmFsaWRpdHlTdGF0ZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgRGF0ZUlucHV0VmFsaWRpdHlTdGF0ZSBhcyBJSXhEYXRlSW5wdXREYXRlSW5wdXRWYWxpZGl0eVN0YXRlIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeERhdGVJbnB1dCBleHRlbmRzIENvbXBvbmVudHMuSXhEYXRlSW5wdXQge1xuICAvKipcbiAgICogSW5wdXQgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmcgfCB1bmRlZmluZWQ+PjtcbiAgLyoqXG4gICAqIFZhbGlkYXRpb24gc3RhdGUgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgdmFsaWRpdHlTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElJeERhdGVJbnB1dERhdGVJbnB1dFZhbGlkaXR5U3RhdGU+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4RGF0ZVBpY2tlcixcbiAgaW5wdXRzOiBbJ2Nvcm5lcnMnLCAnZm9ybWF0JywgJ2Zyb20nLCAnaTE4bkRvbmUnLCAnbG9jYWxlJywgJ21heERhdGUnLCAnbWluRGF0ZScsICdyYW5nZScsICdzaG93V2Vla051bWJlcnMnLCAndG8nLCAnd2Vla1N0YXJ0SW5kZXgnXSxcbiAgbWV0aG9kczogWydnZXRDdXJyZW50RGF0ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZGF0ZS1waWNrZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Nvcm5lcnMnLCAnZm9ybWF0JywgJ2Zyb20nLCAnaTE4bkRvbmUnLCAnbG9jYWxlJywgJ21heERhdGUnLCAnbWluRGF0ZScsICdyYW5nZScsICdzaG93V2Vla051bWJlcnMnLCAndG8nLCAnd2Vla1N0YXJ0SW5kZXgnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeERhdGVQaWNrZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydkYXRlQ2hhbmdlJywgJ2RhdGVSYW5nZUNoYW5nZScsICdkYXRlU2VsZWN0J10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEYXRlQ2hhbmdlRXZlbnQgYXMgSUl4RGF0ZVBpY2tlckRhdGVDaGFuZ2VFdmVudCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhEYXRlUGlja2VyIGV4dGVuZHMgQ29tcG9uZW50cy5JeERhdGVQaWNrZXIge1xuICAvKipcbiAgICogVHJpZ2dlcnMgaWYgdGhlIGRhdGUgc2VsZWN0aW9uIGNoYW5nZXMuXG5Ob3RlOiBTaW5jZSAyLjAuMCBgZGF0ZUNoYW5nZWAgZG9lcyBub3QgZGlzcGF0Y2ggZGV0YWlsIHByb3BlcnR5IGFzIGBzdHJpbmdgIEBzaW5jZSAyLjEuMFxuICAgKi9cbiAgZGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElJeERhdGVQaWNrZXJEYXRlQ2hhbmdlRXZlbnQ+PjtcbiAgLyoqXG4gICAqIFRyaWdnZXJzIGlmIHRoZSBkYXRlIHNlbGVjdGlvbiBjaGFuZ2VzLlxuT25seSB0cmlnZ2VyZWQgaWYgZGF0ZS1waWNrZXItcmV3b3JrIGlzIGluIHJhbmdlIG1vZGUuIEBzaW5jZSAyLjEuMFxuICAgKi9cbiAgZGF0ZVJhbmdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUl4RGF0ZVBpY2tlckRhdGVDaGFuZ2VFdmVudD4+O1xuICAvKipcbiAgICogRGF0ZSBzZWxlY3Rpb24gY29uZmlybWVkIHZpYSBidXR0b24gYWN0aW9uIEBzaW5jZSAxLjEuMFxuICAgKi9cbiAgZGF0ZVNlbGVjdDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElJeERhdGVQaWNrZXJEYXRlQ2hhbmdlRXZlbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4RGF0ZXRpbWVQaWNrZXIsXG4gIGlucHV0czogWydkYXRlRm9ybWF0JywgJ2Zyb20nLCAnaTE4bkRvbmUnLCAnaTE4blRpbWUnLCAnbG9jYWxlJywgJ21heERhdGUnLCAnbWluRGF0ZScsICdyYW5nZScsICdzaG93SG91cicsICdzaG93TWludXRlcycsICdzaG93U2Vjb25kcycsICdzaG93VGltZVJlZmVyZW5jZScsICdzaG93V2Vla051bWJlcnMnLCAndGltZScsICd0aW1lRm9ybWF0JywgJ3RpbWVSZWZlcmVuY2UnLCAndG8nLCAnd2Vla1N0YXJ0SW5kZXgnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWRhdGV0aW1lLXBpY2tlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGF0ZUZvcm1hdCcsICdmcm9tJywgJ2kxOG5Eb25lJywgJ2kxOG5UaW1lJywgJ2xvY2FsZScsICdtYXhEYXRlJywgJ21pbkRhdGUnLCAncmFuZ2UnLCAnc2hvd0hvdXInLCAnc2hvd01pbnV0ZXMnLCAnc2hvd1NlY29uZHMnLCAnc2hvd1RpbWVSZWZlcmVuY2UnLCAnc2hvd1dlZWtOdW1iZXJzJywgJ3RpbWUnLCAndGltZUZvcm1hdCcsICd0aW1lUmVmZXJlbmNlJywgJ3RvJywgJ3dlZWtTdGFydEluZGV4J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhEYXRldGltZVBpY2tlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RpbWVDaGFuZ2UnLCAnZGF0ZUNoYW5nZScsICdkYXRlU2VsZWN0J10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBEYXRlVGltZURhdGVDaGFuZ2VFdmVudCBhcyBJSXhEYXRldGltZVBpY2tlckRhdGVUaW1lRGF0ZUNoYW5nZUV2ZW50IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5pbXBvcnQgdHlwZSB7IERhdGVUaW1lU2VsZWN0RXZlbnQgYXMgSUl4RGF0ZXRpbWVQaWNrZXJEYXRlVGltZVNlbGVjdEV2ZW50IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeERhdGV0aW1lUGlja2VyIGV4dGVuZHMgQ29tcG9uZW50cy5JeERhdGV0aW1lUGlja2VyIHtcbiAgLyoqXG4gICAqIFxuVGltZSBjaGFuZ2UgQHNpbmNlIDEuMS4wXG4gICAqL1xuICB0aW1lQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBEYXRlIGNoYW5nZSBAc2luY2UgMS4xLjBcbiAgICovXG4gIGRhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJSXhEYXRldGltZVBpY2tlckRhdGVUaW1lRGF0ZUNoYW5nZUV2ZW50Pj47XG4gIC8qKlxuICAgKiBEYXRldGltZSBzZWxlY3Rpb24gZXZlbnQgaXMgZmlyZWQgYWZ0ZXIgY29uZmlybSBidXR0b24gaXMgcHJlc3NlZCBAc2luY2UgMS4xLjBcbiAgICovXG4gIGRhdGVTZWxlY3Q6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJSXhEYXRldGltZVBpY2tlckRhdGVUaW1lU2VsZWN0RXZlbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4RGl2aWRlclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWRpdmlkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeERpdmlkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeERpdmlkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkl4RGl2aWRlciB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhEcmF3ZXIsXG4gIGlucHV0czogWydjbG9zZU9uQ2xpY2tPdXRzaWRlJywgJ2Z1bGxIZWlnaHQnLCAnbWF4V2lkdGgnLCAnbWluV2lkdGgnLCAnc2hvdycsICd3aWR0aCddLFxuICBtZXRob2RzOiBbJ3RvZ2dsZURyYXdlciddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZHJhd2VyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjbG9zZU9uQ2xpY2tPdXRzaWRlJywgJ2Z1bGxIZWlnaHQnLCAnbWF4V2lkdGgnLCAnbWluV2lkdGgnLCAnc2hvdycsICd3aWR0aCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RHJhd2VyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnb3BlbicsICdkcmF3ZXJDbG9zZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeERyYXdlciBleHRlbmRzIENvbXBvbmVudHMuSXhEcmF3ZXIge1xuICAvKipcbiAgICogRmlyZSBldmVudCBhZnRlciBkcmF3ZXIgaXMgb3BlblxuICAgKi9cbiAgb3BlbjogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xuICAvKipcbiAgICogRmlyZSBldmVudCBhZnRlciBkcmF3ZXIgaXMgY2xvc2VcbiAgICovXG4gIGRyYXdlckNsb3NlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeERyb3Bkb3duLFxuICBpbnB1dHM6IFsnYW5jaG9yJywgJ2Nsb3NlQmVoYXZpb3InLCAnaGVhZGVyJywgJ3BsYWNlbWVudCcsICdwb3NpdGlvbmluZ1N0cmF0ZWd5JywgJ3Nob3cnLCAnc3VwcHJlc3NBdXRvbWF0aWNQbGFjZW1lbnQnLCAndHJpZ2dlciddLFxuICBtZXRob2RzOiBbJ3VwZGF0ZVBvc2l0aW9uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1kcm9wZG93bicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYW5jaG9yJywgJ2Nsb3NlQmVoYXZpb3InLCAnaGVhZGVyJywgJ3BsYWNlbWVudCcsICdwb3NpdGlvbmluZ1N0cmF0ZWd5JywgJ3Nob3cnLCAnc3VwcHJlc3NBdXRvbWF0aWNQbGFjZW1lbnQnLCAndHJpZ2dlciddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RHJvcGRvd24ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaG93Q2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeERyb3Bkb3duIGV4dGVuZHMgQ29tcG9uZW50cy5JeERyb3Bkb3duIHtcbiAgLyoqXG4gICAqIEZpcmUgZXZlbnQgYWZ0ZXIgdmlzaWJpbGl0eSBvZiBkcm9wZG93biBoYXMgY2hhbmdlZFxuICAgKi9cbiAgc2hvd0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeERyb3Bkb3duQnV0dG9uLFxuICBpbnB1dHM6IFsnY2xvc2VCZWhhdmlvcicsICdkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2xhYmVsJywgJ291dGxpbmUnLCAncGxhY2VtZW50JywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWRyb3Bkb3duLWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2xvc2VCZWhhdmlvcicsICdkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2xhYmVsJywgJ291dGxpbmUnLCAncGxhY2VtZW50JywgJ3ZhcmlhbnQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeERyb3Bkb3duQnV0dG9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhEcm9wZG93bkJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuSXhEcm9wZG93bkJ1dHRvbiB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhEcm9wZG93bkhlYWRlcixcbiAgaW5wdXRzOiBbJ2xhYmVsJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1kcm9wZG93bi1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xhYmVsJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhEcm9wZG93bkhlYWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4RHJvcGRvd25IZWFkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkl4RHJvcGRvd25IZWFkZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4RHJvcGRvd25JdGVtLFxuICBpbnB1dHM6IFsnY2hlY2tlZCcsICdkaXNhYmxlZCcsICdob3ZlcicsICdpY29uJywgJ2xhYmVsJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1kcm9wZG93bi1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2hvdmVyJywgJ2ljb24nLCAnbGFiZWwnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeERyb3Bkb3duSXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4RHJvcGRvd25JdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5JeERyb3Bkb3duSXRlbSB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhEcm9wZG93blF1aWNrQWN0aW9uc1xufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWRyb3Bkb3duLXF1aWNrLWFjdGlvbnMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeERyb3Bkb3duUXVpY2tBY3Rpb25zIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhEcm9wZG93blF1aWNrQWN0aW9ucyBleHRlbmRzIENvbXBvbmVudHMuSXhEcm9wZG93blF1aWNrQWN0aW9ucyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhFbXB0eVN0YXRlLFxuICBpbnB1dHM6IFsnYWN0aW9uJywgJ2hlYWRlcicsICdpY29uJywgJ2xheW91dCcsICdzdWJIZWFkZXInXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWVtcHR5LXN0YXRlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY3Rpb24nLCAnaGVhZGVyJywgJ2ljb24nLCAnbGF5b3V0JywgJ3N1YkhlYWRlciddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RW1wdHlTdGF0ZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2FjdGlvbkNsaWNrJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4RW1wdHlTdGF0ZSBleHRlbmRzIENvbXBvbmVudHMuSXhFbXB0eVN0YXRlIHtcbiAgLyoqXG4gICAqIEVtcHR5IHN0YXRlIGFjdGlvbiBjbGljayBldmVudFxuICAgKi9cbiAgYWN0aW9uQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEV2ZW50TGlzdCxcbiAgaW5wdXRzOiBbJ2FuaW1hdGVkJywgJ2NoZXZyb24nLCAnY29tcGFjdCcsICdpdGVtSGVpZ2h0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1ldmVudC1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhbmltYXRlZCcsICdjaGV2cm9uJywgJ2NvbXBhY3QnLCAnaXRlbUhlaWdodCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RXZlbnRMaXN0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhFdmVudExpc3QgZXh0ZW5kcyBDb21wb25lbnRzLkl4RXZlbnRMaXN0IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEV2ZW50TGlzdEl0ZW0sXG4gIGlucHV0czogWydjaGV2cm9uJywgJ2Rpc2FibGVkJywgJ2l0ZW1Db2xvcicsICdzZWxlY3RlZCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZXZlbnQtbGlzdC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGV2cm9uJywgJ2Rpc2FibGVkJywgJ2l0ZW1Db2xvcicsICdzZWxlY3RlZCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RXZlbnRMaXN0SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2l0ZW1DbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEV2ZW50TGlzdEl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkl4RXZlbnRMaXN0SXRlbSB7XG4gIC8qKlxuICAgKiBFdmVudCBsaXN0IGl0ZW0gY2xpY2tcbiAgICovXG4gIGl0ZW1DbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhFeHBhbmRpbmdTZWFyY2gsXG4gIGlucHV0czogWydmdWxsV2lkdGgnLCAnZ2hvc3QnLCAnaWNvbicsICdvdXRsaW5lJywgJ3BsYWNlaG9sZGVyJywgJ3ZhbHVlJywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWV4cGFuZGluZy1zZWFyY2gnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Z1bGxXaWR0aCcsICdnaG9zdCcsICdpY29uJywgJ291dGxpbmUnLCAncGxhY2Vob2xkZXInLCAndmFsdWUnLCAndmFyaWFudCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RXhwYW5kaW5nU2VhcmNoIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndmFsdWVDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhFeHBhbmRpbmdTZWFyY2ggZXh0ZW5kcyBDb21wb25lbnRzLkl4RXhwYW5kaW5nU2VhcmNoIHtcbiAgLyoqXG4gICAqIFZhbHVlIGNoYW5nZWRcbiAgICovXG4gIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEZpZWxkTGFiZWwsXG4gIGlucHV0czogWydodG1sRm9yJywgJ3JlcXVpcmVkJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1maWVsZC1sYWJlbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnaHRtbEZvcicsICdyZXF1aXJlZCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4RmllbGRMYWJlbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4RmllbGRMYWJlbCBleHRlbmRzIENvbXBvbmVudHMuSXhGaWVsZExhYmVsIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEZpbHRlckNoaXAsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdyZWFkb25seSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZmlsdGVyLWNoaXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ3JlYWRvbmx5J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhGaWx0ZXJDaGlwIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2xvc2VDbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEZpbHRlckNoaXAgZXh0ZW5kcyBDb21wb25lbnRzLkl4RmlsdGVyQ2hpcCB7XG4gIC8qKlxuICAgKiBDbG9zZSBjbGlja2VkXG4gICAqL1xuICBjbG9zZUNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhGbGlwVGlsZSxcbiAgaW5wdXRzOiBbJ2hlaWdodCcsICdpbmRleCcsICdzdGF0ZScsICd3aWR0aCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZmxpcC10aWxlJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydoZWlnaHQnLCAnaW5kZXgnLCAnc3RhdGUnLCAnd2lkdGgnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeEZsaXBUaWxlIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndG9nZ2xlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4RmxpcFRpbGUgZXh0ZW5kcyBDb21wb25lbnRzLkl4RmxpcFRpbGUge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBpbmRleCBjaGFuZ2VzIEBzaW5jZSAzLjAuMFxuICAgKi9cbiAgdG9nZ2xlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8bnVtYmVyPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEZsaXBUaWxlQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWZsaXAtdGlsZS1jb250ZW50JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhGbGlwVGlsZUNvbnRlbnQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEZsaXBUaWxlQ29udGVudCBleHRlbmRzIENvbXBvbmVudHMuSXhGbGlwVGlsZUNvbnRlbnQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4R3JvdXAsXG4gIGlucHV0czogWydjb2xsYXBzZWQnLCAnZXhwYW5kT25IZWFkZXJDbGljaycsICdoZWFkZXInLCAnaW5kZXgnLCAnc2VsZWN0ZWQnLCAnc3ViSGVhZGVyJywgJ3N1cHByZXNzSGVhZGVyU2VsZWN0aW9uJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY29sbGFwc2VkJywgJ2V4cGFuZE9uSGVhZGVyQ2xpY2snLCAnaGVhZGVyJywgJ2luZGV4JywgJ3NlbGVjdGVkJywgJ3N1YkhlYWRlcicsICdzdXBwcmVzc0hlYWRlclNlbGVjdGlvbiddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4R3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzZWxlY3RHcm91cCcsICdzZWxlY3RJdGVtJywgJ2NvbGxhcHNlZENoYW5nZWQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhHcm91cCBleHRlbmRzIENvbXBvbmVudHMuSXhHcm91cCB7XG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIHdob2xlIGdyb3VwIGdldHMgc2VsZWN0ZWQuXG4gICAqL1xuICBzZWxlY3RHcm91cDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gZ3JvdXAgaXRlbSBnZXRzIHNlbGVjdGVkLlxuICAgKi9cbiAgc2VsZWN0SXRlbTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PG51bWJlcj4+O1xuICAvKipcbiAgICogR3JvdXAgY29sbGFwc2VkXG4gICAqL1xuICBjb2xsYXBzZWRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhHcm91cENvbnRleHRNZW51XG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtZ3JvdXAtY29udGV4dC1tZW51JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogW10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhHcm91cENvbnRleHRNZW51IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhHcm91cENvbnRleHRNZW51IGV4dGVuZHMgQ29tcG9uZW50cy5JeEdyb3VwQ29udGV4dE1lbnUge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4R3JvdXBJdGVtLFxuICBpbnB1dHM6IFsnZm9jdXNhYmxlJywgJ2ljb24nLCAnaW5kZXgnLCAnc2Vjb25kYXJ5VGV4dCcsICdzZWxlY3RlZCcsICdzdXBwcmVzc1NlbGVjdGlvbicsICd0ZXh0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1ncm91cC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydmb2N1c2FibGUnLCAnaWNvbicsICdpbmRleCcsICdzZWNvbmRhcnlUZXh0JywgJ3NlbGVjdGVkJywgJ3N1cHByZXNzU2VsZWN0aW9uJywgJ3RleHQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeEdyb3VwSXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NlbGVjdGVkQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEdyb3VwSXRlbSBleHRlbmRzIENvbXBvbmVudHMuSXhHcm91cEl0ZW0ge1xuICAvKipcbiAgICogU2VsZWN0aW9uIGNoYW5nZWRcbiAgICovXG4gIHNlbGVjdGVkQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PEhUTUxJeEdyb3VwSXRlbUVsZW1lbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4SGVscGVyVGV4dCxcbiAgaW5wdXRzOiBbJ2hlbHBlclRleHQnLCAnaHRtbEZvcicsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICd2YWxpZFRleHQnLCAnd2FybmluZ1RleHQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWhlbHBlci10ZXh0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydoZWxwZXJUZXh0JywgJ2h0bWxGb3InLCAnaW5mb1RleHQnLCAnaW52YWxpZFRleHQnLCAndmFsaWRUZXh0JywgJ3dhcm5pbmdUZXh0J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhIZWxwZXJUZXh0IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhIZWxwZXJUZXh0IGV4dGVuZHMgQ29tcG9uZW50cy5JeEhlbHBlclRleHQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4SWNvbkJ1dHRvbixcbiAgaW5wdXRzOiBbJ2ExMXlMYWJlbCcsICdkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2ljb25Db2xvcicsICdsb2FkaW5nJywgJ291dGxpbmUnLCAnb3ZhbCcsICdzaXplJywgJ3R5cGUnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtaWNvbi1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ExMXlMYWJlbCcsICdkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2ljb25Db2xvcicsICdsb2FkaW5nJywgJ291dGxpbmUnLCAnb3ZhbCcsICdzaXplJywgJ3R5cGUnLCAndmFyaWFudCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4SWNvbkJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4SWNvbkJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuSXhJY29uQnV0dG9uIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEljb25Ub2dnbGVCdXR0b24sXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2xvYWRpbmcnLCAnb3V0bGluZScsICdwcmVzc2VkJywgJ3NpemUnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtaWNvbi10b2dnbGUtYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2xvYWRpbmcnLCAnb3V0bGluZScsICdwcmVzc2VkJywgJ3NpemUnLCAndmFyaWFudCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4SWNvblRvZ2dsZUJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3ByZXNzZWRDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhJY29uVG9nZ2xlQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5JeEljb25Ub2dnbGVCdXR0b24ge1xuICAvKipcbiAgICogUHJlc3NlZCBjaGFuZ2UgZXZlbnRcbiAgICovXG4gIHByZXNzZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeElucHV0LFxuICBpbnB1dHM6IFsnYWxsb3dlZENoYXJhY3RlcnNQYXR0ZXJuJywgJ2Rpc2FibGVkJywgJ2hlbHBlclRleHQnLCAnaW5mb1RleHQnLCAnaW52YWxpZFRleHQnLCAnbGFiZWwnLCAnbWF4TGVuZ3RoJywgJ21pbkxlbmd0aCcsICduYW1lJywgJ3BhdHRlcm4nLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAndHlwZScsICd2YWxpZFRleHQnLCAndmFsdWUnLCAnd2FybmluZ1RleHQnXSxcbiAgbWV0aG9kczogWydnZXROYXRpdmVJbnB1dEVsZW1lbnQnLCAnZm9jdXNJbnB1dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtaW5wdXQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FsbG93ZWRDaGFyYWN0ZXJzUGF0dGVybicsICdkaXNhYmxlZCcsICdoZWxwZXJUZXh0JywgJ2luZm9UZXh0JywgJ2ludmFsaWRUZXh0JywgJ2xhYmVsJywgJ21heExlbmd0aCcsICdtaW5MZW5ndGgnLCAnbmFtZScsICdwYXR0ZXJuJywgJ3BsYWNlaG9sZGVyJywgJ3JlYWRvbmx5JywgJ3JlcXVpcmVkJywgJ3Nob3dUZXh0QXNUb29sdGlwJywgJ3R5cGUnLCAndmFsaWRUZXh0JywgJ3ZhbHVlJywgJ3dhcm5pbmdUZXh0J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhJbnB1dCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3ZhbHVlQ2hhbmdlJywgJ3ZhbGlkaXR5U3RhdGVDaGFuZ2UnLCAnaXhCbHVyJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4SW5wdXQgZXh0ZW5kcyBDb21wb25lbnRzLkl4SW5wdXQge1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSB2YWx1ZSBvZiB0aGUgdGV4dCBmaWVsZCBjaGFuZ2VzLlxuICAgKi9cbiAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmc+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdmFsaWRpdHkgc3RhdGUgb2YgdGhlIHRleHQgZmllbGQgY2hhbmdlcy5cbiAgICovXG4gIHZhbGlkaXR5U3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxWYWxpZGl0eVN0YXRlPj47XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHRleHQgZmllbGQgbG9zZXMgZm9jdXMuXG4gICAqL1xuICBpeEJsdXI6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeElucHV0R3JvdXBcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1pbnB1dC1ncm91cCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4SW5wdXRHcm91cCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4SW5wdXRHcm91cCBleHRlbmRzIENvbXBvbmVudHMuSXhJbnB1dEdyb3VwIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEtleVZhbHVlLFxuICBpbnB1dHM6IFsnaWNvbicsICdsYWJlbCcsICdsYWJlbFBvc2l0aW9uJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1rZXktdmFsdWUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb24nLCAnbGFiZWwnLCAnbGFiZWxQb3NpdGlvbicsICd2YWx1ZSddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4S2V5VmFsdWUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEtleVZhbHVlIGV4dGVuZHMgQ29tcG9uZW50cy5JeEtleVZhbHVlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeEtleVZhbHVlTGlzdCxcbiAgaW5wdXRzOiBbJ3N0cmlwZWQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWtleS12YWx1ZS1saXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydzdHJpcGVkJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhLZXlWYWx1ZUxpc3Qge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEtleVZhbHVlTGlzdCBleHRlbmRzIENvbXBvbmVudHMuSXhLZXlWYWx1ZUxpc3Qge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4S3BpLFxuICBpbnB1dHM6IFsnbGFiZWwnLCAnb3JpZW50YXRpb24nLCAnc3RhdGUnLCAndW5pdCcsICd2YWx1ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgta3BpJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydsYWJlbCcsICdvcmllbnRhdGlvbicsICdzdGF0ZScsICd1bml0JywgJ3ZhbHVlJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhLcGkge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeEtwaSBleHRlbmRzIENvbXBvbmVudHMuSXhLcGkge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TGF5b3V0QXV0byxcbiAgaW5wdXRzOiBbJ2xheW91dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbGF5b3V0LWF1dG8nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xheW91dCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4TGF5b3V0QXV0byB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4TGF5b3V0QXV0byBleHRlbmRzIENvbXBvbmVudHMuSXhMYXlvdXRBdXRvIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeExheW91dEdyaWQsXG4gIGlucHV0czogWydjb2x1bW5zJywgJ2dhcCcsICdub01hcmdpbiddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbGF5b3V0LWdyaWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbHVtbnMnLCAnZ2FwJywgJ25vTWFyZ2luJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhMYXlvdXRHcmlkIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhMYXlvdXRHcmlkIGV4dGVuZHMgQ29tcG9uZW50cy5JeExheW91dEdyaWQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TGlua0J1dHRvbixcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ3RhcmdldCcsICd1cmwnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LWxpbmstYnV0dG9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXNhYmxlZCcsICd0YXJnZXQnLCAndXJsJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhMaW5rQnV0dG9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhMaW5rQnV0dG9uIGV4dGVuZHMgQ29tcG9uZW50cy5JeExpbmtCdXR0b24ge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TWFwTmF2aWdhdGlvbixcbiAgaW5wdXRzOiBbJ2FwcGxpY2F0aW9uTmFtZScsICdoaWRlQ29udGV4dE1lbnUnLCAnbmF2aWdhdGlvblRpdGxlJ10sXG4gIG1ldGhvZHM6IFsndG9nZ2xlU2lkZWJhcicsICdvcGVuT3ZlcmxheScsICdjbG9zZU92ZXJsYXknXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1hcC1uYXZpZ2F0aW9uJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhcHBsaWNhdGlvbk5hbWUnLCAnaGlkZUNvbnRleHRNZW51JywgJ25hdmlnYXRpb25UaXRsZSddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4TWFwTmF2aWdhdGlvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ25hdmlnYXRpb25Ub2dnbGVkJywgJ2NvbnRleHRNZW51Q2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNYXBOYXZpZ2F0aW9uIGV4dGVuZHMgQ29tcG9uZW50cy5JeE1hcE5hdmlnYXRpb24ge1xuICAvKipcbiAgICogTmF2aWdhdGlvbiB0b2dnbGVkXG4gICAqL1xuICBuYXZpZ2F0aW9uVG9nZ2xlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIENvbnRleHQgbWVudSBjbGlja2VkXG4gICAqL1xuICBjb250ZXh0TWVudUNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNYXBOYXZpZ2F0aW9uT3ZlcmxheSxcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2ljb24nLCAnaWNvbkNvbG9yJywgJ25hbWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1hcC1uYXZpZ2F0aW9uLW92ZXJsYXknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbG9yJywgJ2ljb24nLCAnaWNvbkNvbG9yJywgJ25hbWUnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1hcE5hdmlnYXRpb25PdmVybGF5IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2xvc2VDbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeE1hcE5hdmlnYXRpb25PdmVybGF5IGV4dGVuZHMgQ29tcG9uZW50cy5JeE1hcE5hdmlnYXRpb25PdmVybGF5IHtcbiAgLyoqXG4gICAqIEV2ZW50IGNsb3NlZFxuICAgKi9cbiAgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNZW51LFxuICBpbnB1dHM6IFsnYXBwbGljYXRpb25EZXNjcmlwdGlvbicsICdhcHBsaWNhdGlvbk5hbWUnLCAnZW5hYmxlU2V0dGluZ3MnLCAnZW5hYmxlVG9nZ2xlVGhlbWUnLCAnZXhwYW5kJywgJ2kxOG5Db2xsYXBzZScsICdpMThuRXhwYW5kJywgJ2kxOG5FeHBhbmRTaWRlYmFyJywgJ2kxOG5MZWdhbCcsICdpMThuU2V0dGluZ3MnLCAnaTE4blRvZ2dsZVRoZW1lJywgJ3Bpbm5lZCcsICdzaG93QWJvdXQnLCAnc2hvd1NldHRpbmdzJywgJ3N0YXJ0RXhwYW5kZWQnXSxcbiAgbWV0aG9kczogWyd0b2dnbGVNYXBFeHBhbmQnLCAndG9nZ2xlTWVudScsICd0b2dnbGVTZXR0aW5ncycsICd0b2dnbGVBYm91dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbWVudScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYXBwbGljYXRpb25EZXNjcmlwdGlvbicsICdhcHBsaWNhdGlvbk5hbWUnLCAnZW5hYmxlU2V0dGluZ3MnLCAnZW5hYmxlVG9nZ2xlVGhlbWUnLCAnZXhwYW5kJywgJ2kxOG5Db2xsYXBzZScsICdpMThuRXhwYW5kJywgJ2kxOG5FeHBhbmRTaWRlYmFyJywgJ2kxOG5MZWdhbCcsICdpMThuU2V0dGluZ3MnLCAnaTE4blRvZ2dsZVRoZW1lJywgJ3Bpbm5lZCcsICdzaG93QWJvdXQnLCAnc2hvd1NldHRpbmdzJywgJ3N0YXJ0RXhwYW5kZWQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1lbnUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydleHBhbmRDaGFuZ2UnLCAnbWFwRXhwYW5kQ2hhbmdlJywgJ29wZW5BcHBTd2l0Y2gnLCAnb3BlblNldHRpbmdzJywgJ29wZW5BYm91dCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeE1lbnUgZXh0ZW5kcyBDb21wb25lbnRzLkl4TWVudSB7XG4gIC8qKlxuICAgKiBNZW51IGV4cGFuZGVkXG4gICAqL1xuICBleHBhbmRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG4gIC8qKlxuICAgKiBNYXAgU2lkZWJhciBleHBhbmRlZFxuICAgKi9cbiAgbWFwRXhwYW5kQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhcHAgc3dpdGNoIGJ1dHRvbiBpcyBjbGlja2VkIEBzaW5jZSAzLjAuMFxuICAgKi9cbiAgb3BlbkFwcFN3aXRjaDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHZvaWQ+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2V0dGluZ3MgYnV0dG9uIGlzIGNsaWNrZWQgQHNpbmNlIDMuMC4wXG4gICAqL1xuICBvcGVuU2V0dGluZ3M6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGFib3V0IGJ1dHRvbiBpcyBjbGlja2VkIEBzaW5jZSAzLjAuMFxuICAgKi9cbiAgb3BlbkFib3V0OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNZW51QWJvdXQsXG4gIGlucHV0czogWydhY3RpdmVUYWJMYWJlbCcsICdsYWJlbCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbWVudS1hYm91dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWN0aXZlVGFiTGFiZWwnLCAnbGFiZWwnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1lbnVBYm91dCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RhYkNoYW5nZScsICdjbG9zZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgQ3VzdG9tQ2xvc2VFdmVudCBhcyBJSXhNZW51QWJvdXRDdXN0b21DbG9zZUV2ZW50IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeE1lbnVBYm91dCBleHRlbmRzIENvbXBvbmVudHMuSXhNZW51QWJvdXQge1xuICAvKipcbiAgICogQWN0aXZlIHRhYiBjaGFuZ2VkIEBzaW5jZSAzLjAuMFxuICAgKi9cbiAgdGFiQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBBYm91dCBhbmQgTGVnYWwgY2xvc2VkXG4gICAqL1xuICBjbG9zZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PElJeE1lbnVBYm91dEN1c3RvbUNsb3NlRXZlbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TWVudUFib3V0SXRlbSxcbiAgaW5wdXRzOiBbJ2xhYmVsJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1tZW51LWFib3V0LWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xhYmVsJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhNZW51QWJvdXRJdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnbGFiZWxDaGFuZ2UnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEN1c3RvbUxhYmVsQ2hhbmdlRXZlbnQgYXMgSUl4TWVudUFib3V0SXRlbUN1c3RvbUxhYmVsQ2hhbmdlRXZlbnQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4TWVudUFib3V0SXRlbSBleHRlbmRzIENvbXBvbmVudHMuSXhNZW51QWJvdXRJdGVtIHtcbiAgLyoqXG4gICAqIExhYmVsIGNoYW5nZWRcbiAgICovXG4gIGxhYmVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUl4TWVudUFib3V0SXRlbUN1c3RvbUxhYmVsQ2hhbmdlRXZlbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TWVudUFib3V0TmV3cyxcbiAgaW5wdXRzOiBbJ2Fib3V0SXRlbUxhYmVsJywgJ2kxOG5TaG93TW9yZScsICdsYWJlbCcsICdvZmZzZXRCb3R0b20nLCAnc2hvdyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbWVudS1hYm91dC1uZXdzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhYm91dEl0ZW1MYWJlbCcsICdpMThuU2hvd01vcmUnLCAnbGFiZWwnLCAnb2Zmc2V0Qm90dG9tJywgJ3Nob3cnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1lbnVBYm91dE5ld3Mge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydzaG93TW9yZScsICdjbG9zZVBvcG92ZXInXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNZW51QWJvdXROZXdzIGV4dGVuZHMgQ29tcG9uZW50cy5JeE1lbnVBYm91dE5ld3Mge1xuICAvKipcbiAgICogU2hvdyBNb3JlIGJ1dHRvbiBpcyBwcmVzc2VkXG4gICAqL1xuICBzaG93TW9yZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+PjtcbiAgLyoqXG4gICAqIFBvcG92ZXIgY2xvc2VkXG4gICAqL1xuICBjbG9zZVBvcG92ZXI6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeE1lbnVBdmF0YXIsXG4gIGlucHV0czogWydib3R0b20nLCAnaTE4bkxvZ291dCcsICdpbWFnZScsICdpbml0aWFscycsICdzaG93TG9nb3V0QnV0dG9uJywgJ3RvcCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbWVudS1hdmF0YXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2JvdHRvbScsICdpMThuTG9nb3V0JywgJ2ltYWdlJywgJ2luaXRpYWxzJywgJ3Nob3dMb2dvdXRCdXR0b24nLCAndG9wJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhNZW51QXZhdGFyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnbG9nb3V0Q2xpY2snXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNZW51QXZhdGFyIGV4dGVuZHMgQ29tcG9uZW50cy5JeE1lbnVBdmF0YXIge1xuICAvKipcbiAgICogTG9nb3V0IGNsaWNrXG4gICAqL1xuICBsb2dvdXRDbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGFueT4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNZW51QXZhdGFySXRlbSxcbiAgaW5wdXRzOiBbJ2ljb24nLCAnbGFiZWwnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1lbnUtYXZhdGFyLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb24nLCAnbGFiZWwnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1lbnVBdmF0YXJJdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnaXRlbUNsaWNrJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4TWVudUF2YXRhckl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkl4TWVudUF2YXRhckl0ZW0ge1xuICAvKipcbiAgICogQXZhdGFyIGRyb3Bkb3duIGl0ZW0gY2xpY2tlZFxuICAgKi9cbiAgaXRlbUNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNZW51Q2F0ZWdvcnksXG4gIGlucHV0czogWydpY29uJywgJ2xhYmVsJywgJ25vdGlmaWNhdGlvbnMnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1lbnUtY2F0ZWdvcnknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2ljb24nLCAnbGFiZWwnLCAnbm90aWZpY2F0aW9ucyddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4TWVudUNhdGVnb3J5IHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNZW51Q2F0ZWdvcnkgZXh0ZW5kcyBDb21wb25lbnRzLkl4TWVudUNhdGVnb3J5IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeE1lbnVJdGVtLFxuICBpbnB1dHM6IFsnYWN0aXZlJywgJ2JvdHRvbScsICdkaXNhYmxlZCcsICdob21lJywgJ2ljb24nLCAnbGFiZWwnLCAnbm90aWZpY2F0aW9ucyddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbWVudS1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhY3RpdmUnLCAnYm90dG9tJywgJ2Rpc2FibGVkJywgJ2hvbWUnLCAnaWNvbicsICdsYWJlbCcsICdub3RpZmljYXRpb25zJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhNZW51SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4TWVudUl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkl4TWVudUl0ZW0ge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TWVudVNldHRpbmdzLFxuICBpbnB1dHM6IFsnYWN0aXZlVGFiTGFiZWwnLCAnbGFiZWwnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1lbnUtc2V0dGluZ3MnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjdGl2ZVRhYkxhYmVsJywgJ2xhYmVsJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhNZW51U2V0dGluZ3Mge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0YWJDaGFuZ2UnLCAnY2xvc2UnXSk7XG4gIH1cbn1cblxuXG5pbXBvcnQgdHlwZSB7IEN1c3RvbUNsb3NlRXZlbnQgYXMgSUl4TWVudVNldHRpbmdzQ3VzdG9tQ2xvc2VFdmVudCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNZW51U2V0dGluZ3MgZXh0ZW5kcyBDb21wb25lbnRzLkl4TWVudVNldHRpbmdzIHtcbiAgLyoqXG4gICAqIEFjdGl2ZSB0YWIgY2hhbmdlZCBAc2luY2UgMy4wLjBcbiAgICovXG4gIHRhYkNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKipcbiAgICogUG9wb3ZlciBjbG9zZWRcbiAgICovXG4gIGNsb3NlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUl4TWVudVNldHRpbmdzQ3VzdG9tQ2xvc2VFdmVudD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNZW51U2V0dGluZ3NJdGVtLFxuICBpbnB1dHM6IFsnbGFiZWwnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1lbnUtc2V0dGluZ3MtaXRlbScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnbGFiZWwnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1lbnVTZXR0aW5nc0l0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydsYWJlbENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgQ3VzdG9tTGFiZWxDaGFuZ2VFdmVudCBhcyBJSXhNZW51U2V0dGluZ3NJdGVtQ3VzdG9tTGFiZWxDaGFuZ2VFdmVudCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMnO1xuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNZW51U2V0dGluZ3NJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5JeE1lbnVTZXR0aW5nc0l0ZW0ge1xuICAvKipcbiAgICogTGFiZWwgY2hhbmdlZFxuICAgKi9cbiAgbGFiZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJSXhNZW51U2V0dGluZ3NJdGVtQ3VzdG9tTGFiZWxDaGFuZ2VFdmVudD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNZXNzYWdlQmFyLFxuICBpbnB1dHM6IFsnZGlzbWlzc2libGUnLCAndHlwZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtbWVzc2FnZS1iYXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc21pc3NpYmxlJywgJ3R5cGUnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1lc3NhZ2VCYXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjbG9zZWRDaGFuZ2UnLCAnY2xvc2VBbmltYXRpb25Db21wbGV0ZWQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNZXNzYWdlQmFyIGV4dGVuZHMgQ29tcG9uZW50cy5JeE1lc3NhZ2VCYXIge1xuICAvKipcbiAgICogQW4gZXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBjbG9zZSBidXR0b24gaXMgY2xpY2tlZFxuICAgKi9cbiAgY2xvc2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG4gIC8qKlxuICAgKiBBbiBldmVudCBlbWl0dGVkIHdoZW4gdGhlIGNsb3NlIGFuaW1hdGlvbiBpcyBjb21wbGV0ZWRcbiAgICovXG4gIGNsb3NlQW5pbWF0aW9uQ29tcGxldGVkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeE1vZGFsLFxuICBpbnB1dHM6IFsnYW5pbWF0aW9uJywgJ2JhY2tkcm9wJywgJ2JlZm9yZURpc21pc3MnLCAnY2VudGVyZWQnLCAnY2xvc2VPbkJhY2tkcm9wQ2xpY2snLCAnY2xvc2VPbkVzY2FwZScsICdzaXplJ10sXG4gIG1ldGhvZHM6IFsnc2hvd01vZGFsJywgJ2Rpc21pc3NNb2RhbCcsICdjbG9zZU1vZGFsJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1tb2RhbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYW5pbWF0aW9uJywgJ2JhY2tkcm9wJywgJ2JlZm9yZURpc21pc3MnLCAnY2VudGVyZWQnLCAnY2xvc2VPbkJhY2tkcm9wQ2xpY2snLCAnY2xvc2VPbkVzY2FwZScsICdzaXplJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhNb2RhbCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2RpYWxvZ0Nsb3NlJywgJ2RpYWxvZ0Rpc21pc3MnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhNb2RhbCBleHRlbmRzIENvbXBvbmVudHMuSXhNb2RhbCB7XG4gIC8qKlxuICAgKiBEaWFsb2cgY2xvc2VcbiAgICovXG4gIGRpYWxvZ0Nsb3NlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG4gIC8qKlxuICAgKiBEaWFsb2cgY2FuY2VsXG4gICAqL1xuICBkaWFsb2dEaXNtaXNzOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8YW55Pj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeE1vZGFsQ29udGVudFxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1vZGFsLWNvbnRlbnQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeE1vZGFsQ29udGVudCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4TW9kYWxDb250ZW50IGV4dGVuZHMgQ29tcG9uZW50cy5JeE1vZGFsQ29udGVudCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhNb2RhbEZvb3RlclxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW1vZGFsLWZvb3RlcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFtdLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4TW9kYWxGb290ZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeE1vZGFsRm9vdGVyIGV4dGVuZHMgQ29tcG9uZW50cy5JeE1vZGFsRm9vdGVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeE1vZGFsSGVhZGVyLFxuICBpbnB1dHM6IFsnaGlkZUNsb3NlJywgJ2ljb24nLCAnaWNvbkNvbG9yJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1tb2RhbC1oZWFkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2hpZGVDbG9zZScsICdpY29uJywgJ2ljb25Db2xvciddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4TW9kYWxIZWFkZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjbG9zZUNsaWNrJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4TW9kYWxIZWFkZXIgZXh0ZW5kcyBDb21wb25lbnRzLkl4TW9kYWxIZWFkZXIge1xuICAvKipcbiAgICogRW1pdHMgd2hlbiBjbG9zZSBpY29uIGlzIGNsaWNrZWQgYW5kIGNsb3NlcyB0aGUgbW9kYWxcbkNhbiBiZSBwcmV2ZW50ZWQsIGluIHdoaWNoIGNhc2Ugb25seSB0aGUgZXZlbnQgaXMgdHJpZ2dlcmVkLCBhbmQgdGhlIG1vZGFsIHJlbWFpbnMgb3BlblxuICAgKi9cbiAgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PE1vdXNlRXZlbnQ+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4TnVtYmVySW5wdXQsXG4gIGlucHV0czogWydhbGxvd2VkQ2hhcmFjdGVyc1BhdHRlcm4nLCAnZGlzYWJsZWQnLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdtYXgnLCAnbWluJywgJ25hbWUnLCAncGF0dGVybicsICdwbGFjZWhvbGRlcicsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaG93U3RlcHBlckJ1dHRvbnMnLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAndmFsaWRUZXh0JywgJ3ZhbHVlJywgJ3dhcm5pbmdUZXh0J10sXG4gIG1ldGhvZHM6IFsnZ2V0TmF0aXZlSW5wdXRFbGVtZW50JywgJ2ZvY3VzSW5wdXQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LW51bWJlci1pbnB1dCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYWxsb3dlZENoYXJhY3RlcnNQYXR0ZXJuJywgJ2Rpc2FibGVkJywgJ2hlbHBlclRleHQnLCAnaW5mb1RleHQnLCAnaW52YWxpZFRleHQnLCAnbGFiZWwnLCAnbWF4JywgJ21pbicsICduYW1lJywgJ3BhdHRlcm4nLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAnc2hvd1N0ZXBwZXJCdXR0b25zJywgJ3Nob3dUZXh0QXNUb29sdGlwJywgJ3ZhbGlkVGV4dCcsICd2YWx1ZScsICd3YXJuaW5nVGV4dCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4TnVtYmVySW5wdXQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd2YWx1ZUNoYW5nZScsICd2YWxpZGl0eVN0YXRlQ2hhbmdlJywgJ2l4Qmx1ciddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeE51bWJlcklucHV0IGV4dGVuZHMgQ29tcG9uZW50cy5JeE51bWJlcklucHV0IHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGlucHV0IGZpZWxkIGNoYW5nZXNcbiAgICovXG4gIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8bnVtYmVyPj47XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHZhbGlkaXR5IHN0YXRlIG9mIHRoZSBpbnB1dCBmaWVsZCBjaGFuZ2VzXG4gICAqL1xuICB2YWxpZGl0eVN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8VmFsaWRpdHlTdGF0ZT4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBpbnB1dCBmaWVsZCBsb3NlcyBmb2N1c1xuICAgKi9cbiAgaXhCbHVyOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhQYWdpbmF0aW9uLFxuICBpbnB1dHM6IFsnYWR2YW5jZWQnLCAnY291bnQnLCAnaTE4bkl0ZW1zJywgJ2kxOG5PZicsICdpMThuUGFnZScsICdpdGVtQ291bnQnLCAnc2VsZWN0ZWRQYWdlJywgJ3Nob3dJdGVtQ291bnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXBhZ2luYXRpb24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FkdmFuY2VkJywgJ2NvdW50JywgJ2kxOG5JdGVtcycsICdpMThuT2YnLCAnaTE4blBhZ2UnLCAnaXRlbUNvdW50JywgJ3NlbGVjdGVkUGFnZScsICdzaG93SXRlbUNvdW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhQYWdpbmF0aW9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsncGFnZVNlbGVjdGVkJywgJ2l0ZW1Db3VudENoYW5nZWQnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhQYWdpbmF0aW9uIGV4dGVuZHMgQ29tcG9uZW50cy5JeFBhZ2luYXRpb24ge1xuICAvKipcbiAgICogUGFnZSBzZWxlY3Rpb24gZXZlbnRcbiAgICovXG4gIHBhZ2VTZWxlY3RlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PG51bWJlcj4+O1xuICAvKipcbiAgICogSXRlbSBjb3VudCBjaGFuZ2UgZXZlbnRcbiAgICovXG4gIGl0ZW1Db3VudENoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxudW1iZXI+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4UGFuZSxcbiAgaW5wdXRzOiBbJ2JvcmRlcmxlc3MnLCAnY29tcG9zaXRpb24nLCAnZXhwYW5kZWQnLCAnaGVhZGluZycsICdoaWRlT25Db2xsYXBzZScsICdpY29uJywgJ3NpemUnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtcGFuZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnYm9yZGVybGVzcycsICdjb21wb3NpdGlvbicsICdleHBhbmRlZCcsICdoZWFkaW5nJywgJ2hpZGVPbkNvbGxhcHNlJywgJ2ljb24nLCAnc2l6ZScsICd2YXJpYW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhQYW5lIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnZXhwYW5kZWRDaGFuZ2VkJywgJ3ZhcmlhbnRDaGFuZ2VkJywgJ2JvcmRlcmxlc3NDaGFuZ2VkJ10pO1xuICB9XG59XG5cblxuaW1wb3J0IHR5cGUgeyBFeHBhbmRlZENoYW5nZWRFdmVudCBhcyBJSXhQYW5lRXhwYW5kZWRDaGFuZ2VkRXZlbnQgfSBmcm9tICdAc2llbWVucy9peC9jb21wb25lbnRzJztcbmltcG9ydCB0eXBlIHsgVmFyaWFudENoYW5nZWRFdmVudCBhcyBJSXhQYW5lVmFyaWFudENoYW5nZWRFdmVudCB9IGZyb20gJ0BzaWVtZW5zL2l4L2NvbXBvbmVudHMnO1xuaW1wb3J0IHR5cGUgeyBCb3JkZXJsZXNzQ2hhbmdlZEV2ZW50IGFzIElJeFBhbmVCb3JkZXJsZXNzQ2hhbmdlZEV2ZW50IH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFBhbmUgZXh0ZW5kcyBDb21wb25lbnRzLkl4UGFuZSB7XG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IGlzIHRyaWdnZXJlZCB3aGVuIHRoZSBwYW5lIGVpdGhlciBleHBhbmRzIG9yIGNvbnRyYWN0c1xuICAgKi9cbiAgZXhwYW5kZWRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUl4UGFuZUV4cGFuZGVkQ2hhbmdlZEV2ZW50Pj47XG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IGlzIHRyaWdnZXJlZCB3aGVuIHRoZSB2YXJpYW50IG9mIHRoZSBwYW5lIGlzIGNoYW5nZWRcbiAgICovXG4gIHZhcmlhbnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUl4UGFuZVZhcmlhbnRDaGFuZ2VkRXZlbnQ+PjtcbiAgLyoqXG4gICAqIFRoaXMgZXZlbnQgaXMgdHJpZ2dlcmVkIHdoZW4gdGhlIHZhcmlhbnQgb2YgdGhlIHBhbmUgaXMgY2hhbmdlZFxuICAgKi9cbiAgYm9yZGVybGVzc0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxJSXhQYW5lQm9yZGVybGVzc0NoYW5nZWRFdmVudD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhQYW5lTGF5b3V0LFxuICBpbnB1dHM6IFsnYm9yZGVybGVzcycsICdsYXlvdXQnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtcGFuZS1sYXlvdXQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2JvcmRlcmxlc3MnLCAnbGF5b3V0JywgJ3ZhcmlhbnQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFBhbmVMYXlvdXQge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFBhbmVMYXlvdXQgZXh0ZW5kcyBDb21wb25lbnRzLkl4UGFuZUxheW91dCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhQaWxsLFxuICBpbnB1dHM6IFsnYWxpZ25MZWZ0JywgJ2JhY2tncm91bmQnLCAnaWNvbicsICdvdXRsaW5lJywgJ3BpbGxDb2xvcicsICd0b29sdGlwVGV4dCcsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1waWxsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhbGlnbkxlZnQnLCAnYmFja2dyb3VuZCcsICdpY29uJywgJ291dGxpbmUnLCAncGlsbENvbG9yJywgJ3Rvb2x0aXBUZXh0JywgJ3ZhcmlhbnQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFBpbGwge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFBpbGwgZXh0ZW5kcyBDb21wb25lbnRzLkl4UGlsbCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhQdXNoQ2FyZCxcbiAgaW5wdXRzOiBbJ2NvbGxhcHNlJywgJ2hlYWRpbmcnLCAnaWNvbicsICdub3RpZmljYXRpb24nLCAnc3ViaGVhZGluZycsICd2YXJpYW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1wdXNoLWNhcmQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvbGxhcHNlJywgJ2hlYWRpbmcnLCAnaWNvbicsICdub3RpZmljYXRpb24nLCAnc3ViaGVhZGluZycsICd2YXJpYW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhQdXNoQ2FyZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4UHVzaENhcmQgZXh0ZW5kcyBDb21wb25lbnRzLkl4UHVzaENhcmQge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4UmFkaW8sXG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2xhYmVsJywgJ25hbWUnLCAndmFsdWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXJhZGlvJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjaGVja2VkJywgJ2Rpc2FibGVkJywgJ2xhYmVsJywgJ25hbWUnLCAndmFsdWUnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFJhZGlvIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnY2hlY2tlZENoYW5nZScsICd2YWx1ZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFJhZGlvIGV4dGVuZHMgQ29tcG9uZW50cy5JeFJhZGlvIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY2hlY2tlZCBzdGF0ZSBvZiB0aGUgcmFkaW8gY2hhbmdlc1xuICAgKi9cbiAgY2hlY2tlZENoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PGJvb2xlYW4+PjtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIHJhZGlvIGNoYW5nZXNcbiAgICovXG4gIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFJhZGlvR3JvdXAsXG4gIGlucHV0czogWydkaXJlY3Rpb24nLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdzaG93VGV4dEFzVG9vbHRpcCcsICd2YWxpZFRleHQnLCAndmFsdWUnLCAnd2FybmluZ1RleHQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXJhZGlvLWdyb3VwJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydkaXJlY3Rpb24nLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdzaG93VGV4dEFzVG9vbHRpcCcsICd2YWxpZFRleHQnLCAndmFsdWUnLCAnd2FybmluZ1RleHQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFJhZGlvR3JvdXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd2YWx1ZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFJhZGlvR3JvdXAgZXh0ZW5kcyBDb21wb25lbnRzLkl4UmFkaW9Hcm91cCB7XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSByYWRpb2J1dHRvbiBncm91cCBjaGFuZ2VzXG4gICAqL1xuICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhSb3dcbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1yb3cnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFJvdyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4Um93IGV4dGVuZHMgQ29tcG9uZW50cy5JeFJvdyB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhTZWxlY3QsXG4gIGlucHV0czogWydhbGxvd0NsZWFyJywgJ2Rpc2FibGVkJywgJ2Ryb3Bkb3duTWF4V2lkdGgnLCAnZHJvcGRvd25XaWR0aCcsICdlZGl0YWJsZScsICdoZWxwZXJUZXh0JywgJ2hpZGVMaXN0SGVhZGVyJywgJ2kxOG5Ob01hdGNoZXMnLCAnaTE4blBsYWNlaG9sZGVyJywgJ2kxOG5QbGFjZWhvbGRlckVkaXRhYmxlJywgJ2kxOG5TZWxlY3RMaXN0SGVhZGVyJywgJ2luZm9UZXh0JywgJ2ludmFsaWRUZXh0JywgJ2xhYmVsJywgJ21vZGUnLCAnbmFtZScsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaG93VGV4dEFzVG9vbHRpcCcsICd2YWxpZFRleHQnLCAndmFsdWUnLCAnd2FybmluZ1RleHQnXSxcbiAgbWV0aG9kczogWydnZXROYXRpdmVJbnB1dEVsZW1lbnQnLCAnZm9jdXNJbnB1dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtc2VsZWN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhbGxvd0NsZWFyJywgJ2Rpc2FibGVkJywgJ2Ryb3Bkb3duTWF4V2lkdGgnLCAnZHJvcGRvd25XaWR0aCcsICdlZGl0YWJsZScsICdoZWxwZXJUZXh0JywgJ2hpZGVMaXN0SGVhZGVyJywgJ2kxOG5Ob01hdGNoZXMnLCAnaTE4blBsYWNlaG9sZGVyJywgJ2kxOG5QbGFjZWhvbGRlckVkaXRhYmxlJywgJ2kxOG5TZWxlY3RMaXN0SGVhZGVyJywgJ2luZm9UZXh0JywgJ2ludmFsaWRUZXh0JywgJ2xhYmVsJywgJ21vZGUnLCAnbmFtZScsICdyZWFkb25seScsICdyZXF1aXJlZCcsICdzaG93VGV4dEFzVG9vbHRpcCcsICd2YWxpZFRleHQnLCAndmFsdWUnLCAnd2FybmluZ1RleHQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFNlbGVjdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3ZhbHVlQ2hhbmdlJywgJ2lucHV0Q2hhbmdlJywgJ2FkZEl0ZW0nLCAnaXhCbHVyJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4U2VsZWN0IGV4dGVuZHMgQ29tcG9uZW50cy5JeFNlbGVjdCB7XG4gIC8qKlxuICAgKiBWYWx1ZSBjaGFuZ2VkIEBzaW5jZSAyLjAuMFxuICAgKi9cbiAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxzdHJpbmcgfCBzdHJpbmdbXT4+O1xuICAvKipcbiAgICogRXZlbnQgZGlzcGF0Y2hlZCB3aGVuZXZlciB0aGUgdGV4dCBpbnB1dCBjaGFuZ2VzLiBAc2luY2UgMi4wLjBcbiAgICovXG4gIGlucHV0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBJdGVtIGFkZGVkIHRvIHNlbGVjdGlvblxuICAgKi9cbiAgYWRkSXRlbTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKipcbiAgICogQmx1ciBpbnB1dFxuICAgKi9cbiAgaXhCbHVyOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhTZWxlY3RJdGVtLFxuICBpbnB1dHM6IFsnbGFiZWwnLCAnc2VsZWN0ZWQnLCAndmFsdWUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXNlbGVjdC1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydsYWJlbCcsICdzZWxlY3RlZCcsICd2YWx1ZSddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4U2VsZWN0SXRlbSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2l0ZW1DbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFNlbGVjdEl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkl4U2VsZWN0SXRlbSB7XG4gIC8qKlxuICAgKiBJdGVtIGNsaWNrZWRcbiAgICovXG4gIGl0ZW1DbGljazogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhTbGlkZXIsXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdlcnJvcicsICdtYXJrZXInLCAnbWF4JywgJ21pbicsICdzdGVwJywgJ3RyYWNlJywgJ3RyYWNlUmVmZXJlbmNlJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC1zbGlkZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2Vycm9yJywgJ21hcmtlcicsICdtYXgnLCAnbWluJywgJ3N0ZXAnLCAndHJhY2UnLCAndHJhY2VSZWZlcmVuY2UnLCAndmFsdWUnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFNsaWRlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3ZhbHVlQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4U2xpZGVyIGV4dGVuZHMgQ29tcG9uZW50cy5JeFNsaWRlciB7XG5cbiAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxudW1iZXI+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4U3Bpbm5lcixcbiAgaW5wdXRzOiBbJ3NpemUnLCAndmFyaWFudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtc3Bpbm5lcicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnc2l6ZScsICd2YXJpYW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhTcGlubmVyIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhTcGlubmVyIGV4dGVuZHMgQ29tcG9uZW50cy5JeFNwaW5uZXIge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4U3BsaXRCdXR0b24sXG4gIGlucHV0czogWydjbG9zZUJlaGF2aW9yJywgJ2Rpc2FibGVkJywgJ2dob3N0JywgJ2ljb24nLCAnbGFiZWwnLCAnb3V0bGluZScsICdwbGFjZW1lbnQnLCAnc3BsaXRJY29uJywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXNwbGl0LWJ1dHRvbicsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2xvc2VCZWhhdmlvcicsICdkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2xhYmVsJywgJ291dGxpbmUnLCAncGxhY2VtZW50JywgJ3NwbGl0SWNvbicsICd2YXJpYW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhTcGxpdEJ1dHRvbiB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2J1dHRvbkNsaWNrJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4U3BsaXRCdXR0b24gZXh0ZW5kcyBDb21wb25lbnRzLkl4U3BsaXRCdXR0b24ge1xuICAvKipcbiAgICogQnV0dG9uIGNsaWNrZWRcbiAgICovXG4gIGJ1dHRvbkNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8TW91c2VFdmVudD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhUYWJJdGVtLFxuICBpbnB1dHM6IFsnY291bnRlcicsICdkaXNhYmxlZCcsICdpY29uJywgJ2xheW91dCcsICdwbGFjZW1lbnQnLCAncm91bmRlZCcsICdzZWxlY3RlZCcsICdzbWFsbCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtdGFiLWl0ZW0nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NvdW50ZXInLCAnZGlzYWJsZWQnLCAnaWNvbicsICdsYXlvdXQnLCAncGxhY2VtZW50JywgJ3JvdW5kZWQnLCAnc2VsZWN0ZWQnLCAnc21hbGwnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFRhYkl0ZW0ge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd0YWJDbGljayddKTtcbiAgfVxufVxuXG5cbmltcG9ydCB0eXBlIHsgVGFiQ2xpY2tEZXRhaWwgYXMgSUl4VGFiSXRlbVRhYkNsaWNrRGV0YWlsIH0gZnJvbSAnQHNpZW1lbnMvaXgvY29tcG9uZW50cyc7XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRhYkl0ZW0gZXh0ZW5kcyBDb21wb25lbnRzLkl4VGFiSXRlbSB7XG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHRhYiBpcyBjbGlja2VkLiBAc2luY2UgMi4wLjBcbiAgICovXG4gIHRhYkNsaWNrOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8SUl4VGFiSXRlbVRhYkNsaWNrRGV0YWlsPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFRhYnMsXG4gIGlucHV0czogWydsYXlvdXQnLCAncGxhY2VtZW50JywgJ3JvdW5kZWQnLCAnc2VsZWN0ZWQnLCAnc21hbGwnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXRhYnMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2xheW91dCcsICdwbGFjZW1lbnQnLCAncm91bmRlZCcsICdzZWxlY3RlZCcsICdzbWFsbCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VGFicyB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3NlbGVjdGVkQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4VGFicyBleHRlbmRzIENvbXBvbmVudHMuSXhUYWJzIHtcbiAgLyoqXG4gICAqIGBzZWxlY3RlZGAgcHJvcGVydHkgY2hhbmdlZCBAc2luY2UgMi4wLjBcbiAgICovXG4gIHNlbGVjdGVkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8bnVtYmVyPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFRleHRhcmVhLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdtYXhMZW5ndGgnLCAnbWluTGVuZ3RoJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAncmVzaXplQmVoYXZpb3InLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAndGV4dGFyZWFDb2xzJywgJ3RleHRhcmVhSGVpZ2h0JywgJ3RleHRhcmVhUm93cycsICd0ZXh0YXJlYVdpZHRoJywgJ3ZhbGlkVGV4dCcsICd2YWx1ZScsICd3YXJuaW5nVGV4dCddLFxuICBtZXRob2RzOiBbJ2dldE5hdGl2ZUlucHV0RWxlbWVudCcsICdmb2N1c0lucHV0J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC10ZXh0YXJlYScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnaGVscGVyVGV4dCcsICdpbmZvVGV4dCcsICdpbnZhbGlkVGV4dCcsICdsYWJlbCcsICdtYXhMZW5ndGgnLCAnbWluTGVuZ3RoJywgJ25hbWUnLCAncGxhY2Vob2xkZXInLCAncmVhZG9ubHknLCAncmVxdWlyZWQnLCAncmVzaXplQmVoYXZpb3InLCAnc2hvd1RleHRBc1Rvb2x0aXAnLCAndGV4dGFyZWFDb2xzJywgJ3RleHRhcmVhSGVpZ2h0JywgJ3RleHRhcmVhUm93cycsICd0ZXh0YXJlYVdpZHRoJywgJ3ZhbGlkVGV4dCcsICd2YWx1ZScsICd3YXJuaW5nVGV4dCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VGV4dGFyZWEge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWyd2YWx1ZUNoYW5nZScsICd2YWxpZGl0eVN0YXRlQ2hhbmdlJywgJ2l4Qmx1ciddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRleHRhcmVhIGV4dGVuZHMgQ29tcG9uZW50cy5JeFRleHRhcmVhIHtcbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIHRleHRhcmVhIGZpZWxkIGNoYW5nZXMuXG4gICAqL1xuICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSB2YWxpZGl0eSBzdGF0ZSBvZiB0aGUgdGV4dGFyZWEgZmllbGQgY2hhbmdlcy5cbiAgICovXG4gIHZhbGlkaXR5U3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxWYWxpZGl0eVN0YXRlPj47XG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHRleHRhcmVhIGZpZWxkIGxvc2VzIGZvY3VzLlxuICAgKi9cbiAgaXhCbHVyOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhUaWxlLFxuICBpbnB1dHM6IFsnc2l6ZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtdGlsZScsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnc2l6ZSddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VGlsZSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4VGlsZSBleHRlbmRzIENvbXBvbmVudHMuSXhUaWxlIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFRpbWVQaWNrZXIsXG4gIGlucHV0czogWydjb3JuZXJzJywgJ2Zvcm1hdCcsICdzaG93SG91cicsICdzaG93TWludXRlcycsICdzaG93U2Vjb25kcycsICdzdGFuZGFsb25lQXBwZWFyYW5jZScsICd0ZXh0U2VsZWN0VGltZScsICd0ZXh0VGltZScsICd0aW1lJywgJ3RpbWVSZWZlcmVuY2UnXSxcbiAgbWV0aG9kczogWydnZXRDdXJyZW50VGltZSddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtdGltZS1waWNrZXInLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Nvcm5lcnMnLCAnZm9ybWF0JywgJ3Nob3dIb3VyJywgJ3Nob3dNaW51dGVzJywgJ3Nob3dTZWNvbmRzJywgJ3N0YW5kYWxvbmVBcHBlYXJhbmNlJywgJ3RleHRTZWxlY3RUaW1lJywgJ3RleHRUaW1lJywgJ3RpbWUnLCAndGltZVJlZmVyZW5jZSddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VGltZVBpY2tlciB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ3RpbWVTZWxlY3QnLCAndGltZUNoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRpbWVQaWNrZXIgZXh0ZW5kcyBDb21wb25lbnRzLkl4VGltZVBpY2tlciB7XG4gIC8qKlxuICAgKiBUaW1lIGV2ZW50XG4gICAqL1xuICB0aW1lU2VsZWN0OiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8c3RyaW5nPj47XG4gIC8qKlxuICAgKiBUaW1lIGNoYW5nZSBldmVudFxuICAgKi9cbiAgdGltZUNoYW5nZTogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PHN0cmluZz4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhUb2FzdCxcbiAgaW5wdXRzOiBbJ2F1dG9DbG9zZScsICdhdXRvQ2xvc2VEZWxheScsICdpY29uJywgJ2ljb25Db2xvcicsICd0b2FzdFRpdGxlJywgJ3R5cGUnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXRvYXN0JyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydhdXRvQ2xvc2UnLCAnYXV0b0Nsb3NlRGVsYXknLCAnaWNvbicsICdpY29uQ29sb3InLCAndG9hc3RUaXRsZScsICd0eXBlJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhUb2FzdCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2Nsb3NlVG9hc3QnXSk7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhUb2FzdCBleHRlbmRzIENvbXBvbmVudHMuSXhUb2FzdCB7XG4gIC8qKlxuICAgKiBUb2FzdCBjbG9zZWRcbiAgICovXG4gIGNsb3NlVG9hc3Q6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxhbnk+Pjtcbn1cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4VG9hc3RDb250YWluZXIsXG4gIGlucHV0czogWydjb250YWluZXJDbGFzcycsICdjb250YWluZXJJZCcsICdwb3NpdGlvbiddLFxuICBtZXRob2RzOiBbJ3Nob3dUb2FzdCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtdG9hc3QtY29udGFpbmVyJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb250YWluZXJDbGFzcycsICdjb250YWluZXJJZCcsICdwb3NpdGlvbiddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VG9hc3RDb250YWluZXIge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRvYXN0Q29udGFpbmVyIGV4dGVuZHMgQ29tcG9uZW50cy5JeFRvYXN0Q29udGFpbmVyIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFRvZ2dsZSxcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaGlkZVRleHQnLCAnaW5kZXRlcm1pbmF0ZScsICduYW1lJywgJ3JlcXVpcmVkJywgJ3RleHRJbmRldGVybWluYXRlJywgJ3RleHRPZmYnLCAndGV4dE9uJywgJ3ZhbHVlJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC10b2dnbGUnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NoZWNrZWQnLCAnZGlzYWJsZWQnLCAnaGlkZVRleHQnLCAnaW5kZXRlcm1pbmF0ZScsICduYW1lJywgJ3JlcXVpcmVkJywgJ3RleHRJbmRldGVybWluYXRlJywgJ3RleHRPZmYnLCAndGV4dE9uJywgJ3ZhbHVlJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhUb2dnbGUge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgICBwcm94eU91dHB1dHModGhpcywgdGhpcy5lbCwgWydjaGVja2VkQ2hhbmdlJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4VG9nZ2xlIGV4dGVuZHMgQ29tcG9uZW50cy5JeFRvZ2dsZSB7XG4gIC8qKlxuICAgKiBBbiBldmVudCB3aWxsIGJlIGRpc3BhdGNoZWQgZWFjaCB0aW1lIHRoZSBzbGlkZS10b2dnbGUgY2hhbmdlcyBpdHMgdmFsdWUuXG4gICAqL1xuICBjaGVja2VkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8Ym9vbGVhbj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhUb2dnbGVCdXR0b24sXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdnaG9zdCcsICdpY29uJywgJ2xvYWRpbmcnLCAnb3V0bGluZScsICdwcmVzc2VkJywgJ3ZhcmlhbnQnXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXRvZ2dsZS1idXR0b24nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ2dob3N0JywgJ2ljb24nLCAnbG9hZGluZycsICdvdXRsaW5lJywgJ3ByZXNzZWQnLCAndmFyaWFudCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VG9nZ2xlQnV0dG9uIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsncHJlc3NlZENoYW5nZSddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRvZ2dsZUJ1dHRvbiBleHRlbmRzIENvbXBvbmVudHMuSXhUb2dnbGVCdXR0b24ge1xuICAvKipcbiAgICogUHJlc3NlZCBjaGFuZ2UgZXZlbnRcbiAgICovXG4gIHByZXNzZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxib29sZWFuPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFRvb2x0aXAsXG4gIGlucHV0czogWydmb3InLCAnaW50ZXJhY3RpdmUnLCAncGxhY2VtZW50JywgJ3RpdGxlQ29udGVudCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtdG9vbHRpcCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnZm9yJywgJ2ludGVyYWN0aXZlJywgJ3BsYWNlbWVudCcsICd0aXRsZUNvbnRlbnQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFRvb2x0aXAge1xuICBwcm90ZWN0ZWQgZWw6IEhUTUxFbGVtZW50O1xuICBjb25zdHJ1Y3RvcihjOiBDaGFuZ2VEZXRlY3RvclJlZiwgcjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIHo6IE5nWm9uZSkge1xuICAgIGMuZGV0YWNoKCk7XG4gICAgdGhpcy5lbCA9IHIubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRvb2x0aXAgZXh0ZW5kcyBDb21wb25lbnRzLkl4VG9vbHRpcCB7fVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhUcmVlSXRlbSxcbiAgaW5wdXRzOiBbJ2NvbnRleHQnLCAnaGFzQ2hpbGRyZW4nLCAndGV4dCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtdHJlZS1pdGVtJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHRlbXBsYXRlOiAnPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PicsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXRzLW1ldGFkYXRhLXByb3BlcnR5XG4gIGlucHV0czogWydjb250ZXh0JywgJ2hhc0NoaWxkcmVuJywgJ3RleHQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFRyZWVJdGVtIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsndG9nZ2xlJywgJ2l0ZW1DbGljayddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFRyZWVJdGVtIGV4dGVuZHMgQ29tcG9uZW50cy5JeFRyZWVJdGVtIHtcbiAgLyoqXG4gICAqIEV4cGFuZC9Db2xsYXBzZWQgdG9nZ2xlZFxuICAgKi9cbiAgdG9nZ2xlOiBFdmVudEVtaXR0ZXI8Q3VzdG9tRXZlbnQ8dm9pZD4+O1xuICAvKipcbiAgICogQ2xpY2sgb24gaXRlbSBub3Qgb24gdGhlIGV4cGFuZC9jb2xsYXBzZSBpY29uXG4gICAqL1xuICBpdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDx2b2lkPj47XG59XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFR5cG9ncmFwaHksXG4gIGlucHV0czogWydib2xkJywgJ2Zvcm1hdCcsICd0ZXh0Q29sb3InLCAndGV4dERlY29yYXRpb24nXVxufSlcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2l4LXR5cG9ncmFwaHknLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2JvbGQnLCAnZm9ybWF0JywgJ3RleHRDb2xvcicsICd0ZXh0RGVjb3JhdGlvbiddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4VHlwb2dyYXBoeSB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4VHlwb2dyYXBoeSBleHRlbmRzIENvbXBvbmVudHMuSXhUeXBvZ3JhcGh5IHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFVwbG9hZCxcbiAgaW5wdXRzOiBbJ2FjY2VwdCcsICdkaXNhYmxlZCcsICdpMThuVXBsb2FkRGlzYWJsZWQnLCAnaTE4blVwbG9hZEZpbGUnLCAnbG9hZGluZ1RleHQnLCAnbXVsdGlsaW5lJywgJ211bHRpcGxlJywgJ3NlbGVjdEZpbGVUZXh0JywgJ3N0YXRlJywgJ3VwbG9hZEZhaWxlZFRleHQnLCAndXBsb2FkU3VjY2Vzc1RleHQnXSxcbiAgbWV0aG9kczogWydzZXRGaWxlc1RvVXBsb2FkJ11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC11cGxvYWQnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2FjY2VwdCcsICdkaXNhYmxlZCcsICdpMThuVXBsb2FkRGlzYWJsZWQnLCAnaTE4blVwbG9hZEZpbGUnLCAnbG9hZGluZ1RleHQnLCAnbXVsdGlsaW5lJywgJ211bHRpcGxlJywgJ3NlbGVjdEZpbGVUZXh0JywgJ3N0YXRlJywgJ3VwbG9hZEZhaWxlZFRleHQnLCAndXBsb2FkU3VjY2Vzc1RleHQnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBJeFVwbG9hZCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICAgIHByb3h5T3V0cHV0cyh0aGlzLCB0aGlzLmVsLCBbJ2ZpbGVzQ2hhbmdlZCddKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJeFVwbG9hZCBleHRlbmRzIENvbXBvbmVudHMuSXhVcGxvYWQge1xuICAvKipcbiAgICogWW91IGdldCBhbiBhcnJheSBvZiBGaWxlcyBhZnRlciBkcm9wLWFjdGlvbiBvciBicm93c2UgYWN0aW9uIGlzIGZpbmlzaGVkXG4gICAqL1xuICBmaWxlc0NoYW5nZWQ6IEV2ZW50RW1pdHRlcjxDdXN0b21FdmVudDxBcnJheTxGaWxlPj4+O1xufVxuXG5cbkBQcm94eUNtcCh7XG4gIGRlZmluZUN1c3RvbUVsZW1lbnRGbjogZGVmaW5lSXhWYWxpZGF0aW9uVG9vbHRpcCxcbiAgaW5wdXRzOiBbJ21lc3NhZ2UnLCAncGxhY2VtZW50JywgJ3N1cHByZXNzQXV0b21hdGljUGxhY2VtZW50J11cbn0pXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpeC12YWxpZGF0aW9uLXRvb2x0aXAnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ21lc3NhZ2UnLCAncGxhY2VtZW50JywgJ3N1cHByZXNzQXV0b21hdGljUGxhY2VtZW50J10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhWYWxpZGF0aW9uVG9vbHRpcCB7XG4gIHByb3RlY3RlZCBlbDogSFRNTEVsZW1lbnQ7XG4gIGNvbnN0cnVjdG9yKGM6IENoYW5nZURldGVjdG9yUmVmLCByOiBFbGVtZW50UmVmLCBwcm90ZWN0ZWQgejogTmdab25lKSB7XG4gICAgYy5kZXRhY2goKTtcbiAgICB0aGlzLmVsID0gci5uYXRpdmVFbGVtZW50O1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4VmFsaWRhdGlvblRvb2x0aXAgZXh0ZW5kcyBDb21wb25lbnRzLkl4VmFsaWRhdGlvblRvb2x0aXAge31cblxuXG5AUHJveHlDbXAoe1xuICBkZWZpbmVDdXN0b21FbGVtZW50Rm46IGRlZmluZUl4V29ya2Zsb3dTdGVwLFxuICBpbnB1dHM6IFsnY2xpY2thYmxlJywgJ2Rpc2FibGVkJywgJ3NlbGVjdGVkJywgJ3N0YXR1cycsICd2ZXJ0aWNhbCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtd29ya2Zsb3ctc3RlcCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0cy1tZXRhZGF0YS1wcm9wZXJ0eVxuICBpbnB1dHM6IFsnY2xpY2thYmxlJywgJ2Rpc2FibGVkJywgJ3NlbGVjdGVkJywgJ3N0YXR1cycsICd2ZXJ0aWNhbCddLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEl4V29ya2Zsb3dTdGVwIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cblxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgSXhXb3JrZmxvd1N0ZXAgZXh0ZW5kcyBDb21wb25lbnRzLkl4V29ya2Zsb3dTdGVwIHt9XG5cblxuQFByb3h5Q21wKHtcbiAgZGVmaW5lQ3VzdG9tRWxlbWVudEZuOiBkZWZpbmVJeFdvcmtmbG93U3RlcHMsXG4gIGlucHV0czogWydjbGlja2FibGUnLCAnc2VsZWN0ZWRJbmRleCcsICd2ZXJ0aWNhbCddXG59KVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXgtd29ya2Zsb3ctc3RlcHMnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgaW5wdXRzOiBbJ2NsaWNrYWJsZScsICdzZWxlY3RlZEluZGV4JywgJ3ZlcnRpY2FsJ10sXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgSXhXb3JrZmxvd1N0ZXBzIHtcbiAgcHJvdGVjdGVkIGVsOiBIVE1MRWxlbWVudDtcbiAgY29uc3RydWN0b3IoYzogQ2hhbmdlRGV0ZWN0b3JSZWYsIHI6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCB6OiBOZ1pvbmUpIHtcbiAgICBjLmRldGFjaCgpO1xuICAgIHRoaXMuZWwgPSByLm5hdGl2ZUVsZW1lbnQ7XG4gICAgcHJveHlPdXRwdXRzKHRoaXMsIHRoaXMuZWwsIFsnc3RlcFNlbGVjdGVkJ10pO1xuICB9XG59XG5cblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEl4V29ya2Zsb3dTdGVwcyBleHRlbmRzIENvbXBvbmVudHMuSXhXb3JrZmxvd1N0ZXBzIHtcbiAgLyoqXG4gICAqIE9uIHN0ZXAgc2VsZWN0ZWQgZXZlbnRcbiAgICovXG4gIHN0ZXBTZWxlY3RlZDogRXZlbnRFbWl0dGVyPEN1c3RvbUV2ZW50PG51bWJlcj4+O1xufVxuXG5cbiJdfQ==
|