@ng-nest/ui 14.0.7 → 14.0.8
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/avatar/avatar-group.component.d.ts +8 -0
- package/avatar/avatar.component.d.ts +15 -4
- package/avatar/avatar.module.d.ts +5 -4
- package/avatar/avatar.property.d.ts +31 -3
- package/avatar/examples/en_US/default/badge/README.md +6 -0
- package/avatar/examples/en_US/default/group/README.md +6 -0
- package/avatar/examples/en_US/default/label/README.md +6 -0
- package/avatar/examples/en_US/default/response/README.md +6 -0
- package/avatar/examples/zh_CN/default/badge/README.md +6 -0
- package/avatar/examples/zh_CN/default/group/README.md +6 -0
- package/avatar/examples/zh_CN/default/label/README.md +6 -0
- package/avatar/examples/zh_CN/default/response/README.md +6 -0
- package/avatar/public-api.d.ts +1 -0
- package/badge/badge.component.d.ts +4 -1
- package/badge/badge.property.d.ts +6 -1
- package/badge/examples/en_US/default/animation/README.md +4 -0
- package/badge/examples/en_US/default/standalone/README.md +6 -0
- package/badge/examples/zh_CN/default/animation/README.md +4 -0
- package/badge/examples/zh_CN/default/standalone/README.md +6 -0
- package/calendar/calendar.property.d.ts +2 -1
- package/core/animation/badge.d.ts +1 -0
- package/core/config/config.d.ts +26 -0
- package/core/interfaces/identify.type.d.ts +2 -0
- package/core/interfaces/layout.type.d.ts +15 -0
- package/esm2020/avatar/avatar-group.component.mjs +19 -0
- package/esm2020/avatar/avatar.component.mjs +91 -11
- package/esm2020/avatar/avatar.module.mjs +6 -5
- package/esm2020/avatar/avatar.property.mjs +31 -3
- package/esm2020/avatar/public-api.mjs +2 -1
- package/esm2020/badge/badge.component.mjs +24 -8
- package/esm2020/badge/badge.property.mjs +7 -2
- package/esm2020/calendar/calendar.property.mjs +1 -1
- package/esm2020/core/animation/badge.mjs +17 -1
- package/esm2020/core/config/config.mjs +1 -1
- package/esm2020/core/interfaces/identify.type.mjs +1 -1
- package/esm2020/core/interfaces/layout.type.mjs +1 -1
- package/esm2020/form/form.component.mjs +3 -3
- package/esm2020/i18n/i18n.property.mjs +1 -1
- package/esm2020/i18n/languages/en_US.mjs +5 -1
- package/esm2020/i18n/languages/zh_CN.mjs +5 -1
- package/esm2020/i18n/languages/zh_TW.mjs +5 -1
- package/esm2020/image/image-group.component.mjs +2 -2
- package/esm2020/image/image.component.mjs +13 -5
- package/esm2020/image/image.module.mjs +5 -4
- package/esm2020/image/image.property.mjs +22 -3
- package/esm2020/index.mjs +3 -1
- package/esm2020/keyword/keyword.directive.mjs +66 -0
- package/esm2020/keyword/keyword.module.mjs +19 -0
- package/esm2020/keyword/keyword.property.mjs +41 -0
- package/esm2020/keyword/ng-nest-ui-keyword.mjs +5 -0
- package/esm2020/keyword/public-api.mjs +4 -0
- package/esm2020/list/list-option.component.mjs +4 -4
- package/esm2020/list/list.component.mjs +4 -4
- package/esm2020/list/list.module.mjs +8 -4
- package/esm2020/list/list.property.mjs +19 -3
- package/esm2020/select/select-portal.component.mjs +6 -3
- package/esm2020/select/select.component.mjs +31 -23
- package/esm2020/select/select.property.mjs +8 -2
- package/esm2020/table/table.component.mjs +4 -4
- package/esm2020/tree/tree-node.component.mjs +52 -27
- package/esm2020/tree/tree.component.mjs +173 -58
- package/esm2020/tree/tree.module.mjs +5 -4
- package/esm2020/tree/tree.property.mjs +38 -2
- package/esm2020/tree-select/ng-nest-ui-tree-select.mjs +5 -0
- package/esm2020/tree-select/public-api.mjs +5 -0
- package/esm2020/tree-select/tree-select-portal.component.mjs +110 -0
- package/esm2020/tree-select/tree-select.component.mjs +632 -0
- package/esm2020/tree-select/tree-select.module.mjs +65 -0
- package/esm2020/tree-select/tree-select.property.mjs +153 -0
- package/esm2020/upload/upload.component.mjs +9 -6
- package/esm2020/upload/upload.module.mjs +12 -4
- package/esm2020/upload/upload.property.mjs +10 -3
- package/fesm2015/ng-nest-ui-avatar.mjs +143 -17
- package/fesm2015/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-badge.mjs +29 -8
- package/fesm2015/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-core.mjs +17 -1
- package/fesm2015/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-form.mjs +2 -2
- package/fesm2015/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-i18n.mjs +12 -0
- package/fesm2015/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-image.mjs +39 -11
- package/fesm2015/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-keyword.mjs +125 -0
- package/fesm2015/ng-nest-ui-keyword.mjs.map +1 -0
- package/fesm2015/ng-nest-ui-list.mjs +32 -12
- package/fesm2015/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-select.mjs +42 -25
- package/fesm2015/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-table.mjs +3 -3
- package/fesm2015/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-tree-select.mjs +951 -0
- package/fesm2015/ng-nest-ui-tree-select.mjs.map +1 -0
- package/fesm2015/ng-nest-ui-tree.mjs +271 -94
- package/fesm2015/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2015/ng-nest-ui-upload.mjs +28 -10
- package/fesm2015/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2015/ng-nest-ui.mjs +2 -0
- package/fesm2015/ng-nest-ui.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-avatar.mjs +140 -17
- package/fesm2020/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-badge.mjs +29 -8
- package/fesm2020/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-core.mjs +17 -1
- package/fesm2020/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-form.mjs +2 -2
- package/fesm2020/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-i18n.mjs +12 -0
- package/fesm2020/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-image.mjs +39 -11
- package/fesm2020/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-keyword.mjs +125 -0
- package/fesm2020/ng-nest-ui-keyword.mjs.map +1 -0
- package/fesm2020/ng-nest-ui-list.mjs +32 -12
- package/fesm2020/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-select.mjs +42 -25
- package/fesm2020/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-table.mjs +3 -3
- package/fesm2020/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-tree-select.mjs +946 -0
- package/fesm2020/ng-nest-ui-tree-select.mjs.map +1 -0
- package/fesm2020/ng-nest-ui-tree.mjs +267 -91
- package/fesm2020/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2020/ng-nest-ui-upload.mjs +28 -10
- package/fesm2020/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2020/ng-nest-ui.mjs +2 -0
- package/fesm2020/ng-nest-ui.mjs.map +1 -1
- package/i18n/i18n.property.d.ts +5 -0
- package/i18n/languages/en_US.d.ts +4 -0
- package/i18n/languages/zh_CN.d.ts +4 -0
- package/i18n/languages/zh_TW.d.ts +4 -0
- package/image/image.component.d.ts +2 -2
- package/image/image.module.d.ts +3 -2
- package/image/image.property.d.ts +23 -7
- package/index.d.ts +2 -0
- package/keyword/index.d.ts +5 -0
- package/keyword/keyword.directive.d.ts +19 -0
- package/keyword/keyword.module.d.ts +9 -0
- package/keyword/keyword.property.d.ts +40 -0
- package/keyword/public-api.d.ts +3 -0
- package/list/list-option.component.d.ts +0 -1
- package/list/list.module.d.ts +2 -1
- package/list/list.property.d.ts +22 -2
- package/package.json +17 -1
- package/select/examples/en_US/default/default/README.md +1 -2
- package/select/examples/zh_CN/default/default/README.md +1 -2
- package/select/select-portal.component.d.ts +5 -1
- package/select/select.component.d.ts +2 -2
- package/select/select.property.d.ts +6 -1
- package/style/core/index.css +29 -0
- package/style/core/index.css.map +1 -1
- package/style/directives/index.scss +1 -0
- package/style/directives/keyword/index.scss +6 -0
- package/style/directives/keyword/mixin.scss +24 -0
- package/style/directives/keyword/param.scss +3 -0
- package/tree/tree-node.component.d.ts +4 -4
- package/tree/tree.component.d.ts +13 -1
- package/tree/tree.module.d.ts +2 -1
- package/tree/tree.property.d.ts +44 -14
- package/tree-select/examples/en_US/default/README.md +4 -0
- package/tree-select/examples/en_US/default/async/README.md +6 -0
- package/tree-select/examples/en_US/default/bordered/README.md +6 -0
- package/tree-select/examples/en_US/default/custom/README.md +6 -0
- package/tree-select/examples/en_US/default/default/README.md +6 -0
- package/tree-select/examples/en_US/default/disabled/README.md +6 -0
- package/tree-select/examples/en_US/default/label/README.md +6 -0
- package/tree-select/examples/en_US/default/multiple/README.md +6 -0
- package/tree-select/examples/en_US/default/path/README.md +6 -0
- package/tree-select/examples/en_US/default/required/README.md +6 -0
- package/tree-select/examples/en_US/default/scroll/README.md +6 -0
- package/tree-select/examples/en_US/default/search/README.md +7 -0
- package/tree-select/examples/en_US/default/size/README.md +6 -0
- package/tree-select/examples/zh_CN/default/README.md +4 -0
- package/tree-select/examples/zh_CN/default/async/README.md +6 -0
- package/tree-select/examples/zh_CN/default/bordered/README.md +6 -0
- package/tree-select/examples/zh_CN/default/custom/README.md +6 -0
- package/tree-select/examples/zh_CN/default/default/README.md +6 -0
- package/tree-select/examples/zh_CN/default/disabled/README.md +6 -0
- package/tree-select/examples/zh_CN/default/label/README.md +6 -0
- package/tree-select/examples/zh_CN/default/multiple/README.md +6 -0
- package/tree-select/examples/zh_CN/default/path/README.md +6 -0
- package/tree-select/examples/zh_CN/default/required/README.md +6 -0
- package/tree-select/examples/zh_CN/default/scroll/README.md +6 -0
- package/tree-select/examples/zh_CN/default/search/README.md +7 -0
- package/tree-select/examples/zh_CN/default/size/README.md +6 -0
- package/tree-select/index.d.ts +5 -0
- package/tree-select/public-api.d.ts +4 -0
- package/tree-select/tree-select-portal.component.d.ts +62 -0
- package/tree-select/tree-select.component.d.ts +101 -0
- package/tree-select/tree-select.module.d.ts +20 -0
- package/tree-select/tree-select.property.d.ts +202 -0
- package/upload/upload.component.d.ts +1 -1
- package/upload/upload.module.d.ts +3 -1
- package/upload/upload.property.d.ts +13 -3
|
@@ -80,10 +80,20 @@ export class XTreeProperty extends XProperty {
|
|
|
80
80
|
* @en_US Parameter control request change event
|
|
81
81
|
*/
|
|
82
82
|
this.manualChange = new EventEmitter();
|
|
83
|
+
/**
|
|
84
|
+
* @zh_CN 节点点击事件
|
|
85
|
+
* @en_US Node click event
|
|
86
|
+
*/
|
|
87
|
+
this.nodeClick = new EventEmitter();
|
|
88
|
+
/**
|
|
89
|
+
* @zh_CN 节点点击事件
|
|
90
|
+
* @en_US Node click event
|
|
91
|
+
*/
|
|
92
|
+
this.activatedIdChange = new EventEmitter();
|
|
83
93
|
}
|
|
84
94
|
}
|
|
85
95
|
/** @nocollapse */ XTreeProperty.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeProperty, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
-
/** @nocollapse */ XTreeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XTreeProperty, selector: "ng-component", inputs: { data: "data", checkbox: "checkbox", lazy: "lazy", activatedId: "activatedId", expanded: "expanded", checked: "checked", expandedAll: "expandedAll", expandedLevel: "expandedLevel", nodeOpen: "nodeOpen", spacing: "spacing", labelTpl: "labelTpl", nodeHeight: "nodeHeight", allowManyActivated: "allowManyActivated", manual: "manual", levelCheck: "levelCheck", nodeNowrap: "nodeNowrap", nodeAlignItems: "nodeAlignItems", actions: "actions", virtualScroll: "virtualScroll", virtualScrollHeight: "virtualScrollHeight", itemSize: "itemSize", minBufferPx: "minBufferPx", maxBufferPx: "maxBufferPx" }, outputs: { activatedChange: "activatedChange", checkboxChange: "checkboxChange", manualChange: "manualChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
96
|
+
/** @nocollapse */ XTreeProperty.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XTreeProperty, selector: "ng-component", inputs: { data: "data", checkbox: "checkbox", lazy: "lazy", activatedId: "activatedId", expanded: "expanded", checked: "checked", expandedAll: "expandedAll", expandedLevel: "expandedLevel", nodeOpen: "nodeOpen", spacing: "spacing", labelTpl: "labelTpl", nodeHeight: "nodeHeight", allowManyActivated: "allowManyActivated", manual: "manual", levelCheck: "levelCheck", nodeNowrap: "nodeNowrap", nodeAlignItems: "nodeAlignItems", actions: "actions", scrollElement: "scrollElement", virtualScroll: "virtualScroll", virtualScrollHeight: "virtualScrollHeight", heightAdaption: "heightAdaption", itemSize: "itemSize", minBufferPx: "minBufferPx", maxBufferPx: "maxBufferPx", multiple: "multiple", objectArray: "objectArray", keywordText: "keywordText", caseSensitive: "caseSensitive" }, outputs: { activatedChange: "activatedChange", checkboxChange: "checkboxChange", manualChange: "manualChange", nodeClick: "nodeClick", activatedIdChange: "activatedIdChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
87
97
|
__decorate([
|
|
88
98
|
XDataConvert()
|
|
89
99
|
], XTreeProperty.prototype, "data", void 0);
|
|
@@ -137,6 +147,16 @@ __decorate([
|
|
|
137
147
|
XWithConfig(X_CONFIG_NAME, 26),
|
|
138
148
|
XInputNumber()
|
|
139
149
|
], XTreeProperty.prototype, "itemSize", void 0);
|
|
150
|
+
__decorate([
|
|
151
|
+
XInputBoolean()
|
|
152
|
+
], XTreeProperty.prototype, "multiple", void 0);
|
|
153
|
+
__decorate([
|
|
154
|
+
XInputBoolean()
|
|
155
|
+
], XTreeProperty.prototype, "objectArray", void 0);
|
|
156
|
+
__decorate([
|
|
157
|
+
XInputBoolean(),
|
|
158
|
+
XWithConfig(X_CONFIG_NAME, true)
|
|
159
|
+
], XTreeProperty.prototype, "caseSensitive", void 0);
|
|
140
160
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeProperty, decorators: [{
|
|
141
161
|
type: Component,
|
|
142
162
|
args: [{ template: '' }]
|
|
@@ -180,18 +200,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
180
200
|
type: Input
|
|
181
201
|
}], actions: [{
|
|
182
202
|
type: Input
|
|
203
|
+
}], scrollElement: [{
|
|
204
|
+
type: Input
|
|
183
205
|
}], virtualScroll: [{
|
|
184
206
|
type: Input
|
|
185
207
|
}], virtualScrollHeight: [{
|
|
186
208
|
type: Input
|
|
209
|
+
}], heightAdaption: [{
|
|
210
|
+
type: Input
|
|
187
211
|
}], itemSize: [{
|
|
188
212
|
type: Input
|
|
189
213
|
}], minBufferPx: [{
|
|
190
214
|
type: Input
|
|
191
215
|
}], maxBufferPx: [{
|
|
192
216
|
type: Input
|
|
217
|
+
}], multiple: [{
|
|
218
|
+
type: Input
|
|
219
|
+
}], objectArray: [{
|
|
220
|
+
type: Input
|
|
221
|
+
}], keywordText: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}], caseSensitive: [{
|
|
224
|
+
type: Input
|
|
193
225
|
}], manualChange: [{
|
|
194
226
|
type: Output
|
|
227
|
+
}], nodeClick: [{
|
|
228
|
+
type: Output
|
|
229
|
+
}], activatedIdChange: [{
|
|
230
|
+
type: Output
|
|
195
231
|
}] } });
|
|
196
232
|
/**
|
|
197
233
|
* TreeNode
|
|
@@ -256,4 +292,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
256
292
|
}], virtualScroll: [{
|
|
257
293
|
type: Input
|
|
258
294
|
}] } });
|
|
259
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5wcm9wZXJ0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixTQUFTLEVBRVQsYUFBYSxFQUliLFlBQVksRUFFWixXQUFXLEVBRVosTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsS0FBSyxFQUFlLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVwRjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQztBQUNwQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUM7QUFFN0I7O0dBRUc7QUFFSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFNBQVM7SUFENUM7O1FBRUU7OztXQUdHO1FBQ3NCLFNBQUksR0FBcUIsRUFBRSxDQUFDO1FBZ0JyRDs7O1dBR0c7UUFDTSxhQUFRLEdBQVUsRUFBRSxDQUFDO1FBQzlCOzs7V0FHRztRQUNNLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFNN0I7OztXQUdHO1FBQ3NCLGtCQUFhLEdBQVksQ0FBQyxDQUFDLENBQUM7UUEwQnJEOzs7V0FHRztRQUNPLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUMxRDs7O1dBR0c7UUFDTyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFDekQ7OztXQUdHO1FBQ3VCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDakQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFDdEQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFNdEQ7OztXQUdHO1FBQ00sWUFBTyxHQUFrQixFQUFFLENBQUM7UUFnQnJDOzs7V0FHRztRQUNNLGdCQUFXLEdBQVcsR0FBRyxDQUFDO1FBQ25DOzs7V0FH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YUFBYSxFQUFFO3dEQUEwQjsyRkF4Q3hDLGlCQUFpQjtrQkFEN0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7OEJBTWhCLElBQUk7c0JBQVosS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS29CLElBQUk7c0JBQTdCLEtBQUs7Z0JBS21CLFVBQVU7c0JBQWxDLEtBQUs7Z0JBS29CLFVBQVU7c0JBQW5DLEtBQUs7Z0JBS0csY0FBYztzQkFBdEIsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtvQixhQUFhO3NCQUF0QyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBYRGF0YUNvbnZlcnQsXHJcbiAgWFByb3BlcnR5LFxyXG4gIFhEYXRhLFxyXG4gIFhJbnB1dEJvb2xlYW4sXHJcbiAgWFBhcmVudElkZW50aXR5UHJvcGVydHksXHJcbiAgWE51bWJlcixcclxuICBYQm9vbGVhbixcclxuICBYSW5wdXROdW1iZXIsXHJcbiAgWElkZW50aXR5UHJvcGVydHksXHJcbiAgWFdpdGhDb25maWcsXHJcbiAgWEFsaWduXHJcbn0gZnJvbSAnQG5nLW5lc3QvdWkvY29yZSc7XHJcbmltcG9ydCB7IElucHV0LCBUZW1wbGF0ZVJlZiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLyoqXHJcbiAqIFRyZWVcclxuICogQHNlbGVjdG9yIHgtdHJlZVxyXG4gKiBAZGVjb3JhdG9yIGNvbXBvbmVudFxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IFhUcmVlUHJlZml4ID0gJ3gtdHJlZSc7XHJcbmNvbnN0IFhfQ09ORklHX05BTUUgPSAndHJlZSc7XHJcblxyXG4vKipcclxuICogVHJlZSBQcm9wZXJ0eVxyXG4gKi9cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVQcm9wZXJ0eSBleHRlbmRzIFhQcm9wZXJ0eSB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueaVsOaNrlxyXG4gICAqIEBlbl9VUyBOb2RlIGRhdGFcclxuICAgKi9cclxuICBASW5wdXQoKSBAWERhdGFDb252ZXJ0KCkgZGF0YTogWERhdGE8WFRyZWVOb2RlPiA9IFtdO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmmL7npLrlpJrpgInmoYZcclxuICAgKiBAZW5fVVMgU2hvdyBjaGVja2JveFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgY2hlY2tib3g/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5byA5ZCv5oeS5Yqg6L296IqC54K577yMZGF0YSDlv4Xpobvorr7nva7miJDlh73mlbDnsbvlnotcclxuICAgKiBAZW5fVVMgT3BlbiBsYXp5IGxvYWRpbmcgbm9kZSwgZGF0YSBtdXN0IGJlIHNldCB0byBmdW5jdGlvbiB0eXBlXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBsYXp5PzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOW9k+WJjea/gOa0u+eahOiKgueCuSBJZFxyXG4gICAqIEBlbl9VUyBDdXJyZW50bHkgYWN0aXZlIG5vZGUgSWRcclxuICAgKi9cclxuICBASW5wdXQoKSBhY3RpdmF0ZWRJZDogYW55O1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXlvIDnmoToioLngrlcclxuICAgKiBAZW5fVVMgRXhwYW5kZWQgbm9kZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGV4cGFuZGVkOiBhbnlbXSA9IFtdO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiBjaGVja2JveCDpgInkuK3nmoToioLngrlcclxuICAgKiBAZW5fVVMgQ2hlY2tib3ggc2VsZWN0ZWQgbm9kZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGNoZWNrZWQ6IGFueVtdID0gW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWxleW8gOaJgOacieiKgueCuVxyXG4gICAqIEBlbl9VUyBFeHBhbmQgYWxsIG5vZGVzXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBleHBhbmRlZEFsbD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDpu5jorqTlsZXlvIDnmoTlsYLnuqdcclxuICAgKiBAZW5fVVMgRGVmYXVsdCBleHBhbmRlZCBsZXZlbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXROdW1iZXIoKSBleHBhbmRlZExldmVsOiBYTnVtYmVyID0gLTE7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOeCueWHu+iKgueCueWwseinpuWPkeWxleW8gC/mlLbotbfnmoTmk43kvZzvvIzor7fnoa7kv53oioLngrnkuIrmsqHmnInlhbblroPmk43kvZzvvIhjaGVja2JveOOAgeiHquWumuS5ieeahOaTjeS9nOaMiemSru+8iVxyXG4gICAqIEBlbl9VUyBDbGljayB0aGUgbm9kZSB0byB0cmlnZ2VyIHRoZSBleHBhbmQvY29sbGFwc2Ugb3BlcmF0aW9uLCBwbGVhc2UgbWFrZSBzdXJlIHRoYXQgdGhlcmUgYXJlIG5vIG90aGVyIG9wZXJhdGlvbnMgb24gdGhlIG5vZGUgKGNoZWNrYm94LCBjdXN0b20gb3BlcmF0aW9uIGJ1dHRvbilcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG5vZGVPcGVuPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWNleS9jemXtOi3ne+8jOi/meS4quS4juWxgue6p+eahOS5mOenr+eul+WHuuiKgueCueeahOW3pui+uei3ne+8jOWNleS9jSByZW1cclxuICAgKiBAZW5fVVMgVW5pdCBzcGFjaW5nLCB0aGUgcHJvZHVjdCBvZiB0aGlzIGFuZCB0aGUgbGV2ZWwgY2FsY3VsYXRlcyB0aGUgbGVmdCBtYXJnaW4gb2YgdGhlIG5vZGUsIHRoZSB1bml0IGlzIHJlbVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYTnVtYmVyPihYX0NPTkZJR19OQU1FLCAwLjg3NSkgQFhJbnB1dE51bWJlcigpIHNwYWNpbmc/OiBYTnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmoIfnrb7oh6rlrprkuYnmqKHmnb9cclxuICAgKiBAZW5fVVMgTGFiZWwgY3VzdG9tIHRlbXBsYXRlXHJcbiAgICovXHJcbiAgQElucHV0KCkgbGFiZWxUcGw/OiBUZW1wbGF0ZVJlZjx2b2lkPjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K555qE6auY5bqm77yM5Y2V5L2NIHJlbSwg6buY6K6kIDAg5piv6Ieq6YCC5bqU6auY5bqmXHJcbiAgICogQGVuX1VTIFRoZSBoZWlnaHQgb2YgdGhlIG5vZGUgaW4gcmVtXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPFhOdW1iZXI+KFhfQ09ORklHX05BTUUsIDApIEBYSW5wdXROdW1iZXIoKSBub2RlSGVpZ2h0ITogWE51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5piv5ZCm5YWB6K645aSa5qyh54K55Ye75LiA5Liq6IqC54K56Kem5Y+R5aSa5qyh5LqL5Lu2XHJcbiAgICogQGVuX1VTIFdoZXRoZXIgdG8gYWxsb3cgbXVsdGlwbGUgY2xpY2tzIG9uIGEgbm9kZSB0byB0cmlnZ2VyIG11bHRpcGxlIGV2ZW50c1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgYWxsb3dNYW55QWN0aXZhdGVkPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOW9k+WJjeeCueWHu+mAieS4reeahOiKgueCueWPmOWMlueahOS6i+S7tlxyXG4gICAqIEBlbl9VUyBUaGUgZXZlbnQgb2YgdGhlIGN1cnJlbnRseSBjbGlja2VkIG5vZGUgY2hhbmdlXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGFjdGl2YXRlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WFRyZWVOb2RlPigpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDkvb/nlKggY2hlY2tlZGJveCDpgInkuK3lj5jljJbnmoTkuovku7ZcclxuICAgKiBAZW5fVVMgVXNlIGNoZWNrZWRib3ggdG8gc2VsZWN0IGNoYW5nZWQgZXZlbnRzXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGNoZWNrYm94Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxYVHJlZU5vZGU+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWmguaenCBkYXRhIOaYr+WHveaVsOexu+Wei++8jOWPr+S7pemAmui/h+atpOWPguaVsOaOp+WItuivt+axgu+8jOW4uOeUqOS6juW8ueahhuS4reeahOihqOagvO+8jOW8ueWHuuWQjuWGjeivt+axglxyXG4gICAqIEBlbl9VUyBJZiBkYXRhIGlzIGEgZnVuY3Rpb24gdHlwZSwgeW91IGNhbiB1c2UgdGhpcyBwYXJhbWV0ZXIgdG8gY29udHJvbCB0aGUgcmVxdWVzdCwgd2hpY2ggaXMgb2Z0ZW4gdXNlZCBpbiB0aGUgZm9ybSBpbiB0aGUgcG9wLXVwIGJveCwgYW5kIHRoZW4gcmVxdWVzdCBpdCBhZnRlciBpdCBwb3BzIHVwXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBtYW51YWw6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiBjaGVja2JveCDnirbmgIHmlLnlj5jop6blj5HlsYLnuqfmo4Dmn6VcclxuICAgKiBAZW5fVVMgQ2hlY2tib3ggc3RhdHVzIGNoYW5nZXMgdHJpZ2dlciBsZXZlbCBjaGVja3NcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGxldmVsQ2hlY2s6IFhCb29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55YaF5a655LiN5o2i6KGM5pi+56S655yB55Wl5Y+3XHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbm9kZU5vd3JhcDogWEJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlnoLnm7Tlr7npvZDmlrnlvI9cclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPFhBbGlnbj4oWF9DT05GSUdfTkFNRSwgJ2NlbnRlcicpIG5vZGVBbGlnbkl0ZW1zITogWEFsaWduO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmoJHoioLngrnmk43kvZzmjInpkq5cclxuICAgKiBAZW5fVVMgVHJlZSBub2RlIG9wZXJhdGlvbiBidXR0b25zXHJcbiAgICovXHJcbiAgQElucHV0KCkgYWN0aW9uczogWFRyZWVBY3Rpb25bXSA9IFtdO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvIDlkK/omZrmi5/mu5rliqhcclxuICAgKiBAZW5fVVMgVHVybiBvbiB2aXJ0dWFsIHNjcm9sbGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSkgQFhJbnB1dEJvb2xlYW4oKSB2aXJ0dWFsU2Nyb2xsITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOa7muWKqOWMuuWfn+mrmOW6pu+8jOW8gOWQr+iZmuaLn+a7muWKqOeahOaXtuWAmeeUn+aViFxyXG4gICAqIEBlbl9VUyBSb2xsaW5nIGFyZWEgaGVpZ2h0XHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPG51bWJlcj4oWF9DT05GSUdfTkFNRSwgNDAwKSBAWElucHV0TnVtYmVyKCkgdmlydHVhbFNjcm9sbEhlaWdodCE6IG51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04gaXRlbVNpemXvvIzlr7nlupQgY2RrIHNjcm9sbCDkuK3nmoTlj4LmlbDvvIzlvIDlkK/omZrmi5/mu5rliqjmiY3nlJ/mlYhcclxuICAgKiBAZW5fVVMgaXRlbVNpemXvvIxjb3JyZXNwb25kaW5nIHRvIHRoZSBwYXJhbWV0ZXJzIGluIGNkayBzY3JvbGxcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8bnVtYmVyPihYX0NPTkZJR19OQU1FLCAyNikgQFhJbnB1dE51bWJlcigpIGl0ZW1TaXplITogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDotoXlh7rlj6/op4bnqpflj6PnvJPlhrLljLrnmoTmnIDlsI/lgLzvvIzlr7nlupQgY2RrIHNjcm9sbCDkuK3nmoTlj4LmlbDvvIzlvIDlkK/omZrmi5/mu5rliqjmiY3nlJ/mlYhcclxuICAgKiBAZW5fVVMgRXhjZWVkIHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSB2aXNpYmxlIHdpbmRvdyBidWZmZXIsIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBhcmFtZXRlcnMgaW4gY2RrIHNjcm9sbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG1pbkJ1ZmZlclB4OiBudW1iZXIgPSAxMDA7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOa4suafk+aWsOaVsOaNrue8k+WGsuWMuueahOWDj+e0oO+8jOWvueW6lCBjZGsgc2Nyb2xsIOS4reeahOWPguaVsO+8jOW8gOWQr+iZmuaLn+a7muWKqOaJjeeUn+aViFxyXG4gICAqIEBlbl9VUyBSZW5kZXIgdGhlIHBpeGVscyBvZiB0aGUgbmV3IGRhdGEgYnVmZmVyLCBjb3JyZXNwb25kaW5nIHRvIHRoZSBwYXJhbWV0ZXJzIGluIGNkayBzY3JvbGxcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhCdWZmZXJQeDogbnVtYmVyID0gMjAwO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlj4LmlbDmjqfliLbor7fmsYLmlLnlj5jkuovku7ZcclxuICAgKiBAZW5fVVMgUGFyYW1ldGVyIGNvbnRyb2wgcmVxdWVzdCBjaGFuZ2UgZXZlbnRcclxuICAgKi9cclxuICBAT3V0cHV0KCkgbWFudWFsQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIFRyZWUg5pWw5o2u5a+56LGhXHJcbiAqIEBlbl9VUyBUcmVlIGRhdGEgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmVlTm9kZSBleHRlbmRzIFhQYXJlbnRJZGVudGl0eVByb3BlcnR5PFhUcmVlTm9kZT4ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXlvIBcclxuICAgKiBAZW5fVVMgVW5mb2xkXHJcbiAgICovXHJcbiAgb3Blbj86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOa/gOa0u+eahFxyXG4gICAqIEBlbl9VUyBhY3RpdmVcclxuICAgKi9cclxuICBhY3RpdmF0ZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmo4Dmn6Xmm7TmlrBcclxuICAgKiBAZW5fVVMgQ2hlY2sgZm9yIHVwZGF0ZXNcclxuICAgKi9cclxuICBjaGFuZ2U/OiBGdW5jdGlvbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5a2Q6IqC54K55bey5Yqg6L296L+HXHJcbiAgICogQGVuX1VTIENoaWxkIG5vZGUgaGFzIGJlZW4gbG9hZGVkXHJcbiAgICovXHJcbiAgY2hpbGRyZW5Mb2FkZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiBjaGVja2JveCDmmK/lkKbpgInkuK1cclxuICAgKiBAZW5fVVMgd2hldGhlciBjaGVja2JveCBpcyBzZWxlY3RlZFxyXG4gICAqL1xyXG4gIGNoZWNrZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDnpoHnlKhjaGVja2JveFxyXG4gICAqIEBlbl9VUyBEaXNhYmxlIGNoZWNrYm94XHJcbiAgICovXHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiBjaGVja2JveCDlrZDoioLngrnmmK/lkKbmnInpgInkuK3nmoTnirbmgIFcclxuICAgKiBAZW5fVVMgV2hldGhlciB0aGUgY2hpbGQgbm9kZSBvZiBjaGVja2JveCBpcyBzZWxlY3RlZFxyXG4gICAqL1xyXG4gIGluZGV0ZXJtaW5hdGU/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnpq5jluqbvvIzkvJjlhYjnuqfpq5jkuo4gdHJlZSDlj4LmlbDvvIzljZXkvY0gcmVtXHJcbiAgICogQGVuX1VTIE5vZGUgaGVpZ2h0IGluIHJlbSwgaGlnaGVzdCBwcmlvcml0eVxyXG4gICAqL1xyXG4gIGhlaWdodD86IG51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55YaF5a655LiN5o2i6KGM5pi+56S655yB55Wl5Y+377yM5LyY5YWI57qn6auY5LqOIHRyZWUg5Y+C5pWwXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZywgaGlnaGVzdCBwcmlvcml0eVxyXG4gICAqL1xyXG4gIG5vd3JhcD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWeguebtOWvuem9kOaWueW8j++8jOS8mOWFiOe6p+mrmOS6jiB0cmVlIOWPguaVsFxyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmcsIGhpZ2hlc3QgcHJpb3JpdHlcclxuICAgKi9cclxuICBhbGlnbkl0ZW1zPzogWEFsaWduO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmh5LliqDovb3kuK1cclxuICAgKiBAZW5fVVMgTm9kZSBsYXp5IGxvYWRpbmdcclxuICAgKi9cclxuICBsb2FkaW5nPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6Ieq5a6a5LmJ5bGe5oCnXHJcbiAgICogQGVuX1VTIEN1c3RvbSBhdHRyaWJ1dGVzXHJcbiAgICovXHJcbiAgW3Byb3BlcnR5OiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAemhfQ04gVHJlZSDoioLngrnmk43kvZxcclxuICogQGVuX1VTIFRyZWUgbm9kZSBvcGVyYXRpb25cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgWFRyZWVBY3Rpb24gZXh0ZW5kcyBYSWRlbnRpdHlQcm9wZXJ0eSB7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaTjeS9nFxyXG4gICAqIEBlbl9VUyBPcGVyYXRpbmdcclxuICAgKi9cclxuICBoYW5kbGVyPzogRnVuY3Rpb247XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWbvuagh1xyXG4gICAqIEBlbl9VUyBJY29uXHJcbiAgICovXHJcbiAgaWNvbj86IHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIFRyZWVOb2RlXHJcbiAqIEBzZWxlY3RvciB4LXRyZWUtbm9kZVxyXG4gKiBAZGVjb3JhdG9yIGRpcmVjdGl2ZVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IFhUcmVlTm9kZVByZWZpeCA9ICd4LXRyZWUtbm9kZSc7XHJcblxyXG4vKipcclxuICogVHJlZU5vZGUgUHJvcGVydHlcclxuICovXHJcbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcclxuZXhwb3J0IGNsYXNzIFhUcmVlTm9kZVByb3BlcnR5IGV4dGVuZHMgWFByb3BlcnR5IHtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55pWw5o2uXHJcbiAgICogQGVuX1VTIE5vZGUgZGF0YVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG5vZGU6IFhUcmVlTm9kZSA9IHt9O1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsYLnuqdcclxuICAgKiBAZW5fVVMgTGV2ZWxcclxuICAgKi9cclxuICBASW5wdXQoKSBsZXZlbD86IFhOdW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaHkuWKoOi9veWtkOiKgueCuVxyXG4gICAqIEBlbl9VUyBMYXp5IGxvYWRpbmcgb2YgY2hpbGQgbm9kZXNcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGxhenk/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K555qE6auY5bqm77yM5Y2V5L2NIHJlbVxyXG4gICAqIEBlbl9VUyBUaGUgaGVpZ2h0IG9mIHRoZSBub2RlIGluIHJlbVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXROdW1iZXIoKSBub2RlSGVpZ2h0OiBYTnVtYmVyID0gMDtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55YaF5a655LiN5o2i6KGM5pi+56S655yB55Wl5Y+3XHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbm9kZU5vd3JhcD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlnoLnm7Tlr7npvZDmlrnlvI9cclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgbm9kZUFsaWduSXRlbXM6IFhBbGlnbiA9ICdjZW50ZXInO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmh5LliqDovb3lh73mlbBcclxuICAgKiBAZW5fVVMgTGF6eSBsb2FkaW5nIGZ1bmN0aW9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgbGF6eURhdGEhOiBYRGF0YTxYVHJlZU5vZGVbXT47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOagh+iusOS4uuiZmuaLn+a7muWKqOeahOiKgueCuVxyXG4gICAqIEBlbl9VUyBNYXJrIGFzIGEgbm9kZSBvZiB2aXJ0dWFsIHJvbGxpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIHZpcnR1YWxTY3JvbGw/OiBYQm9vbGVhbjtcclxufVxyXG4iXX0=
|
|
295
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS5wcm9wZXJ0eS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUvdHJlZS5wcm9wZXJ0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFlBQVksRUFDWixTQUFTLEVBRVQsYUFBYSxFQUliLFlBQVksRUFFWixXQUFXLEVBRVosTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsS0FBSyxFQUFlLE1BQU0sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFjLE1BQU0sZUFBZSxDQUFDOztBQUVoRzs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQztBQUNwQyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUM7QUFFN0I7O0dBRUc7QUFFSCxNQUFNLE9BQU8sYUFBYyxTQUFRLFNBQVM7SUFENUM7O1FBRUU7OztXQUdHO1FBQ3NCLFNBQUksR0FBcUIsRUFBRSxDQUFDO1FBZ0JyRDs7O1dBR0c7UUFDTSxhQUFRLEdBQVUsRUFBRSxDQUFDO1FBQzlCOzs7V0FHRztRQUNNLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFNN0I7OztXQUdHO1FBQ3NCLGtCQUFhLEdBQVksQ0FBQyxDQUFDLENBQUM7UUEwQnJEOzs7V0FHRztRQUNPLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUMxRDs7O1dBR0c7UUFDTyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFDekQ7OztXQUdHO1FBQ3VCLFdBQU0sR0FBWSxJQUFJLENBQUM7UUFDakQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFDdEQ7OztXQUdHO1FBQ3VCLGVBQVUsR0FBYSxJQUFJLENBQUM7UUFNdEQ7OztXQUdHO1FBQ00sWUFBTyxHQUFrQixFQUFFLENBQUM7UUEwQnJDOzs7V0FHRztRQUNNLGdCQUFXLEdBQVcsR0FBRyxDQUFDO1FBQ25DOzs7V0FH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S0csU0FBUztzQkFBbEIsTUFBTTtnQkFLRyxpQkFBaUI7c0JBQTFCLE1BQU07O0FBNkVUOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsYUFBYSxDQUFDO0FBRTdDOztHQUVHO0FBRUgsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFNBQVM7SUFEaEQ7O1FBRUU7OztXQUdHO1FBQ00sU0FBSSxHQUFjLEVBQUUsQ0FBQztRQVc5Qjs7O1dBR0c7UUFDc0IsZUFBVSxHQUFZLENBQUMsQ0FBQztRQU1qRDs7O1dBR0c7UUFDTSxtQkFBYyxHQUFXLFFBQVEsQ0FBQztLQVc1Qzs7aUlBekNZLGlCQUFpQjtxSEFBakIsaUJBQWlCLCtRQURQLEVBQUU7QUFnQkc7SUFBaEIsYUFBYSxFQUFFOytDQUFpQjtBQUtqQjtJQUFmLFlBQVksRUFBRTtxREFBeUI7QUFLdkI7SUFBaEIsYUFBYSxFQUFFO3FEQUF1QjtBQWV0QjtJQUFoQixhQUFhLEVBQUU7d0RBQTBCOzJGQXhDeEMsaUJBQWlCO2tCQUQ3QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs4QkFNaEIsSUFBSTtzQkFBWixLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLb0IsSUFBSTtzQkFBN0IsS0FBSztnQkFLbUIsVUFBVTtzQkFBbEMsS0FBSztnQkFLb0IsVUFBVTtzQkFBbkMsS0FBSztnQkFLRyxjQUFjO3NCQUF0QixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS29CLGFBQWE7c0JBQXRDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIFhEYXRhQ29udmVydCxcclxuICBYUHJvcGVydHksXHJcbiAgWERhdGEsXHJcbiAgWElucHV0Qm9vbGVhbixcclxuICBYUGFyZW50SWRlbnRpdHlQcm9wZXJ0eSxcclxuICBYTnVtYmVyLFxyXG4gIFhCb29sZWFuLFxyXG4gIFhJbnB1dE51bWJlcixcclxuICBYSWRlbnRpdHlQcm9wZXJ0eSxcclxuICBYV2l0aENvbmZpZyxcclxuICBYQWxpZ25cclxufSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgSW5wdXQsIFRlbXBsYXRlUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgQ29tcG9uZW50LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKipcclxuICogVHJlZVxyXG4gKiBAc2VsZWN0b3IgeC10cmVlXHJcbiAqIEBkZWNvcmF0b3IgY29tcG9uZW50XHJcbiAqL1xyXG5leHBvcnQgY29uc3QgWFRyZWVQcmVmaXggPSAneC10cmVlJztcclxuY29uc3QgWF9DT05GSUdfTkFNRSA9ICd0cmVlJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlIFByb3BlcnR5XHJcbiAqL1xyXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXHJcbmV4cG9ydCBjbGFzcyBYVHJlZVByb3BlcnR5IGV4dGVuZHMgWFByb3BlcnR5IHtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55pWw5o2uXHJcbiAgICogQGVuX1VTIE5vZGUgZGF0YVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYRGF0YUNvbnZlcnQoKSBkYXRhOiBYRGF0YTxYVHJlZU5vZGU+ID0gW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYvuekuuWkmumAieahhlxyXG4gICAqIEBlbl9VUyBTaG93IGNoZWNrYm94XHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBjaGVja2JveD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvIDlkK/mh5LliqDovb3oioLngrnvvIxkYXRhIOW/hemhu+iuvue9ruaIkOWHveaVsOexu+Wei1xyXG4gICAqIEBlbl9VUyBPcGVuIGxhenkgbG9hZGluZyBub2RlLCBkYXRhIG11c3QgYmUgc2V0IHRvIGZ1bmN0aW9uIHR5cGVcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGxhenk/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5b2T5YmN5r+A5rS755qE6IqC54K5IElkLCDlvZMgbXVsdGlwbGUg5Li6IHRydWUg5pe277yM5YC85Li65pWw57uE77yI6buY6K6k5pivIElkIOaVsOe7hO+8jG9iamVjdEFycmF5IOS4uiB0cnVl77yM5a+56LGh5pWw57uE77yJXHJcbiAgICogQGVuX1VTIEN1cnJlbnRseSBhY3RpdmUgbm9kZSBJZC4gV2hlbiBNdWx0aXBsZSBpcyB0cnVlLCB0aGUgdmFsdWUgaXMgdGhlIElkIGFycmF5XHJcbiAgICovXHJcbiAgQElucHV0KCkgYWN0aXZhdGVkSWQ6IGFueTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5bGV5byA55qE6IqC54K5XHJcbiAgICogQGVuX1VTIEV4cGFuZGVkIG5vZGVcclxuICAgKi9cclxuICBASW5wdXQoKSBleHBhbmRlZDogYW55W10gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04gY2hlY2tib3gg6YCJ5Lit55qE6IqC54K5XHJcbiAgICogQGVuX1VTIENoZWNrYm94IHNlbGVjdGVkIG5vZGVcclxuICAgKi9cclxuICBASW5wdXQoKSBjaGVja2VkOiBhbnlbXSA9IFtdO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlsZXlvIDmiYDmnInoioLngrlcclxuICAgKiBAZW5fVVMgRXhwYW5kIGFsbCBub2Rlc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgZXhwYW5kZWRBbGw/OiBYQm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6buY6K6k5bGV5byA55qE5bGC57qnXHJcbiAgICogQGVuX1VTIERlZmF1bHQgZXhwYW5kZWQgbGV2ZWxcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0TnVtYmVyKCkgZXhwYW5kZWRMZXZlbDogWE51bWJlciA9IC0xO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDngrnlh7voioLngrnlsLHop6blj5HlsZXlvIAv5pS26LW355qE5pON5L2c77yM6K+356Gu5L+d6IqC54K55LiK5rKh5pyJ5YW25a6D5pON5L2c77yIY2hlY2tib3jjgIHoh6rlrprkuYnnmoTmk43kvZzmjInpkq7vvIlcclxuICAgKiBAZW5fVVMgQ2xpY2sgdGhlIG5vZGUgdG8gdHJpZ2dlciB0aGUgZXhwYW5kL2NvbGxhcHNlIG9wZXJhdGlvbiwgcGxlYXNlIG1ha2Ugc3VyZSB0aGF0IHRoZXJlIGFyZSBubyBvdGhlciBvcGVyYXRpb25zIG9uIHRoZSBub2RlIChjaGVja2JveCwgY3VzdG9tIG9wZXJhdGlvbiBidXR0b24pXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBub2RlT3Blbj86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDljZXkvY3pl7Tot53vvIzov5nkuKrkuI7lsYLnuqfnmoTkuZjnp6/nrpflh7roioLngrnnmoTlt6bovrnot53vvIzljZXkvY0gcmVtXHJcbiAgICogQGVuX1VTIFVuaXQgc3BhY2luZywgdGhlIHByb2R1Y3Qgb2YgdGhpcyBhbmQgdGhlIGxldmVsIGNhbGN1bGF0ZXMgdGhlIGxlZnQgbWFyZ2luIG9mIHRoZSBub2RlLCB0aGUgdW5pdCBpcyByZW1cclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8WE51bWJlcj4oWF9DT05GSUdfTkFNRSwgMC44NzUpIEBYSW5wdXROdW1iZXIoKSBzcGFjaW5nPzogWE51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5qCH562+6Ieq5a6a5LmJ5qih5p2/XHJcbiAgICogQGVuX1VTIExhYmVsIGN1c3RvbSB0ZW1wbGF0ZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsVHBsPzogVGVtcGxhdGVSZWY8dm9pZD47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueeahOmrmOW6pu+8jOWNleS9jSByZW0sIOm7mOiupCAwIOaYr+iHqumAguW6lOmrmOW6plxyXG4gICAqIEBlbl9VUyBUaGUgaGVpZ2h0IG9mIHRoZSBub2RlIGluIHJlbVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYTnVtYmVyPihYX0NPTkZJR19OQU1FLCAwKSBAWElucHV0TnVtYmVyKCkgbm9kZUhlaWdodCE6IFhOdW1iZXI7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaYr+WQpuWFgeiuuOWkmuasoeeCueWHu+S4gOS4quiKgueCueinpuWPkeWkmuasoeS6i+S7tlxyXG4gICAqIEBlbl9VUyBXaGV0aGVyIHRvIGFsbG93IG11bHRpcGxlIGNsaWNrcyBvbiBhIG5vZGUgdG8gdHJpZ2dlciBtdWx0aXBsZSBldmVudHNcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIGFsbG93TWFueUFjdGl2YXRlZD86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvZPliY3ngrnlh7vpgInkuK3nmoToioLngrnlj5jljJbnmoTkuovku7ZcclxuICAgKiBAZW5fVVMgVGhlIGV2ZW50IG9mIHRoZSBjdXJyZW50bHkgY2xpY2tlZCBub2RlIGNoYW5nZVxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3RpdmF0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFhUcmVlTm9kZT4oKTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5L2/55SoIGNoZWNrZWRib3gg6YCJ5Lit5Y+Y5YyW55qE5LqL5Lu2XHJcbiAgICogQGVuX1VTIFVzZSBjaGVja2VkYm94IHRvIHNlbGVjdCBjaGFuZ2VkIGV2ZW50c1xyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBjaGVja2JveENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8WFRyZWVOb2RlPigpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpoLmnpwgZGF0YSDmmK/lh73mlbDnsbvlnovvvIzlj6/ku6XpgJrov4fmraTlj4LmlbDmjqfliLbor7fmsYLvvIzluLjnlKjkuo7lvLnmoYbkuK3nmoTooajmoLzvvIzlvLnlh7rlkI7lho3or7fmsYJcclxuICAgKiBAZW5fVVMgSWYgZGF0YSBpcyBhIGZ1bmN0aW9uIHR5cGUsIHlvdSBjYW4gdXNlIHRoaXMgcGFyYW1ldGVyIHRvIGNvbnRyb2wgdGhlIHJlcXVlc3QsIHdoaWNoIGlzIG9mdGVuIHVzZWQgaW4gdGhlIGZvcm0gaW4gdGhlIHBvcC11cCBib3gsIGFuZCB0aGVuIHJlcXVlc3QgaXQgYWZ0ZXIgaXQgcG9wcyB1cFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbWFudWFsOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBAemhfQ04gY2hlY2tib3gg54q25oCB5pS55Y+Y6Kem5Y+R5bGC57qn5qOA5p+lXHJcbiAgICogQGVuX1VTIENoZWNrYm94IHN0YXR1cyBjaGFuZ2VzIHRyaWdnZXIgbGV2ZWwgY2hlY2tzXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBsZXZlbENoZWNrOiBYQm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWGheWuueS4jeaNouihjOaYvuekuuecgeeVpeWPt1xyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG5vZGVOb3dyYXA6IFhCb29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55Z6C55u05a+56b2Q5pa55byPXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQWxpZ24+KFhfQ09ORklHX05BTUUsICdjZW50ZXInKSBub2RlQWxpZ25JdGVtcyE6IFhBbGlnbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5qCR6IqC54K55pON5L2c5oyJ6ZKuXHJcbiAgICogQGVuX1VTIFRyZWUgbm9kZSBvcGVyYXRpb24gYnV0dG9uc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGFjdGlvbnM6IFhUcmVlQWN0aW9uW10gPSBbXTtcclxuICAvKipcclxuICAgKiBAemhfQ04g5rua5Yqo5Yy65Z+f5YWD57SgXHJcbiAgICogQGVuX1VTIFJvbGxpbmcgYXJlYSBlbGVtZW50XHJcbiAgICovXHJcbiAgQElucHV0KCkgc2Nyb2xsRWxlbWVudD86IEhUTUxFbGVtZW50O1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvIDlkK/omZrmi5/mu5rliqhcclxuICAgKiBAZW5fVVMgVHVybiBvbiB2aXJ0dWFsIHNjcm9sbGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYV2l0aENvbmZpZzxYQm9vbGVhbj4oWF9DT05GSUdfTkFNRSkgQFhJbnB1dEJvb2xlYW4oKSB2aXJ0dWFsU2Nyb2xsITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOa7muWKqOWMuuWfn+mrmOW6pu+8jOW8gOWQr+iZmuaLn+a7muWKqOeahOaXtuWAmeeUn+aViFxyXG4gICAqIEBlbl9VUyBSb2xsaW5nIGFyZWEgaGVpZ2h0XHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhXaXRoQ29uZmlnPG51bWJlcj4oWF9DT05GSUdfTkFNRSwgNDAwKSBAWElucHV0TnVtYmVyKCkgdmlydHVhbFNjcm9sbEhlaWdodCE6IG51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6Jma5ouf5rua5Yqo6auY5bqm6Ieq6YCC5bqU5oyH5a6a5YWD57SgXHJcbiAgICogQGVuX1VTIHZpcnR1YWwgcm9sbGluZyBoZWlnaHQgZm9sbG93cyB0aGUgc3BlY2lmaWVkIG9iamVjdFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGhlaWdodEFkYXB0aW9uITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCBIVE1MRWxlbWVudDtcclxuICAvKipcclxuICAgKiBAemhfQ04gaXRlbVNpemXvvIzlr7nlupQgY2RrIHNjcm9sbCDkuK3nmoTlj4LmlbDvvIzlvIDlkK/omZrmi5/mu5rliqjmiY3nlJ/mlYhcclxuICAgKiBAZW5fVVMgaXRlbVNpemXvvIxjb3JyZXNwb25kaW5nIHRvIHRoZSBwYXJhbWV0ZXJzIGluIGNkayBzY3JvbGxcclxuICAgKi9cclxuICBASW5wdXQoKSBAWFdpdGhDb25maWc8bnVtYmVyPihYX0NPTkZJR19OQU1FLCAyNikgQFhJbnB1dE51bWJlcigpIGl0ZW1TaXplITogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDotoXlh7rlj6/op4bnqpflj6PnvJPlhrLljLrnmoTmnIDlsI/lgLzvvIzlr7nlupQgY2RrIHNjcm9sbCDkuK3nmoTlj4LmlbDvvIzlvIDlkK/omZrmi5/mu5rliqjmiY3nlJ/mlYhcclxuICAgKiBAZW5fVVMgRXhjZWVkIHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSB2aXNpYmxlIHdpbmRvdyBidWZmZXIsIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBhcmFtZXRlcnMgaW4gY2RrIHNjcm9sbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG1pbkJ1ZmZlclB4OiBudW1iZXIgPSAxMDA7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOa4suafk+aWsOaVsOaNrue8k+WGsuWMuueahOWDj+e0oO+8jOWvueW6lCBjZGsgc2Nyb2xsIOS4reeahOWPguaVsO+8jOW8gOWQr+iZmuaLn+a7muWKqOaJjeeUn+aViFxyXG4gICAqIEBlbl9VUyBSZW5kZXIgdGhlIHBpeGVscyBvZiB0aGUgbmV3IGRhdGEgYnVmZmVyLCBjb3JyZXNwb25kaW5nIHRvIHRoZSBwYXJhbWV0ZXJzIGluIGNkayBzY3JvbGxcclxuICAgKi9cclxuICBASW5wdXQoKSBtYXhCdWZmZXJQeDogbnVtYmVyID0gMjAwO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlpJrpgInlip/og73vvIzlvZPliY3mv4DmtLvnmoToioLngrnlj6/ku6XmmK/lpJrkuKpcclxuICAgKiBAZW5fVVMgTXVsdGlwbGUgY2hvaWNlXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBtdWx0aXBsZT86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDlvZPlvIDlkK/lpJrpgInnmoTml7blgJnvvIxhY3RpdmF0ZWRJZCDnmoTlgLzkuLrlr7nosaHmlbDnu4RcclxuICAgKiBAZW5fVVMgV2hlbiBtdWx0aXBsZSBzZWxlY3Rpb24gaXMgZW5hYmxlZCwgdGhlIHZhbHVlIG9mIGFjdGl2YXRlZElkIGlzIGFuIGFycmF5IG9mIG9iamVjdHNcclxuICAgKi9cclxuICBASW5wdXQoKSBAWElucHV0Qm9vbGVhbigpIG9iamVjdEFycmF5PzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWFs+mUruWtl+mrmOS6ru+8jOmSiOWvueS4i+aLieagkeaQnOe0olxyXG4gICAqIEBlbl9VUyBLZXl3b3JkIGhpZ2hsaWdodGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGtleXdvcmRUZXh0ITogc3RyaW5nIHwgc3RyaW5nW107XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWMuemFjeWFs+mUruWtl+WMuuWIhuWkp+Wwj+WGme+8jOmSiOWvueS4i+aLieagkeaQnOe0olxyXG4gICAqIEBlbl9VUyBDYXNlLXNlbnNpdGl2ZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgQFhXaXRoQ29uZmlnPFhCb29sZWFuPihYX0NPTkZJR19OQU1FLCB0cnVlKSBjYXNlU2Vuc2l0aXZlITogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWPguaVsOaOp+WItuivt+axguaUueWPmOS6i+S7tlxyXG4gICAqIEBlbl9VUyBQYXJhbWV0ZXIgY29udHJvbCByZXF1ZXN0IGNoYW5nZSBldmVudFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBtYW51YWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueeCueWHu+S6i+S7tlxyXG4gICAqIEBlbl9VUyBOb2RlIGNsaWNrIGV2ZW50XHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG5vZGVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8WFRyZWVOb2RlPigpO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnngrnlh7vkuovku7ZcclxuICAgKiBAZW5fVVMgTm9kZSBjbGljayBldmVudFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBhY3RpdmF0ZWRJZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG59XHJcblxyXG4vKipcclxuICogQHpoX0NOIFRyZWUg5pWw5o2u5a+56LGhXHJcbiAqIEBlbl9VUyBUcmVlIGRhdGEgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIFhUcmVlTm9kZSBleHRlbmRzIFhQYXJlbnRJZGVudGl0eVByb3BlcnR5PFhUcmVlTm9kZT4ge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDmv4DmtLvnmoRcclxuICAgKiBAZW5fVVMgYWN0aXZlXHJcbiAgICovXHJcbiAgYWN0aXZhdGVkPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5qOA5p+l5pu05pawXHJcbiAgICogQGVuX1VTIENoZWNrIGZvciB1cGRhdGVzXHJcbiAgICovXHJcbiAgY2hhbmdlPzogRnVuY3Rpb247XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOaYr+WQpumAieS4rVxyXG4gICAqIEBlbl9VUyB3aGV0aGVyIGNoZWNrYm94IGlzIHNlbGVjdGVkXHJcbiAgICovXHJcbiAgY2hlY2tlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOemgeeUqGNoZWNrYm94XHJcbiAgICogQGVuX1VTIERpc2FibGUgY2hlY2tib3hcclxuICAgKi9cclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIGNoZWNrYm94IOWtkOiKgueCueaYr+WQpuaciemAieS4reeahOeKtuaAgVxyXG4gICAqIEBlbl9VUyBXaGV0aGVyIHRoZSBjaGlsZCBub2RlIG9mIGNoZWNrYm94IGlzIHNlbGVjdGVkXHJcbiAgICovXHJcbiAgaW5kZXRlcm1pbmF0ZT86IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCuemrmOW6pu+8jOS8mOWFiOe6p+mrmOS6jiB0cmVlIOWPguaVsO+8jOWNleS9jSByZW1cclxuICAgKiBAZW5fVVMgTm9kZSBoZWlnaHQgaW4gcmVtLCBoaWdoZXN0IHByaW9yaXR5XHJcbiAgICovXHJcbiAgaGVpZ2h0PzogbnVtYmVyO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlhoXlrrnkuI3mjaLooYzmmL7npLrnnIHnlaXlj7fvvIzkvJjlhYjnuqfpq5jkuo4gdHJlZSDlj4LmlbBcclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nLCBoaWdoZXN0IHByaW9yaXR5XHJcbiAgICovXHJcbiAgbm93cmFwPzogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g6IqC54K55Z6C55u05a+56b2Q5pa55byP77yM5LyY5YWI57qn6auY5LqOIHRyZWUg5Y+C5pWwXHJcbiAgICogQGVuX1VTIFNob3cgZWxsaXBzaXMgd2l0aG91dCB3cmFwcGluZywgaGlnaGVzdCBwcmlvcml0eVxyXG4gICAqL1xyXG4gIGFsaWduSXRlbXM/OiBYQWxpZ247XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueaHkuWKoOi9veS4rVxyXG4gICAqIEBlbl9VUyBOb2RlIGxhenkgbG9hZGluZ1xyXG4gICAqL1xyXG4gIGxvYWRpbmc/OiBib29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoh6rlrprkuYnlsZ7mgKdcclxuICAgKiBAZW5fVVMgQ3VzdG9tIGF0dHJpYnV0ZXNcclxuICAgKi9cclxuICBbcHJvcGVydHk6IHN0cmluZ106IGFueTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEB6aF9DTiBUcmVlIOiKgueCueaTjeS9nFxyXG4gKiBAZW5fVVMgVHJlZSBub2RlIG9wZXJhdGlvblxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBYVHJlZUFjdGlvbiBleHRlbmRzIFhJZGVudGl0eVByb3BlcnR5IHtcclxuICAvKipcclxuICAgKiBAemhfQ04g5pON5L2cXHJcbiAgICogQGVuX1VTIE9wZXJhdGluZ1xyXG4gICAqL1xyXG4gIGhhbmRsZXI/OiBGdW5jdGlvbjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5Zu+5qCHXHJcbiAgICogQGVuX1VTIEljb25cclxuICAgKi9cclxuICBpY29uPzogc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogVHJlZU5vZGVcclxuICogQHNlbGVjdG9yIHgtdHJlZS1ub2RlXHJcbiAqIEBkZWNvcmF0b3IgZGlyZWN0aXZlXHJcbiAqL1xyXG5leHBvcnQgY29uc3QgWFRyZWVOb2RlUHJlZml4ID0gJ3gtdHJlZS1ub2RlJztcclxuXHJcbi8qKlxyXG4gKiBUcmVlTm9kZSBQcm9wZXJ0eVxyXG4gKi9cclxuQENvbXBvbmVudCh7IHRlbXBsYXRlOiAnJyB9KVxyXG5leHBvcnQgY2xhc3MgWFRyZWVOb2RlUHJvcGVydHkgZXh0ZW5kcyBYUHJvcGVydHkge1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnmlbDmja5cclxuICAgKiBAZW5fVVMgTm9kZSBkYXRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgbm9kZTogWFRyZWVOb2RlID0ge307XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOWxgue6p1xyXG4gICAqIEBlbl9VUyBMZXZlbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIGxldmVsPzogWE51bWJlcjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5oeS5Yqg6L295a2Q6IqC54K5XHJcbiAgICogQGVuX1VTIExhenkgbG9hZGluZyBvZiBjaGlsZCBub2Rlc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgbGF6eT86IFhCb29sZWFuO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnnmoTpq5jluqbvvIzljZXkvY0gcmVtXHJcbiAgICogQGVuX1VTIFRoZSBoZWlnaHQgb2YgdGhlIG5vZGUgaW4gcmVtXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dE51bWJlcigpIG5vZGVIZWlnaHQ6IFhOdW1iZXIgPSAwO1xyXG4gIC8qKlxyXG4gICAqIEB6aF9DTiDoioLngrnlhoXlrrnkuI3mjaLooYzmmL7npLrnnIHnlaXlj7dcclxuICAgKiBAZW5fVVMgU2hvdyBlbGxpcHNpcyB3aXRob3V0IHdyYXBwaW5nXHJcbiAgICovXHJcbiAgQElucHV0KCkgQFhJbnB1dEJvb2xlYW4oKSBub2RlTm93cmFwPzogWEJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOiKgueCueWeguebtOWvuem9kOaWueW8j1xyXG4gICAqIEBlbl9VUyBTaG93IGVsbGlwc2lzIHdpdGhvdXQgd3JhcHBpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBub2RlQWxpZ25JdGVtczogWEFsaWduID0gJ2NlbnRlcic7XHJcbiAgLyoqXHJcbiAgICogQHpoX0NOIOaHkuWKoOi9veWHveaVsFxyXG4gICAqIEBlbl9VUyBMYXp5IGxvYWRpbmcgZnVuY3Rpb25cclxuICAgKi9cclxuICBASW5wdXQoKSBsYXp5RGF0YSE6IFhEYXRhPFhUcmVlTm9kZVtdPjtcclxuICAvKipcclxuICAgKiBAemhfQ04g5qCH6K6w5Li66Jma5ouf5rua5Yqo55qE6IqC54K5XHJcbiAgICogQGVuX1VTIE1hcmsgYXMgYSBub2RlIG9mIHZpcnR1YWwgcm9sbGluZ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEBYSW5wdXRCb29sZWFuKCkgdmlydHVhbFNjcm9sbD86IFhCb29sZWFuO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctbmVzdC11aS10cmVlLXNlbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUtc2VsZWN0L25nLW5lc3QtdWktdHJlZS1zZWxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './tree-select.component';
|
|
2
|
+
export * from './tree-select-portal.component';
|
|
3
|
+
export * from './tree-select.module';
|
|
4
|
+
export * from './tree-select.property';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUtc2VsZWN0L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdHJlZS1zZWxlY3QuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90cmVlLXNlbGVjdC1wb3J0YWwuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi90cmVlLXNlbGVjdC5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RyZWUtc2VsZWN0LnByb3BlcnR5JztcclxuIl19
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { Component, ViewEncapsulation, ChangeDetectionStrategy, HostBinding, HostListener, ViewChild } from '@angular/core';
|
|
2
|
+
import { XTreeSelectPortalPrefix } from './tree-select.property';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { XConnectBaseAnimation, XIsEmpty } from '@ng-nest/ui/core';
|
|
5
|
+
import { map, takeUntil } from 'rxjs/operators';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@ng-nest/ui/i18n";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "@ng-nest/ui/tree";
|
|
10
|
+
import * as i4 from "@ng-nest/ui/empty";
|
|
11
|
+
export class XTreeSelectPortalComponent {
|
|
12
|
+
constructor(renderer, cdr, i18n) {
|
|
13
|
+
this.renderer = renderer;
|
|
14
|
+
this.cdr = cdr;
|
|
15
|
+
this.i18n = i18n;
|
|
16
|
+
this.selectAll = false;
|
|
17
|
+
this.show = false;
|
|
18
|
+
this.objectArray = false;
|
|
19
|
+
this.caseSensitive = true;
|
|
20
|
+
this.active = -1;
|
|
21
|
+
this.portalMaxHeight = '';
|
|
22
|
+
this.locale = {};
|
|
23
|
+
this.search = false;
|
|
24
|
+
this.scrollNull = undefined;
|
|
25
|
+
this._unSubject = new Subject();
|
|
26
|
+
}
|
|
27
|
+
done(event) {
|
|
28
|
+
this.animating(false);
|
|
29
|
+
event.toState === 'void' && this.destroyPortal();
|
|
30
|
+
}
|
|
31
|
+
start() {
|
|
32
|
+
this.animating(true);
|
|
33
|
+
}
|
|
34
|
+
// @ViewChild('list') list!: XListComponent;
|
|
35
|
+
get isEmpty() {
|
|
36
|
+
return XIsEmpty(this.data);
|
|
37
|
+
}
|
|
38
|
+
get getSelectAllText() {
|
|
39
|
+
return this.selectAllText || this.locale.selectAllText;
|
|
40
|
+
}
|
|
41
|
+
ngOnInit() {
|
|
42
|
+
this.valueChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {
|
|
43
|
+
this.value = x;
|
|
44
|
+
this.cdr.detectChanges();
|
|
45
|
+
});
|
|
46
|
+
this.positionChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {
|
|
47
|
+
this.placement = x;
|
|
48
|
+
this.cdr.detectChanges();
|
|
49
|
+
});
|
|
50
|
+
this.dataChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {
|
|
51
|
+
this.data = x;
|
|
52
|
+
this.cdr.detectChanges();
|
|
53
|
+
});
|
|
54
|
+
this.closeSubject.pipe(takeUntil(this._unSubject)).subscribe(() => {
|
|
55
|
+
// this.tree.setUnActive(this.active);
|
|
56
|
+
});
|
|
57
|
+
this.keydownSubject.pipe(takeUntil(this._unSubject)).subscribe((_x) => {
|
|
58
|
+
// this.tree.keydown(x);
|
|
59
|
+
});
|
|
60
|
+
this.inputChange.pipe(takeUntil(this._unSubject)).subscribe((x) => {
|
|
61
|
+
this.keywordText = x;
|
|
62
|
+
});
|
|
63
|
+
this.i18n.localeChange
|
|
64
|
+
.pipe(map((x) => x.treeSelect), takeUntil(this._unSubject))
|
|
65
|
+
.subscribe((x) => {
|
|
66
|
+
this.locale = x;
|
|
67
|
+
this.cdr.markForCheck();
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
ngOnDestroy() {
|
|
71
|
+
this._unSubject.next();
|
|
72
|
+
this._unSubject.unsubscribe();
|
|
73
|
+
}
|
|
74
|
+
stopPropagation(event) {
|
|
75
|
+
event.stopPropagation();
|
|
76
|
+
}
|
|
77
|
+
nodeClick(node) {
|
|
78
|
+
if (this.multiple) {
|
|
79
|
+
this.nodeEmit(node, this.value);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
this.nodeEmit(node);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
onSelectAll(_isSelectAll) {
|
|
86
|
+
this.nodeEmit(null, this.value);
|
|
87
|
+
}
|
|
88
|
+
onActive(num) {
|
|
89
|
+
this.active = num;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/** @nocollapse */ XTreeSelectPortalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeSelectPortalComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i1.XI18nService }], target: i0.ɵɵFactoryTarget.Component });
|
|
93
|
+
/** @nocollapse */ XTreeSelectPortalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: XTreeSelectPortalComponent, selector: "x-tree-select-portal", host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.placement" } }, viewQueries: [{ propertyName: "tree", first: true, predicate: ["tree"], descendants: true }], ngImport: i0, template: "<div\r\n #treeSelectPortal\r\n class=\"x-tree-select-portal\"\r\n (click)=\"inputCom.inputFocus(); stopPropagation($event)\"\r\n [style.maxHeight]=\"portalMaxHeight\"\r\n>\r\n <!-- <x-list\r\n #list\r\n [data]=\"data\"\r\n [(ngModel)]=\"value\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n (onSelectAll)=\"onSelectAll($event)\"\r\n checked\r\n [objectArray]=\"objectArray\"\r\n [multiple]=\"multiple\"\r\n [selectAll]=\"selectAll\"\r\n [selectAllText]=\"getSelectAllText\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [scrollElement]=\"search ? scrollNull : treeSelectPortal\"\r\n [virtualScroll]=\"virtualScroll\"\r\n [size]=\"size\"\r\n [heightAdaption]=\"treeSelectPortal\"\r\n ></x-list> -->\r\n <x-tree\r\n #tree\r\n [data]=\"data\"\r\n [labelTpl]=\"nodeTpl\"\r\n [virtualScroll]=\"virtualScroll\"\r\n [scrollElement]=\"search ? scrollNull : treeSelectPortal\"\r\n [heightAdaption]=\"treeSelectPortal\"\r\n [expandedLevel]=\"expandedLevel\"\r\n [(activatedId)]=\"value\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n [multiple]=\"multiple\"\r\n [allowManyActivated]=\"multiple\"\r\n [objectArray]=\"objectArray\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n ></x-tree>\r\n <x-empty *ngIf=\"isEmpty\"></x-empty>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-tree-select-portal{width:100%}.x-tree-select-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);width:100%;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);position:relative;display:flex;flex-direction:column;background-color:var(--x-background);overflow:hidden auto;max-height:calc((calc(var(--x-font-size) + .875rem) * 6) + (var(--x-border-width) * 7))}.x-tree-select-portal x-tree{width:100%}.x-tree-select-portal x-empty{margin:1rem;display:block}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.XTreeComponent, selector: "x-tree" }, { kind: "component", type: i4.XEmptyComponent, selector: "x-empty" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: XTreeSelectPortalComponent, decorators: [{
|
|
95
|
+
type: Component,
|
|
96
|
+
args: [{ selector: `${XTreeSelectPortalPrefix}`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: [XConnectBaseAnimation], template: "<div\r\n #treeSelectPortal\r\n class=\"x-tree-select-portal\"\r\n (click)=\"inputCom.inputFocus(); stopPropagation($event)\"\r\n [style.maxHeight]=\"portalMaxHeight\"\r\n>\r\n <!-- <x-list\r\n #list\r\n [data]=\"data\"\r\n [(ngModel)]=\"value\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n (keyManagerChange)=\"onActive($event)\"\r\n (keyManagerTabOut)=\"onTabOut()\"\r\n (onSelectAll)=\"onSelectAll($event)\"\r\n checked\r\n [objectArray]=\"objectArray\"\r\n [multiple]=\"multiple\"\r\n [selectAll]=\"selectAll\"\r\n [selectAllText]=\"getSelectAllText\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [scrollElement]=\"search ? scrollNull : treeSelectPortal\"\r\n [virtualScroll]=\"virtualScroll\"\r\n [size]=\"size\"\r\n [heightAdaption]=\"treeSelectPortal\"\r\n ></x-list> -->\r\n <x-tree\r\n #tree\r\n [data]=\"data\"\r\n [labelTpl]=\"nodeTpl\"\r\n [virtualScroll]=\"virtualScroll\"\r\n [scrollElement]=\"search ? scrollNull : treeSelectPortal\"\r\n [heightAdaption]=\"treeSelectPortal\"\r\n [expandedLevel]=\"expandedLevel\"\r\n [(activatedId)]=\"value\"\r\n (nodeClick)=\"nodeClick($event)\"\r\n [multiple]=\"multiple\"\r\n [allowManyActivated]=\"multiple\"\r\n [objectArray]=\"objectArray\"\r\n [keywordText]=\"keywordText\"\r\n [caseSensitive]=\"caseSensitive\"\r\n ></x-tree>\r\n <x-empty *ngIf=\"isEmpty\"></x-empty>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-tree-select-portal{width:100%}.x-tree-select-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border:var(--x-border-width) var(--x-border-style) var(--x-border);width:100%;border-radius:var(--x-border-radius);box-shadow:var(--x-box-shadow) var(--x-box-shadow-light-color);position:relative;display:flex;flex-direction:column;background-color:var(--x-background);overflow:hidden auto;max-height:calc((calc(var(--x-font-size) + .875rem) * 6) + (var(--x-border-width) * 7))}.x-tree-select-portal x-tree{width:100%}.x-tree-select-portal x-empty{margin:1rem;display:block}\n"] }]
|
|
97
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i1.XI18nService }]; }, propDecorators: { placement: [{
|
|
98
|
+
type: HostBinding,
|
|
99
|
+
args: ['@x-connect-base-animation']
|
|
100
|
+
}], done: [{
|
|
101
|
+
type: HostListener,
|
|
102
|
+
args: ['@x-connect-base-animation.done', ['$event']]
|
|
103
|
+
}], start: [{
|
|
104
|
+
type: HostListener,
|
|
105
|
+
args: ['@x-connect-base-animation.start', ['$event']]
|
|
106
|
+
}], tree: [{
|
|
107
|
+
type: ViewChild,
|
|
108
|
+
args: ['tree']
|
|
109
|
+
}] } });
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZWxlY3QtcG9ydGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYi9uZy1uZXN0L3VpL3RyZWUtc2VsZWN0L3RyZWUtc2VsZWN0LXBvcnRhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWIvbmctbmVzdC91aS90cmVlLXNlbGVjdC90cmVlLXNlbGVjdC1wb3J0YWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsdUJBQXVCLEVBS3ZCLFdBQVcsRUFDWCxZQUFZLEVBRVosU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBbUIsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNsRixPQUFPLEVBQW1CLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQVkscUJBQXFCLEVBQUUsUUFBUSxFQUE2QixNQUFNLGtCQUFrQixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQWFoRCxNQUFNLE9BQU8sMEJBQTBCO0lBcURyQyxZQUFtQixRQUFtQixFQUFTLEdBQXNCLEVBQVMsSUFBa0I7UUFBN0UsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFTLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBYztRQXRCaEcsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBQzlCLFdBQU0sR0FBVyxDQUFDLENBQUMsQ0FBQztRQUVwQixvQkFBZSxHQUFHLEVBQUUsQ0FBQztRQUVyQixXQUFNLEdBQW9CLEVBQUUsQ0FBQztRQUM3QixXQUFN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XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIE9uSW5pdCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgUmVuZGVyZXIyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWFRyZWVTZWxlY3ROb2RlLCBYVHJlZVNlbGVjdFBvcnRhbFByZWZpeCB9IGZyb20gJy4vdHJlZS1zZWxlY3QucHJvcGVydHknO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgWEJvb2xlYW4sIFhDb25uZWN0QmFzZUFuaW1hdGlvbiwgWElzRW1wdHksIFhQb3NpdGlvblRvcEJvdHRvbSwgWFNpemUgfSBmcm9tICdAbmctbmVzdC91aS9jb3JlJztcclxuaW1wb3J0IHsgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFhJbnB1dENvbXBvbmVudCB9IGZyb20gJ0BuZy1uZXN0L3VpL2lucHV0JztcclxuaW1wb3J0IHsgWEkxOG5TZXJ2aWNlLCBYSTE4blRyZWVTZWxlY3QgfSBmcm9tICdAbmctbmVzdC91aS9pMThuJztcclxuaW1wb3J0IHsgWFRyZWVDb21wb25lbnQgfSBmcm9tICdAbmctbmVzdC91aS90cmVlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBgJHtYVHJlZVNlbGVjdFBvcnRhbFByZWZpeH1gLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cmVlLXNlbGVjdC1wb3J0YWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RyZWUtc2VsZWN0LXBvcnRhbC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgYW5pbWF0aW9uczogW1hDb25uZWN0QmFzZUFuaW1hdGlvbl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFhUcmVlU2VsZWN0UG9ydGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBIb3N0QmluZGluZygnQHgtY29ubmVjdC1iYXNlLWFuaW1hdGlvbicpIHB1YmxpYyBwbGFjZW1lbnQhOiBYUG9zaXRpb25Ub3BCb3R0b207XHJcbiAgQEhvc3RMaXN0ZW5lcignQHgtY29ubmVjdC1iYXNlLWFuaW1hdGlvbi5kb25lJywgWyckZXZlbnQnXSkgZG9uZShldmVudDogeyB0b1N0YXRlOiBhbnkgfSkge1xyXG4gICAgdGhpcy5hbmltYXRpbmcoZmFsc2UpO1xyXG4gICAgZXZlbnQudG9TdGF0ZSA9PT0gJ3ZvaWQnICYmIHRoaXMuZGVzdHJveVBvcnRhbCgpO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdAeC1jb25uZWN0LWJhc2UtYW5pbWF0aW9uLnN0YXJ0JywgWyckZXZlbnQnXSkgc3RhcnQoKSB7XHJcbiAgICB0aGlzLmFuaW1hdGluZyh0cnVlKTtcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3RyZWUnKSB0cmVlITogWFRyZWVDb21wb25lbnQ7XHJcbiAgLy8gQFZpZXdDaGlsZCgnbGlzdCcpIGxpc3QhOiBYTGlzdENvbXBvbmVudDtcclxuICBnZXQgaXNFbXB0eSgpIHtcclxuICAgIHJldHVybiBYSXNFbXB0eSh0aGlzLmRhdGEpO1xyXG4gIH1cclxuXHJcbiAgZGF0YSE6IFhUcmVlU2VsZWN0Tm9kZVtdO1xyXG4gIHZhbHVlOiBhbnk7XHJcbiAgdmFsdWVDaGFuZ2UhOiBTdWJqZWN0PGFueT47XHJcbiAgcG9zaXRpb25DaGFuZ2UhOiBTdWJqZWN0PGFueT47XHJcbiAgaW5wdXRDaGFuZ2UhOiBTdWJqZWN0PGFueT47XHJcbiAgZGF0YUNoYW5nZSE6IEJlaGF2aW9yU3ViamVjdDxYVHJlZVNlbGVjdE5vZGVbXT47XHJcbiAgYW5pbWF0aW5nITogRnVuY3Rpb247XHJcbiAgYWN0aXZlQ2hhbmdlITogRnVuY3Rpb247XHJcbiAgZGVzdHJveVBvcnRhbCE6IEZ1bmN0aW9uO1xyXG4gIGNsb3NlU3ViamVjdCE6IFN1YmplY3Q8dm9pZD47XHJcbiAga2V5ZG93blN1YmplY3QhOiBTdWJqZWN0PEtleWJvYXJkRXZlbnQ+O1xyXG4gIHNlYXJjaFN1YmplY3QhOiBCZWhhdmlvclN1YmplY3Q8YW55PjtcclxuICBub2RlRW1pdCE6IEZ1bmN0aW9uO1xyXG4gIHNlbGVjdEFsbEVtaXQhOiBGdW5jdGlvbjtcclxuICBtdWx0aXBsZSE6IFhCb29sZWFuO1xyXG4gIHNlbGVjdEFsbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG5vZGVUcGwhOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIHNob3c6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBvYmplY3RBcnJheTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNhc2VTZW5zaXRpdmU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGFjdGl2ZTogbnVtYmVyID0gLTE7XHJcbiAgaW5wdXRDb20hOiBYSW5wdXRDb21wb25lbnQ7XHJcbiAgcG9ydGFsTWF4SGVpZ2h0ID0gJyc7XHJcbiAgc2VsZWN0QWxsVGV4dCE6IHN0cmluZztcclxuICBsb2NhbGU6IFhJMThuVHJlZVNlbGVjdCA9IHt9O1xyXG4gIHNlYXJjaDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHNjcm9sbE51bGwgPSB1bmRlZmluZWQ7XHJcbiAgdmlydHVhbFNjcm9sbCE6IFhCb29sZWFuO1xyXG4gIHNpemUhOiBYU2l6ZTtcclxuICBleHBhbmRlZExldmVsITogbnVtYmVyO1xyXG4gIGtleXdvcmRUZXh0ITogc3RyaW5nO1xyXG4gIHByaXZhdGUgX3VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIGdldCBnZXRTZWxlY3RBbGxUZXh0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0QWxsVGV4dCB8fCB0aGlzLmxvY2FsZS5zZWxlY3RBbGxUZXh0O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmLCBwdWJsaWMgaTE4bjogWEkxOG5TZXJ2aWNlKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWVDaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSB4O1xyXG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucG9zaXRpb25DaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMucGxhY2VtZW50ID0geDtcclxuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmRhdGFDaGFuZ2UucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCh4KSA9PiB7XHJcbiAgICAgIHRoaXMuZGF0YSA9IHg7XHJcbiAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5jbG9zZVN1YmplY3QucGlwZSh0YWtlVW50aWwodGhpcy5fdW5TdWJqZWN0KSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgLy8gdGhpcy50cmVlLnNldFVuQWN0aXZlKHRoaXMuYWN0aXZlKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5rZXlkb3duU3ViamVjdC5waXBlKHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpKS5zdWJzY3JpYmUoKF94KSA9PiB7XHJcbiAgICAgIC8vIHRoaXMudHJlZS5rZXlkb3duKHgpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLmlucHV0Q2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX3VuU3ViamVjdCkpLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICB0aGlzLmtleXdvcmRUZXh0ID0geDtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5pMThuLmxvY2FsZUNoYW5nZVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBtYXAoKHgpID0+IHgudHJlZVNlbGVjdCBhcyBYSTE4blRyZWVTZWxlY3QpLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl91blN1YmplY3QpXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgoeCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9jYWxlID0geDtcclxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICB0aGlzLl91blN1YmplY3QudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHN0b3BQcm9wYWdhdGlvbihldmVudDogRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgbm9kZUNsaWNrKG5vZGU6IFhUcmVlU2VsZWN0Tm9kZSkge1xyXG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy5ub2RlRW1pdChub2RlLCB0aGlzLnZhbHVlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubm9kZUVtaXQobm9kZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblNlbGVjdEFsbChfaXNTZWxlY3RBbGw6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMubm9kZUVtaXQobnVsbCwgdGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkFjdGl2ZShudW06IG51bWJlcikge1xyXG4gICAgdGhpcy5hY3RpdmUgPSBudW07XHJcbiAgfVxyXG5cclxuICAvLyBvblRhYk91dCgpIHtcclxuICAvLyAgIHRoaXMuY2xvc2VTdWJqZWN0Lm5leHQoKTtcclxuICAvLyB9XHJcbn1cclxuIiwiPGRpdlxyXG4gICN0cmVlU2VsZWN0UG9ydGFsXHJcbiAgY2xhc3M9XCJ4LXRyZWUtc2VsZWN0LXBvcnRhbFwiXHJcbiAgKGNsaWNrKT1cImlucHV0Q29tLmlucHV0Rm9jdXMoKTsgc3RvcFByb3BhZ2F0aW9uKCRldmVudClcIlxyXG4gIFtzdHlsZS5tYXhIZWlnaHRdPVwicG9ydGFsTWF4SGVpZ2h0XCJcclxuPlxyXG4gIDwhLS0gPHgtbGlzdFxyXG4gICAgI2xpc3RcclxuICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICAobm9kZUNsaWNrKT1cIm5vZGVDbGljaygkZXZlbnQpXCJcclxuICAgIChrZXlNYW5hZ2VyQ2hhbmdlKT1cIm9uQWN0aXZlKCRldmVudClcIlxyXG4gICAgKGtleU1hbmFnZXJUYWJPdXQpPVwib25UYWJPdXQoKVwiXHJcbiAgICAob25TZWxlY3RBbGwpPVwib25TZWxlY3RBbGwoJGV2ZW50KVwiXHJcbiAgICBjaGVja2VkXHJcbiAgICBbb2JqZWN0QXJyYXldPVwib2JqZWN0QXJyYXlcIlxyXG4gICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcclxuICAgIFtzZWxlY3RBbGxdPVwic2VsZWN0QWxsXCJcclxuICAgIFtzZWxlY3RBbGxUZXh0XT1cImdldFNlbGVjdEFsbFRleHRcIlxyXG4gICAgW25vZGVUcGxdPVwibm9kZVRwbFwiXHJcbiAgICBbc2Nyb2xsRWxlbWVudF09XCJzZWFyY2ggPyBzY3JvbGxOdWxsIDogdHJlZVNlbGVjdFBvcnRhbFwiXHJcbiAgICBbdmlydHVhbFNjcm9sbF09XCJ2aXJ0dWFsU2Nyb2xsXCJcclxuICAgIFtzaXplXT1cInNpemVcIlxyXG4gICAgW2hlaWdodEFkYXB0aW9uXT1cInRyZWVTZWxlY3RQb3J0YWxcIlxyXG4gID48L3gtbGlzdD4gLS0+XHJcbiAgPHgtdHJlZVxyXG4gICAgI3RyZWVcclxuICAgIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgW2xhYmVsVHBsXT1cIm5vZGVUcGxcIlxyXG4gICAgW3ZpcnR1YWxTY3JvbGxdPVwidmlydHVhbFNjcm9sbFwiXHJcbiAgICBbc2Nyb2xsRWxlbWVudF09XCJzZWFyY2ggPyBzY3JvbGxOdWxsIDogdHJlZVNlbGVjdFBvcnRhbFwiXHJcbiAgICBbaGVpZ2h0QWRhcHRpb25dPVwidHJlZVNlbGVjdFBvcnRhbFwiXHJcbiAgICBbZXhwYW5kZWRMZXZlbF09XCJleHBhbmRlZExldmVsXCJcclxuICAgIFsoYWN0aXZhdGVkSWQpXT1cInZhbHVlXCJcclxuICAgIChub2RlQ2xpY2spPVwibm9kZUNsaWNrKCRldmVudClcIlxyXG4gICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcclxuICAgIFthbGxvd01hbnlBY3RpdmF0ZWRdPVwibXVsdGlwbGVcIlxyXG4gICAgW29iamVjdEFycmF5XT1cIm9iamVjdEFycmF5XCJcclxuICAgIFtrZXl3b3JkVGV4dF09XCJrZXl3b3JkVGV4dFwiXHJcbiAgICBbY2FzZVNlbnNpdGl2ZV09XCJjYXNlU2Vuc2l0aXZlXCJcclxuICA+PC94LXRyZWU+XHJcbiAgPHgtZW1wdHkgKm5nSWY9XCJpc0VtcHR5XCI+PC94LWVtcHR5PlxyXG48L2Rpdj5cclxuIl19
|