@acorex/platform 18.0.14 → 18.0.15
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/esm2022/auth/lib/session.service.mjs +7 -5
- package/esm2022/layout/builder/lib/builder/widget-catalog.mjs +3 -2
- package/esm2022/layout/builder/lib/builder/widget.types.mjs +8 -3
- package/esm2022/layout/designer/index.mjs +2 -2
- package/esm2022/layout/designer/lib/board/board.component.mjs +27 -7
- package/esm2022/layout/designer/lib/designer/designer.component.mjs +3 -3
- package/esm2022/layout/designer/lib/header-menu/header-menu.component.mjs +1 -1
- package/esm2022/layout/designer/lib/outline/outline.component.mjs +3 -3
- package/esm2022/layout/designer/lib/preview/preview.component.mjs +3 -3
- package/esm2022/layout/designer/lib/widget-designer-renderer.directive.mjs +224 -0
- package/esm2022/layout/entity/lib/entity-master-list.viewmodel.mjs +15 -5
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.mjs +30 -17
- package/esm2022/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.mjs +19 -9
- package/esm2022/widgets/lib/properties/editors.props.mjs +19 -96
- package/esm2022/widgets/lib/properties/general.props.mjs +96 -0
- package/esm2022/widgets/lib/properties/index.mjs +3 -1
- package/esm2022/widgets/lib/properties/layout.props.mjs +138 -33
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-designer.component.mjs +54 -0
- package/esm2022/widgets/lib/widgets/actions/button/button-widget-view.component.mjs +3 -2
- package/esm2022/widgets/lib/widgets/actions/button/button-widget.config.mjs +2 -2
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/advance/file/file-box-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/advance/gallery/gallery-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget-edit.component.mjs +12 -3
- package/esm2022/widgets/lib/widgets/advance/map/map-box-widget.config.mjs +8 -3
- package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/advance/qrcode/qrcode-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget-edit.component.mjs +12 -3
- package/esm2022/widgets/lib/widgets/advance/signature/signature-pad-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.mjs +54 -0
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.mjs +21 -21
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget-view.component.mjs +4 -1
- package/esm2022/widgets/lib/widgets/editors/checkbox/checkbox-widget.config.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-designer.component.mjs +53 -0
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget-edit.component.mjs +24 -12
- package/esm2022/widgets/lib/widgets/editors/color/color-box-widget.config.mjs +14 -6
- package/esm2022/widgets/lib/widgets/editors/contact/contact-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/date-time/date-time-box-widget.config.mjs +4 -2
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/email/email-box-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/large-text/large-text-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/link/link-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/number/number-box-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget-edit.component.mjs +12 -8
- package/esm2022/widgets/lib/widgets/editors/password/password-box-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/phone/phone-box-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.mjs +14 -5
- package/esm2022/widgets/lib/widgets/editors/rich-text/rich-text-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-edit.component.mjs +12 -3
- package/esm2022/widgets/lib/widgets/editors/select/select-box-widget-view.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget-edit.component.mjs +13 -4
- package/esm2022/widgets/lib/widgets/editors/text/text-box-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.mjs +14 -4
- package/esm2022/widgets/lib/widgets/editors/toggle/toggle-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-designer.component.mjs +40 -17
- package/esm2022/widgets/lib/widgets/layout/block/block-widget-view.component.mjs +17 -3
- package/esm2022/widgets/lib/widgets/layout/block/block-widget.config.mjs +8 -3
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget-designer.component.mjs +19 -9
- package/esm2022/widgets/lib/widgets/layout/form-field/form-field-widget.config.mjs +3 -2
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget-designer.component.mjs +21 -10
- package/esm2022/widgets/lib/widgets/layout/grid/grid-widget.config.mjs +7 -4
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget-designer.component.mjs +49 -41
- package/esm2022/widgets/lib/widgets/layout/grid-item/grid-item-widget.config.mjs +5 -8
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.mjs +84 -0
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-print.component.mjs +19 -0
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget-view.component.mjs +18 -0
- package/esm2022/widgets/lib/widgets/layout/grid-row/grid-row-widget.config.mjs +28 -0
- package/esm2022/widgets/lib/widgets/layout/grid-row/index.mjs +5 -0
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-designer.component.mjs +8 -9
- package/esm2022/widgets/lib/widgets/layout/page/page-widget-view.component.mjs +1 -2
- package/esm2022/widgets/lib/widgets/layout/page/page-widget.config.mjs +2 -2
- package/esm2022/widgets/lib/widgets/layout/repeater/repeater-widget-designer.component.mjs +6 -6
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget-designer.component.mjs +38 -0
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget-view.component.mjs +3 -2
- package/esm2022/widgets/lib/widgets/layout/text-block/text-block-widget.config.mjs +4 -5
- package/esm2022/widgets/lib/widgets.module.mjs +4 -1
- package/fesm2022/acorex-platform-auth.mjs +6 -4
- package/fesm2022/acorex-platform-auth.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +9 -3
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer-preview.component-9dJh_ulU.mjs +23 -0
- package/fesm2022/acorex-platform-layout-designer-preview.component-9dJh_ulU.mjs.map +1 -0
- package/fesm2022/acorex-platform-layout-designer.mjs +82 -87
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +12 -2
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-DKNRxpQk.mjs → acorex-platform-themes-default-entity-master-create-view.component-BGT0puX_.mjs} +25 -15
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-BGT0puX_.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-entity-master-modify-view.component-BDk03AnX.mjs → acorex-platform-themes-default-entity-master-modify-view.component-BHo31YVi.mjs} +7 -7
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BHo31YVi.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs → acorex-platform-themes-default-error-401.component-zyAGwz2j.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-error-401.component-D5QQ2HAv.mjs.map → acorex-platform-themes-default-error-401.component-zyAGwz2j.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs → acorex-platform-themes-default-error-404.component-DcxQ89LL.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-error-404.component-DSY_D3Iq.mjs.map → acorex-platform-themes-default-error-404.component-DcxQ89LL.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs → acorex-platform-themes-default-error-offline.component-BMB6D5Cx.mjs} +3 -3
- package/fesm2022/{acorex-platform-themes-default-error-offline.component-B6wSkMdd.mjs.map → acorex-platform-themes-default-error-offline.component-BMB6D5Cx.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default.mjs +40 -34
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-C0S_HJkl.mjs +57 -0
- package/fesm2022/acorex-platform-widgets-button-widget-designer.component-C0S_HJkl.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-DfUr_DMU.mjs +57 -0
- package/fesm2022/acorex-platform-widgets-checkbox-widget-designer.component-DfUr_DMU.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-checkbox-widget-view.component-BCsej7C6.mjs → acorex-platform-widgets-checkbox-widget-view.component-tPk6Gylo.mjs} +4 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-tPk6Gylo.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-BF24k3Y-.mjs +56 -0
- package/fesm2022/acorex-platform-widgets-color-box-widget-designer.component-BF24k3Y-.mjs.map +1 -0
- package/fesm2022/{acorex-platform-widgets-page-widget-designer.component-DlfG4EP1.mjs → acorex-platform-widgets-page-widget-designer.component-6BMZ0qRw.mjs} +8 -9
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-6BMZ0qRw.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs +41 -0
- package/fesm2022/acorex-platform-widgets-text-block-widget-designer.component-Bi9hlpvB.mjs.map +1 -0
- package/fesm2022/acorex-platform-widgets.mjs +1012 -469
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/layout/builder/lib/builder/widget.types.d.ts +8 -5
- package/layout/designer/index.d.ts +1 -1
- package/layout/designer/lib/board/board.component.d.ts +2 -0
- package/layout/designer/lib/{widget-designer-renderer.component.d.ts → widget-designer-renderer.directive.d.ts} +6 -8
- package/package.json +12 -12
- package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +4 -1
- package/themes/default/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.d.ts +1 -1
- package/widgets/lib/properties/editors.props.d.ts +1 -5
- package/widgets/lib/properties/general.props.d.ts +6 -0
- package/widgets/lib/properties/index.d.ts +2 -0
- package/widgets/lib/properties/layout.props.d.ts +12 -3
- package/widgets/lib/widgets/actions/button/button-widget-designer.component.d.ts +15 -0
- package/widgets/lib/widgets/actions/button/button-widget-view.component.d.ts +1 -1
- package/widgets/lib/widgets/advance/file/file-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/advance/gallery/gallery-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/advance/map/map-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/advance/qrcode/qrcode-widget-view.component.d.ts +1 -0
- package/widgets/lib/widgets/advance/signature/signature-pad-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/checkbox/checkbox-widget-designer.component.d.ts +10 -0
- package/widgets/lib/widgets/editors/checkbox/checkbox-widget-edit.component.d.ts +2 -5
- package/widgets/lib/widgets/editors/checkbox/checkbox-widget-view.component.d.ts +3 -0
- package/widgets/lib/widgets/editors/color/color-box-widget-designer.component.d.ts +11 -0
- package/widgets/lib/widgets/editors/color/color-box-widget-edit.component.d.ts +3 -0
- package/widgets/lib/widgets/editors/contact/contact-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/date-time/date-time-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/email/email-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/large-text/large-text-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/link/link-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/number/number-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/password/password-box-widget-edit.component.d.ts +1 -2
- package/widgets/lib/widgets/editors/phone/phone-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/rich-text/rich-text-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/select/select-box-widget-view.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/selection-list/selection-list-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/text/text-box-widget-edit.component.d.ts +1 -0
- package/widgets/lib/widgets/editors/toggle/toggle-widget-edit.component.d.ts +2 -1
- package/widgets/lib/widgets/layout/block/block-widget-designer.component.d.ts +5 -1
- package/widgets/lib/widgets/layout/block/block-widget-view.component.d.ts +3 -0
- package/widgets/lib/widgets/layout/form-field/form-field-widget-designer.component.d.ts +2 -1
- package/widgets/lib/widgets/layout/grid/grid-widget-designer.component.d.ts +3 -2
- package/widgets/lib/widgets/layout/grid-item/grid-item-widget-designer.component.d.ts +6 -4
- package/widgets/lib/widgets/layout/grid-row/grid-row-widget-designer.component.d.ts +15 -0
- package/widgets/lib/widgets/layout/grid-row/grid-row-widget-print.component.d.ts +6 -0
- package/widgets/lib/widgets/layout/grid-row/grid-row-widget-view.component.d.ts +6 -0
- package/widgets/lib/widgets/layout/grid-row/grid-row-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/layout/grid-row/index.d.ts +4 -0
- package/widgets/lib/widgets/layout/page/page-widget-designer.component.d.ts +3 -2
- package/widgets/lib/widgets/layout/text-block/text-block-widget-designer.component.d.ts +11 -0
- package/widgets/lib/widgets/layout/text-block/text-block-widget-view.component.d.ts +1 -1
- package/esm2022/layout/designer/lib/widget-designer-renderer.component.mjs +0 -251
- package/fesm2022/acorex-platform-layout-designer-preview.component-xkvSLydm.mjs +0 -23
- package/fesm2022/acorex-platform-layout-designer-preview.component-xkvSLydm.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-DKNRxpQk.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-BDk03AnX.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-checkbox-widget-view.component-BCsej7C6.mjs.map +0 -1
- package/fesm2022/acorex-platform-widgets-page-widget-designer.component-DlfG4EP1.mjs.map +0 -1
|
@@ -151,15 +151,17 @@ export class AXPSessionService {
|
|
|
151
151
|
async setTenant(tenant) {
|
|
152
152
|
defaultIfEmpty;
|
|
153
153
|
this.currentTenantSubject.next(tenant);
|
|
154
|
-
if (tenant)
|
|
154
|
+
if (tenant) {
|
|
155
155
|
this.updateSession({ tenant: tenant });
|
|
156
|
-
|
|
156
|
+
await this.refreshToken();
|
|
157
|
+
}
|
|
157
158
|
}
|
|
158
159
|
async setApplication(application) {
|
|
159
160
|
this.currentApplicationSubject.next(application);
|
|
160
|
-
if (application)
|
|
161
|
+
if (application) {
|
|
161
162
|
this.updateSession({ application: application });
|
|
162
|
-
|
|
163
|
+
await this.refreshToken();
|
|
164
|
+
}
|
|
163
165
|
}
|
|
164
166
|
async loadPermissions() {
|
|
165
167
|
try {
|
|
@@ -260,4 +262,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
260
262
|
providedIn: 'root',
|
|
261
263
|
}]
|
|
262
264
|
}] });
|
|
263
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9hdXRoL3NyYy9saWIvc2Vzc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsY0FBYyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpFLE9BQU8sRUFBYyxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPM0QsTUFBTSxPQUFPLGlCQUFpQjtJQUg5QjtRQUlVLFVBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEIseUJBQW9CLEdBQUcsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUM7UUFHckQscUJBQWdCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDakQsa0JBQWEsR0FBRyxNQUFNLENB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QUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVNLFFBQVE7UUFDYixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFMUMsT0FBTyxXQUFXLEVBQUUsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXhDLElBQUksV0FBVyxJQUFJLFdBQVcsRUFBRSxXQUFXLElBQUksV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3JFLE1BQU0sYUFBYSxHQUFHLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0RCxJQUFJLGFBQWEsR0FBRyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQy9CLHVCQUF1QjtnQkFDdkIsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFVBQVU7UUFDaEIsT0FBTyxJQUFJLGlCQUFpQixDQUFDO1lBQzNCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7U0FDOUIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0E1UVUsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7MkZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUFNpZ25JbkFjdGlvbiwgQVhQU2lnbk91dEFjdGlvbiB9IGZyb20gJ0BhY29yZXgvcGxhdGZvcm0vY29tbW9uJztcbmltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBpc0VtcHR5LCBtZXJnZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIGRlZmF1bHRJZkVtcHR5LCBmaXJzdFZhbHVlRnJvbSwgbWFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhQX0FQUExJQ0FUSU9OX0xPQURFUiB9IGZyb20gJy4vYXBwbGljYXRpb24vYXBwbGljYXRpb24ubG9hZGVyJztcbmltcG9ydCB7IEFYUEFwcGxpY2F0aW9uIH0gZnJvbSAnLi9hcHBsaWNhdGlvbi9hcHBsaWNhdGlvbi50eXBlcyc7XG5pbXBvcnQgeyBBWFBBdXRoU3RyYXRlZ3lSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuL2F1dGgtcmVnaXN0cnkuc2VydmljZSc7XG5pbXBvcnQgeyBBWFBCYXNlQ3JlZGVudGlhbHMsIEFYUFNlc3Npb25EYXRhIH0gZnJvbSAnLi9hdXRoLnN0cmF0ZWd5JztcbmltcG9ydCB7IEFYUEZlYXR1cmUsIEFYUF9GRUFUVVJFX0xPQURFUiB9IGZyb20gJy4vZmVhdHVyZSc7XG5pbXBvcnQgeyBBWFBfUEVSTUlTU0lPTl9MT0FERVIgfSBmcm9tICcuL3Blcm1pc3Npb24vcGVybWlzc2lvbi5sb2FkZXInO1xuaW1wb3J0IHsgQVhQUGVybWlzc2lvbiB9IGZyb20gJy4vcGVybWlzc2lvbi9wZXJtaXNzaW9uLnR5cGVzJztcbmltcG9ydCB7IEFYUFNlc3Npb25Db250ZXh0LCBBWFBTZXNzaW9uU3RhdHVzIH0gZnJvbSAnLi9zZXNzaW9uLnR5cGVzJztcbmltcG9ydCB7IEFYUF9URU5BTlRfTE9BREVSIH0gZnJvbSAnLi90ZW5hbnQvdGVuYW50LmxvYWRlcic7XG5pbXBvcnQgeyBBWFBUZW5hbnQgfSBmcm9tICcuL3RlbmFudC90ZW5hbnQudHlwZXMnO1xuaW1wb3J0IHsgQVhQVXNlciB9IGZyb20gJy4vdXNlci91c2VyLnR5cGVzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEFYUFNlc3Npb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzdG9yZSA9IGluamVjdChTdG9yZSk7XG5cbiAgcHJpdmF0ZSBhdXRoU3RyYXRlZ3lSZWdpc3RyeSA9IGluamVjdChBWFBBdXRoU3RyYXRlZ3lSZWdpc3RyeVNlcnZpY2UpO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNFU1NJT05fS0VZID0gJ0FYUF9TRVNTSU9OJztcblxuICBwcml2YXRlIHJlYWRvbmx5IHBlcm1pc3Npb25Mb2FkZXIgPSBpbmplY3QoQVhQX1BFUk1JU1NJT05fTE9BREVSKTtcbiAgcHJpdmF0ZSByZWFkb25seSBmZWF0dXJlTG9hZGVyID0gaW5qZWN0KEFYUF9GRUFUVVJFX0xPQURFUik7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGVuYW50TG9hZGVyID0gaW5qZWN0KEFYUF9URU5BTlRfTE9BREVSKTtcbiAgcHJpdmF0ZSByZWFkb25seSBhcHBsaWNhdGlvbkxvYWRlciA9IGluamVjdChBWFBfQVBQTElDQVRJT05fTE9BREVSKTtcblxuICBwcml2YXRlIHN0YXR1cyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QVhQU2Vzc2lvblN0YXR1cz4oQVhQU2Vzc2lvblN0YXR1cy5VbmF1dGhlbnRpY2F0ZWQpO1xuICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzJCA9IHRoaXMuc3RhdHVzLmFzT2JzZXJ2YWJsZSgpLnBpcGUoc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHByaXZhdGUgY3VycmVudFVzZXJTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBWFBVc2VyIHwgbnVsbD4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSB1c2VyJCA9IHRoaXMuY3VycmVudFVzZXJTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoc2hhcmVSZXBsYXkoMSkpO1xuICBwdWJsaWMgZ2V0IHVzZXIoKTogQVhQVXNlciB8IG51bGwge1xuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG4gICAgaWYgKHNlc3Npb24/LnVzZXIgJiYgIXRoaXMuY3VycmVudFVzZXJTdWJqZWN0LnZhbHVlKSB7XG4gICAgICB0aGlzLmN1cnJlbnRVc2VyU3ViamVjdC5uZXh0KHNlc3Npb24udXNlcik7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmN1cnJlbnRVc2VyU3ViamVjdC52YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgY3VycmVudFRlbmFudFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFYUFRlbmFudCB8IG51bGw+KG51bGwpO1xuICBwdWJsaWMgcmVhZG9ubHkgdGVuYW50JCA9IHRoaXMuY3VycmVudFRlbmFudFN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShzaGFyZVJlcGxheSgxKSk7XG4gIHB1YmxpYyBnZXQgdGVuYW50KCk6IEFYUFRlbmFudCB8IG51bGwge1xuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG4gICAgaWYgKHNlc3Npb24/LnRlbmFudCAmJiAhdGhpcy5jdXJyZW50VGVuYW50U3ViamVjdC52YWx1ZSkge1xuICAgICAgdGhpcy5jdXJyZW50VGVuYW50U3ViamVjdC5uZXh0KHNlc3Npb24udGVuYW50KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFRlbmFudFN1YmplY3QudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRlbmFudHMkKCk6IE9ic2VydmFibGU8QVhQVGVuYW50W10+IHtcbiAgICByZXR1cm4gdGhpcy50ZW5hbnRMb2FkZXIuZ2V0TGlzdCh0aGlzLmdldENvbnRleHQoKSk7XG4gIH1cblxuICBwcml2YXRlIGN1cnJlbnRBcHBsaWNhdGlvblN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFYUEFwcGxpY2F0aW9uIHwgbnVsbD4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBhcHBsaWNhdGlvbiQgPSB0aGlzLmN1cnJlbnRBcHBsaWNhdGlvblN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShzaGFyZVJlcGxheSgxKSk7XG4gIHB1YmxpYyBnZXQgYXBwbGljYXRpb24oKTogQVhQQXBwbGljYXRpb24gfCBudWxsIHtcbiAgICBjb25zdCBzZXNzaW9uID0gdGhpcy5nZXRTZXNzaW9uRGF0YSgpO1xuICAgIGlmIChzZXNzaW9uPy5hcHBsaWNhdGlvbiAmJiAhdGhpcy5jdXJyZW50QXBwbGljYXRpb25TdWJqZWN0LnZhbHVlKSB7XG4gICAgICB0aGlzLmN1cnJlbnRBcHBsaWNhdGlvblN1YmplY3QubmV4dChzZXNzaW9uLmFwcGxpY2F0aW9uKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudEFwcGxpY2F0aW9uU3ViamVjdC52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBwbGljYXRpb25zJCgpOiBPYnNlcnZhYmxlPEFYUEFwcGxpY2F0aW9uW10+IHtcbiAgICByZXR1cm4gdGhpcy5hcHBsaWNhdGlvbkxvYWRlci5nZXRMaXN0KHRoaXMuZ2V0Q29udGV4dCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgcGVybWlzc2lvbnNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBWFBQZXJtaXNzaW9uW10+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IHBlcm1pc3Npb25zJCA9IHRoaXMucGVybWlzc2lvbnNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoc2hhcmVSZXBsYXkoMSksIGRlZmF1bHRJZkVtcHR5KFtdKSk7XG4gIHB1YmxpYyBnZXQgcGVybWlzc2lvbnMoKTogQVhQUGVybWlzc2lvbltdIHtcbiAgICByZXR1cm4gdGhpcy5wZXJtaXNzaW9uc1N1YmplY3QudmFsdWUgPz8gW107XG4gIH1cblxuICBwcml2YXRlIGZlYXR1cmVzU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QVhQRmVhdHVyZVtdPihbXSk7XG4gIHB1YmxpYyByZWFkb25seSBmZWF0dXJlcyQgPSB0aGlzLmZlYXR1cmVzU3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKHNoYXJlUmVwbGF5KDEpLCBkZWZhdWx0SWZFbXB0eShbXSkpO1xuICBwdWJsaWMgZ2V0IGZlYXR1cmVzKCk6IEFYUEZlYXR1cmVbXSB7XG4gICAgcmV0dXJuIHRoaXMuZmVhdHVyZXNTdWJqZWN0LnZhbHVlID8/IFtdO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IGlzQXV0aGVudGljYXRlZCQgPSB0aGlzLnN0YXR1cyQucGlwZShcbiAgICBtYXAoKHN0YXR1cykgPT4gc3RhdHVzID09PSBBWFBTZXNzaW9uU3RhdHVzLkF1dGhlbnRpY2F0ZWQgfHwgc3RhdHVzID09PSBBWFBTZXNzaW9uU3RhdHVzLkF1dGhvcml6ZWQpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlzQXV0aG9yaXplZCQgPSB0aGlzLnN0YXR1cyQucGlwZShcbiAgICBtYXAoKHN0YXR1cykgPT4gc3RhdHVzID09PSBBWFBTZXNzaW9uU3RhdHVzLkF1dGhvcml6ZWQpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcHVibGljIGFzeW5jIHJlc3RvcmVTZXNzaW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHNlc3Npb25EYXRhID0gdGhpcy5nZXRTZXNzaW9uRGF0YSgpO1xuICAgIGlmIChzZXNzaW9uRGF0YSkge1xuICAgICAgaWYgKHNlc3Npb25EYXRhLnVzZXIpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50VXNlclN1YmplY3QubmV4dChzZXNzaW9uRGF0YS51c2VyKTtcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dChBWFBTZXNzaW9uU3RhdHVzLkF1dGhlbnRpY2F0ZWQpO1xuICAgICAgfVxuICAgICAgLy8gaWYgKHNlc3Npb25EYXRhLnRlbmFudCkge1xuICAgICAgLy8gICB0aGlzLnNldFRlbmFudChzZXNzaW9uRGF0YS50ZW5hbnQpO1xuICAgICAgLy8gfVxuICAgICAgLy8gaWYgKHNlc3Npb25EYXRhLmFwcGxpY2F0aW9uKSB7XG4gICAgICAvLyAgIHRoaXMuc2V0QXBwbGljYXRpb24oc2Vzc2lvbkRhdGEuYXBwbGljYXRpb24pO1xuICAgICAgLy8gfVxuICAgICAgYXdhaXQgdGhpcy5zaWduSW5Db21wbGV0ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YXR1cy5uZXh0KEFYUFNlc3Npb25TdGF0dXMuVW5hdXRob3JpemVkKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzaWduaW4oY3JlZGVudGlhbHM6IEFYUEJhc2VDcmVkZW50aWFscyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHN0cmF0ZWd5ID0gdGhpcy5hdXRoU3RyYXRlZ3lSZWdpc3RyeS5nZXQoY3JlZGVudGlhbHMuc3RyYXRlZ3kpO1xuICAgIGlmICghc3RyYXRlZ3kpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQXV0aGVudGljYXRpb24gc3RyYXRlZ3kgJyR7Y3JlZGVudGlhbHMuc3RyYXRlZ3l9JyBpcyBub3Qgc3VwcG9ydGVkYCk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHN0cmF0ZWd5LnNpZ25pbihjcmVkZW50aWFscyk7XG4gICAgaWYgKHJlc3VsdC5zdWNjZWVkKSB7XG4gICAgICB0aGlzLmN1cnJlbnRVc2VyU3ViamVjdC5uZXh0KHJlc3VsdC5kYXRhIS51c2VyKTtcbiAgICAgIHRoaXMuc2V0U2Vzc2lvbih7XG4gICAgICAgIGFjY2Vzc1Rva2VuOiByZXN1bHQuZGF0YSEuYWNjZXNzVG9rZW4sXG4gICAgICAgIHJlZnJlc2hUb2tlbjogcmVzdWx0LmRhdGEhLnJlZnJlc2hUb2tlbixcbiAgICAgICAgc3RyYXRlZ3k6IGNyZWRlbnRpYWxzLnN0cmF0ZWd5LFxuICAgICAgICB1c2VyOiByZXN1bHQuZGF0YSEudXNlcixcbiAgICAgICAgYXBwbGljYXRpb246IHJlc3VsdC5kYXRhPy5hcHBsaWNhdGlvbixcbiAgICAgICAgdGVuYW50OiByZXN1bHQuZGF0YT8udGVuYW50LFxuICAgICAgICBleHBpcmVzSW46IHJlc3VsdC5kYXRhPy5leHBpcmVzSW4sXG4gICAgICAgIGlkVG9rZW46IHJlc3VsdC5kYXRhPy5pZFRva2VuID8/IG51bGwsXG4gICAgICB9KTtcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQVhQU2Vzc2lvblN0YXR1cy5BdXRoZW50aWNhdGVkKTtcbiAgICAgIGlmICh0aGlzLmFwcGxpY2F0aW9uICYmIHRoaXMudGVuYW50KSBhd2FpdCB0aGlzLnNpZ25JbkNvbXBsZXRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQVhQU2Vzc2lvblN0YXR1cy5VbmF1dGhlbnRpY2F0ZWQpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIFVzZXJuYW1lIG9yIFBhc3N3b3JkYCk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2lnbm91dCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBzZXNzaW9uRGF0YSA9IHRoaXMuZ2V0U2Vzc2lvbkRhdGEoKTtcbiAgICBpZiAoc2Vzc2lvbkRhdGE/LnN0cmF0ZWd5KSB7XG4gICAgICBjb25zdCBzdHJhdGVneSA9IHRoaXMuYXV0aFN0cmF0ZWd5UmVnaXN0cnkuZ2V0KHNlc3Npb25EYXRhPy5zdHJhdGVneSk7XG4gICAgICBpZiAoc3RyYXRlZ3kpIHtcbiAgICAgICAgYXdhaXQgc3RyYXRlZ3kuc2lnbm91dCgpO1xuICAgICAgfVxuICAgIH1cbiAgICAvL1xuICAgIHRoaXMuY2xlYXJTZXNzaW9uKCk7XG4gICAgdGhpcy5zdGF0dXMubmV4dChBWFBTZXNzaW9uU3RhdHVzLlNpZ25lZE91dCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChBWFBTaWduT3V0QWN0aW9uKCkpO1xuICB9XG5cbiAgYXN5bmMgcmVmcmVzaFRva2VuKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IHNlc3Npb25EYXRhID0gdGhpcy5nZXRTZXNzaW9uRGF0YSgpO1xuICAgICAgaWYgKCFzZXNzaW9uRGF0YSB8fCAhc2Vzc2lvbkRhdGE/LnJlZnJlc2hUb2tlbikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBzdHJhdGVneSA9IHRoaXMuYXV0aFN0cmF0ZWd5UmVnaXN0cnkuZ2V0KHNlc3Npb25EYXRhLnN0cmF0ZWd5KTtcbiAgICAgIGlmICghc3RyYXRlZ3kpIHtcbiAgICAgICAgcmVqZWN0KCk7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQXV0aGVudGljYXRpb24gc3RyYXRlZ3kgJyR7c2Vzc2lvbkRhdGEuc3RyYXRlZ3l9JyBpcyBub3QgZm91bmRgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHN0cmF0ZWd5LnJlZnJlc2hUb2tlbih0aGlzLmdldENvbnRleHQoKSk7XG4gICAgICBpZiAocmVzdWx0LnN1Y2NlZWQpIHtcbiAgICAgICAgdGhpcy5zZXRTZXNzaW9uKHJlc3VsdC5kYXRhIGFzIEFYUFNlc3Npb25EYXRhKTtcbiAgICAgICAgcmVzb2x2ZShyZXN1bHQuZGF0YT8uYWNjZXNzVG9rZW4pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jbGVhclNlc3Npb24oKTtcbiAgICAgICAgdGhpcy5zdGF0dXMubmV4dChBWFBTZXNzaW9uU3RhdHVzLkV4cGlyZWQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgc2V0VGVuYW50KHRlbmFudDogQVhQVGVuYW50IHwgbnVsbCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGRlZmF1bHRJZkVtcHR5O1xuICAgIHRoaXMuY3VycmVudFRlbmFudFN1YmplY3QubmV4dCh0ZW5hbnQpO1xuICAgIGlmICh0ZW5hbnQpIHRoaXMudXBkYXRlU2Vzc2lvbih7IHRlbmFudDogdGVuYW50IH0pO1xuICAgIGF3YWl0IHRoaXMucmVmcmVzaFRva2VuKCk7XG4gIH1cblxuICBhc3luYyBzZXRBcHBsaWNhdGlvbihhcHBsaWNhdGlvbjogQVhQQXBwbGljYXRpb24gfCBudWxsKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5jdXJyZW50QXBwbGljYXRpb25TdWJqZWN0Lm5leHQoYXBwbGljYXRpb24pO1xuICAgIGlmIChhcHBsaWNhdGlvbikgdGhpcy51cGRhdGVTZXNzaW9uKHsgYXBwbGljYXRpb246IGFwcGxpY2F0aW9uIH0pO1xuICAgIGF3YWl0IHRoaXMucmVmcmVzaFRva2VuKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWRQZXJtaXNzaW9ucygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcGVybWlzc2lvbnMgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnBlcm1pc3Npb25Mb2FkZXIuZ2V0TGlzdCh0aGlzLmdldENvbnRleHQoKSkpO1xuICAgICAgdGhpcy5wZXJtaXNzaW9uc1N1YmplY3QubmV4dChwZXJtaXNzaW9ucyA/PyBbXSk7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFYUFNpZ25JbkFjdGlvbigpKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBwZXJtaXNzaW9uczonLCBlcnJvcik7XG4gICAgICB0aGlzLnBlcm1pc3Npb25zU3ViamVjdC5uZXh0KFtdKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGxvYWRGZWF0dXJlcygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgZmVhdHVyZXMgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZlYXR1cmVMb2FkZXIuZ2V0TGlzdCh0aGlzLmdldENvbnRleHQoKSkpO1xuICAgICAgdGhpcy5mZWF0dXJlc1N1YmplY3QubmV4dChmZWF0dXJlcyA/PyBbXSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGxvYWRpbmcgZmVhdHVyZXM6JywgZXJyb3IpO1xuICAgICAgdGhpcy5mZWF0dXJlc1N1YmplY3QubmV4dChbXSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgc2lnbkluQ29tcGxldGUoKSB7XG4gICAgYXdhaXQgdGhpcy5sb2FkUGVybWlzc2lvbnMoKTtcbiAgICBhd2FpdCB0aGlzLmxvYWRGZWF0dXJlcygpO1xuICAgIHRoaXMuc3RhdHVzLm5leHQoQVhQU2Vzc2lvblN0YXR1cy5BdXRob3JpemVkKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U2Vzc2lvbih0b2tlbnM6IFBhcnRpYWw8QVhQU2Vzc2lvbkRhdGE+KTogdm9pZCB7XG4gICAgY29uc3Qgc2Vzc2lvbkRhdGE6IFBhcnRpYWw8QVhQU2Vzc2lvbkRhdGE+ID0ge1xuICAgICAgYWNjZXNzVG9rZW46IHRva2Vucy5hY2Nlc3NUb2tlbixcbiAgICAgIHJlZnJlc2hUb2tlbjogdG9rZW5zLnJlZnJlc2hUb2tlbixcbiAgICAgIHN0cmF0ZWd5OiB0b2tlbnMuc3RyYXRlZ3ksXG4gICAgICB1c2VyOiB0aGlzLnVzZXIsXG4gICAgICBhcHBsaWNhdGlvbjogdG9rZW5zLmFwcGxpY2F0aW9uLFxuICAgICAgdGVuYW50OiB0b2tlbnMudGVuYW50LFxuICAgICAgZXhwaXJlc0luOiB0b2tlbnMuZXhwaXJlc0luLFxuICAgICAgaWRUb2tlbjogdG9rZW5zLmlkVG9rZW4sXG4gICAgfTtcbiAgICB0aGlzLnVwZGF0ZVNlc3Npb24oc2Vzc2lvbkRhdGEpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVTZXNzaW9uKHVwZGF0ZTogUGFydGlhbDxBWFBTZXNzaW9uRGF0YT4pIHtcbiAgICBjb25zdCBjdXJyZW50U2Vzc2lvbiA9IHRoaXMuZ2V0U2Vzc2lvbkRhdGEoKSA/PyB7fTtcbiAgICBjb25zdCB1cGRhdGVkU2Vzc2lvbiA9IG1lcmdlKHt9LCBjdXJyZW50U2Vzc2lvbiwgdXBkYXRlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShBWFBTZXNzaW9uU2VydmljZS5TRVNTSU9OX0tFWSwgSlNPTi5zdHJpbmdpZnkodXBkYXRlZFNlc3Npb24pKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTZXNzaW9uRGF0YSgpOiBBWFBTZXNzaW9uRGF0YSB8IG51bGwge1xuICAgIGNvbnN0IHNlc3Npb25EYXRhU3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oQVhQU2Vzc2lvblNlcnZpY2UuU0VTU0lPTl9LRVkpO1xuICAgIHJldHVybiBzZXNzaW9uRGF0YVN0cmluZyA/IEpTT04ucGFyc2Uoc2Vzc2lvbkRhdGFTdHJpbmcpIDogbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXJTZXNzaW9uKCk6IHZvaWQge1xuICAgIC8vXG4gICAgdGhpcy5jdXJyZW50VXNlclN1YmplY3QubmV4dChudWxsKTtcbiAgICAvL1xuICAgIHRoaXMuc2V0VGVuYW50KG51bGwpO1xuICAgIC8vXG4gICAgdGhpcy5zZXRBcHBsaWNhdGlvbihudWxsKTtcbiAgICAvL1xuICAgIHRoaXMucGVybWlzc2lvbnNTdWJqZWN0Lm5leHQoW10pO1xuICAgIC8vXG4gICAgdGhpcy5mZWF0dXJlc1N1YmplY3QubmV4dChbXSk7XG4gICAgLy9cbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShBWFBTZXNzaW9uU2VydmljZS5TRVNTSU9OX0tFWSk7XG4gIH1cblxuICBwdWJsaWMgYXV0aG9yaXplKC4uLmtleXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGtleXMuZXZlcnkoKGspID0+IGlzRW1wdHkoaykgfHwgdGhpcy5wZXJtaXNzaW9ucy5pbmRleE9mKGspID4gLTEpO1xuICB9XG5cbiAgcHVibGljIGlzRmVhdHVyZUVuYWJsZWQoLi4ua2V5czogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICByZXR1cm4ga2V5cy5ldmVyeSgoaykgPT4gaXNFbXB0eShrKSB8fCB0aGlzLmZlYXR1cmVzLnNvbWUoKGMpID0+IGMubmFtZSA9PSBrICYmIGMudmFsdWUgPT0gdHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldFRva2VuKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3Qgc2Vzc2lvbkRhdGEgPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG5cbiAgICByZXR1cm4gc2Vzc2lvbkRhdGE/LmFjY2Vzc1Rva2VuO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1Rva2VuVmFsaWRhdGlvbigpOiBib29sZWFuIHtcbiAgICBsZXQgc2Vzc2lvbkRhdGEgPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG5cbiAgICBpZiAoc2Vzc2lvbkRhdGEgJiYgc2Vzc2lvbkRhdGE/LmFjY2Vzc1Rva2VuICYmIHNlc3Npb25EYXRhLmV4cGlyZXNJbikge1xuICAgICAgY29uc3QgZXhwaXJlc0luRGF0ZSA9IG5ldyBEYXRlKHNlc3Npb25EYXRhLmV4cGlyZXNJbik7XG4gICAgICBpZiAoZXhwaXJlc0luRGF0ZSA+IG5ldyBEYXRlKCkpIHtcbiAgICAgICAgLy8gVG9rZW4gaXMgc3RpbGwgdmFsaWRcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udGV4dCgpOiBBWFBTZXNzaW9uQ29udGV4dCB7XG4gICAgcmV0dXJuIG5ldyBBWFBTZXNzaW9uQ29udGV4dCh7XG4gICAgICB1c2VyOiB0aGlzLnVzZXIsXG4gICAgICB0ZW5hbnQ6IHRoaXMudGVuYW50LFxuICAgICAgYXBwbGljYXRpb246IHRoaXMuYXBwbGljYXRpb24sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
265
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9hdXRoL3NyYy9saWIvc2Vzc2lvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQWMsY0FBYyxFQUFFLGNBQWMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpFLE9BQU8sRUFBYyxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7QUFPM0QsTUFBTSxPQUFPLGlCQUFpQjtJQUg5QjtRQUlVLFVBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEIseUJBQW9CLEdBQUcsTUFBTSxDQUFDLDhCQUE4QixDQUFDLENBQUM7UUFHckQscUJBQWdCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDakQsa0JBQWEsR0FBRyxNQUFNLENB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QUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRU0sUUFBUTtRQUNiLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUUxQyxPQUFPLFdBQVcsRUFBRSxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFFeEMsSUFBSSxXQUFXLElBQUksV0FBVyxFQUFFLFdBQVcsSUFBSSxXQUFXLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDckUsTUFBTSxhQUFhLEdBQUcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RELElBQUksYUFBYSxHQUFHLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQztnQkFDL0IsdUJBQXVCO2dCQUN2QixPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU8sVUFBVTtRQUNoQixPQUFPLElBQUksaUJBQWlCLENBQUM7WUFDM0IsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztTQUM5QixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQWhSVSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQUZoQixNQUFNOzsyRkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQU2lnbkluQWN0aW9uLCBBWFBTaWduT3V0QWN0aW9uIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IGlzRW1wdHksIG1lcmdlIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgZGVmYXVsdElmRW1wdHksIGZpcnN0VmFsdWVGcm9tLCBtYXAsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBfQVBQTElDQVRJT05fTE9BREVSIH0gZnJvbSAnLi9hcHBsaWNhdGlvbi9hcHBsaWNhdGlvbi5sb2FkZXInO1xuaW1wb3J0IHsgQVhQQXBwbGljYXRpb24gfSBmcm9tICcuL2FwcGxpY2F0aW9uL2FwcGxpY2F0aW9uLnR5cGVzJztcbmltcG9ydCB7IEFYUEF1dGhTdHJhdGVneVJlZ2lzdHJ5U2VydmljZSB9IGZyb20gJy4vYXV0aC1yZWdpc3RyeS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUEJhc2VDcmVkZW50aWFscywgQVhQU2Vzc2lvbkRhdGEgfSBmcm9tICcuL2F1dGguc3RyYXRlZ3knO1xuaW1wb3J0IHsgQVhQRmVhdHVyZSwgQVhQX0ZFQVRVUkVfTE9BREVSIH0gZnJvbSAnLi9mZWF0dXJlJztcbmltcG9ydCB7IEFYUF9QRVJNSVNTSU9OX0xPQURFUiB9IGZyb20gJy4vcGVybWlzc2lvbi9wZXJtaXNzaW9uLmxvYWRlcic7XG5pbXBvcnQgeyBBWFBQZXJtaXNzaW9uIH0gZnJvbSAnLi9wZXJtaXNzaW9uL3Blcm1pc3Npb24udHlwZXMnO1xuaW1wb3J0IHsgQVhQU2Vzc2lvbkNvbnRleHQsIEFYUFNlc3Npb25TdGF0dXMgfSBmcm9tICcuL3Nlc3Npb24udHlwZXMnO1xuaW1wb3J0IHsgQVhQX1RFTkFOVF9MT0FERVIgfSBmcm9tICcuL3RlbmFudC90ZW5hbnQubG9hZGVyJztcbmltcG9ydCB7IEFYUFRlbmFudCB9IGZyb20gJy4vdGVuYW50L3RlbmFudC50eXBlcyc7XG5pbXBvcnQgeyBBWFBVc2VyIH0gZnJvbSAnLi91c2VyL3VzZXIudHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQVhQU2Vzc2lvblNlcnZpY2Uge1xuICBwcml2YXRlIHN0b3JlID0gaW5qZWN0KFN0b3JlKTtcblxuICBwcml2YXRlIGF1dGhTdHJhdGVneVJlZ2lzdHJ5ID0gaW5qZWN0KEFYUEF1dGhTdHJhdGVneVJlZ2lzdHJ5U2VydmljZSk7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgU0VTU0lPTl9LRVkgPSAnQVhQX1NFU1NJT04nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcGVybWlzc2lvbkxvYWRlciA9IGluamVjdChBWFBfUEVSTUlTU0lPTl9MT0FERVIpO1xuICBwcml2YXRlIHJlYWRvbmx5IGZlYXR1cmVMb2FkZXIgPSBpbmplY3QoQVhQX0ZFQVRVUkVfTE9BREVSKTtcbiAgcHJpdmF0ZSByZWFkb25seSB0ZW5hbnRMb2FkZXIgPSBpbmplY3QoQVhQX1RFTkFOVF9MT0FERVIpO1xuICBwcml2YXRlIHJlYWRvbmx5IGFwcGxpY2F0aW9uTG9hZGVyID0gaW5qZWN0KEFYUF9BUFBMSUNBVElPTl9MT0FERVIpO1xuXG4gIHByaXZhdGUgc3RhdHVzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBWFBTZXNzaW9uU3RhdHVzPihBWFBTZXNzaW9uU3RhdHVzLlVuYXV0aGVudGljYXRlZCk7XG4gIHB1YmxpYyByZWFkb25seSBzdGF0dXMkID0gdGhpcy5zdGF0dXMuYXNPYnNlcnZhYmxlKCkucGlwZShzaGFyZVJlcGxheSgxKSk7XG5cbiAgcHJpdmF0ZSBjdXJyZW50VXNlclN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFYUFVzZXIgfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IHVzZXIkID0gdGhpcy5jdXJyZW50VXNlclN1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShzaGFyZVJlcGxheSgxKSk7XG4gIHB1YmxpYyBnZXQgdXNlcigpOiBBWFBVc2VyIHwgbnVsbCB7XG4gICAgY29uc3Qgc2Vzc2lvbiA9IHRoaXMuZ2V0U2Vzc2lvbkRhdGEoKTtcbiAgICBpZiAoc2Vzc2lvbj8udXNlciAmJiAhdGhpcy5jdXJyZW50VXNlclN1YmplY3QudmFsdWUpIHtcbiAgICAgIHRoaXMuY3VycmVudFVzZXJTdWJqZWN0Lm5leHQoc2Vzc2lvbi51c2VyKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFVzZXJTdWJqZWN0LnZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXJyZW50VGVuYW50U3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QVhQVGVuYW50IHwgbnVsbD4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSB0ZW5hbnQkID0gdGhpcy5jdXJyZW50VGVuYW50U3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKHNoYXJlUmVwbGF5KDEpKTtcbiAgcHVibGljIGdldCB0ZW5hbnQoKTogQVhQVGVuYW50IHwgbnVsbCB7XG4gICAgY29uc3Qgc2Vzc2lvbiA9IHRoaXMuZ2V0U2Vzc2lvbkRhdGEoKTtcbiAgICBpZiAoc2Vzc2lvbj8udGVuYW50ICYmICF0aGlzLmN1cnJlbnRUZW5hbnRTdWJqZWN0LnZhbHVlKSB7XG4gICAgICB0aGlzLmN1cnJlbnRUZW5hbnRTdWJqZWN0Lm5leHQoc2Vzc2lvbi50ZW5hbnQpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jdXJyZW50VGVuYW50U3ViamVjdC52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGVuYW50cyQoKTogT2JzZXJ2YWJsZTxBWFBUZW5hbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLnRlbmFudExvYWRlci5nZXRMaXN0KHRoaXMuZ2V0Q29udGV4dCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgY3VycmVudEFwcGxpY2F0aW9uU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QVhQQXBwbGljYXRpb24gfCBudWxsPihudWxsKTtcbiAgcHVibGljIHJlYWRvbmx5IGFwcGxpY2F0aW9uJCA9IHRoaXMuY3VycmVudEFwcGxpY2F0aW9uU3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKHNoYXJlUmVwbGF5KDEpKTtcbiAgcHVibGljIGdldCBhcHBsaWNhdGlvbigpOiBBWFBBcHBsaWNhdGlvbiB8IG51bGwge1xuICAgIGNvbnN0IHNlc3Npb24gPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG4gICAgaWYgKHNlc3Npb24/LmFwcGxpY2F0aW9uICYmICF0aGlzLmN1cnJlbnRBcHBsaWNhdGlvblN1YmplY3QudmFsdWUpIHtcbiAgICAgIHRoaXMuY3VycmVudEFwcGxpY2F0aW9uU3ViamVjdC5uZXh0KHNlc3Npb24uYXBwbGljYXRpb24pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jdXJyZW50QXBwbGljYXRpb25TdWJqZWN0LnZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBhcHBsaWNhdGlvbnMkKCk6IE9ic2VydmFibGU8QVhQQXBwbGljYXRpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmFwcGxpY2F0aW9uTG9hZGVyLmdldExpc3QodGhpcy5nZXRDb250ZXh0KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBwZXJtaXNzaW9uc1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEFYUFBlcm1pc3Npb25bXT4oW10pO1xuICBwdWJsaWMgcmVhZG9ubHkgcGVybWlzc2lvbnMkID0gdGhpcy5wZXJtaXNzaW9uc1N1YmplY3QuYXNPYnNlcnZhYmxlKCkucGlwZShzaGFyZVJlcGxheSgxKSwgZGVmYXVsdElmRW1wdHkoW10pKTtcbiAgcHVibGljIGdldCBwZXJtaXNzaW9ucygpOiBBWFBQZXJtaXNzaW9uW10ge1xuICAgIHJldHVybiB0aGlzLnBlcm1pc3Npb25zU3ViamVjdC52YWx1ZSA/PyBbXTtcbiAgfVxuXG4gIHByaXZhdGUgZmVhdHVyZXNTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBWFBGZWF0dXJlW10+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IGZlYXR1cmVzJCA9IHRoaXMuZmVhdHVyZXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoc2hhcmVSZXBsYXkoMSksIGRlZmF1bHRJZkVtcHR5KFtdKSk7XG4gIHB1YmxpYyBnZXQgZmVhdHVyZXMoKTogQVhQRmVhdHVyZVtdIHtcbiAgICByZXR1cm4gdGhpcy5mZWF0dXJlc1N1YmplY3QudmFsdWUgPz8gW107XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgaXNBdXRoZW50aWNhdGVkJCA9IHRoaXMuc3RhdHVzJC5waXBlKFxuICAgIG1hcCgoc3RhdHVzKSA9PiBzdGF0dXMgPT09IEFYUFNlc3Npb25TdGF0dXMuQXV0aGVudGljYXRlZCB8fCBzdGF0dXMgPT09IEFYUFNlc3Npb25TdGF0dXMuQXV0aG9yaXplZCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgaXNBdXRob3JpemVkJCA9IHRoaXMuc3RhdHVzJC5waXBlKFxuICAgIG1hcCgoc3RhdHVzKSA9PiBzdGF0dXMgPT09IEFYUFNlc3Npb25TdGF0dXMuQXV0aG9yaXplZCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBwdWJsaWMgYXN5bmMgcmVzdG9yZVNlc3Npb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2Vzc2lvbkRhdGEgPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG4gICAgaWYgKHNlc3Npb25EYXRhKSB7XG4gICAgICBpZiAoc2Vzc2lvbkRhdGEudXNlcikge1xuICAgICAgICB0aGlzLmN1cnJlbnRVc2VyU3ViamVjdC5uZXh0KHNlc3Npb25EYXRhLnVzZXIpO1xuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEFYUFNlc3Npb25TdGF0dXMuQXV0aGVudGljYXRlZCk7XG4gICAgICB9XG4gICAgICAvLyBpZiAoc2Vzc2lvbkRhdGEudGVuYW50KSB7XG4gICAgICAvLyAgIHRoaXMuc2V0VGVuYW50KHNlc3Npb25EYXRhLnRlbmFudCk7XG4gICAgICAvLyB9XG4gICAgICAvLyBpZiAoc2Vzc2lvbkRhdGEuYXBwbGljYXRpb24pIHtcbiAgICAgIC8vICAgdGhpcy5zZXRBcHBsaWNhdGlvbihzZXNzaW9uRGF0YS5hcHBsaWNhdGlvbik7XG4gICAgICAvLyB9XG4gICAgICBhd2FpdCB0aGlzLnNpZ25JbkNvbXBsZXRlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhdHVzLm5leHQoQVhQU2Vzc2lvblN0YXR1cy5VbmF1dGhvcml6ZWQpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNpZ25pbihjcmVkZW50aWFsczogQVhQQmFzZUNyZWRlbnRpYWxzKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc3RyYXRlZ3kgPSB0aGlzLmF1dGhTdHJhdGVneVJlZ2lzdHJ5LmdldChjcmVkZW50aWFscy5zdHJhdGVneSk7XG4gICAgaWYgKCFzdHJhdGVneSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdXRoZW50aWNhdGlvbiBzdHJhdGVneSAnJHtjcmVkZW50aWFscy5zdHJhdGVneX0nIGlzIG5vdCBzdXBwb3J0ZWRgKTtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgc3RyYXRlZ3kuc2lnbmluKGNyZWRlbnRpYWxzKTtcbiAgICBpZiAocmVzdWx0LnN1Y2NlZWQpIHtcbiAgICAgIHRoaXMuY3VycmVudFVzZXJTdWJqZWN0Lm5leHQocmVzdWx0LmRhdGEhLnVzZXIpO1xuICAgICAgdGhpcy5zZXRTZXNzaW9uKHtcbiAgICAgICAgYWNjZXNzVG9rZW46IHJlc3VsdC5kYXRhIS5hY2Nlc3NUb2tlbixcbiAgICAgICAgcmVmcmVzaFRva2VuOiByZXN1bHQuZGF0YSEucmVmcmVzaFRva2VuLFxuICAgICAgICBzdHJhdGVneTogY3JlZGVudGlhbHMuc3RyYXRlZ3ksXG4gICAgICAgIHVzZXI6IHJlc3VsdC5kYXRhIS51c2VyLFxuICAgICAgICBhcHBsaWNhdGlvbjogcmVzdWx0LmRhdGE/LmFwcGxpY2F0aW9uLFxuICAgICAgICB0ZW5hbnQ6IHJlc3VsdC5kYXRhPy50ZW5hbnQsXG4gICAgICAgIGV4cGlyZXNJbjogcmVzdWx0LmRhdGE/LmV4cGlyZXNJbixcbiAgICAgICAgaWRUb2tlbjogcmVzdWx0LmRhdGE/LmlkVG9rZW4gPz8gbnVsbCxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zdGF0dXMubmV4dChBWFBTZXNzaW9uU3RhdHVzLkF1dGhlbnRpY2F0ZWQpO1xuICAgICAgaWYgKHRoaXMuYXBwbGljYXRpb24gJiYgdGhpcy50ZW5hbnQpIGF3YWl0IHRoaXMuc2lnbkluQ29tcGxldGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGF0dXMubmV4dChBWFBTZXNzaW9uU3RhdHVzLlVuYXV0aGVudGljYXRlZCk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgVXNlcm5hbWUgb3IgUGFzc3dvcmRgKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzaWdub3V0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHNlc3Npb25EYXRhID0gdGhpcy5nZXRTZXNzaW9uRGF0YSgpO1xuICAgIGlmIChzZXNzaW9uRGF0YT8uc3RyYXRlZ3kpIHtcbiAgICAgIGNvbnN0IHN0cmF0ZWd5ID0gdGhpcy5hdXRoU3RyYXRlZ3lSZWdpc3RyeS5nZXQoc2Vzc2lvbkRhdGE/LnN0cmF0ZWd5KTtcbiAgICAgIGlmIChzdHJhdGVneSkge1xuICAgICAgICBhd2FpdCBzdHJhdGVneS5zaWdub3V0KCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vXG4gICAgdGhpcy5jbGVhclNlc3Npb24oKTtcbiAgICB0aGlzLnN0YXR1cy5uZXh0KEFYUFNlc3Npb25TdGF0dXMuU2lnbmVkT3V0KTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKEFYUFNpZ25PdXRBY3Rpb24oKSk7XG4gIH1cblxuICBhc3luYyByZWZyZXNoVG9rZW4oKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3Qgc2Vzc2lvbkRhdGEgPSB0aGlzLmdldFNlc3Npb25EYXRhKCk7XG4gICAgICBpZiAoIXNlc3Npb25EYXRhIHx8ICFzZXNzaW9uRGF0YT8ucmVmcmVzaFRva2VuKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHN0cmF0ZWd5ID0gdGhpcy5hdXRoU3RyYXRlZ3lSZWdpc3RyeS5nZXQoc2Vzc2lvbkRhdGEuc3RyYXRlZ3kpO1xuICAgICAgaWYgKCFzdHJhdGVneSkge1xuICAgICAgICByZWplY3QoKTtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdXRoZW50aWNhdGlvbiBzdHJhdGVneSAnJHtzZXNzaW9uRGF0YS5zdHJhdGVneX0nIGlzIG5vdCBmb3VuZGApO1xuICAgICAgfVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgc3RyYXRlZ3kucmVmcmVzaFRva2VuKHRoaXMuZ2V0Q29udGV4dCgpKTtcbiAgICAgIGlmIChyZXN1bHQuc3VjY2VlZCkge1xuICAgICAgICB0aGlzLnNldFNlc3Npb24ocmVzdWx0LmRhdGEgYXMgQVhQU2Vzc2lvbkRhdGEpO1xuICAgICAgICByZXNvbHZlKHJlc3VsdC5kYXRhPy5hY2Nlc3NUb2tlbik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNsZWFyU2Vzc2lvbigpO1xuICAgICAgICB0aGlzLnN0YXR1cy5uZXh0KEFYUFNlc3Npb25TdGF0dXMuRXhwaXJlZCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBzZXRUZW5hbnQodGVuYW50OiBBWFBUZW5hbnQgfCBudWxsKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgZGVmYXVsdElmRW1wdHk7XG4gICAgdGhpcy5jdXJyZW50VGVuYW50U3ViamVjdC5uZXh0KHRlbmFudCk7XG4gICAgaWYgKHRlbmFudCkge1xuICAgICAgdGhpcy51cGRhdGVTZXNzaW9uKHsgdGVuYW50OiB0ZW5hbnQgfSk7XG4gICAgICBhd2FpdCB0aGlzLnJlZnJlc2hUb2tlbigpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHNldEFwcGxpY2F0aW9uKGFwcGxpY2F0aW9uOiBBWFBBcHBsaWNhdGlvbiB8IG51bGwpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmN1cnJlbnRBcHBsaWNhdGlvblN1YmplY3QubmV4dChhcHBsaWNhdGlvbik7XG4gICAgaWYgKGFwcGxpY2F0aW9uKSB7XG4gICAgICB0aGlzLnVwZGF0ZVNlc3Npb24oeyBhcHBsaWNhdGlvbjogYXBwbGljYXRpb24gfSk7XG4gICAgICBhd2FpdCB0aGlzLnJlZnJlc2hUb2tlbigpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZFBlcm1pc3Npb25zKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwZXJtaXNzaW9ucyA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMucGVybWlzc2lvbkxvYWRlci5nZXRMaXN0KHRoaXMuZ2V0Q29udGV4dCgpKSk7XG4gICAgICB0aGlzLnBlcm1pc3Npb25zU3ViamVjdC5uZXh0KHBlcm1pc3Npb25zID8/IFtdKTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goQVhQU2lnbkluQWN0aW9uKCkpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBsb2FkaW5nIHBlcm1pc3Npb25zOicsIGVycm9yKTtcbiAgICAgIHRoaXMucGVybWlzc2lvbnNTdWJqZWN0Lm5leHQoW10pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgbG9hZEZlYXR1cmVzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBmZWF0dXJlcyA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuZmVhdHVyZUxvYWRlci5nZXRMaXN0KHRoaXMuZ2V0Q29udGV4dCgpKSk7XG4gICAgICB0aGlzLmZlYXR1cmVzU3ViamVjdC5uZXh0KGZlYXR1cmVzID8/IFtdKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgbG9hZGluZyBmZWF0dXJlczonLCBlcnJvcik7XG4gICAgICB0aGlzLmZlYXR1cmVzU3ViamVjdC5uZXh0KFtdKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzaWduSW5Db21wbGV0ZSgpIHtcbiAgICBhd2FpdCB0aGlzLmxvYWRQZXJtaXNzaW9ucygpO1xuICAgIGF3YWl0IHRoaXMubG9hZEZlYXR1cmVzKCk7XG4gICAgdGhpcy5zdGF0dXMubmV4dChBWFBTZXNzaW9uU3RhdHVzLkF1dGhvcml6ZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRTZXNzaW9uKHRva2VuczogUGFydGlhbDxBWFBTZXNzaW9uRGF0YT4pOiB2b2lkIHtcbiAgICBjb25zdCBzZXNzaW9uRGF0YTogUGFydGlhbDxBWFBTZXNzaW9uRGF0YT4gPSB7XG4gICAgICBhY2Nlc3NUb2tlbjogdG9rZW5zLmFjY2Vzc1Rva2VuLFxuICAgICAgcmVmcmVzaFRva2VuOiB0b2tlbnMucmVmcmVzaFRva2VuLFxuICAgICAgc3RyYXRlZ3k6IHRva2Vucy5zdHJhdGVneSxcbiAgICAgIHVzZXI6IHRoaXMudXNlcixcbiAgICAgIGFwcGxpY2F0aW9uOiB0b2tlbnMuYXBwbGljYXRpb24sXG4gICAgICB0ZW5hbnQ6IHRva2Vucy50ZW5hbnQsXG4gICAgICBleHBpcmVzSW46IHRva2Vucy5leHBpcmVzSW4sXG4gICAgICBpZFRva2VuOiB0b2tlbnMuaWRUb2tlbixcbiAgICB9O1xuICAgIHRoaXMudXBkYXRlU2Vzc2lvbihzZXNzaW9uRGF0YSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVNlc3Npb24odXBkYXRlOiBQYXJ0aWFsPEFYUFNlc3Npb25EYXRhPikge1xuICAgIGNvbnN0IGN1cnJlbnRTZXNzaW9uID0gdGhpcy5nZXRTZXNzaW9uRGF0YSgpID8/IHt9O1xuICAgIGNvbnN0IHVwZGF0ZWRTZXNzaW9uID0gbWVyZ2Uoe30sIGN1cnJlbnRTZXNzaW9uLCB1cGRhdGUpO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKEFYUFNlc3Npb25TZXJ2aWNlLlNFU1NJT05fS0VZLCBKU09OLnN0cmluZ2lmeSh1cGRhdGVkU2Vzc2lvbikpO1xuICB9XG5cbiAgcHVibGljIGdldFNlc3Npb25EYXRhKCk6IEFYUFNlc3Npb25EYXRhIHwgbnVsbCB7XG4gICAgY29uc3Qgc2Vzc2lvbkRhdGFTdHJpbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShBWFBTZXNzaW9uU2VydmljZS5TRVNTSU9OX0tFWSk7XG4gICAgcmV0dXJuIHNlc3Npb25EYXRhU3RyaW5nID8gSlNPTi5wYXJzZShzZXNzaW9uRGF0YVN0cmluZykgOiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhclNlc3Npb24oKTogdm9pZCB7XG4gICAgLy9cbiAgICB0aGlzLmN1cnJlbnRVc2VyU3ViamVjdC5uZXh0KG51bGwpO1xuICAgIC8vXG4gICAgdGhpcy5zZXRUZW5hbnQobnVsbCk7XG4gICAgLy9cbiAgICB0aGlzLnNldEFwcGxpY2F0aW9uKG51bGwpO1xuICAgIC8vXG4gICAgdGhpcy5wZXJtaXNzaW9uc1N1YmplY3QubmV4dChbXSk7XG4gICAgLy9cbiAgICB0aGlzLmZlYXR1cmVzU3ViamVjdC5uZXh0KFtdKTtcbiAgICAvL1xuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKEFYUFNlc3Npb25TZXJ2aWNlLlNFU1NJT05fS0VZKTtcbiAgfVxuXG4gIHB1YmxpYyBhdXRob3JpemUoLi4ua2V5czogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICByZXR1cm4ga2V5cy5ldmVyeSgoaykgPT4gaXNFbXB0eShrKSB8fCB0aGlzLnBlcm1pc3Npb25zLmluZGV4T2YoaykgPiAtMSk7XG4gIH1cblxuICBwdWJsaWMgaXNGZWF0dXJlRW5hYmxlZCguLi5rZXlzOiBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBrZXlzLmV2ZXJ5KChrKSA9PiBpc0VtcHR5KGspIHx8IHRoaXMuZmVhdHVyZXMuc29tZSgoYykgPT4gYy5uYW1lID09IGsgJiYgYy52YWx1ZSA9PSB0cnVlKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VG9rZW4oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBzZXNzaW9uRGF0YSA9IHRoaXMuZ2V0U2Vzc2lvbkRhdGEoKTtcblxuICAgIHJldHVybiBzZXNzaW9uRGF0YT8uYWNjZXNzVG9rZW47XG4gIH1cblxuICBwcml2YXRlIGNoZWNrVG9rZW5WYWxpZGF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIGxldCBzZXNzaW9uRGF0YSA9IHRoaXMuZ2V0U2Vzc2lvbkRhdGEoKTtcblxuICAgIGlmIChzZXNzaW9uRGF0YSAmJiBzZXNzaW9uRGF0YT8uYWNjZXNzVG9rZW4gJiYgc2Vzc2lvbkRhdGEuZXhwaXJlc0luKSB7XG4gICAgICBjb25zdCBleHBpcmVzSW5EYXRlID0gbmV3IERhdGUoc2Vzc2lvbkRhdGEuZXhwaXJlc0luKTtcbiAgICAgIGlmIChleHBpcmVzSW5EYXRlID4gbmV3IERhdGUoKSkge1xuICAgICAgICAvLyBUb2tlbiBpcyBzdGlsbCB2YWxpZFxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb250ZXh0KCk6IEFYUFNlc3Npb25Db250ZXh0IHtcbiAgICByZXR1cm4gbmV3IEFYUFNlc3Npb25Db250ZXh0KHtcbiAgICAgIHVzZXI6IHRoaXMudXNlcixcbiAgICAgIHRlbmFudDogdGhpcy50ZW5hbnQsXG4gICAgICBhcHBsaWNhdGlvbjogdGhpcy5hcHBsaWNhdGlvbixcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -28,7 +28,8 @@ const AXPWidgetsCatalog = {
|
|
|
28
28
|
formField: 'form-field',
|
|
29
29
|
qrcode: 'qrcode',
|
|
30
30
|
grid: 'grid-layout',
|
|
31
|
-
gridItem: 'grid-item-layout'
|
|
31
|
+
gridItem: 'grid-item-layout',
|
|
32
|
+
gridRow: 'grid-row-layout',
|
|
32
33
|
};
|
|
33
34
|
export { AXPWidgetsCatalog };
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWNhdGFsb2cuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9idWlsZGVyL3NyYy9saWIvYnVpbGRlci93aWRnZXQtY2F0YWxvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLGlCQUFpQixHQUFzQjtJQUMzQyxRQUFRLEVBQUUsaUJBQWlCO0lBQzNCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLE9BQU8sRUFBRSxnQkFBZ0I7SUFDekIsUUFBUSxFQUFFLGtCQUFrQjtJQUM1QixLQUFLLEVBQUUsY0FBYztJQUNyQixTQUFTLEVBQUUsbUJBQW1CO0lBQzlCLElBQUksRUFBRSxhQUFhO0lBQ25CLE1BQU0sRUFBRSxlQUFlO0lBQ3ZCLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsS0FBSyxFQUFFLGNBQWM7SUFDckIsUUFBUSxFQUFFLGtCQUFrQjtJQUM1QixNQUFNLEVBQUUsZUFBZTtJQUN2QixhQUFhLEVBQUUsdUJBQXVCO0lBQ3RDLElBQUksRUFBRSxhQUFhO0lBQ25CLE1BQU0sRUFBRSxlQUFlO0lBQ3ZCLFdBQVcsRUFBRSxjQUFjO0lBQzNCLFVBQVUsRUFBRSxhQUFhO0lBQ3pCLGNBQWMsRUFBRSxpQkFBaUI7SUFDakMsZUFBZSxFQUFFLG1CQUFtQjtJQUNwQyxJQUFJLEVBQUUsTUFBTTtJQUNaLEdBQUcsRUFBRSxLQUFLO0lBQ1YsT0FBTyxFQUFFLFNBQVM7SUFDbEIsU0FBUyxFQUFFLFdBQVc7SUFDdEIsWUFBWSxFQUFFLGVBQWU7SUFDN0IsUUFBUSxFQUFFLGlCQUFpQjtJQUMzQixNQUFNLEVBQUUsZUFBZTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixNQUFNLEVBQUUsUUFBUTtJQUNoQixJQUFJLEVBQUUsYUFBYTtJQUNuQixRQUFRLEVBQUUsa0JBQWtCO0lBQzVCLE9BQU8sRUFBRSxpQkFBaUI7Q0FDM0IsQ0FBQztBQUVGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhQV2lkZ2V0VHlwZXNNYXAgfSBmcm9tICcuL3dpZGdldC50eXBlcyc7XG5cbmNvbnN0IEFYUFdpZGdldHNDYXRhbG9nOiBBWFBXaWRnZXRUeXBlc01hcCA9IHtcbiAgY2hlY2tib3g6ICdjaGVja2JveC1lZGl0b3InLFxuICBjb2xvcjogJ2NvbG9yLWVkaXRvcicsXG4gIGNvbnRhY3Q6ICdjb250YWN0LWVkaXRvcicsXG4gIGRhdGVUaW1lOiAnZGF0ZS10aW1lLWVkaXRvcicsXG4gIGVtYWlsOiAnZW1haWwtZWRpdG9yJyxcbiAgbGFyZ2VUZXh0OiAnbGFyZ2UtdGV4dC1lZGl0b3InLFxuICBsaW5rOiAnbGluay1lZGl0b3InLFxuICBudW1iZXI6ICdudW1iZXItZWRpdG9yJyxcbiAgcGFzc3dvcmQ6ICdwYXNzd29yZC1lZGl0b3InLFxuICBwaG9uZTogJ3Bob25lLWVkaXRvcicsXG4gIHJpY2hUZXh0OiAncmljaC10ZXh0LWVkaXRvcicsXG4gIHNlbGVjdDogJ3NlbGVjdC1lZGl0b3InLFxuICBzZWxlY3Rpb25MaXN0OiAnc2VsZWN0aW9uLWxpc3QtZWRpdG9yJyxcbiAgdGV4dDogJ3RleHQtZWRpdG9yJyxcbiAgdG9nZ2xlOiAndG9nZ2xlLWVkaXRvcicsXG4gIGJsb2NrTGF5b3V0OiAnYmxvY2stbGF5b3V0JyxcbiAgcGFnZUxheW91dDogJ3BhZ2UtbGF5b3V0JyxcbiAgcmVwZWF0ZXJMYXlvdXQ6ICdyZXBlYXRlci1sYXlvdXQnLFxuICB0ZXh0QmxvY2tMYXlvdXQ6ICd0ZXh0LWJsb2NrLWxheW91dCcsXG4gIGZpbGU6ICdmaWxlJyxcbiAgbWFwOiAnbWFwJyxcbiAgZ2FsbGVyeTogJ2dhbGxlcnknLFxuICBzaWduYXR1cmU6ICdzaWduYXR1cmUnLFxuICBidXR0b25BY3Rpb246ICdidXR0b24tYWN0aW9uJyxcbiAgZG9jdW1lbnQ6ICdkb2N1bWVudC1sYXlvdXQnLFxuICBsb29rdXA6ICdsb29rdXAtZWRpdG9yJyxcbiAgZm9ybUZpZWxkOiAnZm9ybS1maWVsZCcsXG4gIHFyY29kZTogJ3FyY29kZScsXG4gIGdyaWQ6ICdncmlkLWxheW91dCcsXG4gIGdyaWRJdGVtOiAnZ3JpZC1pdGVtLWxheW91dCcsXG4gIGdyaWRSb3c6ICdncmlkLXJvdy1sYXlvdXQnLFxufTtcblxuZXhwb3J0IHsgQVhQV2lkZ2V0c0NhdGFsb2cgfTtcbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Injectable, InjectionToken, afterNextRender, computed, inject, signal } from '@angular/core';
|
|
1
|
+
import { ElementRef, Injectable, InjectionToken, afterNextRender, computed, inject, signal } from '@angular/core';
|
|
2
2
|
import { cloneDeep, get, isUndefined, merge } from 'lodash-es';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import { AXPLayoutBuilderService, AXPLayoutElement } from './builder.service';
|
|
@@ -12,6 +12,7 @@ export class AXPWidgetComponent extends AXPLayoutElement {
|
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
14
|
this.token = inject(AXP_WIDGET_TOKEN);
|
|
15
|
+
this.host = inject(ElementRef).nativeElement;
|
|
15
16
|
this.path = this.token.node.path ?? `V${Math.random() * Math.pow(10, 18)}`;
|
|
16
17
|
this.name = this.token.node.name;
|
|
17
18
|
this.defaultValue = this.token.node.defaultValue;
|
|
@@ -102,6 +103,11 @@ export class AXPWidgetComponent extends AXPLayoutElement {
|
|
|
102
103
|
this.contextService.registerWidget(this._id, this);
|
|
103
104
|
}
|
|
104
105
|
}
|
|
106
|
+
handleValueChanged(e) {
|
|
107
|
+
if (e.isUserInteraction) {
|
|
108
|
+
this.setValue(e.value);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
105
111
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
106
112
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPWidgetComponent }); }
|
|
107
113
|
}
|
|
@@ -112,7 +118,6 @@ export class AXPContainerWidgetComponent extends AXPWidgetComponent {
|
|
|
112
118
|
constructor() {
|
|
113
119
|
super(...arguments);
|
|
114
120
|
this.node = this.token.node;
|
|
115
|
-
this.outerClass = signal({});
|
|
116
121
|
}
|
|
117
122
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPContainerWidgetComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
118
123
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPContainerWidgetComponent }); }
|
|
@@ -133,4 +138,4 @@ export class AXPColumnWidgetComponent {
|
|
|
133
138
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPColumnWidgetComponent, decorators: [{
|
|
134
139
|
type: Injectable
|
|
135
140
|
}] });
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvd2lkZ2V0LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFVLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBaUM5RSxNQUFNLFVBQVUsYUFBYSxDQUMzQixRQUEyQixFQUMzQixNQUEyQztJQUUzQyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDNUMsQ0FBQztBQThERCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBcUIsa0JBQWtCLENBQUMsQ0FBQztBQUMzRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLGNBQWMsQ0FBMkIseUJBQXlCLENBQUMsQ0FBQztBQXdDL0csTUFBTSxPQUFnQixrQkFBMEMsU0FBUSxnQkFBZ0I7SUFEeEY7O1FBRXFCLFVBQUssR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVqQyxTQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxF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QUNuQyxhQUFRLEdBQVEsSUFBSSxDQUFDO0tBQ3pDOzhHQU5xQix3QkFBd0I7a0hBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEN0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUE1ldGFEYXRhLCBBWFBPcHRpb25zRGF0YSwgQVhQUGFydGlhbE5lc3RlZCwgQVhQVmFsaWRhdGlvblJ1bGVzIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBTaWduYWwsIGFmdGVyTmV4dFJlbmRlciwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGdldCwgaXNVbmRlZmluZWQsIG1lcmdlIH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJTZXJ2aWNlLCBBWFBMYXlvdXRFbGVtZW50IH0gZnJvbSAnLi9idWlsZGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBBWFBXaWRnZXRUcmlnZ2VyID0geyBldmVudDogc3RyaW5nOyBhY3Rpb246IHN0cmluZzsgZGlzYWJsZWQ/OiBib29sZWFuIH07XG5leHBvcnQgdHlwZSBBWFBXaWRnZXRUcmlnZ2VycyA9IEFYUFdpZGdldFRyaWdnZXJbXTtcblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRQcm9wZXJ0eUdyb3VwIHtcbiAgbmFtZTogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBvcmRlcjogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldEdyb3VwIHtcbiAgbmFtZTogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBvcmRlcjogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldFByb3BlcnR5IHtcbiAgbmFtZTogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgZ3JvdXA6IEFYUFdpZGdldFByb3BlcnR5R3JvdXA7XG4gIHNjaGVtYToge1xuICAgIGRhdGFUeXBlOiAnc3RyaW5nJyB8ICdudW1iZXInIHwgJ29iamVjdCcgfCAnYm9vbGVhbicgfCAnYXJyYXknO1xuICAgIG51bGxhYmxlPzogYm9vbGVhbjtcbiAgICBkZWZhdWx0VmFsdWU/OiBhbnkgfCBzdHJpbmcgfCAoKGNvbnRleHQ6IGFueSB8IG51bGwpID0+IGFueSk7XG4gICAgaW50ZXJmYWNlOiBSZXF1aXJlZDxQaWNrPEFYUFdpZGdldE5vZGUsICdwYXRoJz4+ICYgT21pdDxBWFBXaWRnZXROb2RlLCAncGF0aCc+O1xuICB9O1xuICBvcHRpb25zPzogQVhQT3B0aW9uc0RhdGE7XG4gIHZhbGlkYXRpb25zPzogQVhQVmFsaWRhdGlvblJ1bGVzO1xuICB2aXNpYmxlOiBib29sZWFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY2xvbmVQcm9wZXJ0eShcbiAgcHJvcGVydHk6IEFYUFdpZGdldFByb3BlcnR5LFxuICB2YWx1ZXM6IEFYUFBhcnRpYWxOZXN0ZWQ8QVhQV2lkZ2V0UHJvcGVydHk+XG4pOiBBWFBXaWRnZXRQcm9wZXJ0eSB7XG4gIHJldHVybiBtZXJnZShjbG9uZURlZXAocHJvcGVydHkpLCB2YWx1ZXMpO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldE5vZGUge1xuICB0eXBlOiBBWFBXaWRnZXRUeXBlc01hcFtrZXlvZiBBWFBXaWRnZXRUeXBlc01hcF07XG4gIHBhdGg/OiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGRlZmF1bHRWYWx1ZT86IGFueTtcbiAgZm9ybXVsYT86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBBWFBXaWRnZXROb2RlW107XG4gIG9wdGlvbnM/OiBBWFBPcHRpb25zRGF0YTtcbiAgdHJpZ2dlcnM/OiBBWFBXaWRnZXRUcmlnZ2Vycztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRUeXBlc01hcCB7XG4gIGNoZWNrYm94OiAnY2hlY2tib3gtZWRpdG9yJztcbiAgY29sb3I6ICdjb2xvci1lZGl0b3InO1xuICBjb250YWN0OiAnY29udGFjdC1lZGl0b3InO1xuICBkYXRlVGltZTogJ2RhdGUtdGltZS1lZGl0b3InO1xuICBlbWFpbDogJ2VtYWlsLWVkaXRvcic7XG4gIGxhcmdlVGV4dDogJ2xhcmdlLXRleHQtZWRpdG9yJztcbiAgbGluazogJ2xpbmstZWRpdG9yJztcbiAgbnVtYmVyOiAnbnVtYmVyLWVkaXRvcic7XG4gIHBhc3N3b3JkOiAncGFzc3dvcmQtZWRpdG9yJztcbiAgcGhvbmU6ICdwaG9uZS1lZGl0b3InO1xuICByaWNoVGV4dDogJ3JpY2gtdGV4dC1lZGl0b3InO1xuICBzZWxlY3Q6ICdzZWxlY3QtZWRpdG9yJztcbiAgc2VsZWN0aW9uTGlzdDogJ3NlbGVjdGlvbi1saXN0LWVkaXRvcic7XG4gIHRleHQ6ICd0ZXh0LWVkaXRvcic7XG4gIHRvZ2dsZTogJ3RvZ2dsZS1lZGl0b3InO1xuICBibG9ja0xheW91dDogJ2Jsb2NrLWxheW91dCc7XG4gIHBhZ2VMYXlvdXQ6ICdwYWdlLWxheW91dCc7XG4gIHJlcGVhdGVyTGF5b3V0OiAncmVwZWF0ZXItbGF5b3V0JztcbiAgdGV4dEJsb2NrTGF5b3V0OiAndGV4dC1ibG9jay1sYXlvdXQnO1xuICBmaWxlOiAnZmlsZSc7XG4gIG1hcDogJ21hcCc7XG4gIGdhbGxlcnk6ICdnYWxsZXJ5JztcbiAgc2lnbmF0dXJlOiAnc2lnbmF0dXJlJztcbiAgYnV0dG9uQWN0aW9uOiAnYnV0dG9uLWFjdGlvbic7XG4gIGRvY3VtZW50OiAnZG9jdW1lbnQtbGF5b3V0JztcbiAgbG9va3VwOiAnbG9va3VwLWVkaXRvcic7XG4gIGZvcm1GaWVsZDogJ2Zvcm0tZmllbGQnO1xuICBncmlkOiAnZ3JpZC1sYXlvdXQnO1xuICBncmlkSXRlbTogJ2dyaWQtaXRlbS1sYXlvdXQnO1xuICBxcmNvZGU6ICdxcmNvZGUnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldE5vZGVUb2tlbiB7XG4gIGNvbmZpZzogQVhQV2lkZ2V0Q29uZmlnO1xuICBub2RlOiBBWFBXaWRnZXROb2RlO1xuICBvcHRpb25zPzogQVhQT3B0aW9uc0RhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0Q29sdW1uTm9kZSB7XG4gIHR5cGU6IHN0cmluZztcbiAgcGF0aDogc3RyaW5nO1xuICBvcHRpb25zPzogQVhQT3B0aW9uc0RhdGE7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0Q29sdW1uTm9kZVRva2VuIGV4dGVuZHMgQVhQV2lkZ2V0Q29sdW1uTm9kZSB7XG4gIGNvbmZpZzogQVhQV2lkZ2V0Q29uZmlnO1xufVxuXG5leHBvcnQgY29uc3QgQVhQX1dJREdFVF9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBWFBXaWRnZXROb2RlVG9rZW4+KCdBWFBfV0lER0VUX1RPS0VOJyk7XG5leHBvcnQgY29uc3QgQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48QVhQV2lkZ2V0Q29sdW1uTm9kZVRva2VuPignQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4nKTtcblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRDb21wb25lbnRDb25maWcge1xuICBjb21wb25lbnQ6ICgpID0+IFByb21pc2U8YW55PjtcbiAgcHJvcGVydGllcz86IEFYUFdpZGdldFByb3BlcnR5W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0Q29uZmlnQ29tcG9uZW50cyB7XG4gIGRlc2lnbmVyPzogQVhQV2lkZ2V0Q29tcG9uZW50Q29uZmlnO1xuICB2aWV3PzogQVhQV2lkZ2V0Q29tcG9uZW50Q29uZmlnO1xuICBlZGl0PzogQVhQV2lkZ2V0Q29tcG9uZW50Q29uZmlnO1xuICBwcmludD86IEFYUFdpZGdldENvbXBvbmVudENvbmZpZztcbiAgY29sdW1uPzogQVhQV2lkZ2V0Q29tcG9uZW50Q29uZmlnO1xuICBmaWx0ZXI/OiBBWFBXaWRnZXRDb21wb25lbnRDb25maWc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0Q29uZmlnIHtcbiAgbmFtZTogQVhQV2lkZ2V0VHlwZXNNYXBba2V5b2YgQVhQV2lkZ2V0VHlwZXNNYXBdO1xuICB0aXRsZTogc3RyaW5nO1xuICBpY29uPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgZ3JvdXA6IEFYUFdpZGdldEdyb3VwO1xuICBwcm9wZXJ0aWVzPzogQVhQV2lkZ2V0UHJvcGVydHlbXTtcbiAgY29tcG9uZW50czogQVhQV2lkZ2V0Q29uZmlnQ29tcG9uZW50cztcbiAgbWV0YT86IEFYUE1ldGFEYXRhO1xuICBjb250YWluZXI/OiBib29sZWFuO1xuICB2aXNpYmxlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgQVhQV2lkZ2V0UmVuZGVyTW9kZSA9IGtleW9mIEFYUFdpZGdldENvbmZpZ0NvbXBvbmVudHM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQTGF5b3V0Q29udGV4dEV2ZW50IHtcbiAgb2xkVmFsdWU6IGFueTtcbiAgbmV3VmFsdWU6IGFueTtcbiAgcGF0aD86IHN0cmluZyB8IG51bGw7XG4gIGRhdGE6IGFueTtcbiAgaW5pdDogYm9vbGVhbjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYUFdpZGdldENvbXBvbmVudDxUID0gYW55IHwgbnVsbCB8IHZvaWQ+IGV4dGVuZHMgQVhQTGF5b3V0RWxlbWVudCB7XG4gIHByb3RlY3RlZCByZWFkb25seSB0b2tlbiA9IGluamVjdChBWFBfV0lER0VUX1RPS0VOKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGF0aCA9IHRoaXMudG9rZW4ubm9kZS5wYXRoID8/IGBWJHtNYXRoLnJhbmRvbSgpICogTWF0aC5wb3coMTAsIDE4KX1gO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmFtZSA9IHRoaXMudG9rZW4ubm9kZS5uYW1lO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdFZhbHVlID0gdGhpcy50b2tlbi5ub2RlLmRlZmF1bHRWYWx1ZTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2NoaWxkcmVuID0gc2lnbmFsKHRoaXMudG9rZW4ubm9kZS5jaGlsZHJlbiA/PyBbXSk7XG4gIHByb3RlY3RlZCBjaGlsZHJlbiA9IHRoaXMuX2NoaWxkcmVuLmFzUmVhZG9ubHkoKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29uZmlnID0gdGhpcy50b2tlbi5jb25maWc7XG5cbiAgcHJvdGVjdGVkIF9vcHRpb25zID0gc2lnbmFsPGFueT4odGhpcy50b2tlbi5ub2RlLm9wdGlvbnMgPz8ge30pO1xuICBwcm90ZWN0ZWQgb3B0aW9ucyA9IHRoaXMuX29wdGlvbnMuYXNSZWFkb25seSgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY29udGV4dFNlcnZpY2UgPSBpbmplY3QoQVhQTGF5b3V0QnVpbGRlclNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSByYXdWYWx1ZSA9IGNvbXB1dGVkPFQ+KCgpID0+XG4gICAgdGhpcy5fZnVsbFBhdGggPyBnZXQodGhpcy5jb250ZXh0U2VydmljZS5jb250ZXh0LCB0aGlzLl9mdWxsUGF0aCkgOiBudWxsXG4gICk7XG5cbiAgcHVibGljIHJlYWRvbmx5IG9uUmVhZHkgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgaXNSZW5kZXJlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2lkOiBzdHJpbmcgfCBudWxsO1xuICBwdWJsaWMgZ2V0IGlkKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9pZDtcbiAgfVxuXG4gIHBhcmVudDogQVhQV2lkZ2V0Q29tcG9uZW50IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgaW5kZXg6IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIG1vZGU6IEFYUFdpZGdldFJlbmRlck1vZGU7XG5cbiAgcHJpdmF0ZSBfZnVsbFBhdGg6IHN0cmluZztcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXRSZW5kZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgbmV4dFJlbmRlciA9IGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgLy9cbiAgICBpZiAoIXRoaXMuaXNSZW5kZXJlZCkge1xuICAgICAgLy90aGlzLmRldGVjdEZ1bGxQYXRoKCk7XG4gICAgICAvL1xuICAgICAgdGhpcy5vblJlYWR5Lm5leHQoKTtcbiAgICAgIC8vXG4gICAgICB0aGlzLmlzUmVuZGVyZWQgPSB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcHJpdmF0ZSBpbml0UmVuZGVyKCkge1xuICAgIHRoaXMuZGV0ZWN0RnVsbFBhdGgoKTtcbiAgICBpZiAodGhpcy5kZWZhdWx0VmFsdWUgIT0gbnVsbCkge1xuICAgICAgdGhpcy5zZXRWYWx1ZSh0aGlzLmRlZmF1bHRWYWx1ZSwgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0VmFsdWU8VD4oKSB7XG4gICAgcmV0dXJuIHRoaXMucmF3VmFsdWUoKTtcbiAgfVxuXG4gIHNldFZhbHVlKHZhbHVlOiBUIHwgbnVsbCwgaW5pdDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzLnJhd1ZhbHVlKCk7XG4gICAgdmFsdWUgPSBpc1VuZGVmaW5lZCh2YWx1ZSkgPyBudWxsIDogdmFsdWU7XG4gICAgaWYgKHRoaXMuX2Z1bGxQYXRoKSB7XG4gICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnNldFZhbHVlKHRoaXMuX2Z1bGxQYXRoLCB2YWx1ZSwgaW5pdCk7XG4gICAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkKG9sZFZhbHVlLCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgc2V0T3B0aW9ucyh2YWx1ZXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX29wdGlvbnMuc2V0KHsgLi4udGhpcy5vcHRpb25zKCksIC4uLnZhbHVlcyB9KTtcbiAgfVxuXG4gIGNhbGwobmFtZTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSk6IHZvaWQge1xuICAgIGNvbnN0IGZuID0gZ2V0KHRoaXMsIG5hbWUpIGFzIEZ1bmN0aW9uO1xuICAgIGlmIChmbiAmJiB0eXBlb2YgZm4gPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgZm4uYmluZCh0aGlzKSguLi5hcmdzKTtcbiAgICB9XG4gIH1cblxuICBzZXRDaGlsZHJlbihjaGlsZHJlbjogQVhQV2lkZ2V0Tm9kZVtdKSB7XG4gICAgdGhpcy5fY2hpbGRyZW4uc2V0KFsuLi5jaGlsZHJlbl0pO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZWQob2xkVmFsdWU6IFQgfCBudWxsLCBuZXdWYWx1ZTogVCB8IG51bGwpIHsgfVxuXG4gIHByaXZhdGUgZGV0ZWN0RnVsbFBhdGgoKSB7XG4gICAgbGV0IHNlY3Rpb25zID0gW107XG4gICAgbGV0IGlkcyA9IFtdO1xuICAgIC8vXG4gICAgbGV0IHBhcmVudDogQVhQV2lkZ2V0Q29tcG9uZW50IHwgbnVsbCB8IHVuZGVmaW5lZCA9IHRoaXM7XG4gICAgLy9cbiAgICB3aGlsZSAocGFyZW50KSB7XG4gICAgICBjb25zdCBwYXRoID0gcGFyZW50LnBhdGggPz8gcGFyZW50Lm5hbWU7XG4gICAgICBjb25zdCBpZCA9IHBhcmVudC5uYW1lO1xuICAgICAgLy9cbiAgICAgIGlmIChwYXRoKSB7XG4gICAgICAgIHNlY3Rpb25zLnB1c2gocGF0aCk7XG4gICAgICAgIGlmIChwYXJlbnQuaW5kZXggIT0gbnVsbCkge1xuICAgICAgICAgIHNlY3Rpb25zLnB1c2goYFske3BhcmVudC5pbmRleH1dYCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChpZCkge1xuICAgICAgICBpZHMucHVzaChpZCk7XG4gICAgICAgIGlmIChwYXJlbnQuaW5kZXggIT0gbnVsbCkge1xuICAgICAgICAgIGlkcy5wdXNoKGAke3BhcmVudC5pbmRleH1gKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcGFyZW50ID0gcGFyZW50LnBhcmVudDtcbiAgICB9XG4gICAgLy9cbiAgICB0aGlzLl9mdWxsUGF0aCA9IHNlY3Rpb25zLnJldmVyc2UoKS5qb2luKCcuJyk7XG4gICAgdGhpcy5faWQgPSB0aGlzLm5hbWUgfHwgdGhpcy5wYXJlbnQgPyBpZHMucmV2ZXJzZSgpLmpvaW4oJ18nKSA6IG51bGw7XG4gICAgaWYgKHRoaXMuX2lkKSB7XG4gICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlZ2lzdGVyV2lkZ2V0KHRoaXMuX2lkLCB0aGlzKTtcbiAgICB9XG4gIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYUENvbnRhaW5lcldpZGdldENvbXBvbmVudDxUPiBleHRlbmRzIEFYUFdpZGdldENvbXBvbmVudDxUPiB7XG4gIHB1YmxpYyByZWFkb25seSBub2RlID0gdGhpcy50b2tlbi5ub2RlO1xuXG4gIHB1YmxpYyBvdXRlckNsYXNzOiBTaWduYWw8YW55PiA9IHNpZ25hbCh7fSk7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBDb2x1bW5XaWRnZXRDb21wb25lbnQ8VCA9IGFueSB8IG51bGwgfCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdG9rZW4gPSBpbmplY3QoQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYXRoID0gdGhpcy50b2tlbi5wYXRoO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IHRoaXMudG9rZW4ub3B0aW9ucyA/PyB7fTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhd1ZhbHVlOiBhbnkgPSBudWxsO1xufVxuIl19
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvYnVpbGRlci9zcmMvbGliL2J1aWxkZXIvd2lkZ2V0LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMvRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQWlDOUUsTUFBTSxVQUFVLGFBQWEsQ0FDM0IsUUFBMkIsRUFDM0IsTUFBMkM7SUFFM0MsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUErREQsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxjQUFjLENBQXFCLGtCQUFrQixDQUFDLENBQUM7QUFDM0YsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxjQUFjLENBQTJCLHlCQUF5QixDQUFDLENBQUM7QUF3Qy9HLE1BQU0sT0FBZ0Isa0JBQTBDLFNBQVEsZ0JBQWdCO0lBRHhGOztRQUVxQixVQUFLLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDcEMsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUErQixDQUFDO1FBRXZELFNBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJ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O0lBRDlDO1FBRW1CLFVBQUssR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUV0QyxTQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDdkIsWUFBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUNuQyxhQUFRLEdBQVEsSUFBSSxDQUFDO0tBQ3pDOzhHQU5xQix3QkFBd0I7a0hBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEN0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYUE1ldGFEYXRhLCBBWFBPcHRpb25zRGF0YSwgQVhQUGFydGlhbE5lc3RlZCwgQVhQVmFsaWRhdGlvblJ1bGVzIH0gZnJvbSAnQGFjb3JleC9wbGF0Zm9ybS9jb3JlJztcbmltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBhZnRlck5leHRSZW5kZXIsIGNvbXB1dGVkLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xvbmVEZWVwLCBnZXQsIGlzVW5kZWZpbmVkLCBtZXJnZSB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWFBMYXlvdXRCdWlsZGVyU2VydmljZSwgQVhQTGF5b3V0RWxlbWVudCB9IGZyb20gJy4vYnVpbGRlci5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgQVhQV2lkZ2V0VHJpZ2dlciA9IHsgZXZlbnQ6IHN0cmluZzsgYWN0aW9uOiBzdHJpbmc7IGRpc2FibGVkPzogYm9vbGVhbiB9O1xuZXhwb3J0IHR5cGUgQVhQV2lkZ2V0VHJpZ2dlcnMgPSBBWFBXaWRnZXRUcmlnZ2VyW107XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0UHJvcGVydHlHcm91cCB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgb3JkZXI6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRHcm91cCB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgb3JkZXI6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRQcm9wZXJ0eSB7XG4gIG5hbWU6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIGdyb3VwOiBBWFBXaWRnZXRQcm9wZXJ0eUdyb3VwO1xuICBzY2hlbWE6IHtcbiAgICBkYXRhVHlwZTogJ3N0cmluZycgfCAnbnVtYmVyJyB8ICdvYmplY3QnIHwgJ2Jvb2xlYW4nIHwgJ2FycmF5JztcbiAgICBudWxsYWJsZT86IGJvb2xlYW47XG4gICAgZGVmYXVsdFZhbHVlPzogYW55IHwgc3RyaW5nIHwgKChjb250ZXh0OiBhbnkgfCBudWxsKSA9PiBhbnkpO1xuICAgIGludGVyZmFjZTogUmVxdWlyZWQ8UGljazxBWFBXaWRnZXROb2RlLCAncGF0aCc+PiAmIE9taXQ8QVhQV2lkZ2V0Tm9kZSwgJ3BhdGgnPjtcbiAgfTtcbiAgb3B0aW9ucz86IEFYUE9wdGlvbnNEYXRhO1xuICB2YWxpZGF0aW9ucz86IEFYUFZhbGlkYXRpb25SdWxlcztcbiAgdmlzaWJsZTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsb25lUHJvcGVydHkoXG4gIHByb3BlcnR5OiBBWFBXaWRnZXRQcm9wZXJ0eSxcbiAgdmFsdWVzOiBBWFBQYXJ0aWFsTmVzdGVkPEFYUFdpZGdldFByb3BlcnR5PlxuKTogQVhQV2lkZ2V0UHJvcGVydHkge1xuICByZXR1cm4gbWVyZ2UoY2xvbmVEZWVwKHByb3BlcnR5KSwgdmFsdWVzKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXROb2RlIHtcbiAgdHlwZTogQVhQV2lkZ2V0VHlwZXNNYXBba2V5b2YgQVhQV2lkZ2V0VHlwZXNNYXBdO1xuICBwYXRoPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICBkZWZhdWx0VmFsdWU/OiBhbnk7XG4gIGZvcm11bGE/OiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogQVhQV2lkZ2V0Tm9kZVtdO1xuICBvcHRpb25zPzogQVhQT3B0aW9uc0RhdGE7XG4gIHRyaWdnZXJzPzogQVhQV2lkZ2V0VHJpZ2dlcnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0VHlwZXNNYXAge1xuICBjaGVja2JveDogJ2NoZWNrYm94LWVkaXRvcic7XG4gIGNvbG9yOiAnY29sb3ItZWRpdG9yJztcbiAgY29udGFjdDogJ2NvbnRhY3QtZWRpdG9yJztcbiAgZGF0ZVRpbWU6ICdkYXRlLXRpbWUtZWRpdG9yJztcbiAgZW1haWw6ICdlbWFpbC1lZGl0b3InO1xuICBsYXJnZVRleHQ6ICdsYXJnZS10ZXh0LWVkaXRvcic7XG4gIGxpbms6ICdsaW5rLWVkaXRvcic7XG4gIG51bWJlcjogJ251bWJlci1lZGl0b3InO1xuICBwYXNzd29yZDogJ3Bhc3N3b3JkLWVkaXRvcic7XG4gIHBob25lOiAncGhvbmUtZWRpdG9yJztcbiAgcmljaFRleHQ6ICdyaWNoLXRleHQtZWRpdG9yJztcbiAgc2VsZWN0OiAnc2VsZWN0LWVkaXRvcic7XG4gIHNlbGVjdGlvbkxpc3Q6ICdzZWxlY3Rpb24tbGlzdC1lZGl0b3InO1xuICB0ZXh0OiAndGV4dC1lZGl0b3InO1xuICB0b2dnbGU6ICd0b2dnbGUtZWRpdG9yJztcbiAgYmxvY2tMYXlvdXQ6ICdibG9jay1sYXlvdXQnO1xuICBwYWdlTGF5b3V0OiAncGFnZS1sYXlvdXQnO1xuICByZXBlYXRlckxheW91dDogJ3JlcGVhdGVyLWxheW91dCc7XG4gIHRleHRCbG9ja0xheW91dDogJ3RleHQtYmxvY2stbGF5b3V0JztcbiAgZmlsZTogJ2ZpbGUnO1xuICBtYXA6ICdtYXAnO1xuICBnYWxsZXJ5OiAnZ2FsbGVyeSc7XG4gIHNpZ25hdHVyZTogJ3NpZ25hdHVyZSc7XG4gIGJ1dHRvbkFjdGlvbjogJ2J1dHRvbi1hY3Rpb24nO1xuICBkb2N1bWVudDogJ2RvY3VtZW50LWxheW91dCc7XG4gIGxvb2t1cDogJ2xvb2t1cC1lZGl0b3InO1xuICBmb3JtRmllbGQ6ICdmb3JtLWZpZWxkJztcbiAgZ3JpZDogJ2dyaWQtbGF5b3V0JztcbiAgZ3JpZFJvdzogJ2dyaWQtcm93LWxheW91dCc7XG4gIGdyaWRJdGVtOiAnZ3JpZC1pdGVtLWxheW91dCc7XG4gIHFyY29kZTogJ3FyY29kZSc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhQV2lkZ2V0Tm9kZVRva2VuIHtcbiAgY29uZmlnOiBBWFBXaWRnZXRDb25maWc7XG4gIG5vZGU6IEFYUFdpZGdldE5vZGU7XG4gIG9wdGlvbnM/OiBBWFBPcHRpb25zRGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRDb2x1bW5Ob2RlIHtcbiAgdHlwZTogc3RyaW5nO1xuICBwYXRoOiBzdHJpbmc7XG4gIG9wdGlvbnM/OiBBWFBPcHRpb25zRGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRDb2x1bW5Ob2RlVG9rZW4gZXh0ZW5kcyBBWFBXaWRnZXRDb2x1bW5Ob2RlIHtcbiAgY29uZmlnOiBBWFBXaWRnZXRDb25maWc7XG59XG5cbmV4cG9ydCBjb25zdCBBWFBfV0lER0VUX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPEFYUFdpZGdldE5vZGVUb2tlbj4oJ0FYUF9XSURHRVRfVE9LRU4nKTtcbmV4cG9ydCBjb25zdCBBWFBfV0lER0VUX0NPTFVNTl9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxBWFBXaWRnZXRDb2x1bW5Ob2RlVG9rZW4+KCdBWFBfV0lER0VUX0NPTFVNTl9UT0tFTicpO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYUFdpZGdldENvbXBvbmVudENvbmZpZyB7XG4gIGNvbXBvbmVudDogKCkgPT4gUHJvbWlzZTxhbnk+O1xuICBwcm9wZXJ0aWVzPzogQVhQV2lkZ2V0UHJvcGVydHlbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRDb25maWdDb21wb25lbnRzIHtcbiAgZGVzaWduZXI/OiBBWFBXaWRnZXRDb21wb25lbnRDb25maWc7XG4gIHZpZXc/OiBBWFBXaWRnZXRDb21wb25lbnRDb25maWc7XG4gIGVkaXQ/OiBBWFBXaWRnZXRDb21wb25lbnRDb25maWc7XG4gIHByaW50PzogQVhQV2lkZ2V0Q29tcG9uZW50Q29uZmlnO1xuICBjb2x1bW4/OiBBWFBXaWRnZXRDb21wb25lbnRDb25maWc7XG4gIGZpbHRlcj86IEFYUFdpZGdldENvbXBvbmVudENvbmZpZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBXaWRnZXRDb25maWcge1xuICBuYW1lOiBBWFBXaWRnZXRUeXBlc01hcFtrZXlvZiBBWFBXaWRnZXRUeXBlc01hcF07XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBncm91cDogQVhQV2lkZ2V0R3JvdXA7XG4gIHByb3BlcnRpZXM/OiBBWFBXaWRnZXRQcm9wZXJ0eVtdO1xuICBjb21wb25lbnRzOiBBWFBXaWRnZXRDb25maWdDb21wb25lbnRzO1xuICBtZXRhPzogQVhQTWV0YURhdGE7XG4gIGNvbnRhaW5lcj86IGJvb2xlYW47XG4gIHZpc2libGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBBWFBXaWRnZXRSZW5kZXJNb2RlID0ga2V5b2YgQVhQV2lkZ2V0Q29uZmlnQ29tcG9uZW50cztcblxuZXhwb3J0IGludGVyZmFjZSBBWFBMYXlvdXRDb250ZXh0RXZlbnQge1xuICBvbGRWYWx1ZTogYW55O1xuICBuZXdWYWx1ZTogYW55O1xuICBwYXRoPzogc3RyaW5nIHwgbnVsbDtcbiAgZGF0YTogYW55O1xuICBpbml0OiBib29sZWFuO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQV2lkZ2V0Q29tcG9uZW50PFQgPSBhbnkgfCBudWxsIHwgdm9pZD4gZXh0ZW5kcyBBWFBMYXlvdXRFbGVtZW50IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHRva2VuID0gaW5qZWN0KEFYUF9XSURHRVRfVE9LRU4pO1xuICBwdWJsaWMgcmVhZG9ubHkgaG9zdCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50IGFzIEhUTUxEaXZFbGVtZW50O1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYXRoID0gdGhpcy50b2tlbi5ub2RlLnBhdGggPz8gYFYke01hdGgucmFuZG9tKCkgKiBNYXRoLnBvdygxMCwgMTgpfWA7XG4gIHByb3RlY3RlZCByZWFkb25seSBuYW1lID0gdGhpcy50b2tlbi5ub2RlLm5hbWU7XG4gIHByb3RlY3RlZCByZWFkb25seSBkZWZhdWx0VmFsdWUgPSB0aGlzLnRva2VuLm5vZGUuZGVmYXVsdFZhbHVlO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfY2hpbGRyZW4gPSBzaWduYWwodGhpcy50b2tlbi5ub2RlLmNoaWxkcmVuID8/IFtdKTtcbiAgcHJvdGVjdGVkIGNoaWxkcmVuID0gdGhpcy5fY2hpbGRyZW4uYXNSZWFkb25seSgpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBjb25maWcgPSB0aGlzLnRva2VuLmNvbmZpZztcblxuICBwcm90ZWN0ZWQgX29wdGlvbnMgPSBzaWduYWw8YW55Pih0aGlzLnRva2VuLm5vZGUub3B0aW9ucyA/PyB7fSk7XG4gIHByb3RlY3RlZCBvcHRpb25zID0gdGhpcy5fb3B0aW9ucy5hc1JlYWRvbmx5KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb250ZXh0U2VydmljZSA9IGluamVjdChBWFBMYXlvdXRCdWlsZGVyU2VydmljZSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhd1ZhbHVlID0gY29tcHV0ZWQ8VD4oKCkgPT5cbiAgICB0aGlzLl9mdWxsUGF0aCA/IGdldCh0aGlzLmNvbnRleHRTZXJ2aWNlLmNvbnRleHQsIHRoaXMuX2Z1bGxQYXRoKSA6IG51bGxcbiAgKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgb25SZWFkeSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBpc1JlbmRlcmVkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfaWQ6IHN0cmluZyB8IG51bGw7XG4gIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2lkO1xuICB9XG5cbiAgcGFyZW50OiBBWFBXaWRnZXRDb21wb25lbnQgfCBudWxsIHwgdW5kZWZpbmVkO1xuICBpbmRleDogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgbW9kZTogQVhQV2lkZ2V0UmVuZGVyTW9kZTtcblxuICBwcml2YXRlIF9mdWxsUGF0aDogc3RyaW5nO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdFJlbmRlcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBuZXh0UmVuZGVyID0gYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAvL1xuICAgIGlmICghdGhpcy5pc1JlbmRlcmVkKSB7XG4gICAgICAvL3RoaXMuZGV0ZWN0RnVsbFBhdGgoKTtcbiAgICAgIC8vXG4gICAgICB0aGlzLm9uUmVhZHkubmV4dCgpO1xuICAgICAgLy9cbiAgICAgIHRoaXMuaXNSZW5kZXJlZCA9IHRydWU7XG4gICAgfVxuICB9KTtcblxuICBwcml2YXRlIGluaXRSZW5kZXIoKSB7XG4gICAgdGhpcy5kZXRlY3RGdWxsUGF0aCgpO1xuICAgIGlmICh0aGlzLmRlZmF1bHRWYWx1ZSAhPSBudWxsKSB7XG4gICAgICB0aGlzLnNldFZhbHVlKHRoaXMuZGVmYXVsdFZhbHVlLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBnZXRWYWx1ZTxUPigpIHtcbiAgICByZXR1cm4gdGhpcy5yYXdWYWx1ZSgpO1xuICB9XG5cbiAgc2V0VmFsdWUodmFsdWU6IFQgfCBudWxsLCBpbml0OiBib29sZWFuID0gZmFsc2UpIHtcbiAgICBjb25zdCBvbGRWYWx1ZSA9IHRoaXMucmF3VmFsdWUoKTtcbiAgICB2YWx1ZSA9IGlzVW5kZWZpbmVkKHZhbHVlKSA/IG51bGwgOiB2YWx1ZTtcbiAgICBpZiAodGhpcy5fZnVsbFBhdGgpIHtcbiAgICAgIHRoaXMuY29udGV4dFNlcnZpY2Uuc2V0VmFsdWUodGhpcy5fZnVsbFBhdGgsIHZhbHVlLCBpbml0KTtcbiAgICAgIHRoaXMub25WYWx1ZUNoYW5nZWQob2xkVmFsdWUsIHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBzZXRPcHRpb25zKHZhbHVlczogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fb3B0aW9ucy5zZXQoeyAuLi50aGlzLm9wdGlvbnMoKSwgLi4udmFsdWVzIH0pO1xuICB9XG5cbiAgY2FsbChuYW1lOiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKTogdm9pZCB7XG4gICAgY29uc3QgZm4gPSBnZXQodGhpcywgbmFtZSkgYXMgRnVuY3Rpb247XG4gICAgaWYgKGZuICYmIHR5cGVvZiBmbiA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICBmbi5iaW5kKHRoaXMpKC4uLmFyZ3MpO1xuICAgIH1cbiAgfVxuXG4gIHNldENoaWxkcmVuKGNoaWxkcmVuOiBBWFBXaWRnZXROb2RlW10pIHtcbiAgICB0aGlzLl9jaGlsZHJlbi5zZXQoWy4uLmNoaWxkcmVuXSk7XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlZChvbGRWYWx1ZTogVCB8IG51bGwsIG5ld1ZhbHVlOiBUIHwgbnVsbCkge31cblxuICBwcml2YXRlIGRldGVjdEZ1bGxQYXRoKCkge1xuICAgIGxldCBzZWN0aW9ucyA9IFtdO1xuICAgIGxldCBpZHMgPSBbXTtcbiAgICAvL1xuICAgIGxldCBwYXJlbnQ6IEFYUFdpZGdldENvbXBvbmVudCB8IG51bGwgfCB1bmRlZmluZWQgPSB0aGlzO1xuICAgIC8vXG4gICAgd2hpbGUgKHBhcmVudCkge1xuICAgICAgY29uc3QgcGF0aCA9IHBhcmVudC5wYXRoID8/IHBhcmVudC5uYW1lO1xuICAgICAgY29uc3QgaWQgPSBwYXJlbnQubmFtZTtcbiAgICAgIC8vXG4gICAgICBpZiAocGF0aCkge1xuICAgICAgICBzZWN0aW9ucy5wdXNoKHBhdGgpO1xuICAgICAgICBpZiAocGFyZW50LmluZGV4ICE9IG51bGwpIHtcbiAgICAgICAgICBzZWN0aW9ucy5wdXNoKGBbJHtwYXJlbnQuaW5kZXh9XWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoaWQpIHtcbiAgICAgICAgaWRzLnB1c2goaWQpO1xuICAgICAgICBpZiAocGFyZW50LmluZGV4ICE9IG51bGwpIHtcbiAgICAgICAgICBpZHMucHVzaChgJHtwYXJlbnQuaW5kZXh9YCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnQ7XG4gICAgfVxuICAgIC8vXG4gICAgdGhpcy5fZnVsbFBhdGggPSBzZWN0aW9ucy5yZXZlcnNlKCkuam9pbignLicpO1xuICAgIHRoaXMuX2lkID0gdGhpcy5uYW1lIHx8IHRoaXMucGFyZW50ID8gaWRzLnJldmVyc2UoKS5qb2luKCdfJykgOiBudWxsO1xuICAgIGlmICh0aGlzLl9pZCkge1xuICAgICAgdGhpcy5jb250ZXh0U2VydmljZS5yZWdpc3RlcldpZGdldCh0aGlzLl9pZCwgdGhpcyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVZhbHVlQ2hhbmdlZChlOiBBWFZhbHVlQ2hhbmdlZEV2ZW50PFQ+KSB7XG4gICAgaWYgKGUuaXNVc2VySW50ZXJhY3Rpb24pIHtcbiAgICAgIHRoaXMuc2V0VmFsdWUoZS52YWx1ZSEpO1xuICAgIH1cbiAgfVxufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhQQ29udGFpbmVyV2lkZ2V0Q29tcG9uZW50PFQ+IGV4dGVuZHMgQVhQV2lkZ2V0Q29tcG9uZW50PFQ+IHtcbiAgcHVibGljIHJlYWRvbmx5IG5vZGUgPSB0aGlzLnRva2VuLm5vZGU7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFBDb2x1bW5XaWRnZXRDb21wb25lbnQ8VCA9IGFueSB8IG51bGwgfCB2b2lkPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdG9rZW4gPSBpbmplY3QoQVhQX1dJREdFVF9DT0xVTU5fVE9LRU4pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYXRoID0gdGhpcy50b2tlbi5wYXRoO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IHRoaXMudG9rZW4ub3B0aW9ucyA/PyB7fTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhd1ZhbHVlOiBhbnkgPSBudWxsO1xufVxuIl19
|
|
@@ -4,5 +4,5 @@ export * from './lib/helpers/grid-drawer/grid-drawer.component';
|
|
|
4
4
|
export * from './lib/designer.service';
|
|
5
5
|
export * from './lib/designer/designer.component';
|
|
6
6
|
export * from './lib/property-viewer/widget-property-viewer.component';
|
|
7
|
-
export * from './lib/widget-designer-renderer.
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
export * from './lib/widget-designer-renderer.directive';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZEQUE2RCxDQUFDO0FBQzVFLGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2JvYXJkL2JvYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWxwZXJzL2FkZC13aWRnZXQtYnV0dG9uL2FkZC13aWRnZXQtYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9oZWxwZXJzL2dyaWQtZHJhd2VyL2dyaWQtZHJhd2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kZXNpZ25lci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rlc2lnbmVyL2Rlc2lnbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wcm9wZXJ0eS12aWV3ZXIvd2lkZ2V0LXByb3BlcnR5LXZpZXdlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvd2lkZ2V0LWRlc2lnbmVyLXJlbmRlcmVyLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { AXPLayoutBuilderModule } from '@acorex/platform/layout/builder';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { Component, inject, ViewEncapsulation, ChangeDetectionStrategy, computed, effect, ElementRef } from '@angular/core';
|
|
4
|
-
import { AXPWidgetDesignerRendererComponent } from '../widget-designer-renderer.component';
|
|
3
|
+
import { Component, inject, ViewEncapsulation, ChangeDetectionStrategy, computed, effect, ElementRef, HostBinding } from '@angular/core';
|
|
5
4
|
import { AXPDesignerService } from '../designer.service';
|
|
6
5
|
import { get } from 'lodash-es';
|
|
6
|
+
import { AXPWidgetDesignerRendererDirective } from '../widget-designer-renderer.directive';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@acorex/platform/layout/builder";
|
|
9
9
|
export class AXPDesignerBoardComponent {
|
|
@@ -78,15 +78,35 @@ export class AXPDesignerBoardComponent {
|
|
|
78
78
|
removeCustomClass() {
|
|
79
79
|
this.elementRef.nativeElement.querySelectorAll('style').forEach(s => s.remove());
|
|
80
80
|
}
|
|
81
|
+
get __style() {
|
|
82
|
+
const cls = {};
|
|
83
|
+
cls[`width`] = this.width();
|
|
84
|
+
return cls;
|
|
85
|
+
}
|
|
86
|
+
get __class() {
|
|
87
|
+
const cls = {};
|
|
88
|
+
cls[`axp-designer-board`] = true;
|
|
89
|
+
cls[`axp-state-design`] = true;
|
|
90
|
+
cls['ax-h-full'] = true;
|
|
91
|
+
cls['ax-overflow-auto'] = true;
|
|
92
|
+
cls[`axp-preview-${this.service.size()}`] = true;
|
|
93
|
+
return cls;
|
|
94
|
+
}
|
|
81
95
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerBoardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
82
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPDesignerBoardComponent, isStandalone: true, selector: "axp-designer-board",
|
|
96
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: AXPDesignerBoardComponent, isStandalone: true, selector: "axp-designer-board", host: { properties: { "style": "this.__style", "class": "this.__class" } }, ngImport: i0, template: "<axp-widgets-container [(context)]=\"context\">\n <ng-container axp-widget-designer-renderer [node]=\"service.currentPage()\" [mode]=\"service.mode()\"></ng-container>\n</axp-widgets-container>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXPLayoutBuilderModule }, { kind: "component", type: i1.AXPWidgetContainerComponent, selector: "axp-widgets-container", inputs: ["context", "variables", "functions"], outputs: ["onChanged", "contextChange"] }, { kind: "directive", type: AXPWidgetDesignerRendererDirective, selector: "[axp-widget-designer-renderer]", inputs: ["parentNode", "index", "mode", "node"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
83
97
|
}
|
|
84
98
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXPDesignerBoardComponent, decorators: [{
|
|
85
99
|
type: Component,
|
|
86
100
|
args: [{ selector: 'axp-designer-board', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
87
101
|
CommonModule,
|
|
88
102
|
AXPLayoutBuilderModule,
|
|
89
|
-
|
|
90
|
-
], template: "<
|
|
91
|
-
}]
|
|
92
|
-
|
|
103
|
+
AXPWidgetDesignerRendererDirective
|
|
104
|
+
], template: "<axp-widgets-container [(context)]=\"context\">\n <ng-container axp-widget-designer-renderer [node]=\"service.currentPage()\" [mode]=\"service.mode()\"></ng-container>\n</axp-widgets-container>" }]
|
|
105
|
+
}], propDecorators: { __style: [{
|
|
106
|
+
type: HostBinding,
|
|
107
|
+
args: ['style']
|
|
108
|
+
}], __class: [{
|
|
109
|
+
type: HostBinding,
|
|
110
|
+
args: ['class']
|
|
111
|
+
}] } });
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9hcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9sYXlvdXQvZGVzaWduZXIvc3JjL2xpYi9ib2FyZC9ib2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2xheW91dC9kZXNpZ25lci9zcmMvbGliL2JvYXJkL2JvYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7O0FBZTNGLE1BQU0sT0FBTyx5QkFBeUI7SUFadEM7UUFjYyxZQUFPLEdBQVEsRUFBRSxDQUFDO1FBQ3BCLGVBQVUsR0FBRyxNQUFNLENBQUMsQ0FBQSxVQUEwQixDQUFBLENBQStCLENBQUM7UUFFOUUsa0JBQWEsR0FBRztZQUNwQixJQUFJLEVBQUUsR0FBRztZQUNULElBQUksRUFBRSxHQUFHO1lBQ1QsSUFBSSxFQUFFLElBQUk7WUFDVixJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxJQUFJO1NBQ2QsQ0FBQztRQWtEUSxZQUFPLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFHckMsVUFBSyxHQUFH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RlcsT0FBTztzQkFEbEIsV0FBVzt1QkFBQyxPQUFPO2dCQVFSLE9BQU87c0JBRGxCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUExheW91dEJ1aWxkZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2xheW91dC9idWlsZGVyJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBjb21wdXRlZCwgZWZmZWN0LCBFbGVtZW50UmVmLCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhQRGVzaWduZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZGVzaWduZXIuc2VydmljZSc7XG5pbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgQVhQV2lkZ2V0RGVzaWduZXJSZW5kZXJlckRpcmVjdGl2ZSB9IGZyb20gJy4uL3dpZGdldC1kZXNpZ25lci1yZW5kZXJlci5kaXJlY3RpdmUnO1xuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXhwLWRlc2lnbmVyLWJvYXJkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYm9hcmQuY29tcG9uZW50Lmh0bWwnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgQVhQTGF5b3V0QnVpbGRlck1vZHVsZSxcbiAgICAgICAgQVhQV2lkZ2V0RGVzaWduZXJSZW5kZXJlckRpcmVjdGl2ZVxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYUERlc2lnbmVyQm9hcmRDb21wb25lbnQge1xuXG4gICAgcHJvdGVjdGVkIGNvbnRleHQ6IGFueSA9IHt9O1xuICAgIHByaXZhdGUgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PikgYXMgRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgICBwcml2YXRlIGJyZWFrcG9pbnRNYXAgPSB7XG4gICAgICAgICdzbSc6IDY0MCxcbiAgICAgICAgJ21kJzogNzY4LFxuICAgICAgICAnbGcnOiAxMDI0LFxuICAgICAgICAneGwnOiAxMjgwLFxuICAgICAgICAneHhsJzogMTUzNlxuICAgIH07XG5cbiAgICAvLyBVbmlmaWVkIG1ldGhvZCB0byBleHRyYWN0IG1lZGlhIHF1ZXJpZXMgYW5kIGNyZWF0ZSBhIGN1c3RvbSBjbGFzc1xuICAgIGFwcGx5UmVzcG9uc2l2ZVN0eWxlcyhicmVha3BvaW50OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgbWluV2lkdGggPSBnZXQodGhpcy5icmVha3BvaW50TWFwLCBicmVha3BvaW50KSBhcyBudW1iZXI7XG4gICAgICAgIGNvbnN0IG1lZGlhUnVsZXMgPSBbXTtcblxuICAgICAgICAvLyBMb29wIHRocm91Z2ggYWxsIHRoZSBzdHlsZXNoZWV0c1xuICAgICAgICBmb3IgKGxldCBzaGVldCBvZiBBcnJheS5mcm9tKGRvY3VtZW50LnN0eWxlU2hlZXRzKSkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAvLyBMb29wIHRocm91Z2ggQ1NTIHJ1bGVzXG4gICAgICAgICAgICAgICAgZm9yIChsZXQgcnVsZSBvZiBBcnJheS5mcm9tKHNoZWV0LmNzc1J1bGVzKSkge1xuICAgICAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiB0aGUgcnVsZSBpcyBhIENTU01lZGlhUnVsZVxuICAgICAgICAgICAgICAgICAgICBpZiAocnVsZSBpbnN0YW5jZW9mIENTU01lZGlhUnVsZSAmJiBydWxlLm1lZGlhLm1lZGlhVGV4dC5pbmNsdWRlcyhgbWluLXdpZHRoOiAke21pbldpZHRofXB4YCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgbWVkaWEgcnVsZSdzIENTUyBydWxlc1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgc3ViUnVsZSBvZiBBcnJheS5mcm9tKHJ1bGUuY3NzUnVsZXMpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVkaWFSdWxlcy5wdXNoKHN1YlJ1bGUuY3NzVGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYWNjZXNzaW5nIHN0eWxlc2hlZXQ6JywgZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDcmVhdGUgYSBkeW5hbWljIGNsYXNzIGZvciB0aGUgbWVkaWEgcXVlcmllc1xuICAgICAgICB0aGlzLmNyZWF0ZUN1c3RvbUNsYXNzKGBheHAtcHJldmlldy0ke2JyZWFrcG9pbnR9YCwgbWVkaWFSdWxlcywgYnJlYWtwb2ludCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVDdXN0b21DbGFzcyhjbGFzc05hbWU6IHN0cmluZywgc3R5bGVzOiBzdHJpbmdbXSwgYnJlYWtwb2ludDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHN0eWxlU2hlZXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuICAgICAgICBzdHlsZVNoZWV0LnNldEF0dHJpYnV0ZShcImRhdGEtc2NyZWVuXCIsIGJyZWFrcG9pbnQpO1xuXG4gICAgICAgIC8vIENvbnN0cnVjdCBhIHB1cmUgQ1NTIHN0cmluZywgZHluYW1pY2FsbHkgcmVwbGFjaW5nIHRoZSBicmVha3BvaW50IHByZWZpeFxuICAgICAgICBsZXQgc3R5bGVTdHJpbmcgPSBcIlwiO1xuICAgICAgICBzdHlsZXMuZm9yRWFjaChzdHlsZSA9PiB7XG4gICAgICAgICAgICAvLyBSZXBsYWNlIGFueSBwcmVmaXhlZCBjbGFzc2VzIGxpa2UgJ2xnOicgb3IgJ21kOicgZHluYW1pY2FsbHlcbiAgICAgICAgICAgIGNvbnN0IGR5bmFtaWNQcmVmaXggPSBuZXcgUmVnRXhwKGBcXFxcLiR7YnJlYWtwb2ludH1cXFxcXFxcXDpgLCAnZycpO1xuICAgICAgICAgICAgc3R5bGVTdHJpbmcgKz0gYC4ke2NsYXNzTmFtZX0gJHtzdHlsZS5yZXBsYWNlKGR5bmFtaWNQcmVmaXgsICcuJyl9YDsgLy8gUmVwbGFjZSB0aGUgYnJlYWtwb2ludCBwcmVmaXhcbiAgICAgICAgfSk7XG5cbiAgICAgICAgc3R5bGVTaGVldC5pbm5lclRleHQgPSBzdHlsZVN0cmluZztcbiAgICAgICAgdGhpcy5yZW1vdmVDdXN0b21DbGFzcygpO1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZChzdHlsZVNoZWV0KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbW92ZUN1c3RvbUNsYXNzKCkge1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzdHlsZScpLmZvckVhY2gocyA9PiBzLnJlbW92ZSgpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2VydmljZSA9IGluamVjdChBWFBEZXNpZ25lclNlcnZpY2UpO1xuXG5cbiAgICBwcm90ZWN0ZWQgd2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5zZXJ2aWNlLnNpemUoKSkge1xuICAgICAgICAgICAgY2FzZSAnc20nOlxuICAgICAgICAgICAgICAgIHJldHVybiAnMzQwcHgnO1xuICAgICAgICAgICAgY2FzZSAnbWQnOlxuICAgICAgICAgICAgY2FzZSAnbGcnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnNzY4cHgnO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gJzEwMCUnO1xuICAgICAgICB9XG4gICAgfSk7XG5cblxuICAgIHByaXZhdGUgZWYgPSBlZmZlY3QoKCkgPT4ge1xuICAgICAgICB0aGlzLnJlbW92ZUN1c3RvbUNsYXNzKCk7XG4gICAgICAgIGlmICh0aGlzLnNlcnZpY2Uuc2l6ZSgpICE9ICd4bCcpIHtcbiAgICAgICAgICAgIHRoaXMuYXBwbHlSZXNwb25zaXZlU3R5bGVzKHRoaXMuc2VydmljZS5zaXplKCkpO1xuICAgICAgICB9XG4gICAgfSk7XG5cblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUnKVxuICAgIHByaXZhdGUgZ2V0IF9fc3R5bGUoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY2xzOiBhbnkgPSB7fTtcbiAgICAgICAgY2xzW2B3aWR0aGBdID0gdGhpcy53aWR0aCgpO1xuICAgICAgICByZXR1cm4gY2xzO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIHByaXZhdGUgZ2V0IF9fY2xhc3MoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY2xzOiBhbnkgPSB7fTtcbiAgICAgICAgY2xzW2BheHAtZGVzaWduZXItYm9hcmRgXSA9IHRydWU7XG4gICAgICAgIGNsc1tgYXhwLXN0YXRlLWRlc2lnbmBdID0gdHJ1ZTtcbiAgICAgICAgY2xzWydheC1oLWZ1bGwnXSA9IHRydWU7XG4gICAgICAgIGNsc1snYXgtb3ZlcmZsb3ctYXV0byddID0gdHJ1ZTtcbiAgICAgICAgY2xzW2BheHAtcHJldmlldy0ke3RoaXMuc2VydmljZS5zaXplKCl9YF0gPSB0cnVlO1xuICAgICAgICByZXR1cm4gY2xzO1xuICAgIH1cblxufVxuIiwiPGF4cC13aWRnZXRzLWNvbnRhaW5lciBbKGNvbnRleHQpXT1cImNvbnRleHRcIj5cbiAgICA8bmctY29udGFpbmVyIGF4cC13aWRnZXQtZGVzaWduZXItcmVuZGVyZXIgW25vZGVdPVwic2VydmljZS5jdXJyZW50UGFnZSgpXCIgW21vZGVdPVwic2VydmljZS5tb2RlKClcIj48L25nLWNvbnRhaW5lcj5cbjwvYXhwLXdpZGdldHMtY29udGFpbmVyPiJdfQ==
|