@tuki-io/tuki-widgets 0.0.219-dev.8 → 0.0.219-dev.9
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/README.md +24 -24
- package/esm2020/contact-center/cc-readiness/cc-readiness.module.mjs +1 -1
- package/esm2020/contact-center/cc-readiness/cc-readiness.service.mjs +1 -1
- package/esm2020/contact-center/cc-readiness/widgets/licences-requirement/licences-requirement.component.mjs +3 -3
- package/esm2020/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.mjs +3 -3
- package/esm2020/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.mjs +2 -2
- package/esm2020/di2mt/widgets/upgrade-overview/cards/pending-activation-users/pending-activation-users.component.mjs +17 -17
- package/esm2020/lib/widgets.component.mjs +9 -9
- package/esm2020/lib/widgets.module.mjs +1 -1
- package/esm2020/lib/widgets.service.mjs +1 -1
- package/esm2020/public-api.mjs +1 -1
- package/esm2020/user-creation/src/app.constants.mjs +1 -1
- package/esm2020/user-creation/src/classes/notification.mjs +1 -1
- package/esm2020/user-creation/src/classes/site.mjs +1 -1
- package/esm2020/user-creation/src/environments/environment.mjs +1 -1
- package/esm2020/user-creation/src/interfaces/user-creation-wizard.interfaces.mjs +1 -1
- package/esm2020/user-creation/src/shared/components/notification/notification.component.mjs +3 -3
- package/esm2020/user-creation/src/shared/pipes/truncate.pipe.mjs +1 -1
- package/esm2020/user-creation/src/shared/services/notification.service.mjs +1 -1
- package/esm2020/user-creation/src/shared/services/user-creation-api.service.mjs +1 -1
- package/esm2020/user-creation/src/shared/services/utils.mjs +1 -1
- package/esm2020/user-creation/src/utils/app-loader/app-loader.mjs +3 -3
- package/esm2020/user-creation/src/utils/build-savable-end-user.mjs +1 -1
- package/esm2020/user-creation/src/utils/device-default-prefix.mjs +19 -2
- package/esm2020/user-creation/src/utils/device-name-dynamic-tokens.mjs +4 -0
- package/esm2020/user-creation/src/utils/device-name-validation.mjs +1 -1
- package/esm2020/user-creation/src/utils/model.mjs +1 -1
- package/esm2020/user-creation/src/utils/parse-device-name-rule.mjs +6 -3
- package/esm2020/user-creation/src/widgets/user-creation-wizard/components/user-details-step/user-details-step.component.mjs +60 -13
- package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.component.mjs +3 -3
- package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.service.mjs +13 -9
- package/esm2020/user-device-manage/public-api.mjs +1 -1
- package/esm2020/user-device-manage/src/app.constants.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/device.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/deviceProfile.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-association-interface.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-association.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-call-info-display.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line-directory.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/line.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/notification.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/recording-options.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/simplified-user.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/site-defaults.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/translation-pattern.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/types.mjs +1 -1
- package/esm2020/user-device-manage/src/common-functions.mjs +1 -1
- package/esm2020/user-device-manage/src/confirm-dialog/info-dialog.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/associated-line-row/associated-line-row.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-details-box/device-associated-line-details-box.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-associated-line/device-associated-line.component.mjs +1 -1
- package/esm2020/user-device-manage/src/device-info/device-info.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-manage-widget.component.mjs +2 -2
- package/esm2020/user-device-manage/src/environments/environment.mjs +1 -1
- package/esm2020/user-device-manage/src/interseptors/auth.interceptor.mjs +1 -1
- package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
- package/esm2020/user-device-manage/src/material.module.mjs +1 -1
- package/esm2020/user-device-manage/src/notifications/notification.component.mjs +3 -3
- package/esm2020/user-device-manage/src/pipes/mac-address.pipe.mjs +1 -1
- package/esm2020/user-device-manage/src/services/api.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/device.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/dns.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/line.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/notification.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/site-settings.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/sorting-utils.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/user.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/utils.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/validation.service.mjs +1 -1
- package/esm2020/user-device-manage/src/shared/tk-page-section/page-section.component.mjs +1 -1
- package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +3 -3
- package/esm2020/user-manage/public-api.mjs +1 -1
- package/esm2020/user-manage/src/app.constants.mjs +1 -1
- package/esm2020/user-manage/src/classes/device.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-association-interface.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-association.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-call-info-display.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-directory.mjs +1 -1
- package/esm2020/user-manage/src/classes/line.mjs +1 -1
- package/esm2020/user-manage/src/classes/notification.mjs +1 -1
- package/esm2020/user-manage/src/classes/pagination.mjs +1 -1
- package/esm2020/user-manage/src/classes/recording-options.mjs +1 -1
- package/esm2020/user-manage/src/classes/simplified-user.mjs +1 -1
- package/esm2020/user-manage/src/classes/table-data.mjs +1 -1
- package/esm2020/user-manage/src/classes/translation-pattern.mjs +1 -1
- package/esm2020/user-manage/src/classes/user-list.mjs +1 -1
- package/esm2020/user-manage/src/common-functions.mjs +1 -1
- package/esm2020/user-manage/src/device-list/device-list.component.mjs +3 -3
- package/esm2020/user-manage/src/device-list/device-row/device-row.component.mjs +3 -3
- package/esm2020/user-manage/src/environments/environment.mjs +1 -1
- package/esm2020/user-manage/src/interseptors/auth.interceptor.mjs +1 -1
- package/esm2020/user-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
- package/esm2020/user-manage/src/material.module.mjs +1 -1
- package/esm2020/user-manage/src/notifications/notification.component.mjs +3 -3
- package/esm2020/user-manage/src/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/user-manage/src/services/api.service.mjs +1 -1
- package/esm2020/user-manage/src/services/dns.service.mjs +1 -1
- package/esm2020/user-manage/src/services/line.service.mjs +1 -1
- package/esm2020/user-manage/src/services/notification.service.mjs +1 -1
- package/esm2020/user-manage/src/services/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/user-manage/src/services/site-settings.service.mjs +1 -1
- package/esm2020/user-manage/src/services/sorting-utils.service.mjs +1 -1
- package/esm2020/user-manage/src/services/user.service.mjs +1 -1
- package/esm2020/user-manage/src/services/utils.service.mjs +1 -1
- package/esm2020/user-manage/src/user-calling/user-calling-extension/user-calling-extension.component.mjs +3 -3
- package/esm2020/user-manage/src/user-info/user-info.component.mjs +3 -3
- package/esm2020/user-manage/src/user-manage-widget.component.mjs +2 -2
- package/esm2020/user-manage/src/user-manage.module.mjs +1 -1
- package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +3 -3
- package/esm2020/user-manage/src/utils/pagination/pagination.component.mjs +3 -3
- package/esm2020/users-list/public-api.mjs +1 -1
- package/esm2020/users-list/src/app.constants.mjs +1 -1
- package/esm2020/users-list/src/classes/app-location.mjs +1 -1
- package/esm2020/users-list/src/classes/device.mjs +1 -1
- package/esm2020/users-list/src/classes/line.mjs +1 -1
- package/esm2020/users-list/src/classes/move-user.mjs +1 -1
- package/esm2020/users-list/src/classes/notification.mjs +1 -1
- package/esm2020/users-list/src/classes/simlified-user.mjs +1 -1
- package/esm2020/users-list/src/classes/table-data.mjs +1 -1
- package/esm2020/users-list/src/classes/user-list.mjs +1 -1
- package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user/device-move-user-wizard.component.mjs +3 -3
- package/esm2020/users-list/src/move-user-wizard/move-user-stepper/device-move-user-tab/devices-move-user-wizard-tab.component.mjs +3 -3
- package/esm2020/users-list/src/move-user-wizard/move-user-wizard.component.mjs +3 -3
- package/esm2020/users-list/src/services/api-webex.service.mjs +1 -1
- package/esm2020/users-list/src/services/api.service.mjs +1 -1
- package/esm2020/users-list/src/services/dns.service.mjs +1 -1
- package/esm2020/users-list/src/services/events-communication.service.mjs +1 -1
- package/esm2020/users-list/src/services/notification.service.mjs +1 -1
- package/esm2020/users-list/src/services/removeKynFromIBM.service.mjs +1 -1
- package/esm2020/users-list/src/services/site-settings.service.mjs +1 -1
- package/esm2020/users-list/src/services/user.service.mjs +1 -1
- package/esm2020/users-list/src/user-list-confirm-dialog/user-list-confirm-dialog.component.mjs +3 -3
- package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +3 -3
- package/esm2020/users-list/src/utils/common-functions.mjs +1 -1
- package/esm2020/users-list/src/utils/notifications/notification.component.mjs +3 -3
- package/esm2020/users-list/src/utils/utils.service.mjs +1 -1
- package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs +2 -2
- package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs +20 -20
- package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs +109 -33
- package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +18 -18
- package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +18 -18
- package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +12 -12
- package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets.mjs +8 -8
- package/fesm2015/tuki-io-tuki-widgets.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs +2 -2
- package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs +20 -20
- package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs +102 -29
- package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +18 -18
- package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +18 -18
- package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +12 -12
- package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets.mjs +8 -8
- package/fesm2020/tuki-io-tuki-widgets.mjs.map +1 -1
- package/package.json +1 -1
- package/user-creation/src/utils/device-default-prefix.d.ts +7 -2
- package/user-creation/src/utils/device-name-dynamic-tokens.d.ts +1 -0
- package/user-creation/src/utils/parse-device-name-rule.d.ts +1 -0
- package/user-creation/src/widgets/user-creation-wizard/components/user-details-step/user-details-step.component.d.ts +2 -0
|
@@ -113,4 +113,4 @@ UserCreationApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0
|
|
|
113
113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: UserCreationApiService, decorators: [{
|
|
114
114
|
type: Injectable
|
|
115
115
|
}], ctorParameters: function () { return []; } });
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvc2VydmljZXMvdXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3ZFLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHaEQsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQztRQVRRLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDZCxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxELDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUEwQixFQUFFLENBQUMsQ0FBQztRQUMxRSxtQkFBYyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVuRSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXhCLENBQUM7SUFFVixZQUFZO0lBRW5CLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxVQUFrQjtRQUNsRCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsbUNBQW1DLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMvRixPQUFP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QUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsSUFBUyxFQUFFLFVBQWtCLEVBQUUsTUFBYztRQUNuRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25ILENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxNQUFjLEVBQUUsVUFBa0I7UUFDekQsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDMUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQ25GLENBQUM7SUFDSixDQUFDOztvSEE3SFUsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZvcmtKb2luLCBtYXAsIE9ic2VydmFibGUsIHRhcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBTaXRlLCBTaXRlRGVmYXVsdHMsIFNpdGVJbnRlcmZhY2UsIFNpdGVUZW1wbGF0ZUludGVyZmFjZSB9IGZyb20gXCIuLi8uLi9jbGFzc2VzL3NpdGVcIjtcbmltcG9ydCB7IERldmljZURlZmF1bHRzSW50ZXJmYWNlLCBVc2VyVGVtcGxhdGVJbnRlcmZhY2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy91c2VyLWNyZWF0aW9uLXdpemFyZC5pbnRlcmZhY2VzXCI7XG4vLyBpbXBvcnQgeyBBUElTZXJ2aWNlIH0gZnJvbSBcIi4vYXBpLnNlcnZpY2VcIjtcbmltcG9ydCB7IEFQSSwgTUFYX0lOVEVHRVIgfSBmcm9tIFwiLi4vLi4vYXBwLmNvbnN0YW50c1wiO1xuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gXCIuLi9hcGkvYXBpLnNlcnZpY2VcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFVzZXJDcmVhdGlvbkFwaVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgX2FsbFNpdGVzOiBTaXRlW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBzaXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2l0ZVtdPihbXSk7XG4gIHB1YmxpYyByZWFkb25seSBzaXRlc0xpc3QkID0gdGhpcy5zaXRlc0xpc3RTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VXNlclRlbXBsYXRlSW50ZXJmYWNlW10+KFtdKTtcbiAgcHVibGljIHJlYWRvbmx5IHRlbXBsYXRlc0xpc3QkID0gdGhpcy50ZW1wbGF0ZXNMaXN0U3ViamVjdCQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFQSVNlcnZpY2UpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIGdldFNpdGVzTGlzdCgpIHtcblxuICB9XG5cbiAgcHVibGljIGNoZWNrQ29udHJvbEh1YkludGVncmF0aW9uKGN1c3RvbWVySWQ6IHN0cmluZykge1xuICAgIGNvbnN0IFVSTCA9IEFQSS5XRUJFWF9DSEVDS19DT05UUk9MX0hVQl9JTlRFR1JBVElPTi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIFN0cmluZyhjdXN0b21lcklkKSk7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChVUkwpO1xuICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSwgdHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldEFsbEN1c3RvbWVyU2l0ZXMoY3VzdG9tZXJJZDogc3RyaW5nLCBvbmx5U2l0ZXNXaXRoTG9jYXRpb24/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxTaXRlW10+IHtcbiAgICBjb25zdCBwYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgICBpZiAob25seVNpdGVzV2l0aExvY2F0aW9uKSB7XG4gICAgICBwYXJhbXNbJ29ubHlTaXRlc1dpdGhMb2NhdGlvbiddID0gJ3RydWUnO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoUGFnaW5hdGlvbihBUEkuU0lURVMucmVwbGFjZSgnOmN1c3RvbWVySWQnLCBTdHJpbmcoY3VzdG9tZXJJZCkpLCBNQVhfSU5URUdFUiwgMCwgcGFyYW1zLCBmYWxzZSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgLy8gdGhpcy5fYWxsU2l0ZXMgPSBbXTtcbiAgICAgICAgICAvLyBpZiAocmVzLnBhZ2VEYXRhICYmIHJlcy5wYWdlRGF0YS5sZW5ndGgpIHtcbiAgICAgICAgICAvLyB0aGlzLmFzc2lnbkFsbFNpdGVzKGN1c3RvbWVySWQsIHJlcy5wYWdlRGF0YSk7XG4gICAgICAgICAgLy8gfVxuICAgICAgICAgIC8vIHRoaXMuYWxsQ3VzdG9tZXJTaXRlcyQubmV4dCh0cnVlKTtcbiAgICAgICAgICAvLyByZXR1cm4gdGhpcy5fYWxsU2l0ZXM7XG4gICAgICAgICAgdGhpcy5zaXRlc0xpc3RTdWJqZWN0JC5uZXh0KFsuLi5yZXMucGFnZURhdGFdKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAvLyAgIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldFNpdGVBbGxEYXRhKHNpdGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAvLyB0aGlzLmRhdGFQZW5kaW5nID0gdHJ1ZTtcbiAgICByZXR1cm4gZm9ya0pvaW4oW1xuICAgICAgdGhpcy5nZXRTaXRlKHNpdGVJZCksXG4gICAgICB0aGlzLmdldFNpdGVEZWZhdWx0cyhzaXRlSWQsIGZhbHNlKSxcbiAgICAgIC8vIHRoaXMuZ2V0RGV2aWNlVHlwZXMoc2l0ZUlkKSxcbiAgICAgIC8vIHRoaXMuZ2V0Vm9pY2VNYWlsVXNlclRlbXBsYXRlcyhzaXRlSWQpXG4gICAgXSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2l0ZShzaXRlSWQ6IG51bWJlciwgaXNFZGl0PzogYm9vbGVhbik6IE9ic2VydmFibGU8U2l0ZUludGVyZmFjZT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlNJVEUucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKSwgbnVsbCwgZmFsc2UpO1xuICB9XG5cbiAgcHVibGljIGdldERldmljZVR5cGVzKHNpdGVJZDogbnVtYmVyIHwgc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLkRFVklDRV9UWVBFUy5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHNpdGVJZCkpLCBudWxsLCB0cnVlKVxuICAgIC8vICAgLnBpcGUoXG4gICAgLy8gICAgIG1hcCgodHlwZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgLy8gICAgICAgICAvLyB0aGlzLmRldmljZVR5cGVzID0gdHlwZXMpXG4gICAgLy8gICAgIH0pXG4gICAgLy8gKTtcbiAgICAvLyAgIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaXRlRGVmYXVsdHMoc2l0ZUlkOiBudW1iZXIsIGRpcmVjdEFjY2VzczogYm9vbGVhbiwgc2hhcmVkTGluZVNpdGVJZHM/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNpdGVEZWZhdWx0cz4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IHsgZGlyZWN0QWNjZXNzOiBkaXJlY3RBY2Nlc3MgfTtcbiAgICAvLyBpZiAoc2hhcmVkTGluZVNpdGVJZHMpIHtcbiAgICAvLyAgIHBhcmFtc1snc2hhcmVkTGluZVNpdGVJZHMnXSA9IHNoYXJlZExpbmVTaXRlSWRzO1xuICAgIC8vIH1cbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5TSVRFX1NFVFRJTkdTLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSksIHBhcmFtcylcbiAgICAvLyAgIC5waXBlKG1hcCgoc2l0ZURlZmF1bHRzOiBTaXRlVGVtcGxhdGVJbnRlcmZhY2UpID0+IHtcbiAgICAvLyAgICAgLy8gdGhpcy5zaXRlRGVmYXVsdHMgPSBuZXcgU2l0ZURlZmF1bHRzKHNpdGVEZWZhdWx0cywgISFzaGFyZWRMaW5lU2l0ZUlkcyk7XG4gICAgLy8gICAgIC8vIGNvbnN0IGNvcGllZFNpdGVEZWZhdWx0cyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc2l0ZURlZmF1bHRzKSk7XG4gICAgLy8gICAgIC8vIHRoaXMub3JpZ2luYWxTaXRlRGVmYXVsdHMgPSBuZXcgU2l0ZURlZmF1bHRzKGNvcGllZFNpdGVEZWZhdWx0cywgISFzaGFyZWRMaW5lU2l0ZUlkcyk7XG4gICAgLy8gICB9KSk7XG4gICAgLy8gICAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRWb2ljZU1haWxVc2VyVGVtcGxhdGVzKHNpdGVJZDogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuVk1fVVNFUl9URU1QTEFURVMucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKSwgbnVsbCwgdHJ1ZSlcbiAgICAgIC5waXBlKG1hcCgodGVtcGxhdGVzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgICAvLyB0aGlzLnZvaWNlTWFpbFRlbXBsYXRlcyA9IHRlbXBsYXRlcztcbiAgICAgIH0pKTtcbiAgICAvLyAgIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaEFsbFVzZXJUZW1wbGF0ZXMoc2l0ZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFVzZXJUZW1wbGF0ZUludGVyZmFjZVtdPiB7XG4gICAgY29uc3QgcGFyYW1zID0ge1xuICAgICAgc2l0ZUlkOiBzaXRlSWQsXG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5VU0VSX1RFTVBMQVRFU19VUExPQURfTElTVCwgcGFyYW1zKVxuICAgICAgLnBpcGUodGFwKChyZXN1bHQ6IFVzZXJUZW1wbGF0ZUludGVyZmFjZVtdKSA9PiB7XG4gICAgICAgIHRoaXMudGVtcGxhdGVzTGlzdFN1YmplY3QkLm5leHQocmVzdWx0KTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRVc2VyVGVtcGxhdGVUb2tlbihpZDogc3RyaW5nLCBjdXN0b21lcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlVTRVJfVEVNUExBVEVfVE9LRU4ucmVwbGFjZSgnOmN1c3RvbWVySWQnLCBjdXN0b21lcklkKS5yZXBsYWNlKCc6aWQnLCBpZCkpXG4gICAgLy8gLnBpcGUodGhpcy5oYW5kbGVFcnJvcihmYWxzZSwgdHJ1ZSkpO1xuICB9XG5cbiAgcHVibGljIGdldEF2YWlsYWJsZURuSW5SYW5nZXMoc2l0ZUlkOiBzdHJpbmcsIHBhcmFtczogYW55KTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5BVkFJTEFCTEVfRE5fSU5fUkFOR0VTLnJlcGxhY2UoJzpzaXRlSWQnLCBzaXRlSWQpLCBwYXJhbXMpO1xuICB9XG5cbiAgcHVibGljIGdldExkYXBVc2VycyhzaXRlSWQ6IHN0cmluZywgcGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLkxEQVBfVVNFUlMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCksIHBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgY2hlY2tVc2VySWRFeGlzdGluZyhzaXRlSWQ6IHN0cmluZywgdXNlcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlVTRVJfQ0hFQ0tfSURfRVhJU1RJTkcucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCkucmVwbGFjZSgnOnVzZXJJZCcsIHVzZXJJZCkpO1xuICB9XG5cbiAgcHVibGljIHNhdmVUZW1wbGF0ZVVzZXIodXNlcjogYW55LCB0ZW1wbGF0ZUlkOiBzdHJpbmcsIHNpdGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoQVBJLkNSRUFURV9ORVdfVVNFUl9GUk9NX1RFTVBMQVRFLCB1c2VyLCB7IHNpdGVJZDogc2l0ZUlkLCB0ZW1wbGF0ZUlkOiB0ZW1wbGF0ZUlkIH0pO1xuICB9XG5cbiAgcHVibGljIGdldERldmljZURlZmF1bHRzKHNpdGVJZDogc3RyaW5nLCBkZXZpY2VUeXBlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERldmljZURlZmF1bHRzSW50ZXJmYWNlPiB7XG4gICAgY29uc3QgZW5jb2RlZFR5cGUgPSBlbmNvZGVVUklDb21wb25lbnQoZGV2aWNlVHlwZSk7XG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChcbiAgICAgIEFQSS5ERVZJQ0VfREVGQVVMVFMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCkucmVwbGFjZSgnOmRldmljZVR5cGUnLCBlbmNvZGVkVHlwZSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy9zaGFyZWQvc2VydmljZXMvdXNlci1jcmVhdGlvbi1hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQWMsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3ZFLDhDQUE4QztBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHaEQsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQztRQVRRLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDZCxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNyRCxlQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxELDBCQUFxQixHQUFHLElBQUksZUFBZSxDQUEwQixFQUFFLENBQUMsQ0FBQztRQUMxRSxtQkFBYyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVuRSxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRXhCLENBQUM7SUFFVixZQUFZO0lBRW5CLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxVQUFrQjtRQUNsRCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsbUNBQW1DLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUMvRixPQUFP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QUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNqSCxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsSUFBUyxFQUFFLFVBQWtCLEVBQUUsTUFBYztRQUNuRSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25ILENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxNQUFjLEVBQUUsVUFBa0I7UUFDekQsTUFBTSxXQUFXLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDMUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQ25GLENBQUM7SUFDSixDQUFDOztvSEE3SFUsc0JBQXNCO3dIQUF0QixzQkFBc0I7NEZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZm9ya0pvaW4sIG1hcCwgT2JzZXJ2YWJsZSwgdGFwIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgU2l0ZSwgU2l0ZURlZmF1bHRzLCBTaXRlSW50ZXJmYWNlLCBTaXRlVGVtcGxhdGVJbnRlcmZhY2UgfSBmcm9tIFwiLi4vLi4vY2xhc3Nlcy9zaXRlXCI7XHJcbmltcG9ydCB7IERldmljZURlZmF1bHRzSW50ZXJmYWNlLCBVc2VyVGVtcGxhdGVJbnRlcmZhY2UgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy91c2VyLWNyZWF0aW9uLXdpemFyZC5pbnRlcmZhY2VzXCI7XHJcbi8vIGltcG9ydCB7IEFQSVNlcnZpY2UgfSBmcm9tIFwiLi9hcGkuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBUEksIE1BWF9JTlRFR0VSIH0gZnJvbSBcIi4uLy4uL2FwcC5jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gXCIuLi9hcGkvYXBpLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFVzZXJDcmVhdGlvbkFwaVNlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIF9hbGxTaXRlczogU2l0ZVtdID0gW107XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzaXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2l0ZVtdPihbXSk7XHJcbiAgcHVibGljIHJlYWRvbmx5IHNpdGVzTGlzdCQgPSB0aGlzLnNpdGVzTGlzdFN1YmplY3QkLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IHRlbXBsYXRlc0xpc3RTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VXNlclRlbXBsYXRlSW50ZXJmYWNlW10+KFtdKTtcclxuICBwdWJsaWMgcmVhZG9ubHkgdGVtcGxhdGVzTGlzdCQgPSB0aGlzLnRlbXBsYXRlc0xpc3RTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgcHJpdmF0ZSBhcGlTZXJ2aWNlID0gaW5qZWN0KEFQSVNlcnZpY2UpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBwdWJsaWMgZ2V0U2l0ZXNMaXN0KCkge1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGVja0NvbnRyb2xIdWJJbnRlZ3JhdGlvbihjdXN0b21lcklkOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IFVSTCA9IEFQSS5XRUJFWF9DSEVDS19DT05UUk9MX0hVQl9JTlRFR1JBVElPTi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIFN0cmluZyhjdXN0b21lcklkKSk7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKFVSTCk7XHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBbGxDdXN0b21lclNpdGVzKGN1c3RvbWVySWQ6IHN0cmluZywgb25seVNpdGVzV2l0aExvY2F0aW9uPzogYm9vbGVhbik6IE9ic2VydmFibGU8U2l0ZVtdPiB7XHJcbiAgICBjb25zdCBwYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcclxuICAgIGlmIChvbmx5U2l0ZXNXaXRoTG9jYXRpb24pIHtcclxuICAgICAgcGFyYW1zWydvbmx5U2l0ZXNXaXRoTG9jYXRpb24nXSA9ICd0cnVlJztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2hQYWdpbmF0aW9uKEFQSS5TSVRFUy5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIFN0cmluZyhjdXN0b21lcklkKSksIE1BWF9JTlRFR0VSLCAwLCBwYXJhbXMsIGZhbHNlKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YXAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICAvLyB0aGlzLl9hbGxTaXRlcyA9IFtdO1xyXG4gICAgICAgICAgLy8gaWYgKHJlcy5wYWdlRGF0YSAmJiByZXMucGFnZURhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAvLyB0aGlzLmFzc2lnbkFsbFNpdGVzKGN1c3RvbWVySWQsIHJlcy5wYWdlRGF0YSk7XHJcbiAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICAvLyB0aGlzLmFsbEN1c3RvbWVyU2l0ZXMkLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgICAvLyByZXR1cm4gdGhpcy5fYWxsU2l0ZXM7XHJcbiAgICAgICAgICB0aGlzLnNpdGVzTGlzdFN1YmplY3QkLm5leHQoWy4uLnJlcy5wYWdlRGF0YV0pO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgIC8vICAgLnBpcGUodGhpcy5oYW5kbGVFcnJvcih0cnVlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U2l0ZUFsbERhdGEoc2l0ZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgLy8gdGhpcy5kYXRhUGVuZGluZyA9IHRydWU7XHJcbiAgICByZXR1cm4gZm9ya0pvaW4oW1xyXG4gICAgICB0aGlzLmdldFNpdGUoc2l0ZUlkKSxcclxuICAgICAgdGhpcy5nZXRTaXRlRGVmYXVsdHMoc2l0ZUlkLCBmYWxzZSksXHJcbiAgICAgIC8vIHRoaXMuZ2V0RGV2aWNlVHlwZXMoc2l0ZUlkKSxcclxuICAgICAgLy8gdGhpcy5nZXRWb2ljZU1haWxVc2VyVGVtcGxhdGVzKHNpdGVJZClcclxuICAgIF0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNpdGUoc2l0ZUlkOiBudW1iZXIsIGlzRWRpdD86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPFNpdGVJbnRlcmZhY2U+IHtcclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLlNJVEUucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKSwgbnVsbCwgZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERldmljZVR5cGVzKHNpdGVJZDogbnVtYmVyIHwgc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuREVWSUNFX1RZUEVTLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSksIG51bGwsIHRydWUpXHJcbiAgICAvLyAgIC5waXBlKFxyXG4gICAgLy8gICAgIG1hcCgodHlwZXM6IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAvLyAgICAgICAgIC8vIHRoaXMuZGV2aWNlVHlwZXMgPSB0eXBlcylcclxuICAgIC8vICAgICB9KVxyXG4gICAgLy8gKTtcclxuICAgIC8vICAgLnBpcGUodGhpcy5oYW5kbGVFcnJvcihmYWxzZSwgdHJ1ZSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNpdGVEZWZhdWx0cyhzaXRlSWQ6IG51bWJlciwgZGlyZWN0QWNjZXNzOiBib29sZWFuLCBzaGFyZWRMaW5lU2l0ZUlkcz86IHN0cmluZyk6IE9ic2VydmFibGU8U2l0ZURlZmF1bHRzPiB7XHJcbiAgICBjb25zdCBwYXJhbXMgPSB7IGRpcmVjdEFjY2VzczogZGlyZWN0QWNjZXNzIH07XHJcbiAgICAvLyBpZiAoc2hhcmVkTGluZVNpdGVJZHMpIHtcclxuICAgIC8vICAgcGFyYW1zWydzaGFyZWRMaW5lU2l0ZUlkcyddID0gc2hhcmVkTGluZVNpdGVJZHM7XHJcbiAgICAvLyB9XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5TSVRFX1NFVFRJTkdTLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSksIHBhcmFtcylcclxuICAgIC8vICAgLnBpcGUobWFwKChzaXRlRGVmYXVsdHM6IFNpdGVUZW1wbGF0ZUludGVyZmFjZSkgPT4ge1xyXG4gICAgLy8gICAgIC8vIHRoaXMuc2l0ZURlZmF1bHRzID0gbmV3IFNpdGVEZWZhdWx0cyhzaXRlRGVmYXVsdHMsICEhc2hhcmVkTGluZVNpdGVJZHMpO1xyXG4gICAgLy8gICAgIC8vIGNvbnN0IGNvcGllZFNpdGVEZWZhdWx0cyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc2l0ZURlZmF1bHRzKSk7XHJcbiAgICAvLyAgICAgLy8gdGhpcy5vcmlnaW5hbFNpdGVEZWZhdWx0cyA9IG5ldyBTaXRlRGVmYXVsdHMoY29waWVkU2l0ZURlZmF1bHRzLCAhIXNoYXJlZExpbmVTaXRlSWRzKTtcclxuICAgIC8vICAgfSkpO1xyXG4gICAgLy8gICAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRWb2ljZU1haWxVc2VyVGVtcGxhdGVzKHNpdGVJZDogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5WTV9VU0VSX1RFTVBMQVRFUy5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHNpdGVJZCkpLCBudWxsLCB0cnVlKVxyXG4gICAgICAucGlwZShtYXAoKHRlbXBsYXRlczogc3RyaW5nW10pID0+IHtcclxuICAgICAgICAvLyB0aGlzLnZvaWNlTWFpbFRlbXBsYXRlcyA9IHRlbXBsYXRlcztcclxuICAgICAgfSkpO1xyXG4gICAgLy8gICAucGlwZSh0aGlzLmhhbmRsZUVycm9yKGZhbHNlLCB0cnVlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZmV0Y2hBbGxVc2VyVGVtcGxhdGVzKHNpdGVJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxVc2VyVGVtcGxhdGVJbnRlcmZhY2VbXT4ge1xyXG4gICAgY29uc3QgcGFyYW1zID0ge1xyXG4gICAgICBzaXRlSWQ6IHNpdGVJZCxcclxuICAgIH07XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5VU0VSX1RFTVBMQVRFU19VUExPQURfTElTVCwgcGFyYW1zKVxyXG4gICAgICAucGlwZSh0YXAoKHJlc3VsdDogVXNlclRlbXBsYXRlSW50ZXJmYWNlW10pID0+IHtcclxuICAgICAgICB0aGlzLnRlbXBsYXRlc0xpc3RTdWJqZWN0JC5uZXh0KHJlc3VsdCk7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRVc2VyVGVtcGxhdGVUb2tlbihpZDogc3RyaW5nLCBjdXN0b21lcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuVVNFUl9URU1QTEFURV9UT0tFTi5yZXBsYWNlKCc6Y3VzdG9tZXJJZCcsIGN1c3RvbWVySWQpLnJlcGxhY2UoJzppZCcsIGlkKSlcclxuICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IoZmFsc2UsIHRydWUpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRBdmFpbGFibGVEbkluUmFuZ2VzKHNpdGVJZDogc3RyaW5nLCBwYXJhbXM6IGFueSk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5BVkFJTEFCTEVfRE5fSU5fUkFOR0VTLnJlcGxhY2UoJzpzaXRlSWQnLCBzaXRlSWQpLCBwYXJhbXMpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldExkYXBVc2VycyhzaXRlSWQ6IHN0cmluZywgcGFyYW1zOiBhbnkpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuTERBUF9VU0VSUy5yZXBsYWNlKCc6c2l0ZUlkJywgc2l0ZUlkKSwgcGFyYW1zKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjaGVja1VzZXJJZEV4aXN0aW5nKHNpdGVJZDogc3RyaW5nLCB1c2VySWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5VU0VSX0NIRUNLX0lEX0VYSVNUSU5HLnJlcGxhY2UoJzpzaXRlSWQnLCBzaXRlSWQpLnJlcGxhY2UoJzp1c2VySWQnLCB1c2VySWQpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzYXZlVGVtcGxhdGVVc2VyKHVzZXI6IGFueSwgdGVtcGxhdGVJZDogc3RyaW5nLCBzaXRlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnBvc3QoQVBJLkNSRUFURV9ORVdfVVNFUl9GUk9NX1RFTVBMQVRFLCB1c2VyLCB7IHNpdGVJZDogc2l0ZUlkLCB0ZW1wbGF0ZUlkOiB0ZW1wbGF0ZUlkIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERldmljZURlZmF1bHRzKHNpdGVJZDogc3RyaW5nLCBkZXZpY2VUeXBlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERldmljZURlZmF1bHRzSW50ZXJmYWNlPiB7XHJcbiAgICBjb25zdCBlbmNvZGVkVHlwZSA9IGVuY29kZVVSSUNvbXBvbmVudChkZXZpY2VUeXBlKTtcclxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goXHJcbiAgICAgIEFQSS5ERVZJQ0VfREVGQVVMVFMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCkucmVwbGFjZSgnOmRldmljZVR5cGUnLCBlbmNvZGVkVHlwZSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -16,4 +16,4 @@ export const getSavableData = (model, exclude) => {
|
|
|
16
16
|
return result;
|
|
17
17
|
}, {});
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvc2hhcmVkL3NlcnZpY2VzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQVUsRUFBRSxPQUF1QixFQUFFLEVBQUU7SUFDcEUsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1FBQzdCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDcEU7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFXLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDeEMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7U0FDcEU7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQzNDO2FBQU07WUFDTCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGdldFNhdmFibGVEYXRhID0gKG1vZGVsOiBhbnksIGV4Y2x1ZGU/OiBBcnJheTxzdHJpbmc+
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvc2hhcmVkL3NlcnZpY2VzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLEtBQVUsRUFBRSxPQUF1QixFQUFFLEVBQUU7SUFDcEUsSUFBSSxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1FBQzdCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7S0FDcEU7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFXLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDeEMsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUM7U0FDcEU7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRTtZQUNwRSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQzNDO2FBQU07WUFDTCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGdldFNhdmFibGVEYXRhID0gKG1vZGVsOiBhbnksIGV4Y2x1ZGU/OiBBcnJheTxzdHJpbmc+KSA9PiB7XHJcbiAgbGV0IHJlc3VsdCA9IE9iamVjdC5rZXlzKG1vZGVsKTtcclxuICBpZiAoZXhjbHVkZSAmJiBleGNsdWRlLmxlbmd0aCkge1xyXG4gICAgcmVzdWx0ID0gcmVzdWx0LmZpbHRlcihrZXkgPT4gIWV4Y2x1ZGUuc29tZShpdGVtID0+IGl0ZW0gPT09IGtleSkpO1xyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0LnJlZHVjZSgocmVzdWx0OiBhbnksIGtleSkgPT4ge1xyXG4gICAgaWYgKG1vZGVsW2tleV0gaW5zdGFuY2VvZiBBcnJheSAmJiBtb2RlbFtrZXldLmxlbmd0aCAmJiBtb2RlbFtrZXldWzBdLmdldFNhdmFibGVEYXRhKSB7XHJcbiAgICAgIHJlc3VsdFtrZXldID0gbW9kZWxba2V5XS5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbS5nZXRTYXZhYmxlRGF0YSgpKTtcclxuICAgIH0gZWxzZSBpZiAobW9kZWxba2V5XSBpbnN0YW5jZW9mIE9iamVjdCAmJiBtb2RlbFtrZXldLmdldFNhdmFibGVEYXRhKSB7XHJcbiAgICAgIHJlc3VsdFtrZXldID0gbW9kZWxba2V5XS5nZXRTYXZhYmxlRGF0YSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmVzdWx0W2tleV0gPSBtb2RlbFtrZXldO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9LCB7fSk7XHJcbn07Il19
|
|
@@ -6,9 +6,9 @@ export class AppLoaderComponent {
|
|
|
6
6
|
}
|
|
7
7
|
}
|
|
8
8
|
AppLoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AppLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
-
AppLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AppLoaderComponent, selector: "app-loader", ngImport: i0, template: "<div class=\"overlay\">\n <mat-progress-spinner\n class=\"page-spinner\"\n mode=\"indeterminate\"\n [diameter]=\"70\"\n strokeWidth=\"3\"></mat-progress-spinner>\n</div>\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
9
|
+
AppLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AppLoaderComponent, selector: "app-loader", ngImport: i0, template: "<div class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "component", type: i1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AppLoaderComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
|
-
args: [{ selector: 'app-loader', encapsulation: ViewEncapsulation.None, template: "<div class=\"overlay\">\n <mat-progress-spinner\n class=\"page-spinner\"\n mode=\"indeterminate\"\n [diameter]=\"70\"\n strokeWidth=\"3\"></mat-progress-spinner>\n</div>\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"] }]
|
|
12
|
+
args: [{ selector: 'app-loader', encapsulation: ViewEncapsulation.None, template: "<div class=\"overlay\">\r\n <mat-progress-spinner\r\n class=\"page-spinner\"\r\n mode=\"indeterminate\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"></mat-progress-spinner>\r\n</div>\r\n", styles: [".overlay{position:fixed;width:100%;height:100%;inset:0;background-color:#fff3;z-index:200;justify-content:center;align-items:center}\n"] }]
|
|
13
13
|
}], ctorParameters: function () { return []; } });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWxvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9hcHAtbG9hZGVyL2FwcC1sb2FkZXIudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvYXBwLWxvYWRlci9hcHAtbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVE3RCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCO0lBQ0EsQ0FBQzs7Z0hBRlUsa0JBQWtCO29HQUFsQixrQkFBa0Isa0RDUi9CLHdNQU9BOzRGRENhLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1sb2FkZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHAtbG9hZGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hcHAtbG9hZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcExvYWRlckNvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwib3ZlcmxheVwiPlxyXG4gIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lclxyXG4gICAgY2xhc3M9XCJwYWdlLXNwaW5uZXJcIlxyXG4gICAgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxyXG4gICAgW2RpYW1ldGVyXT1cIjcwXCJcclxuICAgIHN0cm9rZVdpZHRoPVwiM1wiPjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -144,4 +144,4 @@ export function buildSavableEndUser(endUser, lines, devices, deviceProfiles, for
|
|
|
144
144
|
}
|
|
145
145
|
return user;
|
|
146
146
|
}
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtc2F2YWJsZS1lbmQtdXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9idWlsZC1zYXZhYmxlLWVuZC11c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQzlCLEtBQUssRUFBRSxPQUFPO0lBQ2QsT0FBTyxFQUFFLFNBQVM7SUFDbEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsT0FBTyxFQUFFLFNBQVM7Q0FDWixDQUFDO0FBb0JYLFNBQVMsU0FBUyxDQUFJLEtBQVE7SUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQU0sQ0FBQztBQUNsRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFjO0lBQ3RDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssTUFBTSxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBQ0QsSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLEtBQUssS0FBSyxPQUFPLEVBQUU7UUFDdEMsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsS0FBYztJQUNwQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDaEIsT0FBTyxNQUFNLENBQUM7S0FDakI7SUFDRCxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUU7UUFDakIsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FB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XG4gICAgRGV2aWNlSW50ZXJmYWNlLFxuICAgIEVuZFVzZXJJbnRlcmZhY2UsXG4gICAgTGluZUFzc29jaWF0aW9uLFxuICAgIExpbmVJbnRlcmZhY2UsXG4gICAgVXNlckRldGFpbHNGb3JtLFxufSBmcm9tICcuLi9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMnO1xuXG5leHBvcnQgY29uc3QgRU5USVRZX0NIQU5HRV9UWVBFID0ge1xuICAgIEFEREVEOiAnYWRkZWQnLFxuICAgIFVQREFURUQ6ICd1cGRhdGVkJyxcbiAgICBFWElTVElORzogJ2V4aXN0aW5nJyxcbiAgICBSRU1PVkVEOiAncmVtb3ZlZCcsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgaW50ZXJmYWNlIENhbGxJbmZvRGlzcGxheVBheWxvYWQge1xuICAgIGNhbGxlck5hbWU/OiBzdHJpbmcgfCBudWxsO1xuICAgIGNhbGxlck51bWJlcj86IHN0cmluZyB8IG51bGw7XG4gICAgcmVkaXJlY3RlZE51bWJlcj86IHN0cmluZyB8IG51bGw7XG4gICAgZGlhbGVkTnVtYmVyPzogc3RyaW5nIHwgbnVsbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaWRQYXR0ZXJuUGF5bG9hZCB7XG4gICAgY2FsbGVkUGFydHlUcmFuc2Zvcm1hdGlvbk1hc2s/OiBzdHJpbmcgfCBudWxsO1xuICAgIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsO1xuICAgIFtrZXk6IHN0cmluZ106IHVua25vd247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRTYXZhYmxlRW5kVXNlck9wdGlvbnMge1xuICAgIHJlc29sdmVEZXZpY2VOYW1lPzogKGluZGV4OiBudW1iZXIsIGRldmljZTogRGV2aWNlSW50ZXJmYWNlKSA9PiBzdHJpbmc7XG4gICAgcmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPzogKGluZGV4OiBudW1iZXIsIGRldmljZTogRGV2aWNlSW50ZXJmYWNlKSA9PiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIGRlZXBDbG9uZTxUPih2YWx1ZTogVCk6IFQge1xuICAgIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHZhbHVlKSkgYXMgVDtcbn1cblxuZnVuY3Rpb24gdG9BcGlCb29sZWFuU3RyaW5nKHZhbHVlOiB1bmtub3duKTogc3RyaW5nIHtcbiAgICBpZiAodmFsdWUgPT09IHRydWUgfHwgdmFsdWUgPT09ICd0cnVlJykge1xuICAgICAgICByZXR1cm4gJ3RydWUnO1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IGZhbHNlIHx8IHZhbHVlID09PSAnZmFsc2UnKSB7XG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSA9PT0gJycgPyAnJyA6IFN0cmluZyh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHRvQXBpU3RyaW5nVmFsdWUodmFsdWU6IHVua25vd24pOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gdHJ1ZSkge1xuICAgICAgICByZXR1cm4gJ3RydWUnO1xuICAgIH1cbiAgICBpZiAodmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xuICAgIH1cbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCA/ICcnIDogU3RyaW5nKHZhbHVlKTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplQ2FsbEluZm9EaXNwbGF5KFxuICAgIGNhbGxJbmZvRGlzcGxheTogdW5rbm93blxuKTogQ2FsbEluZm9EaXNwbGF5UGF5bG9hZCB8IG51bGwge1xuICAgIGlmICghY2FsbEluZm9EaXNwbGF5KSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIGNhbGxJbmZvRGlzcGxheSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UoY2FsbEluZm9EaXNwbGF5KTtcbiAgICAgICAgICAgIHJldHVybiBub3JtYWxpemVDYWxsSW5mb0Rpc3BsYXkocGFyc2VkKTtcbiAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZiAodHlwZW9mIGNhbGxJbmZvRGlzcGxheSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHNvdXJjZSA9IGNhbGxJbmZvRGlzcGxheSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICByZXR1cm4ge1xuICAgICAgICBjYWxsZXJOYW1lOiBzb3VyY2VbJ2NhbGxlck5hbWUnXSAhPSBudWxsID8gdG9BcGlCb29sZWFuU3RyaW5nKHNvdXJjZVsnY2FsbGVyTmFtZSddKSA6IG51bGwsXG4gICAgICAgIGNhbGxlck51bWJlcjogc291cmNlWydjYWxsZXJOdW1iZXInXSAhPSBudWxsID8gdG9BcGlCb29sZWFuU3RyaW5nKHNvdXJjZVsnY2FsbGVyTnVtYmVyJ10pIDogbnVsbCxcbiAgICAgICAgcmVkaXJlY3RlZE51bWJlcjogc291cmNlWydyZWRpcmVjdGVkTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ3JlZGlyZWN0ZWROdW1iZXInXSkgOiBudWxsLFxuICAgICAgICBkaWFsZWROdW1iZXI6IHNvdXJjZVsnZGlhbGVkTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ2RpYWxlZE51bWJlciddKSA6IG51bGwsXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplRGlkUGF0dGVybihcbiAgICBkaWRQYXR0ZXJuOiB1bmtub3duLFxuICAgIGxpbmU/OiBMaW5lSW50ZXJmYWNlLFxuICAgIGRpcmVjdG9yeU51bWJlcj86IHN0cmluZ1xuKTogRGlkUGF0dGVyblBheWxvYWQgfCBudWxsIHtcbiAgICBpZiAoZGlkUGF0dGVybiAmJiB0eXBlb2YgZGlkUGF0dGVybiA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgcmV0dXJuIGRpZFBhdHRlcm4gYXMgRGlkUGF0dGVyblBheWxvYWQ7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgZGlkUGF0dGVybiA9PT0gJ3N0cmluZycgJiYgZGlkUGF0dGVybi50cmltKCkpIHtcbiAgICAgICAgcmV0dXJuIHsgY2FsbGVkUGFydHlUcmFuc2Zvcm1hdGlvbk1hc2s6IGRpZFBhdHRlcm4gfTtcbiAgICB9XG4gICAgY29uc3QgZG4gPSBkaXJlY3RvcnlOdW1iZXIgfHwgbGluZT8uZGlyZWN0b3J5TnVtYmVyPy5kaXJlY3RvcnlOdW1iZXI7XG4gICAgaWYgKGRuKSB7XG4gICAgICAgIHJldHVybiB7IGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrOiBkbiB9O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuZnVuY3Rpb24gbm9ybWFsaXplRGlyZWN0b3J5TnVtYmVyKFxuICAgIGRpcmVjdG9yeU51bWJlcjogTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXVxuKTogTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXSB7XG4gICAgY29uc3QgeyBkaXNwbGF5VmFsdWU6IF9kaXNwbGF5VmFsdWUsIC4uLnJlc3QgfSA9IGRpcmVjdG9yeU51bWJlcjtcbiAgICByZXR1cm4ge1xuICAgICAgICBkaXJlY3RvcnlOdW1iZXI6IHJlc3QuZGlyZWN0b3J5TnVtYmVyID8/ICcnLFxuICAgICAgICByb3V0ZVBhcnRpdGlvbk5hbWU6IHJlc3Qucm91dGVQYXJ0aXRpb25OYW1lID8/ICcnLFxuICAgICAgICB0ZW1wbGF0ZURpcmVjdG9yeU51bWJlcjogcmVzdC50ZW1wbGF0ZURpcmVjdG9yeU51bWJlcixcbiAgICAgICAgcGtpZDogcmVzdC5wa2lkIHx8IG51bGwsXG4gICAgICAgIGRuVHlwZTogcmVzdC5kblR5cGUgfHwgbnVsbCxcbiAgICAgICAgc3ViVHlwZTogcmVzdC5zdWJUeXBlID8/IG51bGwsXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gcHJlcGFyZUxpbmVBc3NvY2lhdGlvbihcbiAgICBhc3NvY2lhdGlvbjogTGluZUFzc29jaWF0aW9uLFxuICAgIGxpbmU/OiBMaW5lSW50ZXJmYWNlXG4pOiBMaW5lQXNzb2NpYXRpb24ge1xuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGFzc29jaWF0aW9uKTtcbiAgICBjb25zdCBsaW5lRG4gPSBsaW5lPy5kaXJlY3RvcnlOdW1iZXI7XG5cbiAgICBpZiAobGluZURuKSB7XG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IHtcbiAgICAgICAgICAgIC4uLnByZXBhcmVkLmRpcmVjdG9yeU51bWJlcixcbiAgICAgICAgICAgIGRpcmVjdG9yeU51bWJlcjogbGluZURuLmRpcmVjdG9yeU51bWJlciB8fCAnJyxcbiAgICAgICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZTogbGluZURuLnJvdXRlUGFydGl0aW9uTmFtZSB8fCAnJyxcbiAgICAgICAgICAgIHRlbXBsYXRlRGlyZWN0b3J5TnVtYmVyOlxuICAgICAgICAgICAgICAgIGxpbmVEbi50ZW1wbGF0ZURpcmVjdG9yeU51bWJlciA/P1xuICAgICAgICAgICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlcj8udGVtcGxhdGVEaXJlY3RvcnlOdW1iZXIsXG4gICAgICAgIH0gYXMgTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXTtcbiAgICB9XG5cbiAgICBwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIgPSBub3JtYWxpemVEaXJlY3RvcnlOdW1iZXIocHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyKTtcbiAgICBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlID0gcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSB8fCBFTlRJVFlfQ0hBTkdFX1RZUEUuQURERUQ7XG4gICAgcHJlcGFyZWQubG9nTWlzc2VkQ2FsbCA9IHRvQXBpQm9vbGVhblN0cmluZyhwcmVwYXJlZC5sb2dNaXNzZWRDYWxsKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnbG9nTWlzc2VkQ2FsbCddIHx8ICdmYWxzZSc7XG4gICAgcHJlcGFyZWQuY2FsbEluZm9EaXNwbGF5ID0gbm9ybWFsaXplQ2FsbEluZm9EaXNwbGF5KHByZXBhcmVkLmNhbGxJbmZvRGlzcGxheSkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ2NhbGxJbmZvRGlzcGxheSddO1xuICAgIHByZXBhcmVkLmRpZFBhdHRlcm4gPSBub3JtYWxpemVEaWRQYXR0ZXJuKFxuICAgICAgICBwcmVwYXJlZC5kaWRQYXR0ZXJuLFxuICAgICAgICBsaW5lLFxuICAgICAgICBwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXI/LmRpcmVjdG9yeU51bWJlclxuICAgICkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ2RpZFBhdHRlcm4nXTtcbiAgICBwcmVwYXJlZC52aXN1YWxNV0kgPSB0b0FwaVN0cmluZ1ZhbHVlKHByZXBhcmVkLnZpc3VhbE1XSSkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ3Zpc3VhbE1XSSddO1xuICAgIHByZXBhcmVkLmF1ZGlibGVNV0kgPSB0b0FwaVN0cmluZ1ZhbHVlKHByZXBhcmVkLmF1ZGlibGVNV0kpIGFzIHVua25vd24gYXMgTGluZUFzc29jaWF0aW9uWydhdWRpYmxlTVdJJ107XG4gICAgcHJlcGFyZWQuYXNzb2NpYXRlZCA9IHByZXBhcmVkLmFzc29jaWF0ZWQgPz8gdHJ1ZTtcblxuICAgIHJldHVybiBwcmVwYXJlZDtcbn1cblxuZnVuY3Rpb24gcHJlcGFyZUxpbmUobGluZTogTGluZUludGVyZmFjZSk6IExpbmVJbnRlcmZhY2Uge1xuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGxpbmUpO1xuICAgIHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgPSBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlIHx8IEVOVElUWV9DSEFOR0VfVFlQRS5BRERFRDtcbiAgICBpZiAocHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyKSB7XG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIpO1xuICAgIH1cbiAgICByZXR1cm4gcHJlcGFyZWQ7XG59XG5cbmZ1bmN0aW9uIHN5bmNEZXZpY2VMaW5lQXNzb2NpYXRpb25zKGRldmljZTogRGV2aWNlSW50ZXJmYWNlLCBsaW5lczogTGluZUludGVyZmFjZVtdKTogdm9pZCB7XG4gICAgZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgPSAoZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgfHwgW10pLm1hcCgoYXNzb2NpYXRpb24sIGluZGV4KSA9PlxuICAgICAgICBwcmVwYXJlTGluZUFzc29jaWF0aW9uKGFzc29jaWF0aW9uLCBsaW5lc1tpbmRleF0pXG4gICAgKTtcbn1cblxuZnVuY3Rpb24gcHJlcGFyZURldmljZUZvclNhdmUoXG4gICAgZGV2aWNlOiBEZXZpY2VJbnRlcmZhY2UsXG4gICAgdXNlcklkOiBzdHJpbmcsXG4gICAgbGluZXM6IExpbmVJbnRlcmZhY2VbXSxcbiAgICBkZXZpY2VOYW1lOiBzdHJpbmdcbik6IERldmljZUludGVyZmFjZSB7XG4gICAgY29uc3QgcHJlcGFyZWQgPSBkZWVwQ2xvbmUoZGV2aWNlKTtcbiAgICBjb25zdCByZXNvbHZlZE5hbWUgPSBkZXZpY2VOYW1lLnRyaW0oKTtcblxuICAgIHByZXBhcmVkLm5hbWUgPSByZXNvbHZlZE5hbWU7XG4gICAgcHJlcGFyZWQubmV3TmFtZSA9IHJlc29sdmVkTmFtZTtcbiAgICBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlID0gcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSB8fCBFTlRJVFlfQ0hBTkdFX1RZUEUuQURERUQ7XG4gICAgcHJlcGFyZWQuY3JlYXRlRGV2aWNlTW9kZSA9IHByZXBhcmVkLmNyZWF0ZURldmljZU1vZGUgPz8gZmFsc2U7XG5cbiAgICBpZiAocHJlcGFyZWQuZXh0cmFPcHRpb25zKSB7XG4gICAgICAgIHByZXBhcmVkLmV4dHJhT3B0aW9ucy5tb2JpbGl0eVVzZXJJZCA9IHVzZXJJZDtcbiAgICB9XG5cbiAgICBzeW5jRGV2aWNlTGluZUFzc29jaWF0aW9ucyhwcmVwYXJlZCwgbGluZXMpO1xuICAgIHJldHVybiBwcmVwYXJlZDtcbn1cblxuZnVuY3Rpb24gcmVzb2x2ZVByaW1hcnlMaW5lUmVmZXJlbmNlKHVzZXI6IEVuZFVzZXJJbnRlcmZhY2UpOiB1bmtub3duIHwgbnVsbCB7XG4gICAgY29uc3QgZmlyc3REZXZpY2VBc3NvY2lhdGlvbiA9IHVzZXIuZGV2aWNlcz8uWzBdPy5saW5lQXNzb2NpYXRpb25zPy5bMF0/LmRpcmVjdG9yeU51bWJlcjtcbiAgICBpZiAoZmlyc3REZXZpY2VBc3NvY2lhdGlvbikge1xuICAgICAgICByZXR1cm4gZmlyc3REZXZpY2VBc3NvY2lhdGlvbjtcbiAgICB9XG4gICAgY29uc3QgZmlyc3RMaW5lRG4gPSB1c2VyLmxpbmVzPy5bMF0/LmRpcmVjdG9yeU51bWJlcjtcbiAgICByZXR1cm4gZmlyc3RMaW5lRG4gPz8gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkU2F2YWJsZUVuZFVzZXIoXG4gICAgZW5kVXNlcjogRW5kVXNlckludGVyZmFjZSxcbiAgICBsaW5lczogTGluZUludGVyZmFjZVtdLFxuICAgIGRldmljZXM6IERldmljZUludGVyZmFjZVtdLFxuICAgIGRldmljZVByb2ZpbGVzOiBEZXZpY2VJbnRlcmZhY2VbXSxcbiAgICBmb3JtOiBVc2VyRGV0YWlsc0Zvcm0sXG4gICAgb3B0aW9uczogQnVpbGRTYXZhYmxlRW5kVXNlck9wdGlvbnMgPSB7fVxuKTogRW5kVXNlckludGVyZmFjZSB7XG4gICAgY29uc3QgdXNlciA9IGRlZXBDbG9uZShlbmRVc2VyKTtcblxuICAgIHVzZXIudXNlcmlkID0gZm9ybS51c2VySWQgfHwgdXNlci51c2VyaWQgfHwgJyc7XG4gICAgdXNlci5maXJzdE5hbWUgPSBmb3JtLmZpcnN0TmFtZSB8fCB1c2VyLmZpcnN0TmFtZSB8fCAnJztcbiAgICB1c2VyLmxhc3ROYW1lID0gZm9ybS5sYXN0TmFtZSB8fCB1c2VyLmxhc3ROYW1lIHx8ICcnO1xuICAgIHVzZXIuZW1haWwgPSBmb3JtLmVtYWlsIHx8IHVzZXIuZW1haWwgfHwgJyc7XG4gICAgdXNlci5jcmVhdGVVc2VyTW9kZSA9IGZhbHNlO1xuXG4gICAgdXNlci5saW5lcyA9IChsaW5lcyB8fCBbXSkubWFwKGxpbmUgPT4gcHJlcGFyZUxpbmUobGluZSkpO1xuICAgIHVzZXIuZGV2aWNlcyA9IChkZXZpY2VzIHx8IFtdKS5tYXAoKGRldmljZSwgaW5kZXgpID0+XG4gICAgICAgIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxuICAgICAgICAgICAgZGV2aWNlLFxuICAgICAgICAgICAgdXNlci51c2VyaWQgfHwgJycsXG4gICAgICAgICAgICB1c2VyLmxpbmVzLFxuICAgICAgICAgICAgb3B0aW9ucy5yZXNvbHZlRGV2aWNlTmFtZT8uKGluZGV4LCBkZXZpY2UpID8/IGRldmljZS5uYW1lID8/IGRldmljZS5uZXdOYW1lID8/ICcnXG4gICAgICAgIClcbiAgICApO1xuICAgIHVzZXIuZGV2aWNlUHJvZmlsZXMgPSAoZGV2aWNlUHJvZmlsZXMgfHwgW10pLm1hcCgocHJvZmlsZSwgaW5kZXgpID0+XG4gICAgICAgIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxuICAgICAgICAgICAgcHJvZmlsZSxcbiAgICAgICAgICAgIHVzZXIudXNlcmlkIHx8ICcnLFxuICAgICAgICAgICAgdXNlci5saW5lcyxcbiAgICAgICAgICAgIG9wdGlvbnMucmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPy4oaW5kZXgsIHByb2ZpbGUpID8/IHByb2ZpbGUubmFtZSA/PyBwcm9maWxlLm5ld05hbWUgPz8gJydcbiAgICAgICAgKVxuICAgICk7XG5cbiAgICB1c2VyLnByaW1hcnlMaW5lUmVmZXJlbmNlID0gcmVzb2x2ZVByaW1hcnlMaW5lUmVmZXJlbmNlKHVzZXIpO1xuXG4gICAgY29uc3Qgc25yID0gdXNlci5zaW5nbGVOdW1iZXJSZWFjaCBhcyB7IHJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWU/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIGlmIChzbnIgJiYgIXNuci5yZW1vdGVEZXN0aW5hdGlvblByb2ZpbGVOYW1lKSB7XG4gICAgICAgIHVzZXIuc2luZ2xlTnVtYmVyUmVhY2ggPSBudWxsIGFzIEVuZFVzZXJJbnRlcmZhY2VbJ3NpbmdsZU51bWJlclJlYWNoJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIHVzZXI7XG59XG4iXX0=
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtc2F2YWJsZS1lbmQtdXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9idWlsZC1zYXZhYmxlLWVuZC11c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQzlCLEtBQUssRUFBRSxPQUFPO0lBQ2QsT0FBTyxFQUFFLFNBQVM7SUFDbEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsT0FBTyxFQUFFLFNBQVM7Q0FDWixDQUFDO0FBb0JYLFNBQVMsU0FBUyxDQUFJLEtBQVE7SUFDMUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQU0sQ0FBQztBQUNsRCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFjO0lBQ3RDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssTUFBTSxFQUFFO1FBQ3BDLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBQ0QsSUFBSSxLQUFLLEtBQUssS0FBSyxJQUFJLEtBQUssS0FBSyxPQUFPLEVBQUU7UUFDdEMsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsS0FBYztJQUNwQyxJQUFJLEtBQUssS0FBSyxJQUFJLEVBQUU7UUFDaEIsT0FBTyxNQUFNLENBQUM7S0FDakI7SUFDRCxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUU7UUFDakIsT0FBTyxPQUFPLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FB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XHJcbiAgICBEZXZpY2VJbnRlcmZhY2UsXHJcbiAgICBFbmRVc2VySW50ZXJmYWNlLFxyXG4gICAgTGluZUFzc29jaWF0aW9uLFxyXG4gICAgTGluZUludGVyZmFjZSxcclxuICAgIFVzZXJEZXRhaWxzRm9ybSxcclxufSBmcm9tICcuLi9pbnRlcmZhY2VzL3VzZXItY3JlYXRpb24td2l6YXJkLmludGVyZmFjZXMnO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVOVElUWV9DSEFOR0VfVFlQRSA9IHtcclxuICAgIEFEREVEOiAnYWRkZWQnLFxyXG4gICAgVVBEQVRFRDogJ3VwZGF0ZWQnLFxyXG4gICAgRVhJU1RJTkc6ICdleGlzdGluZycsXHJcbiAgICBSRU1PVkVEOiAncmVtb3ZlZCcsXHJcbn0gYXMgY29uc3Q7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENhbGxJbmZvRGlzcGxheVBheWxvYWQge1xyXG4gICAgY2FsbGVyTmFtZT86IHN0cmluZyB8IG51bGw7XHJcbiAgICBjYWxsZXJOdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgcmVkaXJlY3RlZE51bWJlcj86IHN0cmluZyB8IG51bGw7XHJcbiAgICBkaWFsZWROdW1iZXI/OiBzdHJpbmcgfCBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpZFBhdHRlcm5QYXlsb2FkIHtcclxuICAgIGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIHBhdHRlcm4/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCdWlsZFNhdmFibGVFbmRVc2VyT3B0aW9ucyB7XHJcbiAgICByZXNvbHZlRGV2aWNlTmFtZT86IChpbmRleDogbnVtYmVyLCBkZXZpY2U6IERldmljZUludGVyZmFjZSkgPT4gc3RyaW5nO1xyXG4gICAgcmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPzogKGluZGV4OiBudW1iZXIsIGRldmljZTogRGV2aWNlSW50ZXJmYWNlKSA9PiBzdHJpbmc7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGRlZXBDbG9uZTxUPih2YWx1ZTogVCk6IFQge1xyXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodmFsdWUpKSBhcyBUO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b0FwaUJvb2xlYW5TdHJpbmcodmFsdWU6IHVua25vd24pOiBzdHJpbmcge1xyXG4gICAgaWYgKHZhbHVlID09PSB0cnVlIHx8IHZhbHVlID09PSAndHJ1ZScpIHtcclxuICAgICAgICByZXR1cm4gJ3RydWUnO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbHVlID09PSBmYWxzZSB8fCB2YWx1ZSA9PT0gJ2ZhbHNlJykge1xyXG4gICAgICAgIHJldHVybiAnZmFsc2UnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT09ICcnID8gJycgOiBTdHJpbmcodmFsdWUpO1xyXG59XHJcblxyXG5mdW5jdGlvbiB0b0FwaVN0cmluZ1ZhbHVlKHZhbHVlOiB1bmtub3duKTogc3RyaW5nIHtcclxuICAgIGlmICh2YWx1ZSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIHJldHVybiAndHJ1ZSc7XHJcbiAgICB9XHJcbiAgICBpZiAodmFsdWUgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgcmV0dXJuICdmYWxzZSc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsdWUgPT0gbnVsbCA/ICcnIDogU3RyaW5nKHZhbHVlKTtcclxufVxyXG5cclxuZnVuY3Rpb24gbm9ybWFsaXplQ2FsbEluZm9EaXNwbGF5KFxyXG4gICAgY2FsbEluZm9EaXNwbGF5OiB1bmtub3duXHJcbik6IENhbGxJbmZvRGlzcGxheVBheWxvYWQgfCBudWxsIHtcclxuICAgIGlmICghY2FsbEluZm9EaXNwbGF5KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIGNhbGxJbmZvRGlzcGxheSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKGNhbGxJbmZvRGlzcGxheSk7XHJcbiAgICAgICAgICAgIHJldHVybiBub3JtYWxpemVDYWxsSW5mb0Rpc3BsYXkocGFyc2VkKTtcclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBjYWxsSW5mb0Rpc3BsYXkgIT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBjb25zdCBzb3VyY2UgPSBjYWxsSW5mb0Rpc3BsYXkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGNhbGxlck5hbWU6IHNvdXJjZVsnY2FsbGVyTmFtZSddICE9IG51bGwgPyB0b0FwaUJvb2xlYW5TdHJpbmcoc291cmNlWydjYWxsZXJOYW1lJ10pIDogbnVsbCxcclxuICAgICAgICBjYWxsZXJOdW1iZXI6IHNvdXJjZVsnY2FsbGVyTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ2NhbGxlck51bWJlciddKSA6IG51bGwsXHJcbiAgICAgICAgcmVkaXJlY3RlZE51bWJlcjogc291cmNlWydyZWRpcmVjdGVkTnVtYmVyJ10gIT0gbnVsbCA/IHRvQXBpQm9vbGVhblN0cmluZyhzb3VyY2VbJ3JlZGlyZWN0ZWROdW1iZXInXSkgOiBudWxsLFxyXG4gICAgICAgIGRpYWxlZE51bWJlcjogc291cmNlWydkaWFsZWROdW1iZXInXSAhPSBudWxsID8gdG9BcGlCb29sZWFuU3RyaW5nKHNvdXJjZVsnZGlhbGVkTnVtYmVyJ10pIDogbnVsbCxcclxuICAgIH07XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG5vcm1hbGl6ZURpZFBhdHRlcm4oXHJcbiAgICBkaWRQYXR0ZXJuOiB1bmtub3duLFxyXG4gICAgbGluZT86IExpbmVJbnRlcmZhY2UsXHJcbiAgICBkaXJlY3RvcnlOdW1iZXI/OiBzdHJpbmdcclxuKTogRGlkUGF0dGVyblBheWxvYWQgfCBudWxsIHtcclxuICAgIGlmIChkaWRQYXR0ZXJuICYmIHR5cGVvZiBkaWRQYXR0ZXJuID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgIHJldHVybiBkaWRQYXR0ZXJuIGFzIERpZFBhdHRlcm5QYXlsb2FkO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBkaWRQYXR0ZXJuID09PSAnc3RyaW5nJyAmJiBkaWRQYXR0ZXJuLnRyaW0oKSkge1xyXG4gICAgICAgIHJldHVybiB7IGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrOiBkaWRQYXR0ZXJuIH07XHJcbiAgICB9XHJcbiAgICBjb25zdCBkbiA9IGRpcmVjdG9yeU51bWJlciB8fCBsaW5lPy5kaXJlY3RvcnlOdW1iZXI/LmRpcmVjdG9yeU51bWJlcjtcclxuICAgIGlmIChkbikge1xyXG4gICAgICAgIHJldHVybiB7IGNhbGxlZFBhcnR5VHJhbnNmb3JtYXRpb25NYXNrOiBkbiB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihcclxuICAgIGRpcmVjdG9yeU51bWJlcjogTGluZUFzc29jaWF0aW9uWydkaXJlY3RvcnlOdW1iZXInXVxyXG4pOiBMaW5lQXNzb2NpYXRpb25bJ2RpcmVjdG9yeU51bWJlciddIHtcclxuICAgIGNvbnN0IHsgZGlzcGxheVZhbHVlOiBfZGlzcGxheVZhbHVlLCAuLi5yZXN0IH0gPSBkaXJlY3RvcnlOdW1iZXI7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGRpcmVjdG9yeU51bWJlcjogcmVzdC5kaXJlY3RvcnlOdW1iZXIgPz8gJycsXHJcbiAgICAgICAgcm91dGVQYXJ0aXRpb25OYW1lOiByZXN0LnJvdXRlUGFydGl0aW9uTmFtZSA/PyAnJyxcclxuICAgICAgICB0ZW1wbGF0ZURpcmVjdG9yeU51bWJlcjogcmVzdC50ZW1wbGF0ZURpcmVjdG9yeU51bWJlcixcclxuICAgICAgICBwa2lkOiByZXN0LnBraWQgfHwgbnVsbCxcclxuICAgICAgICBkblR5cGU6IHJlc3QuZG5UeXBlIHx8IG51bGwsXHJcbiAgICAgICAgc3ViVHlwZTogcmVzdC5zdWJUeXBlID8/IG51bGwsXHJcbiAgICB9O1xyXG59XHJcblxyXG5mdW5jdGlvbiBwcmVwYXJlTGluZUFzc29jaWF0aW9uKFxyXG4gICAgYXNzb2NpYXRpb246IExpbmVBc3NvY2lhdGlvbixcclxuICAgIGxpbmU/OiBMaW5lSW50ZXJmYWNlXHJcbik6IExpbmVBc3NvY2lhdGlvbiB7XHJcbiAgICBjb25zdCBwcmVwYXJlZCA9IGRlZXBDbG9uZShhc3NvY2lhdGlvbik7XHJcbiAgICBjb25zdCBsaW5lRG4gPSBsaW5lPy5kaXJlY3RvcnlOdW1iZXI7XHJcblxyXG4gICAgaWYgKGxpbmVEbikge1xyXG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IHtcclxuICAgICAgICAgICAgLi4ucHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyLFxyXG4gICAgICAgICAgICBkaXJlY3RvcnlOdW1iZXI6IGxpbmVEbi5kaXJlY3RvcnlOdW1iZXIgfHwgJycsXHJcbiAgICAgICAgICAgIHJvdXRlUGFydGl0aW9uTmFtZTogbGluZURuLnJvdXRlUGFydGl0aW9uTmFtZSB8fCAnJyxcclxuICAgICAgICAgICAgdGVtcGxhdGVEaXJlY3RvcnlOdW1iZXI6XHJcbiAgICAgICAgICAgICAgICBsaW5lRG4udGVtcGxhdGVEaXJlY3RvcnlOdW1iZXIgPz9cclxuICAgICAgICAgICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlcj8udGVtcGxhdGVEaXJlY3RvcnlOdW1iZXIsXHJcbiAgICAgICAgfSBhcyBMaW5lQXNzb2NpYXRpb25bJ2RpcmVjdG9yeU51bWJlciddO1xyXG4gICAgfVxyXG5cclxuICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIpO1xyXG4gICAgcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSA9IHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgfHwgRU5USVRZX0NIQU5HRV9UWVBFLkFEREVEO1xyXG4gICAgcHJlcGFyZWQubG9nTWlzc2VkQ2FsbCA9IHRvQXBpQm9vbGVhblN0cmluZyhwcmVwYXJlZC5sb2dNaXNzZWRDYWxsKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnbG9nTWlzc2VkQ2FsbCddIHx8ICdmYWxzZSc7XHJcbiAgICBwcmVwYXJlZC5jYWxsSW5mb0Rpc3BsYXkgPSBub3JtYWxpemVDYWxsSW5mb0Rpc3BsYXkocHJlcGFyZWQuY2FsbEluZm9EaXNwbGF5KSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnY2FsbEluZm9EaXNwbGF5J107XHJcbiAgICBwcmVwYXJlZC5kaWRQYXR0ZXJuID0gbm9ybWFsaXplRGlkUGF0dGVybihcclxuICAgICAgICBwcmVwYXJlZC5kaWRQYXR0ZXJuLFxyXG4gICAgICAgIGxpbmUsXHJcbiAgICAgICAgcHJlcGFyZWQuZGlyZWN0b3J5TnVtYmVyPy5kaXJlY3RvcnlOdW1iZXJcclxuICAgICkgYXMgdW5rbm93biBhcyBMaW5lQXNzb2NpYXRpb25bJ2RpZFBhdHRlcm4nXTtcclxuICAgIHByZXBhcmVkLnZpc3VhbE1XSSA9IHRvQXBpU3RyaW5nVmFsdWUocHJlcGFyZWQudmlzdWFsTVdJKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsndmlzdWFsTVdJJ107XHJcbiAgICBwcmVwYXJlZC5hdWRpYmxlTVdJID0gdG9BcGlTdHJpbmdWYWx1ZShwcmVwYXJlZC5hdWRpYmxlTVdJKSBhcyB1bmtub3duIGFzIExpbmVBc3NvY2lhdGlvblsnYXVkaWJsZU1XSSddO1xyXG4gICAgcHJlcGFyZWQuYXNzb2NpYXRlZCA9IHByZXBhcmVkLmFzc29jaWF0ZWQgPz8gdHJ1ZTtcclxuXHJcbiAgICByZXR1cm4gcHJlcGFyZWQ7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHByZXBhcmVMaW5lKGxpbmU6IExpbmVJbnRlcmZhY2UpOiBMaW5lSW50ZXJmYWNlIHtcclxuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGxpbmUpO1xyXG4gICAgcHJlcGFyZWQuZW50aXR5Q2hhbmdlVHlwZSA9IHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgfHwgRU5USVRZX0NIQU5HRV9UWVBFLkFEREVEO1xyXG4gICAgaWYgKHByZXBhcmVkLmRpcmVjdG9yeU51bWJlcikge1xyXG4gICAgICAgIHByZXBhcmVkLmRpcmVjdG9yeU51bWJlciA9IG5vcm1hbGl6ZURpcmVjdG9yeU51bWJlcihwcmVwYXJlZC5kaXJlY3RvcnlOdW1iZXIpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHByZXBhcmVkO1xyXG59XHJcblxyXG5mdW5jdGlvbiBzeW5jRGV2aWNlTGluZUFzc29jaWF0aW9ucyhkZXZpY2U6IERldmljZUludGVyZmFjZSwgbGluZXM6IExpbmVJbnRlcmZhY2VbXSk6IHZvaWQge1xyXG4gICAgZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgPSAoZGV2aWNlLmxpbmVBc3NvY2lhdGlvbnMgfHwgW10pLm1hcCgoYXNzb2NpYXRpb24sIGluZGV4KSA9PlxyXG4gICAgICAgIHByZXBhcmVMaW5lQXNzb2NpYXRpb24oYXNzb2NpYXRpb24sIGxpbmVzW2luZGV4XSlcclxuICAgICk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxyXG4gICAgZGV2aWNlOiBEZXZpY2VJbnRlcmZhY2UsXHJcbiAgICB1c2VySWQ6IHN0cmluZyxcclxuICAgIGxpbmVzOiBMaW5lSW50ZXJmYWNlW10sXHJcbiAgICBkZXZpY2VOYW1lOiBzdHJpbmdcclxuKTogRGV2aWNlSW50ZXJmYWNlIHtcclxuICAgIGNvbnN0IHByZXBhcmVkID0gZGVlcENsb25lKGRldmljZSk7XHJcbiAgICBjb25zdCByZXNvbHZlZE5hbWUgPSBkZXZpY2VOYW1lLnRyaW0oKTtcclxuXHJcbiAgICBwcmVwYXJlZC5uYW1lID0gcmVzb2x2ZWROYW1lO1xyXG4gICAgcHJlcGFyZWQubmV3TmFtZSA9IHJlc29sdmVkTmFtZTtcclxuICAgIHByZXBhcmVkLmVudGl0eUNoYW5nZVR5cGUgPSBwcmVwYXJlZC5lbnRpdHlDaGFuZ2VUeXBlIHx8IEVOVElUWV9DSEFOR0VfVFlQRS5BRERFRDtcclxuICAgIHByZXBhcmVkLmNyZWF0ZURldmljZU1vZGUgPSBwcmVwYXJlZC5jcmVhdGVEZXZpY2VNb2RlID8/IGZhbHNlO1xyXG5cclxuICAgIGlmIChwcmVwYXJlZC5leHRyYU9wdGlvbnMpIHtcclxuICAgICAgICBwcmVwYXJlZC5leHRyYU9wdGlvbnMubW9iaWxpdHlVc2VySWQgPSB1c2VySWQ7XHJcbiAgICB9XHJcblxyXG4gICAgc3luY0RldmljZUxpbmVBc3NvY2lhdGlvbnMocHJlcGFyZWQsIGxpbmVzKTtcclxuICAgIHJldHVybiBwcmVwYXJlZDtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVzb2x2ZVByaW1hcnlMaW5lUmVmZXJlbmNlKHVzZXI6IEVuZFVzZXJJbnRlcmZhY2UpOiB1bmtub3duIHwgbnVsbCB7XHJcbiAgICBjb25zdCBmaXJzdERldmljZUFzc29jaWF0aW9uID0gdXNlci5kZXZpY2VzPy5bMF0/LmxpbmVBc3NvY2lhdGlvbnM/LlswXT8uZGlyZWN0b3J5TnVtYmVyO1xyXG4gICAgaWYgKGZpcnN0RGV2aWNlQXNzb2NpYXRpb24pIHtcclxuICAgICAgICByZXR1cm4gZmlyc3REZXZpY2VBc3NvY2lhdGlvbjtcclxuICAgIH1cclxuICAgIGNvbnN0IGZpcnN0TGluZURuID0gdXNlci5saW5lcz8uWzBdPy5kaXJlY3RvcnlOdW1iZXI7XHJcbiAgICByZXR1cm4gZmlyc3RMaW5lRG4gPz8gbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkU2F2YWJsZUVuZFVzZXIoXHJcbiAgICBlbmRVc2VyOiBFbmRVc2VySW50ZXJmYWNlLFxyXG4gICAgbGluZXM6IExpbmVJbnRlcmZhY2VbXSxcclxuICAgIGRldmljZXM6IERldmljZUludGVyZmFjZVtdLFxyXG4gICAgZGV2aWNlUHJvZmlsZXM6IERldmljZUludGVyZmFjZVtdLFxyXG4gICAgZm9ybTogVXNlckRldGFpbHNGb3JtLFxyXG4gICAgb3B0aW9uczogQnVpbGRTYXZhYmxlRW5kVXNlck9wdGlvbnMgPSB7fVxyXG4pOiBFbmRVc2VySW50ZXJmYWNlIHtcclxuICAgIGNvbnN0IHVzZXIgPSBkZWVwQ2xvbmUoZW5kVXNlcik7XHJcblxyXG4gICAgdXNlci51c2VyaWQgPSBmb3JtLnVzZXJJZCB8fCB1c2VyLnVzZXJpZCB8fCAnJztcclxuICAgIHVzZXIuZmlyc3ROYW1lID0gZm9ybS5maXJzdE5hbWUgfHwgdXNlci5maXJzdE5hbWUgfHwgJyc7XHJcbiAgICB1c2VyLmxhc3ROYW1lID0gZm9ybS5sYXN0TmFtZSB8fCB1c2VyLmxhc3ROYW1lIHx8ICcnO1xyXG4gICAgdXNlci5lbWFpbCA9IGZvcm0uZW1haWwgfHwgdXNlci5lbWFpbCB8fCAnJztcclxuICAgIHVzZXIuY3JlYXRlVXNlck1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICB1c2VyLmxpbmVzID0gKGxpbmVzIHx8IFtdKS5tYXAobGluZSA9PiBwcmVwYXJlTGluZShsaW5lKSk7XHJcbiAgICB1c2VyLmRldmljZXMgPSAoZGV2aWNlcyB8fCBbXSkubWFwKChkZXZpY2UsIGluZGV4KSA9PlxyXG4gICAgICAgIHByZXBhcmVEZXZpY2VGb3JTYXZlKFxyXG4gICAgICAgICAgICBkZXZpY2UsXHJcbiAgICAgICAgICAgIHVzZXIudXNlcmlkIHx8ICcnLFxyXG4gICAgICAgICAgICB1c2VyLmxpbmVzLFxyXG4gICAgICAgICAgICBvcHRpb25zLnJlc29sdmVEZXZpY2VOYW1lPy4oaW5kZXgsIGRldmljZSkgPz8gZGV2aWNlLm5hbWUgPz8gZGV2aWNlLm5ld05hbWUgPz8gJydcclxuICAgICAgICApXHJcbiAgICApO1xyXG4gICAgdXNlci5kZXZpY2VQcm9maWxlcyA9IChkZXZpY2VQcm9maWxlcyB8fCBbXSkubWFwKChwcm9maWxlLCBpbmRleCkgPT5cclxuICAgICAgICBwcmVwYXJlRGV2aWNlRm9yU2F2ZShcclxuICAgICAgICAgICAgcHJvZmlsZSxcclxuICAgICAgICAgICAgdXNlci51c2VyaWQgfHwgJycsXHJcbiAgICAgICAgICAgIHVzZXIubGluZXMsXHJcbiAgICAgICAgICAgIG9wdGlvbnMucmVzb2x2ZURldmljZVByb2ZpbGVOYW1lPy4oaW5kZXgsIHByb2ZpbGUpID8/IHByb2ZpbGUubmFtZSA/PyBwcm9maWxlLm5ld05hbWUgPz8gJydcclxuICAgICAgICApXHJcbiAgICApO1xyXG5cclxuICAgIHVzZXIucHJpbWFyeUxpbmVSZWZlcmVuY2UgPSByZXNvbHZlUHJpbWFyeUxpbmVSZWZlcmVuY2UodXNlcik7XHJcblxyXG4gICAgY29uc3Qgc25yID0gdXNlci5zaW5nbGVOdW1iZXJSZWFjaCBhcyB7IHJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWU/OiBzdHJpbmcgfCBudWxsIH0gfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4gICAgaWYgKHNuciAmJiAhc25yLnJlbW90ZURlc3RpbmF0aW9uUHJvZmlsZU5hbWUpIHtcclxuICAgICAgICB1c2VyLnNpbmdsZU51bWJlclJlYWNoID0gbnVsbCBhcyBFbmRVc2VySW50ZXJmYWNlWydzaW5nbGVOdW1iZXJSZWFjaCddO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB1c2VyO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,13 +1,30 @@
|
|
|
1
1
|
/** Matches device types like `Cisco 8851`. */
|
|
2
2
|
export const CISCO_DIGIT_DEVICE_TYPE_PATTERN = /^Cisco\s+\d+$/i;
|
|
3
3
|
export const DEFAULT_SEP_DEVICE_PREFIX = 'SEP';
|
|
4
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Extracts a literal prefix from `deviceNameExplained` patterns such as
|
|
6
|
+
* `SEP[mac]`, `TCT[0-9A-Z._-]{1,12}`, or `[A-Z0-9]{1,15}` (no prefix).
|
|
7
|
+
*/
|
|
8
|
+
export function extractDevicePrefixFromNameExplained(deviceNameExplained) {
|
|
9
|
+
const explained = deviceNameExplained?.trim() ?? '';
|
|
10
|
+
if (!explained) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const match = explained.match(/^([A-Za-z]+)\[/);
|
|
14
|
+
return match?.[1] ?? null;
|
|
15
|
+
}
|
|
16
|
+
export function applyDefaultDevicePrefixIfMissing(device, defaults) {
|
|
5
17
|
if (device.prefix?.trim()) {
|
|
6
18
|
return;
|
|
7
19
|
}
|
|
20
|
+
const prefixFromDefaults = extractDevicePrefixFromNameExplained(defaults.deviceNameExplained);
|
|
21
|
+
if (prefixFromDefaults) {
|
|
22
|
+
device.prefix = prefixFromDefaults;
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
8
25
|
const deviceType = device.deviceType?.trim() ?? '';
|
|
9
26
|
if (CISCO_DIGIT_DEVICE_TYPE_PATTERN.test(deviceType)) {
|
|
10
27
|
device.prefix = DEFAULT_SEP_DEVICE_PREFIX;
|
|
11
28
|
}
|
|
12
29
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLWRlZmF1bHQtcHJlZml4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItY3JlYXRpb24vc3JjL3V0aWxzL2RldmljZS1kZWZhdWx0LXByZWZpeC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSw4Q0FBOEM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsZ0JBQWdCLENBQUM7QUFFaEUsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsS0FBSyxDQUFDO0FBRS9DOzs7R0FHRztBQUNILE1BQU0sVUFBVSxvQ0FBb0MsQ0FBQyxtQkFBOEM7SUFDL0YsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3BELElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDWixPQUFPLElBQUksQ0FBQztLQUNmO0lBRUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2hELE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO0FBQzlCLENBQUM7QUFFRCxNQUFNLFVBQVUsaUNBQWlDLENBQUMsTUFBc0QsRUFBRSxRQUFpQztJQUN2SSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdkIsT0FBTztLQUNWO0lBRUQsTUFBTSxrQkFBa0IsR0FBRyxvQ0FBb0MsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUM5RixJQUFJLGtCQUFrQixFQUFFO1FBQ3BCLE1BQU0sQ0FBQyxNQUFNLEdBQUcsa0JBQWtCLENBQUM7UUFDbkMsT0FBTztLQUNWO0lBRUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDbkQsSUFBSSwrQkFBK0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDbEQsTUFBTSxDQUFDLE1BQU0sR0FBRyx5QkFBeUIsQ0FBQztLQUM3QztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXZpY2VEZWZhdWx0c0ludGVyZmFjZSwgRGV2aWNlSW50ZXJmYWNlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy91c2VyLWNyZWF0aW9uLXdpemFyZC5pbnRlcmZhY2VzJztcclxuXHJcbi8qKiBNYXRjaGVzIGRldmljZSB0eXBlcyBsaWtlIGBDaXNjbyA4ODUxYC4gKi9cclxuZXhwb3J0IGNvbnN0IENJU0NPX0RJR0lUX0RFVklDRV9UWVBFX1BBVFRFUk4gPSAvXkNpc2NvXFxzK1xcZCskL2k7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9TRVBfREVWSUNFX1BSRUZJWCA9ICdTRVAnO1xyXG5cclxuLyoqXHJcbiAqIEV4dHJhY3RzIGEgbGl0ZXJhbCBwcmVmaXggZnJvbSBgZGV2aWNlTmFtZUV4cGxhaW5lZGAgcGF0dGVybnMgc3VjaCBhc1xyXG4gKiBgU0VQW21hY11gLCBgVENUWzAtOUEtWi5fLV17MSwxMn1gLCBvciBgW0EtWjAtOV17MSwxNX1gIChubyBwcmVmaXgpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3REZXZpY2VQcmVmaXhGcm9tTmFtZUV4cGxhaW5lZChkZXZpY2VOYW1lRXhwbGFpbmVkOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCBleHBsYWluZWQgPSBkZXZpY2VOYW1lRXhwbGFpbmVkPy50cmltKCkgPz8gJyc7XHJcbiAgICBpZiAoIWV4cGxhaW5lZCkge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG1hdGNoID0gZXhwbGFpbmVkLm1hdGNoKC9eKFtBLVphLXpdKylcXFsvKTtcclxuICAgIHJldHVybiBtYXRjaD8uWzFdID8/IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBhcHBseURlZmF1bHREZXZpY2VQcmVmaXhJZk1pc3NpbmcoZGV2aWNlOiBQaWNrPERldmljZUludGVyZmFjZSwgJ3ByZWZpeCcgfCAnZGV2aWNlVHlwZSc+LCBkZWZhdWx0czogRGV2aWNlRGVmYXVsdHNJbnRlcmZhY2UpOiB2b2lkIHtcclxuICAgIGlmIChkZXZpY2UucHJlZml4Py50cmltKCkpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgcHJlZml4RnJvbURlZmF1bHRzID0gZXh0cmFjdERldmljZVByZWZpeEZyb21OYW1lRXhwbGFpbmVkKGRlZmF1bHRzLmRldmljZU5hbWVFeHBsYWluZWQpO1xyXG4gICAgaWYgKHByZWZpeEZyb21EZWZhdWx0cykge1xyXG4gICAgICAgIGRldmljZS5wcmVmaXggPSBwcmVmaXhGcm9tRGVmYXVsdHM7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGRldmljZVR5cGUgPSBkZXZpY2UuZGV2aWNlVHlwZT8udHJpbSgpID8/ICcnO1xyXG4gICAgaWYgKENJU0NPX0RJR0lUX0RFVklDRV9UWVBFX1BBVFRFUk4udGVzdChkZXZpY2VUeXBlKSkge1xyXG4gICAgICAgIGRldmljZS5wcmVmaXggPSBERUZBVUxUX1NFUF9ERVZJQ0VfUFJFRklYO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export function deviceNameHasDynamicTokens(name) {
|
|
2
|
+
return /\[DN\]|\[LN\]|\[FN\]/i.test(name ?? '');
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW5hbWUtZHluYW1pYy10b2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvZGV2aWNlLW5hbWUtZHluYW1pYy10b2tlbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLDBCQUEwQixDQUFDLElBQStCO0lBQ3RFLE9BQU8sdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztBQUNwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGRldmljZU5hbWVIYXNEeW5hbWljVG9rZW5zKG5hbWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAvXFxbRE5cXF18XFxbTE5cXF18XFxbRk5cXF0vaS50ZXN0KG5hbWUgPz8gJycpO1xyXG59XHJcbiJdfQ==
|
|
@@ -20,4 +20,4 @@ export function deviceNameValidator(options) {
|
|
|
20
20
|
return null;
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW5hbWUtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9kZXZpY2UtbmFtZS12YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxPQUFtQztJQUNuRSxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtZQUNoQyxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSTtZQUNBLE1BQU0sSUFBSSxHQUFHLElBQUksTUFBTSxDQUFDLE9BQU8sT0FBTyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2pCLE9BQU87b0JBQ0gsVUFBVSxFQUFFO3dCQUNSLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLO3FCQUM1QztpQkFDSixDQUFDO2FBQ0w7U0FDSjtRQUFDLE1BQU07WUFDSixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERldmljZU5hbWVWYWxpZGF0b3JPcHRpb25zIHtcclxuICAgIHJlZ2V4OiBzdHJpbmc7XHJcbiAgICBjYXB0aW9uPzogc3RyaW5nIHwgbnVsbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRldmljZU5hbWVWYWxpZGF0b3Iob3B0aW9uczogRGV2aWNlTmFtZVZhbGlkYXRvck9wdGlvbnMpOiBWYWxpZGF0b3JGbiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgICAgICBjb25zdCByYXcgPSBTdHJpbmcoY29udHJvbC52YWx1ZSA/PyAnJykudHJpbSgpO1xyXG4gICAgICAgIGlmICghcmF3IHx8ICFvcHRpb25zLnJlZ2V4Py50cmltKCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCBydWxlID0gbmV3IFJlZ0V4cChgXig/OiR7b3B0aW9ucy5yZWdleH0pJGApO1xyXG4gICAgICAgICAgICBpZiAoIXJ1bGUudGVzdChyYXcpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGRldmljZU5hbWU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2FwdGlvbjogb3B0aW9ucy5jYXB0aW9uIHx8IG9wdGlvbnMucmVnZXgsXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbn1cclxuIl19
|
|
@@ -16,4 +16,4 @@ export const getSavableData = (model, exclude) => {
|
|
|
16
16
|
return result;
|
|
17
17
|
}, {});
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBVSxFQUFFLE9BQXVCLEVBQUUsRUFBRTtJQUNwRSxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7UUFDN0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztLQUNwRTtJQUNELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQVcsRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUN4QyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxLQUFLLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFO1lBQ3BGLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztTQUNwRTthQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFO1lBQ3BFLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDM0M7YUFBTTtZQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDMUI7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZ2V0U2F2YWJsZURhdGEgPSAobW9kZWw6IGFueSwgZXhjbHVkZT86IEFycmF5PHN0cmluZz4pID0+
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1jcmVhdGlvbi9zcmMvdXRpbHMvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsS0FBVSxFQUFFLE9BQXVCLEVBQUUsRUFBRTtJQUNwRSxJQUFJLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7UUFDN0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztLQUNwRTtJQUNELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQVcsRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUN4QyxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsWUFBWSxLQUFLLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFO1lBQ3BGLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztTQUNwRTthQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFO1lBQ3BFLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDM0M7YUFBTTtZQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDMUI7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZ2V0U2F2YWJsZURhdGEgPSAobW9kZWw6IGFueSwgZXhjbHVkZT86IEFycmF5PHN0cmluZz4pID0+IHtcclxuICBsZXQgcmVzdWx0ID0gT2JqZWN0LmtleXMobW9kZWwpO1xyXG4gIGlmIChleGNsdWRlICYmIGV4Y2x1ZGUubGVuZ3RoKSB7XHJcbiAgICByZXN1bHQgPSByZXN1bHQuZmlsdGVyKGtleSA9PiAhZXhjbHVkZS5zb21lKGl0ZW0gPT4gaXRlbSA9PT0ga2V5KSk7XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQucmVkdWNlKChyZXN1bHQ6IGFueSwga2V5KSA9PiB7XHJcbiAgICBpZiAobW9kZWxba2V5XSBpbnN0YW5jZW9mIEFycmF5ICYmIG1vZGVsW2tleV0ubGVuZ3RoICYmIG1vZGVsW2tleV1bMF0uZ2V0U2F2YWJsZURhdGEpIHtcclxuICAgICAgcmVzdWx0W2tleV0gPSBtb2RlbFtrZXldLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtLmdldFNhdmFibGVEYXRhKCkpO1xyXG4gICAgfSBlbHNlIGlmIChtb2RlbFtrZXldIGluc3RhbmNlb2YgT2JqZWN0ICYmIG1vZGVsW2tleV0uZ2V0U2F2YWJsZURhdGEpIHtcclxuICAgICAgcmVzdWx0W2tleV0gPSBtb2RlbFtrZXldLmdldFNhdmFibGVEYXRhKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXN1bHRba2V5XSA9IG1vZGVsW2tleV07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH0sIHt9KTtcclxufTsiXX0=
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* to validate the name field value (without matPrefix).
|
|
4
4
|
*
|
|
5
5
|
* - `([sS][eE][pP]|BAT)[0-9a-fA-F]{12}` → `[0-9a-fA-F]{12}`
|
|
6
|
+
* - `TCT[0-9A-Z._-]{1,12}` → `[0-9A-Z._-]{1,12}`
|
|
6
7
|
* - `[a-zA-Z0-9]{1,15}` → `[a-zA-Z0-9]{1,15}` (unchanged)
|
|
7
8
|
*/
|
|
8
9
|
export function parseDeviceNameRegexBody(deviceNameRegex) {
|
|
@@ -12,15 +13,17 @@ export function parseDeviceNameRegexBody(deviceNameRegex) {
|
|
|
12
13
|
}
|
|
13
14
|
return stripLeadingPrefixGroup(fullRegex);
|
|
14
15
|
}
|
|
16
|
+
/** Character class with an optional trailing quantifier, e.g. `[0-9a-fA-F]{12}`. */
|
|
17
|
+
const CHAR_CLASS_WITH_QUANTIFIER = String.raw `\[[^\]]+\](?:\{[^}]+\})?`;
|
|
15
18
|
function stripLeadingPrefixGroup(regex) {
|
|
16
|
-
const parenMatch = regex.match(
|
|
19
|
+
const parenMatch = regex.match(new RegExp(`^(\\([^)]+\\))(${CHAR_CLASS_WITH_QUANTIFIER})$`));
|
|
17
20
|
if (parenMatch?.[2]?.trim()) {
|
|
18
21
|
return parenMatch[2];
|
|
19
22
|
}
|
|
20
|
-
const literalMatch = regex.match(
|
|
23
|
+
const literalMatch = regex.match(new RegExp(`^([A-Za-z]+)(${CHAR_CLASS_WITH_QUANTIFIER})$`));
|
|
21
24
|
if (literalMatch?.[2]?.trim()) {
|
|
22
25
|
return literalMatch[2];
|
|
23
26
|
}
|
|
24
27
|
return regex;
|
|
25
28
|
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtZGV2aWNlLW5hbWUtcnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWNyZWF0aW9uL3NyYy91dGlscy9wYXJzZS1kZXZpY2UtbmFtZS1ydWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsZUFBMEM7SUFDL0UsTUFBTSxTQUFTLEdBQUcsZUFBZSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUNoRCxJQUFJLENBQUMsU0FBUyxFQUFFO1FBQ1osT0FBTyxFQUFFLENBQUM7S0FDYjtJQUVELE9BQU8sdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDOUMsQ0FBQztBQUVELG9GQUFvRjtBQUNwRixNQUFNLDBCQUEwQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUEsMEJBQTBCLENBQUM7QUFFeEUsU0FBUyx1QkFBdUIsQ0FBQyxLQUFhO0lBQzFDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsa0JBQWtCLDBCQUEwQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdGLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDekIsT0FBTyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDeEI7SUFFRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLGdCQUFnQiwwQkFBMEIsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM3RixJQUFJLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQzNCLE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFCO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBTdHJpcHMgYSBsZWFkaW5nIGRldmljZS1wcmVmaXggZ3JvdXAgZnJvbSBgZGV2aWNlTmFtZVJlZ2V4YCwgcmV0dXJuaW5nIHRoZSBwYXR0ZXJuXHJcbiAqIHRvIHZhbGlkYXRlIHRoZSBuYW1lIGZpZWxkIHZhbHVlICh3aXRob3V0IG1hdFByZWZpeCkuXHJcbiAqXHJcbiAqIC0gYChbc1NdW2VFXVtwUF18QkFUKVswLTlhLWZBLUZdezEyfWAg4oaSIGBbMC05YS1mQS1GXXsxMn1gXHJcbiAqIC0gYFRDVFswLTlBLVouXy1dezEsMTJ9YCDihpIgYFswLTlBLVouXy1dezEsMTJ9YFxyXG4gKiAtIGBbYS16QS1aMC05XXsxLDE1fWAg4oaSIGBbYS16QS1aMC05XXsxLDE1fWAgKHVuY2hhbmdlZClcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBwYXJzZURldmljZU5hbWVSZWdleEJvZHkoZGV2aWNlTmFtZVJlZ2V4OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGZ1bGxSZWdleCA9IGRldmljZU5hbWVSZWdleD8udHJpbSgpID8/ICcnO1xyXG4gICAgaWYgKCFmdWxsUmVnZXgpIHtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHN0cmlwTGVhZGluZ1ByZWZpeEdyb3VwKGZ1bGxSZWdleCk7XHJcbn1cclxuXHJcbi8qKiBDaGFyYWN0ZXIgY2xhc3Mgd2l0aCBhbiBvcHRpb25hbCB0cmFpbGluZyBxdWFudGlmaWVyLCBlLmcuIGBbMC05YS1mQS1GXXsxMn1gLiAqL1xyXG5jb25zdCBDSEFSX0NMQVNTX1dJVEhfUVVBTlRJRklFUiA9IFN0cmluZy5yYXdgXFxbW15cXF1dK1xcXSg/Olxce1tefV0rXFx9KT9gO1xyXG5cclxuZnVuY3Rpb24gc3RyaXBMZWFkaW5nUHJlZml4R3JvdXAocmVnZXg6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBwYXJlbk1hdGNoID0gcmVnZXgubWF0Y2gobmV3IFJlZ0V4cChgXihcXFxcKFteKV0rXFxcXCkpKCR7Q0hBUl9DTEFTU19XSVRIX1FVQU5USUZJRVJ9KSRgKSk7XHJcbiAgICBpZiAocGFyZW5NYXRjaD8uWzJdPy50cmltKCkpIHtcclxuICAgICAgICByZXR1cm4gcGFyZW5NYXRjaFsyXTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBsaXRlcmFsTWF0Y2ggPSByZWdleC5tYXRjaChuZXcgUmVnRXhwKGBeKFtBLVphLXpdKykoJHtDSEFSX0NMQVNTX1dJVEhfUVVBTlRJRklFUn0pJGApKTtcclxuICAgIGlmIChsaXRlcmFsTWF0Y2g/LlsyXT8udHJpbSgpKSB7XHJcbiAgICAgICAgcmV0dXJuIGxpdGVyYWxNYXRjaFsyXTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcmVnZXg7XHJcbn1cclxuIl19
|