ets-fe-ng-sdk 17.0.430 → 18.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/Reusables/reusable-comps/find-item/find-item.component.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-comps/find-item/find-item.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-comps/watermark/watermark.component.mjs +3 -3
- package/esm2022/lib/Reusables/reusable-pages/extra-pages/extra-pages-routing.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/extra-pages/extra-pages.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/logger/logger-routing.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/logger/logger.component.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/logger/logger.interface.mjs +1 -1
- package/esm2022/lib/Reusables/reusable-pages/logger/logger.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/logger/logger.service.mjs +3 -3
- package/esm2022/lib/Reusables/reusable-pages/page-not-found/page-not-found.component.mjs +3 -3
- package/esm2022/lib/Reusables/reusable-pages/reset/reset-routing.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/reset/reset.component.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/reset/reset.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/robot/robot-routing.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/robot/robot.component.mjs +3 -3
- package/esm2022/lib/Reusables/reusable-pages/robot/robot.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/timeout-tester/timeout-tester-routing.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/timeout-tester/timeout-tester.component.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/timeout-tester/timeout-tester.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/user-activity/ua-extras/user-activity.service.mjs +3 -3
- package/esm2022/lib/Reusables/reusable-pages/version/version-routing.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/version/version.component.mjs +3 -3
- package/esm2022/lib/Reusables/reusable-pages/version/version.module.mjs +4 -4
- package/esm2022/lib/Reusables/reusable-pages/version/version.service.mjs +4 -4
- package/esm2022/lib/Services/Interceptors/authentication-interceptor.service.mjs +5 -5
- package/esm2022/lib/Services/Interceptors/global-error-handler.service.mjs +3 -3
- package/esm2022/lib/Services/Interceptors/logger-interceptor.service.mjs +5 -5
- package/esm2022/lib/Services/Interceptors/request-loader-interceptor.service.mjs +5 -5
- package/esm2022/lib/Services/Interceptors/request-timeout.service.mjs +4 -4
- package/esm2022/lib/Services/api.service.mjs +4 -4
- package/esm2022/lib/Services/app.service.mjs +3 -3
- package/esm2022/lib/Services/base.effect.mjs +3 -3
- package/esm2022/lib/Services/base.facade.service.mjs +1 -1
- package/esm2022/lib/Services/base.service.mjs +4 -4
- package/esm2022/lib/Services/cache/cache-updater.service.mjs +3 -3
- package/esm2022/lib/Services/cache/cache.service.mjs +4 -4
- package/esm2022/lib/Services/cache/local-cache.service.mjs +4 -4
- package/esm2022/lib/Services/cache/saver.service.mjs +3 -3
- package/esm2022/lib/Services/debouncer.service.mjs +4 -4
- package/esm2022/lib/Services/htmler.service.mjs +3 -3
- package/esm2022/lib/Services/input.service.mjs +4 -4
- package/esm2022/lib/Services/page-loader.service.mjs +7 -7
- package/esm2022/lib/Services/page.service.mjs +3 -3
- package/esm2022/lib/Services/route.service.mjs +4 -4
- package/esm2022/lib/Services/service-worker/check-for-update.service.mjs +4 -4
- package/esm2022/lib/Services/service-worker/handle-unrecoverable-state.service.mjs +3 -3
- package/esm2022/lib/Services/service-worker/log-update.service.mjs +4 -4
- package/esm2022/lib/Services/service-worker/prompt-update.service.mjs +3 -3
- package/esm2022/lib/Services/service-worker/service-worker.service.mjs +4 -4
- package/esm2022/lib/Services/storage.service.mjs +4 -4
- package/esm2022/lib/Services/theme.service.mjs +3 -3
- package/esm2022/lib/Services/translation.service.mjs +4 -4
- package/esm2022/lib/Services/utility.service.mjs +4 -4
- package/esm2022/lib/Services/window-security.service.mjs +4 -4
- package/esm2022/lib/Shared/classes/page-loader.class.mjs +1 -1
- package/esm2022/lib/Shared/components/add-item/add-item.component.mjs +3 -3
- package/esm2022/lib/Shared/components/autocomplete/autocomplete-td-rf/autocomplete-td-rf.component.mjs +4 -4
- package/esm2022/lib/Shared/components/autocomplete/autocomplete.component.mjs +4 -4
- package/esm2022/lib/Shared/components/autocomplete/autocomplete.service.mjs +4 -4
- package/esm2022/lib/Shared/components/btn/btn-lg/btn-lg.component.mjs +3 -3
- package/esm2022/lib/Shared/components/btn/btn-link/btn-link.component.mjs +3 -3
- package/esm2022/lib/Shared/components/btn/btn.component.mjs +4 -4
- package/esm2022/lib/Shared/components/btn/btn.service.mjs +4 -4
- package/esm2022/lib/Shared/components/btn/details-btn/details-btn.component.mjs +3 -3
- package/esm2022/lib/Shared/components/card/card.component.mjs +3 -3
- package/esm2022/lib/Shared/components/confirm-dialog/confirm-dialog.component.mjs +3 -3
- package/esm2022/lib/Shared/components/confirm-dialog/confirm-dialog.service.mjs +4 -4
- package/esm2022/lib/Shared/components/core/button/button.component.mjs +3 -3
- package/esm2022/lib/Shared/components/documents-name-display/documents-name-display.component.mjs +4 -4
- package/esm2022/lib/Shared/components/editable-text-case/editable-text-case.component.mjs +4 -4
- package/esm2022/lib/Shared/components/export-table/export-table.component.mjs +4 -4
- package/esm2022/lib/Shared/components/fields-to-display/fields-to-display.component.mjs +4 -4
- package/esm2022/lib/Shared/components/file-upload/file-upload.component.mjs +4 -4
- package/esm2022/lib/Shared/components/form-error/form-error.component.mjs +4 -4
- package/esm2022/lib/Shared/components/form-generator/form-generated-value/form-generated-value.component.mjs +6 -6
- package/esm2022/lib/Shared/components/form-generator/form-generator.base.component.mjs +11 -2
- package/esm2022/lib/Shared/components/form-generator/form-generator.component.mjs +4 -4
- package/esm2022/lib/Shared/components/form-generator/form-generator.service.mjs +3 -3
- package/esm2022/lib/Shared/components/form-link/form-link.component.mjs +3 -3
- package/esm2022/lib/Shared/components/form-tab-headers/form-tab-headers.component.mjs +3 -3
- package/esm2022/lib/Shared/components/index-comp-layout/index-comp-layout.component.mjs +7 -7
- package/esm2022/lib/Shared/components/info-dialog/info-dialog.component.mjs +4 -4
- package/esm2022/lib/Shared/components/info-dialog/info-dialog.service.mjs +4 -4
- package/esm2022/lib/Shared/components/info-icon/info-icon.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/date-input/date-input.component.mjs +5 -5
- package/esm2022/lib/Shared/components/input/day-hour-min-input/day-hour-min-input.component.mjs +4 -4
- package/esm2022/lib/Shared/components/input/input-base.component.mjs +4 -4
- package/esm2022/lib/Shared/components/input/input-basic.component.mjs +4 -4
- package/esm2022/lib/Shared/components/input/input-control.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input-label/input-label.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input-td-rf.component.mjs +4 -4
- package/esm2022/lib/Shared/components/input/input.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input.service.mjs +4 -4
- package/esm2022/lib/Shared/components/input/inputs-pipes.pipe.mjs +26 -26
- package/esm2022/lib/Shared/components/input/validation-message/validation-message.component.mjs +6 -6
- package/esm2022/lib/Shared/components/input/validation-message/validation-message.service.mjs +3 -3
- package/esm2022/lib/Shared/components/input/year-month-td-rf/year-month-td-rf.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input-NgModel/input-ngmodel.component.mjs +4 -4
- package/esm2022/lib/Shared/components/input-NgModel/validation-message-ngmodel/validation-message-ngmodel.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input-table/input-table.component.mjs +4 -4
- package/esm2022/lib/Shared/components/input-table/input-table.service.mjs +3 -3
- package/esm2022/lib/Shared/components/label/label.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/loader-animations/blinking-blocks/blinking-blocks.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/loader-animations/bouncing-ball/bouncing-ball.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/loader-animations/fading-bars/fading-bars.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/loader-animations/fading-circles/fading-circles.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/loader-animations/ring-ripples/ring-ripples.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/loader.component.mjs +3 -3
- package/esm2022/lib/Shared/components/loader/spinner.component.mjs +3 -3
- package/esm2022/lib/Shared/components/modal/modal-body.directive.mjs +3 -3
- package/esm2022/lib/Shared/components/modal/modal-footer.directive.mjs +3 -3
- package/esm2022/lib/Shared/components/modal/modal.component.mjs +3 -3
- package/esm2022/lib/Shared/components/modal-form/modal-form.component.mjs +3 -3
- package/esm2022/lib/Shared/components/modal-header/modal-header.component.mjs +3 -3
- package/esm2022/lib/Shared/components/narration-history-comp/narration-history-comp.component.mjs +4 -4
- package/esm2022/lib/Shared/components/notifications/notifications.component.mjs +3 -3
- package/esm2022/lib/Shared/components/notifications/notifications.service.mjs +3 -3
- package/esm2022/lib/Shared/components/page-center-body/page-center-body.component.mjs +3 -3
- package/esm2022/lib/Shared/components/page-template/page-template.component.mjs +4 -4
- package/esm2022/lib/Shared/components/page-to-component/page-to-component.component.mjs +6 -6
- package/esm2022/lib/Shared/components/page-to-component/page-to-component.directive.mjs +3 -3
- package/esm2022/lib/Shared/components/page-to-component/page-to-component.service.mjs +3 -3
- package/esm2022/lib/Shared/components/paginator/paginator.component.mjs +4 -4
- package/esm2022/lib/Shared/components/phone-number/phone-number.component.mjs +4 -4
- package/esm2022/lib/Shared/components/phone-number/phone-number.model.mjs +1 -1
- package/esm2022/lib/Shared/components/phone-number/phone-number.service.mjs +3 -3
- package/esm2022/lib/Shared/components/rich-text-editor/rich-text-editor.component.mjs +12 -12
- package/esm2022/lib/Shared/components/rich-text-editor-rf/rich-text-editor-rf.component.mjs +12 -12
- package/esm2022/lib/Shared/components/row-actions/row-actions.component.mjs +3 -3
- package/esm2022/lib/Shared/components/svg-icon/svg-icon.component.mjs +3 -3
- package/esm2022/lib/Shared/components/svg-icon/svg-icon.service.mjs +3 -3
- package/esm2022/lib/Shared/components/table-https/table-https.component.mjs +4 -4
- package/esm2022/lib/Shared/components/table-input/table-input-row/table-input-row.component.mjs +3 -3
- package/esm2022/lib/Shared/components/table-input/table-input.component.mjs +4 -4
- package/esm2022/lib/Shared/components/table-plain/table-base.component.mjs +4 -4
- package/esm2022/lib/Shared/components/table-plain/table-plain.component.mjs +4 -4
- package/esm2022/lib/Shared/components/table-plain/table-plain.service.mjs +3 -3
- package/esm2022/lib/Shared/components/table-plain/table.pipe.mjs +20 -20
- package/esm2022/lib/Shared/components/text/text.component.mjs +3 -3
- package/esm2022/lib/Shared/components/text-area-modal/text-area-modal.component.mjs +3 -3
- package/esm2022/lib/Shared/components/text-area-modal/text-area-modal.service.mjs +3 -3
- package/esm2022/lib/Shared/components/text-case-1/text-case-1.component.mjs +4 -4
- package/esm2022/lib/Shared/components/text-case-2/text-case-2.component.mjs +3 -3
- package/esm2022/lib/Shared/components/text-case-2/text-case.service.mjs +4 -4
- package/esm2022/lib/Shared/components/text-case-input/text-case-input.component.mjs +3 -3
- package/esm2022/lib/Shared/components/toggle-input-form/toggle-input-form.component.mjs +3 -3
- package/esm2022/lib/Shared/components/translator-case/translator-case.component.mjs +3 -3
- package/esm2022/lib/Shared/components/vertical-nav/vertical-nav.component.mjs +4 -4
- package/esm2022/lib/Shared/components/view-form-buttons/view-form-buttons.component.mjs +3 -3
- package/esm2022/lib/Shared/components/webcam-media/webcam-media.component.mjs +4 -4
- package/esm2022/lib/Shared/directives/commafy-number.directive.mjs +3 -3
- package/esm2022/lib/Shared/directives/drag-drop-file-upload.directive.mjs +4 -4
- package/esm2022/lib/Shared/directives/form-invalid-class.directive.mjs +3 -3
- package/esm2022/lib/Shared/directives/index.directive.mjs +23 -23
- package/esm2022/lib/Shared/directives/input-formatter.directive.mjs +14 -14
- package/esm2022/lib/Shared/directives/integer-only.directive.mjs +4 -4
- package/esm2022/lib/Shared/directives/mHref.directive.mjs +3 -3
- package/esm2022/lib/Shared/directives/negative-number-only.directive.mjs +4 -4
- package/esm2022/lib/Shared/directives/responsiveness.directive.mjs +20 -20
- package/esm2022/lib/Shared/directives/translator.directive.mjs +4 -4
- package/esm2022/lib/Shared/models/form.class.mjs +1 -1
- package/esm2022/lib/Shared/pipes/form-invalid-class.pipe.mjs +3 -3
- package/esm2022/lib/Shared/pipes/paginator.pipe.mjs +3 -3
- package/esm2022/lib/Shared/pipes/translate.pipe.mjs +7 -7
- package/esm2022/lib/Shared/pipes/utility.pipe.mjs +134 -134
- package/esm2022/lib/Shared/prototypes/prototypes.mjs +1 -1
- package/esm2022/lib/Shared/shared.module.mjs +4 -4
- package/esm2022/lib/authentication/web-user/web-user-authentication.guard.mjs +1 -1
- package/esm2022/lib/authentication/web-user/web-user-authentication.interceptor.mjs +1 -1
- package/esm2022/lib/authentication/web-user/web-user-authentication.service.mjs +3 -3
- package/esm2022/lib/authentication/web-user/web-user-forgot-password.component.mjs +4 -4
- package/esm2022/lib/authentication/web-user/web-user-login.component.mjs +4 -4
- package/esm2022/lib/authentication/web-user/web-user-reset-password.component.mjs +4 -4
- package/esm2022/lib/configs/base-functions.mjs +1 -1
- package/fesm2022/ets-fe-ng-sdk.mjs +766 -758
- package/fesm2022/ets-fe-ng-sdk.mjs.map +1 -1
- package/lib/Services/utility.service.d.ts +5 -5
- package/lib/Shared/components/btn/btn.component.d.ts +3 -3
- package/lib/Shared/components/form-generator/form-generated-value/form-generated-value.component.d.ts +1 -1
- package/lib/Shared/components/form-generator/form-generator.base.component.d.ts +3 -0
- package/lib/Shared/components/index-comp-layout/index-comp-layout.component.d.ts +1 -1
- package/lib/Shared/components/input/input-base.component.d.ts +3 -7
- package/lib/Shared/components/table-https/table-https.component.d.ts +3 -3
- package/lib/Shared/components/text-case-2/text-case.service.d.ts +1 -1
- package/package.json +1 -1
|
@@ -47,10 +47,10 @@ export class ImageUpload {
|
|
|
47
47
|
}
|
|
48
48
|
this.extractedImg.emit(f);
|
|
49
49
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
51
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ImageUpload, deps: [{ token: i0.ElementRef }, { token: i1.UtilityService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
51
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: ImageUpload, isStandalone: true, selector: "[imageUpload]", inputs: { disableUpload: "disableUpload" }, outputs: { extractedImg: "extractedImg" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ImageUpload, decorators: [{
|
|
54
54
|
type: Directive,
|
|
55
55
|
args: [{
|
|
56
56
|
selector: '[imageUpload]',
|
|
@@ -83,10 +83,10 @@ export class ImageLoaderDirective {
|
|
|
83
83
|
getImageByType(type) {
|
|
84
84
|
return Config.Images[type] ? Config.Images[type] : Config.Images.other;
|
|
85
85
|
}
|
|
86
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
87
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
86
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ImageLoaderDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
87
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: ImageLoaderDirective, isStandalone: true, selector: "[imageLoader]", inputs: { imageLoader: "imageLoader", imageType: "imageType" }, ngImport: i0 }); }
|
|
88
88
|
}
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: ImageLoaderDirective, decorators: [{
|
|
90
90
|
type: Directive,
|
|
91
91
|
args: [{
|
|
92
92
|
selector: '[imageLoader]',
|
|
@@ -109,10 +109,10 @@ export class OnClickDirective {
|
|
|
109
109
|
constructor(el) {
|
|
110
110
|
this.el = el;
|
|
111
111
|
}
|
|
112
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
113
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
112
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: OnClickDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
113
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: OnClickDirective, selector: "button", host: { listeners: { "click": "onClick($event)" } }, ngImport: i0 }); }
|
|
114
114
|
}
|
|
115
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: OnClickDirective, decorators: [{
|
|
116
116
|
type: Directive,
|
|
117
117
|
args: [{
|
|
118
118
|
selector: 'button',
|
|
@@ -192,10 +192,10 @@ export class MrouterLinkirective {
|
|
|
192
192
|
.map((key) => `${key}=${q[key]}`)
|
|
193
193
|
.join('&');
|
|
194
194
|
}
|
|
195
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
196
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
195
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: MrouterLinkirective, deps: [{ token: i0.ElementRef }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i1.UtilityService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
196
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: MrouterLinkirective, isStandalone: true, selector: "[mrouterLink]", inputs: { _mrouterLink: ["mrouterLink", "_mrouterLink"], mrouterLinkActivatedRoute: "mrouterLinkActivatedRoute", mqueryParams: "mqueryParams", isPhone: "isPhone", isEmail: "isEmail" }, ngImport: i0 }); }
|
|
197
197
|
}
|
|
198
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: MrouterLinkirective, decorators: [{
|
|
199
199
|
type: Directive,
|
|
200
200
|
args: [{
|
|
201
201
|
selector: '[mrouterLink]',
|
|
@@ -240,10 +240,10 @@ export class PSDirective {
|
|
|
240
240
|
update() {
|
|
241
241
|
this.psInstance?.update();
|
|
242
242
|
}
|
|
243
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
244
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
243
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: PSDirective, deps: [{ token: i0.ElementRef }, { token: i1.UtilityService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
244
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: PSDirective, isStandalone: true, selector: "[PSBox]", inputs: { selector: ["PSBox", "selector"], noHorizontal: ["PSBoxNoHorizontal", "noHorizontal"], noVertical: ["PSBoxNoVertical", "noVertical"] }, usesOnChanges: true, ngImport: i0 }); }
|
|
245
245
|
}
|
|
246
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
246
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: PSDirective, decorators: [{
|
|
247
247
|
type: Directive,
|
|
248
248
|
args: [{
|
|
249
249
|
selector: '[PSBox]',
|
|
@@ -273,10 +273,10 @@ export class EqualChildrenDirective {
|
|
|
273
273
|
maxWidth = Math.max(maxWidth, item.offsetWidth);
|
|
274
274
|
}
|
|
275
275
|
}
|
|
276
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
277
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
276
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: EqualChildrenDirective, deps: [{ token: i0.ElementRef }, { token: i1.UtilityService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
277
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: EqualChildrenDirective, isStandalone: true, selector: "[equalChildren]", usesOnChanges: true, ngImport: i0 }); }
|
|
278
278
|
}
|
|
279
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
279
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: EqualChildrenDirective, decorators: [{
|
|
280
280
|
type: Directive,
|
|
281
281
|
args: [{
|
|
282
282
|
selector: '[equalChildren]',
|
|
@@ -299,15 +299,15 @@ const comps = [
|
|
|
299
299
|
FormInvalidClassDirective,
|
|
300
300
|
];
|
|
301
301
|
export class DirectivesModule {
|
|
302
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
303
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
302
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: DirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
303
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: DirectivesModule, imports: [CommonModule, InputFormatDirectivesModule, EqualChildrenDirective, ImageLoaderDirective, ImageUpload, MrouterLinkirective, NegativeNumberOnlyDirective, PSDirective, TranslatorDirective,
|
|
304
304
|
DragDropFileUploadDirective,
|
|
305
305
|
FormInvalidClassDirective], exports: [EqualChildrenDirective, ImageLoaderDirective, ImageUpload, MrouterLinkirective, NegativeNumberOnlyDirective, PSDirective, TranslatorDirective,
|
|
306
306
|
DragDropFileUploadDirective,
|
|
307
307
|
FormInvalidClassDirective, InputFormatDirectivesModule, ETSResponsivenessDirectiveModule] }); }
|
|
308
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
308
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: DirectivesModule, providers: [DecimalPipe], imports: [CommonModule, InputFormatDirectivesModule, InputFormatDirectivesModule, ETSResponsivenessDirectiveModule] }); }
|
|
309
309
|
}
|
|
310
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
310
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: DirectivesModule, decorators: [{
|
|
311
311
|
type: NgModule,
|
|
312
312
|
args: [{
|
|
313
313
|
imports: [CommonModule, InputFormatDirectivesModule, ...comps],
|
|
@@ -315,4 +315,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
315
315
|
providers: [DecimalPipe],
|
|
316
316
|
}]
|
|
317
317
|
}] });
|
|
318
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXRzLWZlLW5nLXNkay9zcmMvbGliL1NoYXJlZC9kaXJlY3RpdmVzL2luZGV4LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsUUFBUSxFQUVSLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUc3RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLGdCQUFnQixNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQU05RSxNQUFNLE9BQU8sV0FBVztJQUVDLE9BQU87UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhO1lBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFJRCxZQUNTLEVBQWdDLEVBQ2hDLEVBQWtCO1FBRGxCLE9BQUUsR0FBRixFQUFFLENBQThCO1FBQ2hDLE9BQUUsR0FBRixFQUFFLENBQWdCO1FBVGpCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQVdo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QUssQ0FBQztvQkFDOUQsT0FBTyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsZ0NBQWdDLENBQUM7b0JBQ2xGLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBOZ01vZHVsZSxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vdHJhbnNsYXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSW1hZ2VUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL2luZGV4Lm1vZGVsJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmVnYXRpdmVOdW1iZXJPbmx5RGlyZWN0aXZlIH0gZnJvbSAnLi9uZWdhdGl2ZS1udW1iZXItb25seS5kaXJlY3RpdmUnO1xuaW1wb3J0IFBlcmZlY3RTY3JvbGxiYXIgZnJvbSAncGVyZmVjdC1zY3JvbGxiYXInO1xuaW1wb3J0IHsgSW5wdXRGb3JtYXREaXJlY3RpdmVzTW9kdWxlIH0gZnJvbSAnLi9pbnB1dC1mb3JtYXR0ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IERyYWdEcm9wRmlsZVVwbG9hZERpcmVjdGl2ZSB9IGZyb20gJy4vZHJhZy1kcm9wLWZpbGUtdXBsb2FkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGb3JtSW52YWxpZENsYXNzRGlyZWN0aXZlIH0gZnJvbSAnLi9mb3JtLWludmFsaWQtY2xhc3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vU2VydmljZXMvdXRpbGl0eS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZ3MvaW5kZXguY29uZmlnJztcbmltcG9ydCB7IEVUU1Jlc3BvbnNpdmVuZXNzRGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnLi9yZXNwb25zaXZlbmVzcy5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbaW1hZ2VVcGxvYWRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VVcGxvYWQge1xuICBAT3V0cHV0KCkgZXh0cmFjdGVkSW1nID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuICBASG9zdExpc3RlbmVyKCdjbGljaycpIG9uQ2xpY2soKSB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVVcGxvYWQpIHRoaXMub3BlbkZpbGUoKTtcbiAgfVxuICBASW5wdXQoKSBkaXNhYmxlVXBsb2FkOiBib29sZWFuO1xuICBmaWxlRWw6IEhUTUxJbnB1dEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVsOiBFbGVtZW50UmVmPEhUTUxJbWFnZUVsZW1lbnQ+LFxuICAgIHB1YmxpYyB1UzogVXRpbGl0eVNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuZmlsZUVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICB0aGlzLmZpbGVFbC50eXBlID0gJ2ZpbGUnO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuXG4gICAgdGhpcy5maWxlRWwub25jaGFuZ2UgPSAoKSA9PiB7XG4gICAgICB0aGlzLnByZXZpZXcodGhpcy5maWxlRWwuZmlsZXMpO1xuICAgIH07XG4gIH1cbiAgb3BlbkZpbGUoKSB7XG4gICAgdGhpcy5maWxlRWwuY2xpY2soKTtcbiAgfVxuXG4gIHByZXZpZXcoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgaWYgKGZpbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIGNvbnN0IGYgPSBmaWxlc1swXTtcbiAgICBjb25zdCBtaW1lVHlwZSA9IGYudHlwZTtcbiAgICBpZiAoZmlsZXMubGVuZ3RoID09IDEgJiYgZi5zaXplID4gMTAwMDAwMDApIHtcbiAgICAgIHRoaXMudVMubm90aWZ5KCdJbWFnZSBoYXMgdG8gYmUgbGVzcyB0aGVuIDEwbWIgaW4gc2l6ZScsIDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAobWltZVR5cGUubWF0Y2goL2ltYWdlXFwvKi8pID09IG51bGwpIHtcbiAgICAgIHRoaXMudVMubm90aWZ5KCdPbmx5IGltYWdlcyBhcmUgc3VwcG9ydGVkLicsIDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmV4dHJhY3RlZEltZy5lbWl0KGYpO1xuICB9XG59XG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbaW1hZ2VMb2FkZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VMb2FkZXJEaXJlY3RpdmUge1xuICBzcmM6IHN0cmluZztcbiAgQElucHV0KCkgc2V0IGltYWdlTG9hZGVyKHY6IHN0cmluZykge1xuICAgIHRoaXMuc3JjID0gdjtcbiAgICB0aGlzLmxvYWRJbWFnZSh2KTtcbiAgfVxuICBASW5wdXQoKSBpbWFnZVR5cGU6IEltYWdlVHlwZTtcbiAgY29uc3RydWN0b3IocHVibGljIGVsOiBFbGVtZW50UmVmPEhUTUxJbWFnZUVsZW1lbnQ+KSB7fVxuICBsb2FkSW1hZ2Uoc3JjOiBzdHJpbmcgPSB0aGlzLnNyYywgdHlwZTogSW1hZ2VUeXBlID0gdGhpcy5pbWFnZVR5cGUpIHtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3JjID0gdGhpcy5nZXRJbWFnZUJ5VHlwZSh0eXBlKT8ubWluO1xuICAgIGNvbnN0IGltZ0VsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW1nJyk7XG4gICAgaW1nRWwuc3JjID0gc3JjIHx8IHRoaXMuZ2V0SW1hZ2VCeVR5cGUodHlwZSk/LnNyYztcbiAgICBpbWdFbC5vbmxvYWQgPSAoZSkgPT4ge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnNyYyA9IGltZ0VsLnNyYztcbiAgICB9O1xuICB9XG4gIGdldEltYWdlQnlUeXBlKHR5cGU6IEltYWdlVHlwZSkge1xuICAgIHJldHVybiBDb25maWcuSW1hZ2VzW3R5cGVdID8gQ29uZmlnLkltYWdlc1t0eXBlXSA6IENvbmZpZy5JbWFnZXMub3RoZXI7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYnV0dG9uJyxcbn0pXG5leHBvcnQgY2xhc3MgT25DbGlja0RpcmVjdGl2ZSB7XG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSkgb25DbGljaygkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCBsb2NhdGlvbiA9ICRldmVudC52aWV3LmxvY2F0aW9uO1xuICAgIGNvbnN0IHBhdGhOYW1lID0gZGVjb2RlVVJJKGxvY2F0aW9uLnBhdGhuYW1lKTtcbiAgICBjb25zdCBpbm50ZXJIdG1sOiBzdHJpbmcgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MO1xuICAgIGNvbnNvbGUubG9nKGxvY2F0aW9uLCBwYXRoTmFtZSk7XG4gICAgLy8gc2VuZCBwYXRoTmFtZSBhbmQgaW5udGVySHRtbCB0byBzZXJ2ZXIuXG4gICAgLy8gICAgOlxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cbn1cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttcm91dGVyTGlua10nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBNcm91dGVyTGlua2lyZWN0aXZlIHtcbiAgbXJvdXRlckxpbms6IHN0cmluZztcbiAgQElucHV0KCdtcm91dGVyTGluaycpIHNldCBfbXJvdXRlckxpbmsodjogc3RyaW5nKSB7XG4gICAgaWYgKHYpIHtcbiAgICAgIHRoaXMubXJvdXRlckxpbmsgPSB2O1xuICAgICAgLy8gZGVidWdnZXI7XG4gICAgICB0aGlzLnNldFJvdXRlcigpO1xuICAgIH1cbiAgfVxuICBASW5wdXQoKSBtcm91dGVyTGlua0FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbiAgQElucHV0KCkgbXF1ZXJ5UGFyYW1zOiBhbnk7XG4gIEBJbnB1dCgpIGlzUGhvbmU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzRW1haWw6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVsOiBFbGVtZW50UmVmPEhUTUxBbmNob3JFbGVtZW50PixcbiAgICBwdWJsaWMgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHB1YmxpYyByb3V0ZXI6IFJvdXRlcixcbiAgICBwdWJsaWMgdVM6IFV0aWxpdHlTZXJ2aWNlLFxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0Um91dGVyKCk7XG4gIH1cblxuICBzZXRSb3V0ZXIoKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgaWYgKHRoaXMubXJvdXRlckxpbmsgJiYgdGhpcy5lbC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnbm90TGluaycpO1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2xpbmsnKTtcbiAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgaWYgKHRoaXMuaXNFbWFpbCkge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaHJlZiA9ICdtYWlsdG86JyArIHRoaXMubXJvdXRlckxpbms7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNQaG9uZSkge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaHJlZiA9ICd0ZWw6JyArIHRoaXMubXJvdXRlckxpbms7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgY29uc3QgcXVlcnlQYXJhbXM6IHsgW3g6IHN0cmluZ106IHN0cmluZyB9ID0gdGhpcy5tcXVlcnlQYXJhbXMgfHwge30sXG4gICAgICAgICAgcm91dGVMZXZlbHMgPSB0aGlzLm1yb3V0ZXJMaW5rLnNwbGl0KCcuLi8nKS5sZW5ndGggLSAxLFxuICAgICAgICAgIGN1cnJlbnRMb2NhdGlvblBhcnRzID0gbG9jYXRpb24ucGF0aG5hbWUuc3BsaXQoJy8nKTtcbiAgICAgICAgbGV0IHJvdXRlID0gJycsXG4gICAgICAgICAgdXJsUGFydHMgPSB0aGlzLm1yb3V0ZXJMaW5rLnNwbGl0KCc/Jyk7XG5cbiAgICAgICAgcm91dGUgPSB1cmxQYXJ0c1swXTtcbiAgICAgICAgaWYgKHVybFBhcnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICBjb25zdCBrdnBzID0gdXJsUGFydHNbMV0uc3BsaXQoJyYnKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IGt2cCBvZiBrdnBzKSB7XG4gICAgICAgICAgICBjb25zdCBrdnBTcGxpdCA9IGt2cC5zcGxpdCgnPScpO1xuICAgICAgICAgICAgcXVlcnlQYXJhbXNba3ZwU3BsaXRbMF1dID0ga3ZwU3BsaXRbMV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJvdXRlTGV2ZWxzKSBjdXJyZW50TG9jYXRpb25QYXJ0cy5zcGxpY2Uocm91dGVMZXZlbHMgKiAtMSk7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5ocmVmID1cbiAgICAgICAgICBjdXJyZW50TG9jYXRpb25QYXJ0cy5qb2luKCcvJykgK1xuICAgICAgICAgICcvJyArXG4gICAgICAgICAgcm91dGVcbiAgICAgICAgICAgIC5zcGxpdCgnLi4vJylcbiAgICAgICAgICAgIC5maWx0ZXIoKHgpID0+IHgpXG4gICAgICAgICAgICAuam9pbignLycpICtcbiAgICAgICAgICAnPycgK1xuICAgICAgICAgIHRoaXMuc3RyaW5naWZ5UXVlcnlQYXJhbXMocXVlcnlQYXJhbXMpO1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQub25jbGljayA9IChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtyb3V0ZV0sIHtcbiAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMudVMuZW52aXJvbm1lbnQuYWN0aXZhdGVkUm91dGUgfHwgdGhpcy5yb3V0ZSxcbiAgICAgICAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnbm90TGluaycpO1xuICAgIH1cbiAgfVxuICBzdHJpbmdpZnlRdWVyeVBhcmFtcyhxOiB7IFt4OiBzdHJpbmddOiBzdHJpbmcgfSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHEpXG4gICAgICAubWFwKChrZXkpID0+IGAke2tleX09JHtxW2tleV19YClcbiAgICAgIC5qb2luKCcmJyk7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW1BTQm94XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFBTRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCdQU0JveCcpIHNlbGVjdG9yOiBzdHJpbmcgfCBIVE1MRWxlbWVudDtcbiAgQElucHV0KCdQU0JveE5vSG9yaXpvbnRhbCcpIG5vSG9yaXpvbnRhbDogYm9vbGVhbjtcbiAgQElucHV0KCdQU0JveE5vVmVydGljYWwnKSBub1ZlcnRpY2FsOiBib29sZWFuO1xuXG4gIHByb3RlY3RlZCBwc0luc3RhbmNlOiBQZXJmZWN0U2Nyb2xsYmFyO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIHVTOiBVdGlsaXR5U2VydmljZSxcbiAgKSB7fVxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHt9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluaXQoKTtcbiAgfVxuICBpbml0KCkge1xuICAgIGlmICghdGhpcy51Uy5pc01vYmlsZSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMucHNJbnN0YW5jZSA9IG5ldyBQZXJmZWN0U2Nyb2xsYmFyKHRoaXMuc2VsZWN0b3IgfHwgdGhpcy5lbC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgICAgd2hlZWxTcGVlZDogMC41LFxuICAgICAgICAgIHN3aXBlRWFzaW5nOiBmYWxzZSxcbiAgICAgICAgICBzdXBwcmVzc1Njcm9sbFg6IHRoaXMubm9Ib3Jpem9udGFsIHx8IGZhbHNlLFxuICAgICAgICAgIHN1cHByZXNzU2Nyb2xsWTogdGhpcy5ub1ZlcnRpY2FsIHx8IGZhbHNlLFxuICAgICAgICAgIHdoZWVsUHJvcGFnYXRpb246IHRydWUsXG4gICAgICAgICAgbWluU2Nyb2xsYmFyTGVuZ3RoOiA0MCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucHNJbnN0YW5jZS51cGRhdGUoKTtcbiAgICAgIH0sIDApO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZSgpIHtcbiAgICB0aGlzLnBzSW5zdGFuY2U/LnVwZGF0ZSgpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlcXVhbENoaWxkcmVuXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEVxdWFsQ2hpbGRyZW5EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIHVTOiBVdGlsaXR5U2VydmljZSxcbiAgKSB7fVxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHt9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jaGlsZHJlbjtcbiAgICBsZXQgbWF4V2lkdGg6IG51bWJlciA9IDA7XG4gICAgZGVidWdnZXI7XG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGNoaWxkcmVuKSB7XG4gICAgICBtYXhXaWR0aCA9IE1hdGgubWF4KG1heFdpZHRoLCBpdGVtLm9mZnNldFdpZHRoKTtcbiAgICB9XG4gIH1cbn1cbmNvbnN0IGNvbXBzID0gW1xuICAvLyBDb21tYWZ5TnVtYmVyRGlyZWN0aXZlLFxuICBFcXVhbENoaWxkcmVuRGlyZWN0aXZlLFxuICBJbWFnZUxvYWRlckRpcmVjdGl2ZSxcbiAgSW1hZ2VVcGxvYWQsXG4gIC8vIE5vRm9ybWF0RGlyZWN0aXZlLFxuICBNcm91dGVyTGlua2lyZWN0aXZlLFxuICBOZWdhdGl2ZU51bWJlck9ubHlEaXJlY3RpdmUsXG4gIC8vIE9uQ2xpY2tEaXJlY3RpdmUsXG4gIC8vIElucHV0Rm9ybWF0RGlyZWN0aXZlLFxuICBQU0RpcmVjdGl2ZSxcbiAgVHJhbnNsYXRvckRpcmVjdGl2ZSxcbiAgRHJhZ0Ryb3BGaWxlVXBsb2FkRGlyZWN0aXZlLFxuICBGb3JtSW52YWxpZENsYXNzRGlyZWN0aXZlLFxuXTtcbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElucHV0Rm9ybWF0RGlyZWN0aXZlc01vZHVsZSwgLi4uY29tcHNdLFxuICBleHBvcnRzOiBbLi4uY29tcHMsIElucHV0Rm9ybWF0RGlyZWN0aXZlc01vZHVsZSwgRVRTUmVzcG9uc2l2ZW5lc3NEaXJlY3RpdmVNb2R1bGVdLFxuICBwcm92aWRlcnM6IFtEZWNpbWFsUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIERpcmVjdGl2ZXNNb2R1bGUge31cbiJdfQ==
|
|
318
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXRzLWZlLW5nLXNkay9zcmMvbGliL1NoYXJlZC9kaXJlY3RpdmVzL2luZGV4LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsUUFBUSxFQUVSLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUc3RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRSxPQUFPLGdCQUFnQixNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQU05RSxNQUFNLE9BQU8sV0FBVztJQUVDLE9BQU87UUFDNUIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhO1lBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFJRCxZQUNTLEVBQWdDLEVBQ2hDLEVBQWtCO1FBRGxCLE9BQUUsR0FBRixFQUFFLENBQThCO1FBQ2hDLE9BQUUsR0FBRixFQUFFLENBQWdCO1FBVGpCLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQVdo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RUFBRSwyQkFBMkIsRUFDL0IsMkJBQTJCLEVBQUUsZ0NBQWdDOzsyRkFHdEUsZ0JBQWdCO2tCQUw1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSwyQkFBMkIsRUFBRSxHQUFHLEtBQUssQ0FBQztvQkFDOUQsT0FBTyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsZ0NBQWdDLENBQUM7b0JBQ2xGLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBOZ01vZHVsZSxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vdHJhbnNsYXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSW1hZ2VUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL2luZGV4Lm1vZGVsJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmVnYXRpdmVOdW1iZXJPbmx5RGlyZWN0aXZlIH0gZnJvbSAnLi9uZWdhdGl2ZS1udW1iZXItb25seS5kaXJlY3RpdmUnO1xuaW1wb3J0IFBlcmZlY3RTY3JvbGxiYXIgZnJvbSAncGVyZmVjdC1zY3JvbGxiYXInO1xuaW1wb3J0IHsgSW5wdXRGb3JtYXREaXJlY3RpdmVzTW9kdWxlIH0gZnJvbSAnLi9pbnB1dC1mb3JtYXR0ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IERyYWdEcm9wRmlsZVVwbG9hZERpcmVjdGl2ZSB9IGZyb20gJy4vZHJhZy1kcm9wLWZpbGUtdXBsb2FkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBGb3JtSW52YWxpZENsYXNzRGlyZWN0aXZlIH0gZnJvbSAnLi9mb3JtLWludmFsaWQtY2xhc3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IFV0aWxpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vU2VydmljZXMvdXRpbGl0eS5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZ3MvaW5kZXguY29uZmlnJztcbmltcG9ydCB7IEVUU1Jlc3BvbnNpdmVuZXNzRGlyZWN0aXZlTW9kdWxlIH0gZnJvbSAnLi9yZXNwb25zaXZlbmVzcy5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbaW1hZ2VVcGxvYWRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VVcGxvYWQge1xuICBAT3V0cHV0KCkgZXh0cmFjdGVkSW1nID0gbmV3IEV2ZW50RW1pdHRlcjxGaWxlPigpO1xuICBASG9zdExpc3RlbmVyKCdjbGljaycpIG9uQ2xpY2soKSB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVVcGxvYWQpIHRoaXMub3BlbkZpbGUoKTtcbiAgfVxuICBASW5wdXQoKSBkaXNhYmxlVXBsb2FkOiBib29sZWFuO1xuICBmaWxlRWw6IEhUTUxJbnB1dEVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVsOiBFbGVtZW50UmVmPEhUTUxJbWFnZUVsZW1lbnQ+LFxuICAgIHB1YmxpYyB1UzogVXRpbGl0eVNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuZmlsZUVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICB0aGlzLmZpbGVFbC50eXBlID0gJ2ZpbGUnO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuXG4gICAgdGhpcy5maWxlRWwub25jaGFuZ2UgPSAoKSA9PiB7XG4gICAgICB0aGlzLnByZXZpZXcodGhpcy5maWxlRWwuZmlsZXMpO1xuICAgIH07XG4gIH1cbiAgb3BlbkZpbGUoKSB7XG4gICAgdGhpcy5maWxlRWwuY2xpY2soKTtcbiAgfVxuXG4gIHByZXZpZXcoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgaWYgKGZpbGVzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgIGNvbnN0IGYgPSBmaWxlc1swXTtcbiAgICBjb25zdCBtaW1lVHlwZSA9IGYudHlwZTtcbiAgICBpZiAoZmlsZXMubGVuZ3RoID09IDEgJiYgZi5zaXplID4gMTAwMDAwMDApIHtcbiAgICAgIHRoaXMudVMubm90aWZ5KCdJbWFnZSBoYXMgdG8gYmUgbGVzcyB0aGVuIDEwbWIgaW4gc2l6ZScsIDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAobWltZVR5cGUubWF0Y2goL2ltYWdlXFwvKi8pID09IG51bGwpIHtcbiAgICAgIHRoaXMudVMubm90aWZ5KCdPbmx5IGltYWdlcyBhcmUgc3VwcG9ydGVkLicsIDApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmV4dHJhY3RlZEltZy5lbWl0KGYpO1xuICB9XG59XG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbaW1hZ2VMb2FkZXJdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VMb2FkZXJEaXJlY3RpdmUge1xuICBzcmM6IHN0cmluZztcbiAgQElucHV0KCkgc2V0IGltYWdlTG9hZGVyKHY6IHN0cmluZykge1xuICAgIHRoaXMuc3JjID0gdjtcbiAgICB0aGlzLmxvYWRJbWFnZSh2KTtcbiAgfVxuICBASW5wdXQoKSBpbWFnZVR5cGU6IEltYWdlVHlwZTtcbiAgY29uc3RydWN0b3IocHVibGljIGVsOiBFbGVtZW50UmVmPEhUTUxJbWFnZUVsZW1lbnQ+KSB7fVxuICBsb2FkSW1hZ2Uoc3JjOiBzdHJpbmcgPSB0aGlzLnNyYywgdHlwZTogSW1hZ2VUeXBlID0gdGhpcy5pbWFnZVR5cGUpIHtcbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3JjID0gdGhpcy5nZXRJbWFnZUJ5VHlwZSh0eXBlKT8ubWluO1xuICAgIGNvbnN0IGltZ0VsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW1nJyk7XG4gICAgaW1nRWwuc3JjID0gc3JjIHx8IHRoaXMuZ2V0SW1hZ2VCeVR5cGUodHlwZSk/LnNyYztcbiAgICBpbWdFbC5vbmxvYWQgPSAoZSkgPT4ge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnNyYyA9IGltZ0VsLnNyYztcbiAgICB9O1xuICB9XG4gIGdldEltYWdlQnlUeXBlKHR5cGU6IEltYWdlVHlwZSkge1xuICAgIHJldHVybiBDb25maWcuSW1hZ2VzW3R5cGVdID8gQ29uZmlnLkltYWdlc1t0eXBlXSA6IENvbmZpZy5JbWFnZXMub3RoZXI7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYnV0dG9uJyxcbn0pXG5leHBvcnQgY2xhc3MgT25DbGlja0RpcmVjdGl2ZSB7XG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSkgb25DbGljaygkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCBsb2NhdGlvbiA9ICRldmVudC52aWV3LmxvY2F0aW9uO1xuICAgIGNvbnN0IHBhdGhOYW1lID0gZGVjb2RlVVJJKGxvY2F0aW9uLnBhdGhuYW1lKTtcbiAgICBjb25zdCBpbm50ZXJIdG1sOiBzdHJpbmcgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MO1xuICAgIGNvbnNvbGUubG9nKGxvY2F0aW9uLCBwYXRoTmFtZSk7XG4gICAgLy8gc2VuZCBwYXRoTmFtZSBhbmQgaW5udGVySHRtbCB0byBzZXJ2ZXIuXG4gICAgLy8gICAgOlxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cbn1cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1ttcm91dGVyTGlua10nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBNcm91dGVyTGlua2lyZWN0aXZlIHtcbiAgbXJvdXRlckxpbms6IHN0cmluZztcbiAgQElucHV0KCdtcm91dGVyTGluaycpIHNldCBfbXJvdXRlckxpbmsodjogc3RyaW5nKSB7XG4gICAgaWYgKHYpIHtcbiAgICAgIHRoaXMubXJvdXRlckxpbmsgPSB2O1xuICAgICAgLy8gZGVidWdnZXI7XG4gICAgICB0aGlzLnNldFJvdXRlcigpO1xuICAgIH1cbiAgfVxuICBASW5wdXQoKSBtcm91dGVyTGlua0FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZTtcbiAgQElucHV0KCkgbXF1ZXJ5UGFyYW1zOiBhbnk7XG4gIEBJbnB1dCgpIGlzUGhvbmU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGlzRW1haWw6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVsOiBFbGVtZW50UmVmPEhUTUxBbmNob3JFbGVtZW50PixcbiAgICBwdWJsaWMgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHB1YmxpYyByb3V0ZXI6IFJvdXRlcixcbiAgICBwdWJsaWMgdVM6IFV0aWxpdHlTZXJ2aWNlLFxuICApIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0Um91dGVyKCk7XG4gIH1cblxuICBzZXRSb3V0ZXIoKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgaWYgKHRoaXMubXJvdXRlckxpbmsgJiYgdGhpcy5lbC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnbm90TGluaycpO1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2xpbmsnKTtcbiAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgaWYgKHRoaXMuaXNFbWFpbCkge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaHJlZiA9ICdtYWlsdG86JyArIHRoaXMubXJvdXRlckxpbms7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaXNQaG9uZSkge1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaHJlZiA9ICd0ZWw6JyArIHRoaXMubXJvdXRlckxpbms7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgY29uc3QgcXVlcnlQYXJhbXM6IHsgW3g6IHN0cmluZ106IHN0cmluZyB9ID0gdGhpcy5tcXVlcnlQYXJhbXMgfHwge30sXG4gICAgICAgICAgcm91dGVMZXZlbHMgPSB0aGlzLm1yb3V0ZXJMaW5rLnNwbGl0KCcuLi8nKS5sZW5ndGggLSAxLFxuICAgICAgICAgIGN1cnJlbnRMb2NhdGlvblBhcnRzID0gbG9jYXRpb24ucGF0aG5hbWUuc3BsaXQoJy8nKTtcbiAgICAgICAgbGV0IHJvdXRlID0gJycsXG4gICAgICAgICAgdXJsUGFydHMgPSB0aGlzLm1yb3V0ZXJMaW5rLnNwbGl0KCc/Jyk7XG5cbiAgICAgICAgcm91dGUgPSB1cmxQYXJ0c1swXTtcbiAgICAgICAgaWYgKHVybFBhcnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICBjb25zdCBrdnBzID0gdXJsUGFydHNbMV0uc3BsaXQoJyYnKTtcbiAgICAgICAgICBmb3IgKGNvbnN0IGt2cCBvZiBrdnBzKSB7XG4gICAgICAgICAgICBjb25zdCBrdnBTcGxpdCA9IGt2cC5zcGxpdCgnPScpO1xuICAgICAgICAgICAgcXVlcnlQYXJhbXNba3ZwU3BsaXRbMF1dID0ga3ZwU3BsaXRbMV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJvdXRlTGV2ZWxzKSBjdXJyZW50TG9jYXRpb25QYXJ0cy5zcGxpY2Uocm91dGVMZXZlbHMgKiAtMSk7XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5ocmVmID1cbiAgICAgICAgICBjdXJyZW50TG9jYXRpb25QYXJ0cy5qb2luKCcvJykgK1xuICAgICAgICAgICcvJyArXG4gICAgICAgICAgcm91dGVcbiAgICAgICAgICAgIC5zcGxpdCgnLi4vJylcbiAgICAgICAgICAgIC5maWx0ZXIoKHgpID0+IHgpXG4gICAgICAgICAgICAuam9pbignLycpICtcbiAgICAgICAgICAnPycgK1xuICAgICAgICAgIHRoaXMuc3RyaW5naWZ5UXVlcnlQYXJhbXMocXVlcnlQYXJhbXMpO1xuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQub25jbGljayA9IChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtyb3V0ZV0sIHtcbiAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMudVMuZW52aXJvbm1lbnQuYWN0aXZhdGVkUm91dGUgfHwgdGhpcy5yb3V0ZSxcbiAgICAgICAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnbm90TGluaycpO1xuICAgIH1cbiAgfVxuICBzdHJpbmdpZnlRdWVyeVBhcmFtcyhxOiB7IFt4OiBzdHJpbmddOiBzdHJpbmcgfSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHEpXG4gICAgICAubWFwKChrZXkpID0+IGAke2tleX09JHtxW2tleV19YClcbiAgICAgIC5qb2luKCcmJyk7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW1BTQm94XScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFBTRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCdQU0JveCcpIHNlbGVjdG9yOiBzdHJpbmcgfCBIVE1MRWxlbWVudDtcbiAgQElucHV0KCdQU0JveE5vSG9yaXpvbnRhbCcpIG5vSG9yaXpvbnRhbDogYm9vbGVhbjtcbiAgQElucHV0KCdQU0JveE5vVmVydGljYWwnKSBub1ZlcnRpY2FsOiBib29sZWFuO1xuXG4gIHByb3RlY3RlZCBwc0luc3RhbmNlOiBQZXJmZWN0U2Nyb2xsYmFyO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIHVTOiBVdGlsaXR5U2VydmljZSxcbiAgKSB7fVxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHt9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluaXQoKTtcbiAgfVxuICBpbml0KCkge1xuICAgIGlmICghdGhpcy51Uy5pc01vYmlsZSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMucHNJbnN0YW5jZSA9IG5ldyBQZXJmZWN0U2Nyb2xsYmFyKHRoaXMuc2VsZWN0b3IgfHwgdGhpcy5lbC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgICAgd2hlZWxTcGVlZDogMC41LFxuICAgICAgICAgIHN3aXBlRWFzaW5nOiBmYWxzZSxcbiAgICAgICAgICBzdXBwcmVzc1Njcm9sbFg6IHRoaXMubm9Ib3Jpem9udGFsIHx8IGZhbHNlLFxuICAgICAgICAgIHN1cHByZXNzU2Nyb2xsWTogdGhpcy5ub1ZlcnRpY2FsIHx8IGZhbHNlLFxuICAgICAgICAgIHdoZWVsUHJvcGFnYXRpb246IHRydWUsXG4gICAgICAgICAgbWluU2Nyb2xsYmFyTGVuZ3RoOiA0MCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucHNJbnN0YW5jZS51cGRhdGUoKTtcbiAgICAgIH0sIDApO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZSgpIHtcbiAgICB0aGlzLnBzSW5zdGFuY2U/LnVwZGF0ZSgpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlcXVhbENoaWxkcmVuXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEVxdWFsQ2hpbGRyZW5EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHVibGljIHVTOiBVdGlsaXR5U2VydmljZSxcbiAgKSB7fVxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHt9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jaGlsZHJlbjtcbiAgICBsZXQgbWF4V2lkdGg6IG51bWJlciA9IDA7XG4gICAgZGVidWdnZXI7XG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGNoaWxkcmVuKSB7XG4gICAgICBtYXhXaWR0aCA9IE1hdGgubWF4KG1heFdpZHRoLCBpdGVtLm9mZnNldFdpZHRoKTtcbiAgICB9XG4gIH1cbn1cbmNvbnN0IGNvbXBzID0gW1xuICAvLyBDb21tYWZ5TnVtYmVyRGlyZWN0aXZlLFxuICBFcXVhbENoaWxkcmVuRGlyZWN0aXZlLFxuICBJbWFnZUxvYWRlckRpcmVjdGl2ZSxcbiAgSW1hZ2VVcGxvYWQsXG4gIC8vIE5vRm9ybWF0RGlyZWN0aXZlLFxuICBNcm91dGVyTGlua2lyZWN0aXZlLFxuICBOZWdhdGl2ZU51bWJlck9ubHlEaXJlY3RpdmUsXG4gIC8vIE9uQ2xpY2tEaXJlY3RpdmUsXG4gIC8vIElucHV0Rm9ybWF0RGlyZWN0aXZlLFxuICBQU0RpcmVjdGl2ZSxcbiAgVHJhbnNsYXRvckRpcmVjdGl2ZSxcbiAgRHJhZ0Ryb3BGaWxlVXBsb2FkRGlyZWN0aXZlLFxuICBGb3JtSW52YWxpZENsYXNzRGlyZWN0aXZlLFxuXTtcbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIElucHV0Rm9ybWF0RGlyZWN0aXZlc01vZHVsZSwgLi4uY29tcHNdLFxuICBleHBvcnRzOiBbLi4uY29tcHMsIElucHV0Rm9ybWF0RGlyZWN0aXZlc01vZHVsZSwgRVRTUmVzcG9uc2l2ZW5lc3NEaXJlY3RpdmVNb2R1bGVdLFxuICBwcm92aWRlcnM6IFtEZWNpbWFsUGlwZV0sXG59KVxuZXhwb3J0IGNsYXNzIERpcmVjdGl2ZXNNb2R1bGUge31cbiJdfQ==
|
|
@@ -297,8 +297,8 @@ export class InputFormatDirective {
|
|
|
297
297
|
// debugger
|
|
298
298
|
// this._onBlur()
|
|
299
299
|
}
|
|
300
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
301
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
300
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatDirective, deps: [{ token: i0.ElementRef }, { token: InputFormattersPipe }, { token: i1.DecimalPipe }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
301
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: InputFormatDirective, isStandalone: true, selector: "input:not([matInput]):not([noformat])", inputs: { value: "value" }, host: { listeners: { "input": "input($event.target.value)", "blur": "_onBlur()", "focus": "onFocus()" } }, providers: [
|
|
302
302
|
{
|
|
303
303
|
provide: MAT_INPUT_VALUE_ACCESSOR,
|
|
304
304
|
useExisting: InputFormatDirective,
|
|
@@ -310,7 +310,7 @@ export class InputFormatDirective {
|
|
|
310
310
|
},
|
|
311
311
|
], ngImport: i0 }); }
|
|
312
312
|
}
|
|
313
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
313
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatDirective, decorators: [{
|
|
314
314
|
type: Directive,
|
|
315
315
|
args: [{
|
|
316
316
|
selector: 'input:not([matInput]):not([noformat])',
|
|
@@ -365,21 +365,21 @@ export class InputFormattersPipe {
|
|
|
365
365
|
toTitleCase(str) {
|
|
366
366
|
return str?.toString().replace(/\w\S*/g, (txt) => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase()) || '';
|
|
367
367
|
}
|
|
368
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
369
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "
|
|
368
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormattersPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
369
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: InputFormattersPipe, name: "inputFormatters" }); }
|
|
370
370
|
}
|
|
371
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
371
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormattersPipe, decorators: [{
|
|
372
372
|
type: Pipe,
|
|
373
373
|
args: [{ name: 'inputFormatters' }]
|
|
374
374
|
}], ctorParameters: () => [] });
|
|
375
375
|
const comps = [InputFormatDirective];
|
|
376
376
|
// const comps = [];
|
|
377
377
|
export class InputFormatDirectivesModule {
|
|
378
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
379
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
380
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
378
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatDirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
379
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.0", ngImport: i0, type: InputFormatDirectivesModule, imports: [CommonModule, InputFormatDirective], exports: [InputFormatDirective] }); }
|
|
380
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatDirectivesModule, providers: [DecimalPipe, InputFormattersPipe], imports: [CommonModule] }); }
|
|
381
381
|
}
|
|
382
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
382
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatDirectivesModule, decorators: [{
|
|
383
383
|
type: NgModule,
|
|
384
384
|
args: [{
|
|
385
385
|
imports: [CommonModule, ...comps],
|
|
@@ -388,13 +388,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
388
388
|
}]
|
|
389
389
|
}] });
|
|
390
390
|
export class InputFormatService {
|
|
391
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
392
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
391
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
392
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatService, providedIn: 'root' }); }
|
|
393
393
|
}
|
|
394
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
394
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: InputFormatService, decorators: [{
|
|
395
395
|
type: Injectable,
|
|
396
396
|
args: [{
|
|
397
397
|
providedIn: 'root',
|
|
398
398
|
}]
|
|
399
399
|
}] });
|
|
400
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZm9ybWF0dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvZGlyZWN0aXZlcy9pbnB1dC1mb3JtYXR0ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLHdCQUF3QixJQUFJLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0YsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFpQjNDLE1BQU0sT0FBTyxvQkFBb0I7SUFHL0IsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxRQUFRLElBQUksTUFBTSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7SUFDckYsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsWUFBWSxJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUM7SUFDN0YsQ0FBQztJQUNELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQztJQUMxQyxDQUFDO0lBQ0QsSUFBSSxZQUFZO1FBQ2Qs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LENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JILENBQUM7OEdBaENVLG1CQUFtQjs0R0FBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUQvQixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFOztBQW9DakMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0FBQ3JDLG9CQUFvQjtBQU1wQixNQUFNLE9BQU8sMkJBQTJCOzhHQUEzQiwyQkFBMkI7K0dBQTNCLDJCQUEyQixZQUo1QixZQUFZLEVBL1VYLG9CQUFvQixhQUFwQixvQkFBb0I7K0dBbVZwQiwyQkFBMkIsYUFGM0IsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUMsWUFGbkMsWUFBWTs7MkZBSVgsMkJBQTJCO2tCQUx2QyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxHQUFHLEtBQUssQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUM7b0JBQ25CLFNBQVMsRUFBRSxDQUFDLFdBQVcsRUFBRSxtQkFBbUIsQ0FBQztpQkFDOUM7O0FBTUQsTUFBTSxPQUFPLGtCQUFrQjs4R0FBbEIsa0JBQWtCO2tIQUFsQixrQkFBa0IsY0FGakIsTUFBTTs7MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBpbmplY3QsIElucHV0LCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTUFUX0lOUFVUX1ZBTFVFX0FDQ0VTU09SIGFzIE1BVF9JTlBVVF9WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5wdXRUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL2luZGV4Lm1vZGVsJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnaW5wdXQ6bm90KFttYXRJbnB1dF0pOm5vdChbbm9mb3JtYXRdKScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1BVF9JTlBVVF9WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBJbnB1dEZvcm1hdERpcmVjdGl2ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRGb3JtYXREaXJlY3RpdmUpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRGb3JtYXREaXJlY3RpdmUgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByaXZhdGUgZWw6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gIG9UeXBlOiBJbnB1dFR5cGU7XG4gIGdldCBub0Zvcm1hdHRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWw/LmRhdGFzZXQubm9mb3JtYXQgPT0gJ3RydWUnIHx8IHRoaXMuaW5wdXRGb3JtYXRTZXJ2aWNlLnBhZ2VOb2Zvcm1hdDtcbiAgfVxuICBnZXQgbm9UZXh0Rm9ybWF0KCkge1xuICAgIHJldHVybiB0aGlzLmVsPy5kYXRhc2V0Lm5vdGV4dGZvcm1hdCA9PSAndHJ1ZScgfHwgdGhpcy5pbnB1dEZvcm1hdFNlcnZpY2UucGFnZU5vVGV4dEZvcm1hdDtcbiAgfVxuICBnZXQgaXNEZWJ1ZygpIHtcbiAgICByZXR1cm4gdGhpcy5lbD8uZGF0YXNldC5kZWJ1ZyA9PSAndHJ1ZSc7XG4gIH1cbiAgZ2V0IHNob3VsZEZvcm1hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5hY2NlcHRlZFR5cGUuaW5jbHVkZXModGhpcy5vVHlwZSk7XG4gIH1cbiAgcmVhZG9ubHkgYWNjZXB0ZWRUeXBlOiBJbnB1dFR5cGVbXSA9IFsndGV4dCcsICdudW1iZXInLCAncGVyY2VudGFnZSddO1xuXG4gIHB1YmxpYyBpbnB1dEZvcm1hdFNlcnZpY2UgPSBpbmplY3QoSW5wdXRGb3JtYXRTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4sXG4gICAgcHJpdmF0ZSBmb3JtYXR0ZXJTZXJ2aWNlOiBJbnB1dEZvcm1hdHRlcnNQaXBlLFxuICAgIHByaXZhdGUgZGVjaW1hbFBpcGU6IERlY2ltYWxQaXBlLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5lbCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMub1R5cGUgPSB0aGlzLmVsLmRhdGFzZXQub3R5cGUgPT0gJ3BlcmNlbnRhZ2UnID8gJ3BlcmNlbnRhZ2UnIDogKCh0aGlzLmVsLnR5cGUgKyAnJykgYXMgYW55KTtcbiAgICBpZiAoIXRoaXMubm9Gb3JtYXR0aW5nKSB7XG4gICAgICBpZiAodGhpcy5vVHlwZSA9PSAnbnVtYmVyJykge1xuICAgICAgICB0aGlzLmVsLnR5cGUgPSAndGV4dCc7XG4gICAgICAgIHRoaXMuZWwudmFsdWUgPSB0aGlzLmRlY2ltYWxQaXBlLnRyYW5zZm9ybSh0aGlzLmVsLnZhbHVlLnJlcGxhY2UoL1teXFxkLi1dL2csICcnKSwgJzEuMC05Jyk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5vVHlwZSA9PSAncGVyY2VudGFnZScpIHtcbiAgICAgICAgdGhpcy5lbC50eXBlID0gJ3RleHQnO1xuICAgICAgICB0aGlzLmVsLnZhbHVlID0gdGhpcy5lbC52YWx1ZSA/IHRoaXMuZWwudmFsdWUgKyAnJScgOiAnMCUnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLl92YWx1ZSkgdGhpcy52YWx1ZSA9IHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmVsLmRhdGFzZXQub3R5cGUgPT0gJ3BlcmNlbnRhZ2UnICYmICF0aGlzLm5vRm9ybWF0dGluZyAmJiB0aGlzLmVsLnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdwb3NpdGlvbi1yZWxhdGl2ZScpKSB7XG4gICAgICAvLyBkZWJ1Z2dlclxuICAgICAgY29uc3QgaWNvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2knKTtcbiAgICAgIGljb24uY2xhc3NOYW1lID0gJ2lucHV0LWljb24gZmEgZmEtcGVyY2VudGFnZSc7XG4gICAgICB0aGlzLmVsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGljb24sIHRoaXMuZWwpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAnbnVtYmVyJyAmJiAhdGhpcy5ub0Zvcm1hdHRpbmcgJiYgdGhpcy5lbC5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygncG9zaXRpb24tcmVsYXRpdmUnKSkge1xuICAgICAgY29uc3QgaWNvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2knKTtcbiAgICAgIGljb24uY2xhc3NOYW1lID0gJ2lucHV0LWljb24gZmEgZmEtaGFzaHRhZyc7XG4gICAgICB0aGlzLmVsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGljb24sIHRoaXMuZWwpO1xuICAgICAgLy8gdGhpcy5lbC5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ3Bvc2l0aW9uLXJlbGF0aXZlJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLm9UeXBlID09ICdjaGVja2JveCcpIHtcbiAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgLy8gdGhpcy52YWx1ZSA9ICh0aGlzLmVsLmNoZWNrZWQgPT0gdHJ1ZSkgYXMgYW55O1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuZWwuY2hlY2tlZCA9PSB0cnVlKTtcbiAgICAgIHRoaXMuaW5wdXQodGhpcy5lbC5jaGVja2VkID09IHRydWUpO1xuICAgIH1cbiAgfVxuICBwcml2YXRlIF9fdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsO1xuICBzZXQgX3ZhbHVlKHY6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgdGhpcy5fX3ZhbHVlID0gdjtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX192YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgndmFsdWUnKVxuICBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsKSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3ZhbHVpbmcnKTtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLmlzRGVidWcpIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLm5vRm9ybWF0dGluZykgdGhpcy5zZXRJbnB1dCh2YWx1ZSBhcyBhbnkpO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ251bWJlcicpIHRoaXMuc2V0TnVtYmVySW5wdXQodmFsdWUgYXMgYW55KTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICdwZXJjZW50YWdlJykgdGhpcy5zZXRQZXJjZW50YWdlSW5wdXQodmFsdWUgYXMgYW55KTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICd0ZXh0JyAmJiAhdGhpcy5ub1RleHRGb3JtYXQpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnRvVGl0bGVDYXNlKHZhbHVlIGFzIGFueSk7XG4gICAgICB0aGlzLnNldFRleHRJbnB1dCh2YWx1ZSBhcyBhbnkpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAnY2hlY2tib3gnKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlID09IHRydWUgfHwgdmFsdWUgPT0gJ3RydWUnO1xuICAgICAgdGhpcy5zZXRDaGVja2JveElucHV0KHZhbHVlIGFzIGFueSk7XG4gICAgfSBlbHNlIHRoaXMuc2V0SW5wdXQodmFsdWUgYXMgYW55KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gIGlucHV0KHZhbHVlKSB7XG4gICAgLy8gY29uc29sZS5sb2coJ2lucHV0aW5nJyk7XG4gICAgLy8gZGVidWdnZXJcbiAgICBpZiAodGhpcy5pc0RlYnVnKSBkZWJ1Z2dlcjtcbiAgICBpZiAodGhpcy5ub0Zvcm1hdHRpbmcgJiYgdGhpcy5vVHlwZSAhPSAnY2hlY2tib3gnKSB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ3RleHQnICYmICF0aGlzLm5vVGV4dEZvcm1hdCkgdGhpcy5fdmFsdWUgPSB0aGlzLmZvcm1hdHRlclNlcnZpY2UudG9UaXRsZUNhc2UodmFsdWUpO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ2NoZWNrYm94JykgdGhpcy5fdmFsdWUgPSB0aGlzLmVsPy5jaGVja2VkIGFzIGFueTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICdudW1iZXInKVxuICAgICAgaWYgKHRoaXMuaXNMYXN0Q2hhcmFjdGVyRGVjaW1hbFNlcGFyYXRvcih2YWx1ZSkpIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICBlbHNlIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnJlbW92ZUNvbW1hcyh2YWx1ZSk7XG4gICAgZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAncGVyY2VudGFnZScpIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnJlbW92ZUNvbW1hcyhTdHJpbmcodmFsdWUpPy5yZXBsYWNlKCclJywgJycpKTtcbiAgICBlbHNlIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG5cbiAgICAvLyBoZXJlIHRvIG5vdGlmeSBBbmd1bGFyIFZhbGlkYXRvcnNcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKVxuICBfb25CbHVyKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgXG4gICAgICBpZiAodGhpcy5ub0Zvcm1hdHRpbmcpIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy52YWx1ZSB8fCAoJycgYXMgYW55KTtcbiAgICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ251bWJlcicpIHRoaXMuc2V0TnVtYmVySW5wdXQodGhpcy52YWx1ZSBhcyBhbnkpO1xuICAgICAgZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAncGVyY2VudGFnZScpIHtcbiAgICAgICAgLy8gZGVidWdnZXI7XG4gICAgICAgIHRoaXMuc2V0UGVyY2VudGFnZUlucHV0KHRoaXMudmFsdWUgYXMgYW55KTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAndGV4dCcgJiYgIXRoaXMubm9UZXh0Rm9ybWF0KSB0aGlzLmVsLnZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnRvVGl0bGVDYXNlKHRoaXMudmFsdWUgYXMgYW55KTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcbiAgb25Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5ub0Zvcm1hdHRpbmcpIHJldHVybjtcbiAgICBpZiAodGhpcy5vVHlwZSA9PSAnbnVtYmVyJykgdGhpcy51bkZvcm1hdE51bWJlcigpO1xuICAgIGlmICh0aGlzLm9UeXBlID09ICdwZXJjZW50YWdlJykgdGhpcy51bkZvcm1hdFBlcmNlbnRhZ2UoKTtcbiAgfVxuXG4gIF9vbkNoYW5nZSh2YWx1ZTogYW55KTogdm9pZCB7fVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogYXBwbHkgZm9ybWF0dGluZyBvbiB2YWx1ZSBhc3NpZ25tZW50XG4gICAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAvLyBjb25zb2xlLmxvZygnd3JpdGluZycpO1xuICAgIC8vIGlmICh0aGlzLmlzRGVidWcpXG4gICAgLy8gZGVidWdnZXI7XG4gICAgdGhpcy5fdmFsdWU9dmFsdWU7XG4gICAgaWYgKHRoaXMubm9Gb3JtYXR0aW5nKSB0aGlzLnNldElucHV0KHZhbHVlKTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICd0ZXh0JyAmJiAhdGhpcy5ub1RleHRGb3JtYXQpIHtcbiAgICAgIGlmICh0aGlzLmVsLmRpc2FibGVkKSB0aGlzLnNldElucHV0KHZhbHVlKTtcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl92YWx1ZSA9IHRoaXMuZm9ybWF0dGVyU2VydmljZS50b1RpdGxlQ2FzZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2V0VGV4dElucHV0KHZhbHVlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ251bWJlcicpIHRoaXMuc2V0TnVtYmVySW5wdXQodmFsdWUpO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ3BlcmNlbnRhZ2UnKSB0aGlzLnNldFBlcmNlbnRhZ2VJbnB1dCh2YWx1ZSk7XG4gICAgZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAnY2hlY2tib3gnKVxuICAgICAgaWYgKHZhbHVlID09IG51bGwpIHRoaXMuaW5wdXQoZmFsc2UpO1xuICAgICAgZWxzZSB0aGlzLnNldENoZWNrYm94SW5wdXQodmFsdWUgYXMgYW55KTtcbiAgICBlbHNlIHRoaXMuc2V0SW5wdXQodmFsdWUpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoKSB7fVxuXG4gIGlzTGFzdENoYXJhY3RlckRlY2ltYWxTZXBhcmF0b3IodmFsdWU6IHN0cmluZyB8IG51bWJlcikge1xuICAgIHJldHVybiB2YWx1ZT8udG9TdHJpbmcoKVt2YWx1ZT8udG9TdHJpbmcoKS5sZW5ndGggLSAxXSA9PSAnLic7XG4gIH1cblxuICAvKipcbiAgICogRm9ybWF0IG51bW1iZXIgYnkgYWRkaW5nIGNvbW1hc1xuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHByaXZhdGUgc2V0TnVtYmVySW5wdXQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwpIHtcbiAgICAvLyBkZWJ1Z2dlcjtcbiAgICAvLyBjb25zb2xlLnRyYWNlKCdzZXROdW1iZXJJbnB1dCcsdmFsdWUpXG4gICAgY29uc3QgdmFsID0gdmFsdWU/LnRvU3RyaW5nKCkucmVwbGFjZSgvW15cXGQuLV0vZywgJycpO1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdmFsID09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0xhc3RDaGFyYWN0ZXJEZWNpbWFsU2VwYXJhdG9yKHZhbCkpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBkZWJ1Z2dlclxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsLCBgMS4wLTIwYCk7XG4gIH1cblxuICAvKipcbiAgICogRm9ybWF0IG51bW1iZXIgYnkgJSBzaWduIGF0IHRoZSBlbmRcbiAgICogQHBhcmFtIHZhbHVlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwcml2YXRlIHNldFBlcmNlbnRhZ2VJbnB1dCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCkge1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgY29uc3QgdmFsID0gdmFsdWU/LnRvU3RyaW5nKCkucmVwbGFjZSgvW15cXGQuLV0vZywgJycpO1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdmFsID09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0xhc3RDaGFyYWN0ZXJEZWNpbWFsU2VwYXJhdG9yKHZhbCkpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBkZWJ1Z2dlclxuICAgIC8vIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsLCBgMS4wLTIwYCk7XG4gICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZSA/IHZhbHVlICsgJyUnIDogdmFsdWUgKyAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JtYXQgdGV4dCBieSBtYWtpbmcgaXQgaW4gdGhlIHRpdGxlIGNhc2VcbiAgICogQHBhcmFtIHZhbHVlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwcml2YXRlIHNldFRleHRJbnB1dCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCkge1xuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0dGVyU2VydmljZS50b1RpdGxlQ2FzZSh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IG5ldyB2YWx1ZSBvbiB0aGUgSFRNTCBJbnB1dCBmb3IgdGhlIFVJIHVwZGF0ZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHByaXZhdGUgc2V0SW5wdXQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIGlmICh0aGlzLm9UeXBlID09ICdjaGVja2JveCcpIHRoaXMuc2V0Q2hlY2tib3hJbnB1dCh2YWx1ZSBhcyBhbnkpO1xuICAgIGVsc2Uge1xuICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbHVlIGFzIGFueTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0IG5ldyB2YWx1ZSBvbiB0aGUgSFRNTCBJbnB1dCBDaGVja2JveCBmb3IgdGhlIFVJIHVwZGF0ZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHByaXZhdGUgc2V0Q2hlY2tib3hJbnB1dCh2YWx1ZTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGVja2VkID0gdmFsdWUgfHwgZmFsc2U7XG4gICAgaWYgKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoZWNrZWQgPT0gbnVsbCkgZGVidWdnZXI7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBjb21tYXMgZnJvbSB0aGUgbnVtYmVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHJpdmF0ZSB1bkZvcm1hdE51bWJlcigpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIGlmICh0aGlzLmlzTGFzdENoYXJhY3RlckRlY2ltYWxTZXBhcmF0b3IodmFsdWUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fdmFsdWUgPSB0aGlzLmZvcm1hdHRlclNlcnZpY2UucmVtb3ZlQ29tbWFzKHZhbHVlKTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy52YWx1ZSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBjb21tYXMgYW5kIHBlcmNlbnRhZ2UgZnJvbSB0aGUgbnVtYmVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHJpdmF0ZSB1bkZvcm1hdFBlcmNlbnRhZ2UoKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgICBpZiAodGhpcy5pc0xhc3RDaGFyYWN0ZXJEZWNpbWFsU2VwYXJhdG9yKHZhbHVlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnJlbW92ZUNvbW1hcyh2YWx1ZS5yZXBsYWNlKCclJywgJycpKTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy52YWx1ZSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKHZhbDogYm9vbGVhbikge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmRpc2FibGVkID0gISF2YWw7XG4gICAgLy8gZGVidWdnZXJcbiAgICAvLyB0aGlzLl9vbkJsdXIoKVxuICB9XG59XG5cbmNvbnN0IFBBRERJTkcgPSAnMDAwMDAwJztcblxuQFBpcGUoeyBuYW1lOiAnaW5wdXRGb3JtYXR0ZXJzJyB9KVxuZXhwb3J0IGNsYXNzIElucHV0Rm9ybWF0dGVyc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSBERUNJTUFMX1NFUEFSQVRPUjogc3RyaW5nO1xuICBwcml2YXRlIFRIT1VTQU5EU19TRVBBUkFUT1I6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBUT0RPIGNvbWVzIGZyb20gY29uZmlndXJhdGlvbiBzZXR0aW5nc1xuICAgIHRoaXMuREVDSU1BTF9TRVBBUkFUT1IgPSAnLic7XG4gICAgdGhpcy5USE9VU0FORFNfU0VQQVJBVE9SID0gJywnO1xuICB9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcsIGZyYWN0aW9uU2l6ZTogbnVtYmVyID0gMik6IHN0cmluZyB7XG4gICAgbGV0IFtpbnRlZ2VyLCBmcmFjdGlvbiA9ICcnXSA9ICh2YWx1ZSB8fCAnJykudG9TdHJpbmcoKS5zcGxpdCh0aGlzLkRFQ0lNQUxfU0VQQVJBVE9SKTtcblxuICAgIGZyYWN0aW9uID0gZnJhY3Rpb25TaXplID4gMCA/IHRoaXMuREVDSU1BTF9TRVBBUkFUT1IgKyAoZnJhY3Rpb24gKyBQQURESU5HKS5zdWJzdHJpbmcoMCwgZnJhY3Rpb25TaXplKSA6ICcnO1xuXG4gICAgaW50ZWdlciA9IGludGVnZXIucmVwbGFjZSgvXFxCKD89KFxcZHszfSkrKD8hXFxkKSkvZywgdGhpcy5USE9VU0FORFNfU0VQQVJBVE9SKTtcblxuICAgIHJldHVybiBpbnRlZ2VyICsgZnJhY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCBpbnB1dCB2YWx1ZSB0byBudW1iZXJcbiAgICogQHBhcmFtIHZhbHVlIElucHV0IHZhbHVlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICByZW1vdmVDb21tYXModmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHIgPSB2YWx1ZS5yZXBsYWNlKC9bXlxcZC4tXS9nLCAnJyk7XG4gICAgcmV0dXJuIHIgPyArciA6IG51bGw7XG4gIH1cblxuICB0b1RpdGxlQ2FzZShzdHI6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN0cj8udG9TdHJpbmcoKS5yZXBsYWNlKC9cXHdcXFMqL2csICh0eHQpID0+IHR4dC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHR4dC5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKSkgfHwgJyc7XG4gIH1cbn1cblxuY29uc3QgY29tcHMgPSBbSW5wdXRGb3JtYXREaXJlY3RpdmVdO1xuLy8gY29uc3QgY29tcHMgPSBbXTtcbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIC4uLmNvbXBzXSxcbiAgZXhwb3J0czogWy4uLmNvbXBzXSxcbiAgcHJvdmlkZXJzOiBbRGVjaW1hbFBpcGUsIElucHV0Rm9ybWF0dGVyc1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dEZvcm1hdERpcmVjdGl2ZXNNb2R1bGUge31cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIElucHV0Rm9ybWF0U2VydmljZSB7XG4gIC8qKiBEb24ndCB1c2UgdGhlIGlucHV0IGZvcm1hdHR0ZXIgb24gdGhpcyBwYWdlICovXG4gIHBhZ2VOb2Zvcm1hdDogYm9vbGVhbjtcbiAgLyoqIERvbid0IHVzZSB0aGUgaW5wdXQgZm9ybWF0dHRlciBmb3IgdGV4dCBpbnB1dHMgb24gdGhpcyBwYWdlICovXG4gIHBhZ2VOb1RleHRGb3JtYXQ6IGJvb2xlYW47XG59XG4iXX0=
|
|
400
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZm9ybWF0dGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvZGlyZWN0aXZlcy9pbnB1dC1mb3JtYXR0ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLHdCQUF3QixJQUFJLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0YsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUVwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFpQjNDLE1BQU0sT0FBTyxvQkFBb0I7SUFHL0IsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxRQUFRLElBQUksTUFBTSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUM7SUFDckYsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsWUFBWSxJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUM7SUFDN0YsQ0FBQztJQUNELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQztJQUMxQyxDQUFDO0lBQ0QsSUFBSSxZQUFZO1FBQ2Qs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cG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBpbmplY3QsIElucHV0LCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTUFUX0lOUFVUX1ZBTFVFX0FDQ0VTU09SIGFzIE1BVF9JTlBVVF9WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGVjaW1hbFBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5wdXRUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL2luZGV4Lm1vZGVsJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnaW5wdXQ6bm90KFttYXRJbnB1dF0pOm5vdChbbm9mb3JtYXRdKScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1BVF9JTlBVVF9WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBJbnB1dEZvcm1hdERpcmVjdGl2ZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRGb3JtYXREaXJlY3RpdmUpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgSW5wdXRGb3JtYXREaXJlY3RpdmUgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHByaXZhdGUgZWw6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gIG9UeXBlOiBJbnB1dFR5cGU7XG4gIGdldCBub0Zvcm1hdHRpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWw/LmRhdGFzZXQubm9mb3JtYXQgPT0gJ3RydWUnIHx8IHRoaXMuaW5wdXRGb3JtYXRTZXJ2aWNlLnBhZ2VOb2Zvcm1hdDtcbiAgfVxuICBnZXQgbm9UZXh0Rm9ybWF0KCkge1xuICAgIHJldHVybiB0aGlzLmVsPy5kYXRhc2V0Lm5vdGV4dGZvcm1hdCA9PSAndHJ1ZScgfHwgdGhpcy5pbnB1dEZvcm1hdFNlcnZpY2UucGFnZU5vVGV4dEZvcm1hdDtcbiAgfVxuICBnZXQgaXNEZWJ1ZygpIHtcbiAgICByZXR1cm4gdGhpcy5lbD8uZGF0YXNldC5kZWJ1ZyA9PSAndHJ1ZSc7XG4gIH1cbiAgZ2V0IHNob3VsZEZvcm1hdCgpIHtcbiAgICByZXR1cm4gdGhpcy5hY2NlcHRlZFR5cGUuaW5jbHVkZXModGhpcy5vVHlwZSk7XG4gIH1cbiAgcmVhZG9ubHkgYWNjZXB0ZWRUeXBlOiBJbnB1dFR5cGVbXSA9IFsndGV4dCcsICdudW1iZXInLCAncGVyY2VudGFnZSddO1xuXG4gIHB1YmxpYyBpbnB1dEZvcm1hdFNlcnZpY2UgPSBpbmplY3QoSW5wdXRGb3JtYXRTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4sXG4gICAgcHJpdmF0ZSBmb3JtYXR0ZXJTZXJ2aWNlOiBJbnB1dEZvcm1hdHRlcnNQaXBlLFxuICAgIHByaXZhdGUgZGVjaW1hbFBpcGU6IERlY2ltYWxQaXBlLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5lbCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMub1R5cGUgPSB0aGlzLmVsLmRhdGFzZXQub3R5cGUgPT0gJ3BlcmNlbnRhZ2UnID8gJ3BlcmNlbnRhZ2UnIDogKCh0aGlzLmVsLnR5cGUgKyAnJykgYXMgYW55KTtcbiAgICBpZiAoIXRoaXMubm9Gb3JtYXR0aW5nKSB7XG4gICAgICBpZiAodGhpcy5vVHlwZSA9PSAnbnVtYmVyJykge1xuICAgICAgICB0aGlzLmVsLnR5cGUgPSAndGV4dCc7XG4gICAgICAgIHRoaXMuZWwudmFsdWUgPSB0aGlzLmRlY2ltYWxQaXBlLnRyYW5zZm9ybSh0aGlzLmVsLnZhbHVlLnJlcGxhY2UoL1teXFxkLi1dL2csICcnKSwgJzEuMC05Jyk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5vVHlwZSA9PSAncGVyY2VudGFnZScpIHtcbiAgICAgICAgdGhpcy5lbC50eXBlID0gJ3RleHQnO1xuICAgICAgICB0aGlzLmVsLnZhbHVlID0gdGhpcy5lbC52YWx1ZSA/IHRoaXMuZWwudmFsdWUgKyAnJScgOiAnMCUnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLl92YWx1ZSkgdGhpcy52YWx1ZSA9IHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmVsLmRhdGFzZXQub3R5cGUgPT0gJ3BlcmNlbnRhZ2UnICYmICF0aGlzLm5vRm9ybWF0dGluZyAmJiB0aGlzLmVsLnBhcmVudEVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdwb3NpdGlvbi1yZWxhdGl2ZScpKSB7XG4gICAgICAvLyBkZWJ1Z2dlclxuICAgICAgY29uc3QgaWNvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2knKTtcbiAgICAgIGljb24uY2xhc3NOYW1lID0gJ2lucHV0LWljb24gZmEgZmEtcGVyY2VudGFnZSc7XG4gICAgICB0aGlzLmVsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGljb24sIHRoaXMuZWwpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAnbnVtYmVyJyAmJiAhdGhpcy5ub0Zvcm1hdHRpbmcgJiYgdGhpcy5lbC5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygncG9zaXRpb24tcmVsYXRpdmUnKSkge1xuICAgICAgY29uc3QgaWNvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2knKTtcbiAgICAgIGljb24uY2xhc3NOYW1lID0gJ2lucHV0LWljb24gZmEgZmEtaGFzaHRhZyc7XG4gICAgICB0aGlzLmVsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGljb24sIHRoaXMuZWwpO1xuICAgICAgLy8gdGhpcy5lbC5wYXJlbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ3Bvc2l0aW9uLXJlbGF0aXZlJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLm9UeXBlID09ICdjaGVja2JveCcpIHtcbiAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgLy8gdGhpcy52YWx1ZSA9ICh0aGlzLmVsLmNoZWNrZWQgPT0gdHJ1ZSkgYXMgYW55O1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuZWwuY2hlY2tlZCA9PSB0cnVlKTtcbiAgICAgIHRoaXMuaW5wdXQodGhpcy5lbC5jaGVja2VkID09IHRydWUpO1xuICAgIH1cbiAgfVxuICBwcml2YXRlIF9fdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsO1xuICBzZXQgX3ZhbHVlKHY6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgdGhpcy5fX3ZhbHVlID0gdjtcbiAgfVxuXG4gIGdldCB2YWx1ZSgpOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX192YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgndmFsdWUnKVxuICBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsKSB7XG4gICAgLy8gY29uc29sZS5sb2coJ3ZhbHVpbmcnKTtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLmlzRGVidWcpIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLm5vRm9ybWF0dGluZykgdGhpcy5zZXRJbnB1dCh2YWx1ZSBhcyBhbnkpO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ251bWJlcicpIHRoaXMuc2V0TnVtYmVySW5wdXQodmFsdWUgYXMgYW55KTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICdwZXJjZW50YWdlJykgdGhpcy5zZXRQZXJjZW50YWdlSW5wdXQodmFsdWUgYXMgYW55KTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICd0ZXh0JyAmJiAhdGhpcy5ub1RleHRGb3JtYXQpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnRvVGl0bGVDYXNlKHZhbHVlIGFzIGFueSk7XG4gICAgICB0aGlzLnNldFRleHRJbnB1dCh2YWx1ZSBhcyBhbnkpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAnY2hlY2tib3gnKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlID09IHRydWUgfHwgdmFsdWUgPT0gJ3RydWUnO1xuICAgICAgdGhpcy5zZXRDaGVja2JveElucHV0KHZhbHVlIGFzIGFueSk7XG4gICAgfSBlbHNlIHRoaXMuc2V0SW5wdXQodmFsdWUgYXMgYW55KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gIGlucHV0KHZhbHVlKSB7XG4gICAgLy8gY29uc29sZS5sb2coJ2lucHV0aW5nJyk7XG4gICAgLy8gZGVidWdnZXJcbiAgICBpZiAodGhpcy5pc0RlYnVnKSBkZWJ1Z2dlcjtcbiAgICBpZiAodGhpcy5ub0Zvcm1hdHRpbmcgJiYgdGhpcy5vVHlwZSAhPSAnY2hlY2tib3gnKSB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ3RleHQnICYmICF0aGlzLm5vVGV4dEZvcm1hdCkgdGhpcy5fdmFsdWUgPSB0aGlzLmZvcm1hdHRlclNlcnZpY2UudG9UaXRsZUNhc2UodmFsdWUpO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ2NoZWNrYm94JykgdGhpcy5fdmFsdWUgPSB0aGlzLmVsPy5jaGVja2VkIGFzIGFueTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICdudW1iZXInKVxuICAgICAgaWYgKHRoaXMuaXNMYXN0Q2hhcmFjdGVyRGVjaW1hbFNlcGFyYXRvcih2YWx1ZSkpIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICBlbHNlIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnJlbW92ZUNvbW1hcyh2YWx1ZSk7XG4gICAgZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAncGVyY2VudGFnZScpIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnJlbW92ZUNvbW1hcyhTdHJpbmcodmFsdWUpPy5yZXBsYWNlKCclJywgJycpKTtcbiAgICBlbHNlIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG5cbiAgICAvLyBoZXJlIHRvIG5vdGlmeSBBbmd1bGFyIFZhbGlkYXRvcnNcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKVxuICBfb25CbHVyKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgXG4gICAgICBpZiAodGhpcy5ub0Zvcm1hdHRpbmcpIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy52YWx1ZSB8fCAoJycgYXMgYW55KTtcbiAgICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ251bWJlcicpIHRoaXMuc2V0TnVtYmVySW5wdXQodGhpcy52YWx1ZSBhcyBhbnkpO1xuICAgICAgZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAncGVyY2VudGFnZScpIHtcbiAgICAgICAgLy8gZGVidWdnZXI7XG4gICAgICAgIHRoaXMuc2V0UGVyY2VudGFnZUlucHV0KHRoaXMudmFsdWUgYXMgYW55KTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAndGV4dCcgJiYgIXRoaXMubm9UZXh0Rm9ybWF0KSB0aGlzLmVsLnZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnRvVGl0bGVDYXNlKHRoaXMudmFsdWUgYXMgYW55KTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcbiAgb25Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5ub0Zvcm1hdHRpbmcpIHJldHVybjtcbiAgICBpZiAodGhpcy5vVHlwZSA9PSAnbnVtYmVyJykgdGhpcy51bkZvcm1hdE51bWJlcigpO1xuICAgIGlmICh0aGlzLm9UeXBlID09ICdwZXJjZW50YWdlJykgdGhpcy51bkZvcm1hdFBlcmNlbnRhZ2UoKTtcbiAgfVxuXG4gIF9vbkNoYW5nZSh2YWx1ZTogYW55KTogdm9pZCB7fVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogYXBwbHkgZm9ybWF0dGluZyBvbiB2YWx1ZSBhc3NpZ25tZW50XG4gICAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAvLyBjb25zb2xlLmxvZygnd3JpdGluZycpO1xuICAgIC8vIGlmICh0aGlzLmlzRGVidWcpXG4gICAgLy8gZGVidWdnZXI7XG4gICAgdGhpcy5fdmFsdWU9dmFsdWU7XG4gICAgaWYgKHRoaXMubm9Gb3JtYXR0aW5nKSB0aGlzLnNldElucHV0KHZhbHVlKTtcbiAgICBlbHNlIGlmICh0aGlzLm9UeXBlID09ICd0ZXh0JyAmJiAhdGhpcy5ub1RleHRGb3JtYXQpIHtcbiAgICAgIGlmICh0aGlzLmVsLmRpc2FibGVkKSB0aGlzLnNldElucHV0KHZhbHVlKTtcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl92YWx1ZSA9IHRoaXMuZm9ybWF0dGVyU2VydmljZS50b1RpdGxlQ2FzZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuc2V0VGV4dElucHV0KHZhbHVlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ251bWJlcicpIHRoaXMuc2V0TnVtYmVySW5wdXQodmFsdWUpO1xuICAgIGVsc2UgaWYgKHRoaXMub1R5cGUgPT0gJ3BlcmNlbnRhZ2UnKSB0aGlzLnNldFBlcmNlbnRhZ2VJbnB1dCh2YWx1ZSk7XG4gICAgZWxzZSBpZiAodGhpcy5vVHlwZSA9PSAnY2hlY2tib3gnKVxuICAgICAgaWYgKHZhbHVlID09IG51bGwpIHRoaXMuaW5wdXQoZmFsc2UpO1xuICAgICAgZWxzZSB0aGlzLnNldENoZWNrYm94SW5wdXQodmFsdWUgYXMgYW55KTtcbiAgICBlbHNlIHRoaXMuc2V0SW5wdXQodmFsdWUpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBhbnkpID0+IHZvaWQpIHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoKSB7fVxuXG4gIGlzTGFzdENoYXJhY3RlckRlY2ltYWxTZXBhcmF0b3IodmFsdWU6IHN0cmluZyB8IG51bWJlcikge1xuICAgIHJldHVybiB2YWx1ZT8udG9TdHJpbmcoKVt2YWx1ZT8udG9TdHJpbmcoKS5sZW5ndGggLSAxXSA9PSAnLic7XG4gIH1cblxuICAvKipcbiAgICogRm9ybWF0IG51bW1iZXIgYnkgYWRkaW5nIGNvbW1hc1xuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHByaXZhdGUgc2V0TnVtYmVySW5wdXQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwpIHtcbiAgICAvLyBkZWJ1Z2dlcjtcbiAgICAvLyBjb25zb2xlLnRyYWNlKCdzZXROdW1iZXJJbnB1dCcsdmFsdWUpXG4gICAgY29uc3QgdmFsID0gdmFsdWU/LnRvU3RyaW5nKCkucmVwbGFjZSgvW15cXGQuLV0vZywgJycpO1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdmFsID09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0xhc3RDaGFyYWN0ZXJEZWNpbWFsU2VwYXJhdG9yKHZhbCkpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBkZWJ1Z2dlclxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsLCBgMS4wLTIwYCk7XG4gIH1cblxuICAvKipcbiAgICogRm9ybWF0IG51bW1iZXIgYnkgJSBzaWduIGF0IHRoZSBlbmRcbiAgICogQHBhcmFtIHZhbHVlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwcml2YXRlIHNldFBlcmNlbnRhZ2VJbnB1dCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCkge1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgY29uc3QgdmFsID0gdmFsdWU/LnRvU3RyaW5nKCkucmVwbGFjZSgvW15cXGQuLV0vZywgJycpO1xuICAgIGlmICh2YWwgPT09IG51bGwgfHwgdmFsID09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0xhc3RDaGFyYWN0ZXJEZWNpbWFsU2VwYXJhdG9yKHZhbCkpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdmFsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBkZWJ1Z2dlclxuICAgIC8vIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kZWNpbWFsUGlwZS50cmFuc2Zvcm0odmFsLCBgMS4wLTIwYCk7XG4gICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZSA/IHZhbHVlICsgJyUnIDogdmFsdWUgKyAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JtYXQgdGV4dCBieSBtYWtpbmcgaXQgaW4gdGhlIHRpdGxlIGNhc2VcbiAgICogQHBhcmFtIHZhbHVlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBwcml2YXRlIHNldFRleHRJbnB1dCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCkge1xuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZm9ybWF0dGVyU2VydmljZS50b1RpdGxlQ2FzZSh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IG5ldyB2YWx1ZSBvbiB0aGUgSFRNTCBJbnB1dCBmb3IgdGhlIFVJIHVwZGF0ZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHByaXZhdGUgc2V0SW5wdXQodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwpIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIGlmICh0aGlzLm9UeXBlID09ICdjaGVja2JveCcpIHRoaXMuc2V0Q2hlY2tib3hJbnB1dCh2YWx1ZSBhcyBhbnkpO1xuICAgIGVsc2Uge1xuICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbHVlIGFzIGFueTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0IG5ldyB2YWx1ZSBvbiB0aGUgSFRNTCBJbnB1dCBDaGVja2JveCBmb3IgdGhlIFVJIHVwZGF0ZVxuICAgKiBAcGFyYW0gdmFsdWVcbiAgICogQHJldHVybnNcbiAgICovXG4gIHByaXZhdGUgc2V0Q2hlY2tib3hJbnB1dCh2YWx1ZTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGVja2VkID0gdmFsdWUgfHwgZmFsc2U7XG4gICAgaWYgKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoZWNrZWQgPT0gbnVsbCkgZGVidWdnZXI7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBjb21tYXMgZnJvbSB0aGUgbnVtYmVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHJpdmF0ZSB1bkZvcm1hdE51bWJlcigpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIGlmICh0aGlzLmlzTGFzdENoYXJhY3RlckRlY2ltYWxTZXBhcmF0b3IodmFsdWUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fdmFsdWUgPSB0aGlzLmZvcm1hdHRlclNlcnZpY2UucmVtb3ZlQ29tbWFzKHZhbHVlKTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy52YWx1ZSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBjb21tYXMgYW5kIHBlcmNlbnRhZ2UgZnJvbSB0aGUgbnVtYmVyc1xuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgcHJpdmF0ZSB1bkZvcm1hdFBlcmNlbnRhZ2UoKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgICBpZiAodGhpcy5pc0xhc3RDaGFyYWN0ZXJEZWNpbWFsU2VwYXJhdG9yKHZhbHVlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5mb3JtYXR0ZXJTZXJ2aWNlLnJlbW92ZUNvbW1hcyh2YWx1ZS5yZXBsYWNlKCclJywgJycpKTtcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy52YWx1ZSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKHZhbDogYm9vbGVhbikge1xuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmRpc2FibGVkID0gISF2YWw7XG4gICAgLy8gZGVidWdnZXJcbiAgICAvLyB0aGlzLl9vbkJsdXIoKVxuICB9XG59XG5cbmNvbnN0IFBBRERJTkcgPSAnMDAwMDAwJztcblxuQFBpcGUoeyBuYW1lOiAnaW5wdXRGb3JtYXR0ZXJzJyB9KVxuZXhwb3J0IGNsYXNzIElucHV0Rm9ybWF0dGVyc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgcHJpdmF0ZSBERUNJTUFMX1NFUEFSQVRPUjogc3RyaW5nO1xuICBwcml2YXRlIFRIT1VTQU5EU19TRVBBUkFUT1I6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBUT0RPIGNvbWVzIGZyb20gY29uZmlndXJhdGlvbiBzZXR0aW5nc1xuICAgIHRoaXMuREVDSU1BTF9TRVBBUkFUT1IgPSAnLic7XG4gICAgdGhpcy5USE9VU0FORFNfU0VQQVJBVE9SID0gJywnO1xuICB9XG5cbiAgdHJhbnNmb3JtKHZhbHVlOiBudW1iZXIgfCBzdHJpbmcsIGZyYWN0aW9uU2l6ZTogbnVtYmVyID0gMik6IHN0cmluZyB7XG4gICAgbGV0IFtpbnRlZ2VyLCBmcmFjdGlvbiA9ICcnXSA9ICh2YWx1ZSB8fCAnJykudG9TdHJpbmcoKS5zcGxpdCh0aGlzLkRFQ0lNQUxfU0VQQVJBVE9SKTtcblxuICAgIGZyYWN0aW9uID0gZnJhY3Rpb25TaXplID4gMCA/IHRoaXMuREVDSU1BTF9TRVBBUkFUT1IgKyAoZnJhY3Rpb24gKyBQQURESU5HKS5zdWJzdHJpbmcoMCwgZnJhY3Rpb25TaXplKSA6ICcnO1xuXG4gICAgaW50ZWdlciA9IGludGVnZXIucmVwbGFjZSgvXFxCKD89KFxcZHszfSkrKD8hXFxkKSkvZywgdGhpcy5USE9VU0FORFNfU0VQQVJBVE9SKTtcblxuICAgIHJldHVybiBpbnRlZ2VyICsgZnJhY3Rpb247XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCBpbnB1dCB2YWx1ZSB0byBudW1iZXJcbiAgICogQHBhcmFtIHZhbHVlIElucHV0IHZhbHVlXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICByZW1vdmVDb21tYXModmFsdWU6IHN0cmluZykge1xuICAgIGNvbnN0IHIgPSB2YWx1ZS5yZXBsYWNlKC9bXlxcZC4tXS9nLCAnJyk7XG4gICAgcmV0dXJuIHIgPyArciA6IG51bGw7XG4gIH1cblxuICB0b1RpdGxlQ2FzZShzdHI6IHN0cmluZyB8IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN0cj8udG9TdHJpbmcoKS5yZXBsYWNlKC9cXHdcXFMqL2csICh0eHQpID0+IHR4dC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHR4dC5zdWJzdHIoMSkudG9Mb3dlckNhc2UoKSkgfHwgJyc7XG4gIH1cbn1cblxuY29uc3QgY29tcHMgPSBbSW5wdXRGb3JtYXREaXJlY3RpdmVdO1xuLy8gY29uc3QgY29tcHMgPSBbXTtcbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIC4uLmNvbXBzXSxcbiAgZXhwb3J0czogWy4uLmNvbXBzXSxcbiAgcHJvdmlkZXJzOiBbRGVjaW1hbFBpcGUsIElucHV0Rm9ybWF0dGVyc1BpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dEZvcm1hdERpcmVjdGl2ZXNNb2R1bGUge31cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIElucHV0Rm9ybWF0U2VydmljZSB7XG4gIC8qKiBEb24ndCB1c2UgdGhlIGlucHV0IGZvcm1hdHR0ZXIgb24gdGhpcyBwYWdlICovXG4gIHBhZ2VOb2Zvcm1hdDogYm9vbGVhbjtcbiAgLyoqIERvbid0IHVzZSB0aGUgaW5wdXQgZm9ybWF0dHRlciBmb3IgdGV4dCBpbnB1dHMgb24gdGhpcyBwYWdlICovXG4gIHBhZ2VOb1RleHRGb3JtYXQ6IGJvb2xlYW47XG59XG4iXX0=
|
|
@@ -30,14 +30,14 @@ export class IntegerOnlyDirective {
|
|
|
30
30
|
registerOnTouched(fn) {
|
|
31
31
|
}
|
|
32
32
|
_onChange(value) { }
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
34
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: IntegerOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: IntegerOnlyDirective, selector: "[appIntegerOnly]", inputs: { allowNegativeNumbers: "allowNegativeNumbers" }, host: { listeners: { "focus": "onFocus()", "input": "onKeyUp()" } }, providers: [{
|
|
35
35
|
provide: NG_VALUE_ACCESSOR,
|
|
36
36
|
useExisting: IntegerOnlyDirective,
|
|
37
37
|
multi: true,
|
|
38
38
|
}], ngImport: i0 }); }
|
|
39
39
|
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: IntegerOnlyDirective, decorators: [{
|
|
41
41
|
type: Directive,
|
|
42
42
|
args: [{
|
|
43
43
|
selector: '[appIntegerOnly]',
|
|
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
56
56
|
type: HostListener,
|
|
57
57
|
args: ['input']
|
|
58
58
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdlci1vbmx5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvZGlyZWN0aXZlcy9pbnRlZ2VyLW9ubHkuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBVXpFLE1BQU0sT0FBTyxvQkFBb0I7SUFHL0IsWUFDVSxPQUFtQjtRQUFuQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBSHBCLHlCQUFvQixHQUFZLEtBQUssQ0FBQztJQUkzQyxDQUFDO0lBRWtCLE9BQU87UUFDNUIsaUZBQWlGO1FBQ2pGLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUEsQ0FBRyw0QkFBNEI7UUFDakYsQ0FBQztJQUNILENBQUM7SUFFc0IsT0FBTztRQUM1QixxQ0FBcUM7UUFDckMsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUMvRCxrQ0FBa0M7UUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBQ3hGLDRCQUE0QjtRQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2xELENBQUM7SUFFRCxVQUFVLENBQUMsS0FBYTtRQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO0lBRXpCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBVSxJQUFRLENBQUM7OEdBcENsQixvQkFBb0I7a0dBQXBCLG9CQUFvQiwwS0FOcEIsQ0FBQztnQkFDVixPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsb0JBQW9CO2dCQUNqQyxLQUFLLEVBQUUsSUFBSTthQUNaLENBQUM7OzJGQUVTLG9CQUFvQjtrQkFSaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixTQUFTLEVBQUUsQ0FBQzs0QkFDVixPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHNCQUFzQjs0QkFDakMsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQztpQkFDSDsrRUFFVSxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBTWlCLE9BQU87c0JBQTdCLFlBQVk7dUJBQUMsT0FBTztnQkFRRSxPQUFPO3NCQUE3QixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMaXN0S2V5TWFuYWdlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXBwSW50ZWdlck9ubHldJyxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBJbnRlZ2VyT25seURpcmVjdGl2ZSxcbiAgICBtdWx0aTogdHJ1ZSxcbiAgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEludGVnZXJPbmx5RGlyZWN0aXZlIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3J7XG4gIEBJbnB1dCgpIGFsbG93TmVnYXRpdmVOdW1iZXJzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtUmVmOiBFbGVtZW50UmVmLFxuICApIHsgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJykgb25Gb2N1cygpe1xuICAgIC8vIGlmIHRoZSBjb250ZW50IGlzIGp1c3QgYSB6ZXJvICh0aGUgdXN1YWwgZGVmYXVsdCB2YWx1ZSBmcm9tIGJhY2tlbmQpLCBjbGVhciBpdFxuICAgIGlmICghTnVtYmVyKHRoaXMuZWxlbVJlZi5uYXRpdmVFbGVtZW50LnZhbHVlKSkge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKCcnKVxuICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5lbGVtUmVmLm5hdGl2ZUVsZW1lbnQudmFsdWUpICAgLy8gbm90aWZ5IGFuZ3VsYXIgdmFsaWRhdG9yc1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0Jykgb25LZXlVcCgpe1xuICAgIC8vIG9wdGlvbmFsbHkgYWxsb3cgZm9yIG5lZ2F0aXZlIHNpZ25cbiAgICBsZXQgcGF0dGVybiA9IHRoaXMuYWxsb3dOZWdhdGl2ZU51bWJlcnMgPyAvW15cXGQtXS9nIDogL1teXFxkXS9nO1xuICAgIC8vIHJlbW92ZSBldmVyeXRoaW5nIGV4Y2VwdCBkaWdpdHNcbiAgICB0aGlzLmVsZW1SZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZWxlbVJlZi5uYXRpdmVFbGVtZW50LnZhbHVlLnJlcGxhY2UocGF0dGVybiwgJycpXG4gICAgLy8gbm90aWZ5IGFuZ3VsYXIgdmFsaWRhdG9yc1xuICAgIHRoaXMuX29uQ2hhbmdlKHRoaXMuZWxlbVJlZi5uYXRpdmVFbGVtZW50LnZhbHVlKVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKXtcbiAgICB0aGlzLmVsZW1SZWYubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fb25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcblxuICB9XG5cbiAgX29uQ2hhbmdlKHZhbHVlOiBhbnkpOnZvaWQge31cbn1cbiJdfQ==
|
|
@@ -2,10 +2,10 @@ import { Directive } from '@angular/core';
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class MHrefDirective {
|
|
4
4
|
constructor() { }
|
|
5
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
6
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: MHrefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: MHrefDirective, selector: "[mHref]", ngImport: i0 }); }
|
|
7
7
|
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: MHrefDirective, decorators: [{
|
|
9
9
|
type: Directive,
|
|
10
10
|
args: [{
|
|
11
11
|
selector: '[mHref]'
|
|
@@ -9,10 +9,10 @@ export class NegativeNumberOnlyDirective {
|
|
|
9
9
|
this.el.nativeElement.value = `-${value}`;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
13
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NegativeNumberOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
13
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.0", type: NegativeNumberOnlyDirective, isStandalone: true, selector: "[appNegativeNumberOnly]", host: { listeners: { "input": "onChange($event.target.value)" } }, ngImport: i0 }); }
|
|
14
14
|
}
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: NegativeNumberOnlyDirective, decorators: [{
|
|
16
16
|
type: Directive,
|
|
17
17
|
args: [{
|
|
18
18
|
selector: '[appNegativeNumberOnly]',
|
|
@@ -22,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.8", ngImpor
|
|
|
22
22
|
type: HostListener,
|
|
23
23
|
args: ['input', ['$event.target.value']]
|
|
24
24
|
}] } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVnYXRpdmUtbnVtYmVyLW9ubHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXRzLWZlLW5nLXNkay9zcmMvbGliL1NoYXJlZC9kaXJlY3RpdmVzL25lZ2F0aXZlLW51bWJlci1vbmx5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNcEUsTUFBTSxPQUFPLDJCQUEyQjtJQUV0QyxZQUNVLEVBQWdDO1FBQWhDLE9BQUUsR0FBRixFQUFFLENBQThCO0lBQ3RDLENBQUM7SUFHTCxRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUE7UUFDM0MsQ0FBQztJQUNILENBQUM7OEdBWFUsMkJBQTJCO2tHQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsVUFBVSxFQUFFLElBQUk7aUJBQ25COytFQVFDLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2FwcE5lZ2F0aXZlTnVtYmVyT25seV0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgTmVnYXRpdmVOdW1iZXJPbmx5RGlyZWN0aXZlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+LFxuICApIHsgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2lucHV0JywgWyckZXZlbnQudGFyZ2V0LnZhbHVlJ10pXG4gIG9uQ2hhbmdlKHZhbHVlKXtcbiAgICBpZiAoIXZhbHVlLnN0YXJ0c1dpdGgoJy0nKSl7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSBgLSR7dmFsdWV9YFxuICAgIH1cbiAgfVxufVxuIl19
|