aril 2.0.1-dev.5 → 2.0.2
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/boot/config/apps/src/apps.service.mjs +4 -4
- package/esm2022/boot/config/apps/src/auth.guard.mjs +4 -4
- package/esm2022/boot/config/apps/src/custom-reuse-outlet.component.mjs +4 -4
- package/esm2022/boot/config/apps/src/custom-route-reuse-strategy.class.mjs +4 -4
- package/esm2022/boot/config/apps/src/nav-link-context-menu.service.mjs +4 -4
- package/esm2022/boot/config/apps/src/nav-link.directive.mjs +4 -4
- package/esm2022/boot/config/apps/src/nav.service.mjs +4 -4
- package/esm2022/boot/config/apps/src/route-close.service.mjs +4 -4
- package/esm2022/boot/config/apps/src/showdowDOMWrapper.mjs +4 -4
- package/esm2022/boot/config/apps/src/tab-aware-url-serializer.mjs +4 -4
- package/esm2022/boot/host/src/app.component.mjs +4 -4
- package/esm2022/boot/mfe/src/app.component.mjs +11 -6
- package/esm2022/boot/mfe/src/isolated-location-strategy.mjs +4 -4
- package/esm2022/boot/pages/src/forbidden.component.mjs +4 -4
- package/esm2022/boot/pages/src/notFound.component.mjs +4 -4
- package/esm2022/http/src/httpBackend.mjs +4 -4
- package/esm2022/i18n/src/i18n.module.mjs +5 -5
- package/esm2022/i18n/src/loader.mjs +4 -4
- package/esm2022/selection/src/selection-group.service.mjs +4 -4
- package/esm2022/theme/layout/app/expandableMenu/expandable-menu.component.mjs +4 -4
- package/esm2022/theme/layout/app/favorite-pages/favorite-pages-sidebar.component.mjs +4 -4
- package/esm2022/theme/layout/app/favorite-pages/favorite-pages.service.mjs +4 -4
- package/esm2022/theme/layout/app/favorite-pages/modals/add-edit-favorite-modal/add-edit-favorite-modal.component.mjs +4 -4
- package/esm2022/theme/layout/app/general-search/general-search.component.mjs +4 -4
- package/esm2022/theme/layout/app/history/history-sidebar.component.mjs +4 -4
- package/esm2022/theme/layout/app/history/history.service.mjs +4 -4
- package/esm2022/theme/layout/app/layout/app.layout.component.mjs +4 -4
- package/esm2022/theme/layout/app/layout/mfe.layout.component.mjs +4 -4
- package/esm2022/theme/layout/app/notifications/notifications-sidebar.component.mjs +4 -4
- package/esm2022/theme/layout/app/profileSidebar/app.profilesidebar.component.mjs +4 -4
- package/esm2022/theme/layout/app/profileSidebar/modals/change-password-modal/change-password-modal.component.mjs +4 -4
- package/esm2022/theme/layout/app/profileSidebar/modals/edit-profile-modal/edit-profile-modal.component.mjs +4 -4
- package/esm2022/theme/layout/app/profileSidebar/profile.service.mjs +4 -4
- package/esm2022/theme/layout/app/site-map/site-map-sidebar.component.mjs +4 -4
- package/esm2022/theme/layout/app/static-sidebar/static-sidebar.component.mjs +4 -4
- package/esm2022/theme/layout/app/topbar/app.topbar.component.mjs +4 -4
- package/esm2022/theme/layout/service/app.layout.service.mjs +4 -4
- package/esm2022/theme/layout/service/app.menu.service.mjs +4 -4
- package/esm2022/theme/layout/service/breadcrumb-publisher.service.mjs +4 -4
- package/esm2022/theme/layout/service/breadcrumb.service.mjs +4 -4
- package/esm2022/theme/layout/service/notifications.service.mjs +4 -4
- package/esm2022/theme/layout/service/search.service.mjs +4 -4
- package/esm2022/theme/layout/service/tab-session.service.mjs +4 -4
- package/esm2022/ui/autoComplete/src/auto-complete.component.mjs +4 -4
- package/esm2022/ui/badge/src/badge.component.mjs +4 -4
- package/esm2022/ui/button/src/button.component.mjs +4 -4
- package/esm2022/ui/calendar/src/calendar.component.mjs +4 -4
- package/esm2022/ui/charts/src/highCharts/gauge/solid-gauge.component.mjs +4 -4
- package/esm2022/ui/charts/src/highCharts/line/line-chart-datetime-axis.component.mjs +4 -4
- package/esm2022/ui/checkbox/src/check-box.component.mjs +4 -4
- package/esm2022/ui/checkbox/src/tri-state-checkbox.component.mjs +4 -4
- package/esm2022/ui/chip/src/chip.component.mjs +4 -4
- package/esm2022/ui/collapse-reorder-list/src/collapse-reorder-list.component.mjs +4 -4
- package/esm2022/ui/dxField/src/dx-field.component.mjs +4 -4
- package/esm2022/ui/editor/src/aril-editor.component.mjs +4 -4
- package/esm2022/ui/field/src/field.component.mjs +4 -4
- package/esm2022/ui/fileUpload/src/file-upload.component.mjs +4 -4
- package/esm2022/ui/form/index.mjs +5 -5
- package/esm2022/ui/form/src/form-submit-button.component.mjs +4 -4
- package/esm2022/ui/form/src/form.component.mjs +4 -4
- package/esm2022/ui/img-viewer/src/img-viewer.component.mjs +4 -4
- package/esm2022/ui/json-diff-comparison/src/json-diff.component.mjs +4 -4
- package/esm2022/ui/lib/src/form/form-error-message.component.mjs +4 -4
- package/esm2022/ui/lib/src/form/form-error-message.directive.mjs +4 -4
- package/esm2022/ui/lib/src/grid/enum-color-picker.pipe.mjs +4 -4
- package/esm2022/ui/lib/src/grid/flex-grid.directive.mjs +4 -4
- package/esm2022/ui/lib/src/input/dx-input-error-message.pipe.mjs +4 -4
- package/esm2022/ui/lib/src/input/input-error-message.pipe.mjs +4 -4
- package/esm2022/ui/lib/src/input/value-accessor.directive.mjs +4 -4
- package/esm2022/ui/loader/src/loader.component.mjs +4 -4
- package/esm2022/ui/mask/src/mask.component.mjs +4 -4
- package/esm2022/ui/multiSelect/src/multi-select.component.mjs +4 -4
- package/esm2022/ui/number/src/number.component.mjs +4 -4
- package/esm2022/ui/operation-types-dialog/src/operation-types-dialog.component.mjs +4 -4
- package/esm2022/ui/panel/src/panel.component.mjs +4 -4
- package/esm2022/ui/password/src/password.component.mjs +4 -4
- package/esm2022/ui/pdf-viewer/src/pdf-viewer.component.mjs +4 -4
- package/esm2022/ui/progressbar/src/progressbar.component.mjs +4 -4
- package/esm2022/ui/radioButton/src/radio-button.component.mjs +4 -4
- package/esm2022/ui/relativeDateSelector/src/relative-date-selector.component.mjs +4 -4
- package/esm2022/ui/selectBox/src/select-box.component.mjs +4 -4
- package/esm2022/ui/switch/src/switch.component.mjs +4 -4
- package/esm2022/ui/table/index.mjs +5 -5
- package/esm2022/ui/table/src/export-overlay-panel.component.mjs +4 -4
- package/esm2022/ui/table/src/table-column.component.mjs +4 -4
- package/esm2022/ui/table/src/table.component.mjs +4 -4
- package/esm2022/ui/table-expand/index.mjs +5 -5
- package/esm2022/ui/table-expand/src/table-column.component.mjs +4 -4
- package/esm2022/ui/table-expand/src/table-expand-area.component.mjs +4 -4
- package/esm2022/ui/table-expand/src/table.component.mjs +4 -4
- package/esm2022/ui/tag/src/tag.component.mjs +4 -4
- package/esm2022/ui/tagBox/src/tag-box.component.mjs +4 -4
- package/esm2022/ui/text/src/text.component.mjs +4 -4
- package/esm2022/ui/textArea/src/text-area.component.mjs +4 -4
- package/esm2022/ui/toggle-button/src/toggle-button.component.mjs +4 -4
- package/esm2022/ui/translate-input/src/aril-lang-modal/aril-lang-modal.component.mjs +4 -4
- package/esm2022/ui/translate-input/src/aril-translate-input.component.mjs +4 -4
- package/esm2022/ui/tree/src/tree.component.mjs +4 -4
- package/esm2022/ui/treeSelect/src/treeSelect.component.mjs +4 -4
- package/esm2022/ui/value/src/value.component.mjs +4 -4
- package/esm2022/ui-business/assetPicker/src/asset-picker.component.mjs +4 -4
- package/esm2022/ui-business/detailed-overlay-panel/src/detailed-overlay-panel.component.mjs +4 -4
- package/esm2022/ui-business/enumPicker/src/enum-picker.component.mjs +4 -4
- package/esm2022/ui-business/image-viewer/src/aril-image-viewer.component.mjs +4 -4
- package/esm2022/ui-business/multiple-ref-value/src/multiple-ref-value.component.mjs +4 -4
- package/esm2022/ui-business/notification-templates-dialog/src/notification-templates-dialog.component.mjs +4 -4
- package/esm2022/ui-business/pdf-preview-modal/src/pdf-preview-modal.component.mjs +4 -4
- package/esm2022/ui-business/ref-value/src/ref-value.component.mjs +4 -4
- package/esm2022/ui-business/rolePicker/src/role-picker.component.mjs +4 -4
- package/esm2022/ui-business/trace-drawer/src/app-log.service.mjs +4 -4
- package/esm2022/ui-business/trace-drawer/src/trace-drawer.component.mjs +4 -4
- package/esm2022/ui-business/trace-drawer/src/trace-log.service.mjs +4 -4
- package/esm2022/ui-business/trace-id/src/trace-id.component.mjs +4 -4
- package/esm2022/ui-business/userPicker/src/user-picker.component.mjs +4 -4
- package/esm2022/util/activity/src/activity.service.mjs +4 -4
- package/esm2022/util/block/src/block.mjs +4 -4
- package/esm2022/util/directives/src/detail-page-customization/detail-page-customization.directive.mjs +4 -4
- package/esm2022/util/directives/src/dialog-component/plugin-dialog.component.mjs +4 -4
- package/esm2022/util/directives/src/dialog-service/plugin-dialog.service.mjs +4 -4
- package/esm2022/util/lib/src/module-router.mjs +4 -4
- package/esm2022/util/pipes/src/distance-to-now.pipe.mjs +4 -4
- package/esm2022/util/pipes/src/get-column-by-field.pipe.mjs +4 -4
- package/esm2022/util/pipes/src/parse.pipe.mjs +4 -4
- package/esm2022/util/pipes/src/round-number.pipe.mjs +4 -4
- package/esm2022/util/pipes/src/safe.pipe.mjs +4 -4
- package/esm2022/util/pipes/src/translate-json/translate-json.pipe.mjs +4 -4
- package/esm2022/util/pub-sub/src/pub-sub.service.mjs +4 -4
- package/esm2022/util/sync-active-tab-route/src/sync-active-tab-route.directive.mjs +4 -4
- package/fesm2022/{aril-app.component-MjG_tPEe.mjs → aril-app.component-Bl9p6jXU.mjs} +11 -6
- package/fesm2022/aril-app.component-Bl9p6jXU.mjs.map +1 -0
- package/fesm2022/aril-boot-base.mjs +1 -1
- package/fesm2022/aril-boot-base.mjs.map +1 -1
- package/fesm2022/aril-boot-bridge.mjs.map +1 -1
- package/fesm2022/aril-boot-config-api.mjs.map +1 -1
- package/fesm2022/aril-boot-config-apps.mjs +31 -31
- package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
- package/fesm2022/aril-boot-config-plugins.mjs +1 -1
- package/fesm2022/aril-boot-config-plugins.mjs.map +1 -1
- package/fesm2022/aril-boot-config-translate.mjs.map +1 -1
- package/fesm2022/aril-boot-host.mjs +4 -4
- package/fesm2022/aril-boot-host.mjs.map +1 -1
- package/fesm2022/{aril-boot-mfe-app.component-DtspQ3J8.mjs → aril-boot-mfe-app.component-DovYRbZO.mjs} +12 -7
- package/fesm2022/aril-boot-mfe-app.component-DovYRbZO.mjs.map +1 -0
- package/fesm2022/{aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs → aril-boot-mfe-aril-boot-mfe-D9YM2exR.mjs} +7 -7
- package/fesm2022/{aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs.map → aril-boot-mfe-aril-boot-mfe-D9YM2exR.mjs.map} +1 -1
- package/fesm2022/aril-boot-mfe.mjs +1 -1
- package/fesm2022/aril-boot-pages.mjs +6 -6
- package/fesm2022/aril-boot-pages.mjs.map +1 -1
- package/fesm2022/aril-http.mjs +3 -3
- package/fesm2022/aril-http.mjs.map +1 -1
- package/fesm2022/aril-i18n.mjs +7 -7
- package/fesm2022/aril-i18n.mjs.map +1 -1
- package/fesm2022/aril-keycloak.mjs.map +1 -1
- package/fesm2022/aril-provider.mjs +1 -1
- package/fesm2022/aril-provider.mjs.map +1 -1
- package/fesm2022/aril-selection.mjs +3 -3
- package/fesm2022/aril-selection.mjs.map +1 -1
- package/fesm2022/aril-theme-layout.mjs +74 -74
- package/fesm2022/aril-theme-layout.mjs.map +1 -1
- package/fesm2022/aril-ui-autoComplete.mjs +6 -6
- package/fesm2022/aril-ui-autoComplete.mjs.map +1 -1
- package/fesm2022/aril-ui-badge.mjs +4 -4
- package/fesm2022/aril-ui-badge.mjs.map +1 -1
- package/fesm2022/aril-ui-business-assetPicker.mjs +5 -5
- package/fesm2022/aril-ui-business-assetPicker.mjs.map +1 -1
- package/fesm2022/aril-ui-business-detailed-overlay-panel.mjs +5 -5
- package/fesm2022/aril-ui-business-detailed-overlay-panel.mjs.map +1 -1
- package/fesm2022/aril-ui-business-enumPicker.mjs +5 -5
- package/fesm2022/aril-ui-business-enumPicker.mjs.map +1 -1
- package/fesm2022/aril-ui-business-image-viewer.mjs +3 -3
- package/fesm2022/aril-ui-business-image-viewer.mjs.map +1 -1
- package/fesm2022/aril-ui-business-multiple-ref-value.mjs +4 -4
- package/fesm2022/aril-ui-business-multiple-ref-value.mjs.map +1 -1
- package/fesm2022/aril-ui-business-notification-templates-dialog.mjs +3 -3
- package/fesm2022/aril-ui-business-notification-templates-dialog.mjs.map +1 -1
- package/fesm2022/aril-ui-business-pdf-preview-modal.mjs +3 -3
- package/fesm2022/aril-ui-business-pdf-preview-modal.mjs.map +1 -1
- package/fesm2022/aril-ui-business-ref-value.mjs +4 -4
- package/fesm2022/aril-ui-business-ref-value.mjs.map +1 -1
- package/fesm2022/aril-ui-business-rolePicker.mjs +4 -4
- package/fesm2022/aril-ui-business-rolePicker.mjs.map +1 -1
- package/fesm2022/aril-ui-business-trace-drawer.mjs +10 -10
- package/fesm2022/aril-ui-business-trace-drawer.mjs.map +1 -1
- package/fesm2022/aril-ui-business-trace-id.mjs +4 -4
- package/fesm2022/aril-ui-business-trace-id.mjs.map +1 -1
- package/fesm2022/aril-ui-business-userPicker.mjs +3 -3
- package/fesm2022/aril-ui-business-userPicker.mjs.map +1 -1
- package/fesm2022/aril-ui-button.mjs +4 -4
- package/fesm2022/aril-ui-button.mjs.map +1 -1
- package/fesm2022/aril-ui-calendar.mjs +3 -3
- package/fesm2022/aril-ui-calendar.mjs.map +1 -1
- package/fesm2022/aril-ui-charts.mjs +6 -6
- package/fesm2022/aril-ui-charts.mjs.map +1 -1
- package/fesm2022/aril-ui-checkbox.mjs +6 -6
- package/fesm2022/aril-ui-checkbox.mjs.map +1 -1
- package/fesm2022/aril-ui-chip.mjs +4 -4
- package/fesm2022/aril-ui-chip.mjs.map +1 -1
- package/fesm2022/aril-ui-collapse-reorder-list.mjs +4 -4
- package/fesm2022/aril-ui-collapse-reorder-list.mjs.map +1 -1
- package/fesm2022/aril-ui-dxField.mjs +4 -4
- package/fesm2022/aril-ui-dxField.mjs.map +1 -1
- package/fesm2022/aril-ui-editor.mjs +4 -4
- package/fesm2022/aril-ui-editor.mjs.map +1 -1
- package/fesm2022/aril-ui-field.mjs +4 -4
- package/fesm2022/aril-ui-field.mjs.map +1 -1
- package/fesm2022/aril-ui-fileUpload.mjs +4 -4
- package/fesm2022/aril-ui-fileUpload.mjs.map +1 -1
- package/fesm2022/aril-ui-form.mjs +11 -11
- package/fesm2022/aril-ui-form.mjs.map +1 -1
- package/fesm2022/aril-ui-img-viewer.mjs +3 -3
- package/fesm2022/aril-ui-img-viewer.mjs.map +1 -1
- package/fesm2022/aril-ui-json-diff-comparison.mjs +4 -4
- package/fesm2022/aril-ui-json-diff-comparison.mjs.map +1 -1
- package/fesm2022/aril-ui-lib.mjs +22 -22
- package/fesm2022/aril-ui-lib.mjs.map +1 -1
- package/fesm2022/aril-ui-loader.mjs +3 -3
- package/fesm2022/aril-ui-loader.mjs.map +1 -1
- package/fesm2022/aril-ui-mask.mjs +3 -3
- package/fesm2022/aril-ui-mask.mjs.map +1 -1
- package/fesm2022/aril-ui-multiSelect.mjs +3 -3
- package/fesm2022/aril-ui-multiSelect.mjs.map +1 -1
- package/fesm2022/aril-ui-number.mjs +3 -3
- package/fesm2022/aril-ui-number.mjs.map +1 -1
- package/fesm2022/aril-ui-operation-types-dialog.mjs +3 -3
- package/fesm2022/aril-ui-operation-types-dialog.mjs.map +1 -1
- package/fesm2022/aril-ui-panel.mjs +4 -4
- package/fesm2022/aril-ui-panel.mjs.map +1 -1
- package/fesm2022/aril-ui-password.mjs +3 -3
- package/fesm2022/aril-ui-password.mjs.map +1 -1
- package/fesm2022/aril-ui-pdf-viewer.mjs +3 -3
- package/fesm2022/aril-ui-pdf-viewer.mjs.map +1 -1
- package/fesm2022/aril-ui-progressbar.mjs +3 -3
- package/fesm2022/aril-ui-progressbar.mjs.map +1 -1
- package/fesm2022/aril-ui-radioButton.mjs +3 -3
- package/fesm2022/aril-ui-radioButton.mjs.map +1 -1
- package/fesm2022/aril-ui-relativeDateSelector.mjs +4 -4
- package/fesm2022/aril-ui-relativeDateSelector.mjs.map +1 -1
- package/fesm2022/aril-ui-selectBox.mjs +5 -5
- package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
- package/fesm2022/aril-ui-switch.mjs +3 -3
- package/fesm2022/aril-ui-switch.mjs.map +1 -1
- package/fesm2022/aril-ui-table-expand.mjs +14 -14
- package/fesm2022/aril-ui-table-expand.mjs.map +1 -1
- package/fesm2022/aril-ui-table.mjs +15 -15
- package/fesm2022/aril-ui-table.mjs.map +1 -1
- package/fesm2022/aril-ui-tag.mjs +3 -3
- package/fesm2022/aril-ui-tag.mjs.map +1 -1
- package/fesm2022/aril-ui-tagBox.mjs +5 -5
- package/fesm2022/aril-ui-tagBox.mjs.map +1 -1
- package/fesm2022/aril-ui-text.mjs +3 -3
- package/fesm2022/aril-ui-text.mjs.map +1 -1
- package/fesm2022/aril-ui-textArea.mjs +3 -3
- package/fesm2022/aril-ui-textArea.mjs.map +1 -1
- package/fesm2022/aril-ui-toggle-button.mjs +4 -4
- package/fesm2022/aril-ui-toggle-button.mjs.map +1 -1
- package/fesm2022/aril-ui-translate-input.mjs +6 -6
- package/fesm2022/aril-ui-translate-input.mjs.map +1 -1
- package/fesm2022/aril-ui-tree.mjs +4 -4
- package/fesm2022/aril-ui-tree.mjs.map +1 -1
- package/fesm2022/aril-ui-treeSelect.mjs +4 -4
- package/fesm2022/aril-ui-treeSelect.mjs.map +1 -1
- package/fesm2022/aril-ui-value.mjs +5 -5
- package/fesm2022/aril-ui-value.mjs.map +1 -1
- package/fesm2022/aril-util-activity.mjs +3 -3
- package/fesm2022/aril-util-activity.mjs.map +1 -1
- package/fesm2022/aril-util-block.mjs +3 -3
- package/fesm2022/aril-util-block.mjs.map +1 -1
- package/fesm2022/aril-util-directives.mjs +10 -10
- package/fesm2022/aril-util-directives.mjs.map +1 -1
- package/fesm2022/aril-util-lib.mjs +3 -3
- package/fesm2022/aril-util-lib.mjs.map +1 -1
- package/fesm2022/aril-util-pipes.mjs +18 -18
- package/fesm2022/aril-util-pipes.mjs.map +1 -1
- package/fesm2022/aril-util-primitive-extensions.mjs.map +1 -1
- package/fesm2022/aril-util-pub-sub.mjs +3 -3
- package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
- package/fesm2022/aril-util-sync-active-tab-route.mjs +4 -4
- package/fesm2022/aril-util-sync-active-tab-route.mjs.map +1 -1
- package/fesm2022/aril.mjs +9 -9
- package/fesm2022/aril.mjs.map +1 -1
- package/package.json +160 -160
- package/scripts/mf-shared.js +47 -47
- package/theme/layout/app/favorite-pages/favorite-pages-sidebar.component.d.ts +16 -0
- package/theme/layout/app/history/history-sidebar.component.d.ts +16 -0
- package/theme/layout/app/notifications/notifications-sidebar.component.d.ts +16 -0
- package/theme/layout/app/site-map/site-map-sidebar.component.d.ts +16 -0
- package/theme/layout/service/tab-session.service.ts +138 -138
- package/ui/autoComplete/src/auto-complete.component.d.ts +8 -8
- package/ui/badge/src/badge.component.d.ts +9 -9
- package/ui/button/src/button.component.d.ts +12 -12
- package/ui/calendar/src/calendar.component.d.ts +22 -22
- package/ui/charts/src/highCharts/gauge/solid-gauge.component.d.ts +3 -3
- package/ui/charts/src/highCharts/line/line-chart-datetime-axis.component.d.ts +5 -5
- package/ui/checkbox/src/check-box.component.d.ts +3 -3
- package/ui/checkbox/src/tri-state-checkbox.component.d.ts +2 -2
- package/ui/chip/src/chip.component.d.ts +7 -7
- package/ui/collapse-reorder-list/src/collapse-reorder-list.component.d.ts +4 -4
- package/ui/dxField/src/dx-field.component.d.ts +5 -5
- package/ui/editor/src/aril-editor.component.d.ts +3 -3
- package/ui/field/src/field.component.d.ts +9 -9
- package/ui/fileUpload/src/file-upload.component.d.ts +14 -14
- package/ui/form/src/form-submit-button.component.d.ts +1 -1
- package/ui/form/src/form.component.d.ts +1 -1
- package/ui/img-viewer/src/img-viewer.component.d.ts +1 -1
- package/ui/lib/src/form/form-error-message.directive.d.ts +1 -1
- package/ui/mask/src/mask.component.d.ts +6 -6
- package/ui/multiSelect/src/multi-select.component.d.ts +13 -13
- package/ui/number/src/number.component.d.ts +15 -15
- package/ui/panel/src/panel.component.d.ts +6 -6
- package/ui/password/src/password.component.d.ts +4 -4
- package/ui/pdf-viewer/src/pdf-viewer.component.d.ts +12 -12
- package/ui/progressbar/src/progressbar.component.d.ts +3 -3
- package/ui/radioButton/src/radio-button.component.d.ts +3 -3
- package/ui/selectBox/src/select-box.component.d.ts +9 -9
- package/ui/switch/src/switch.component.d.ts +1 -1
- package/ui/table/src/export-overlay-panel.component.d.ts +2 -2
- package/ui/table/src/table-column.component.d.ts +11 -11
- package/ui/table/src/table.component.d.ts +35 -35
- package/ui/table-expand/src/table-column.component.d.ts +6 -6
- package/ui/table-expand/src/table.component.d.ts +20 -20
- package/ui/tag/src/tag.component.d.ts +4 -6
- package/ui/tagBox/src/tag-box.component.d.ts +7 -7
- package/ui/text/src/text.component.d.ts +5 -5
- package/ui/textArea/src/text-area.component.d.ts +5 -5
- package/ui/toggle-button/src/toggle-button.component.d.ts +1 -1
- package/ui/translate-input/src/aril-translate-input.component.d.ts +2 -2
- package/ui/tree/src/tree.component.d.ts +8 -8
- package/ui/treeSelect/src/treeSelect.component.d.ts +12 -12
- package/ui/value/src/value.component.d.ts +15 -15
- package/ui-business/assetPicker/src/asset-picker.component.d.ts +11 -11
- package/ui-business/detailed-overlay-panel/src/detailed-overlay-panel.component.d.ts +3 -6
- package/ui-business/enumPicker/src/enum-picker.component.d.ts +23 -23
- package/ui-business/image-viewer/src/aril-image-viewer.component.d.ts +8 -8
- package/ui-business/multiple-ref-value/src/multiple-ref-value.component.d.ts +2 -5
- package/ui-business/ref-value/src/ref-value.component.d.ts +5 -5
- package/ui-business/rolePicker/src/role-picker.component.d.ts +6 -6
- package/ui-business/trace-drawer/src/trace-drawer.component.d.ts +8 -8
- package/ui-business/trace-id/src/trace-id.component.d.ts +6 -6
- package/ui-business/userPicker/src/user-picker.component.d.ts +3 -3
- package/util/block/src/block.d.ts +2 -2
- package/util/lib/src/types.d.ts +16 -0
- package/fesm2022/aril-app.component-MjG_tPEe.mjs.map +0 -1
- package/fesm2022/aril-boot-mfe-app.component-DtspQ3J8.mjs.map +0 -1
|
@@ -169,10 +169,10 @@ export class NotificationsSidebarComponent {
|
|
|
169
169
|
this.router.navigate(['mng/control-management/sms-email-audit']);
|
|
170
170
|
this.visible = false;
|
|
171
171
|
}
|
|
172
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
173
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: NotificationsSidebarComponent, isStandalone: true, selector: "app-notifications-sidebar", ngImport: i0, template: "<p-sidebar\r\n\t[(visible)]=\"visible\"\r\n\tposition=\"right\"\r\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\r\n\tstyleClass=\"layout-notifications-sidebar w-full sm:w-30rem\"\r\n\t*transloco=\"let t; read: 'notifications'\">\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"flex align-items-center justify-content-between w-full\">\r\n\t\t\t<div class=\"flex align-items-center\">\r\n\t\t\t\t<i class=\"pi pi-bell text-primary text-xl\"></i>\r\n\t\t\t\t<span class=\"font-bold text-lg\">{{ t('title') }}</span>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t<div class=\"notifications-content\">\r\n\t\t@if (notifications().length > 0) {\r\n\t\t\t<div class=\"notifications-list\">\r\n\t\t\t\t<p-scrollPanel [style]=\"{ width: '100%', height: '100%' }\">\r\n\t\t\t\t\t<div class=\"notifications-items\">\r\n\t\t\t\t\t\t@for (notification of notifications(); track trackByNotificationId($index, notification)) {\r\n\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\tclass=\"notification-item\"\r\n\t\t\t\t\t\t\t\t[class.unread-item]=\"!notification.read\"\r\n\t\t\t\t\t\t\t\t(click)=\"\r\n\t\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\t\tnotification?.detailNotificationType === DetailNotificationTypeEnum.TODO_ITEM ||\r\n\t\t\t\t\t\t\t\t\t\tnotification?.detailNotificationType === DetailNotificationTypeEnum.BATCH_JOB\r\n\t\t\t\t\t\t\t\t\t) ?\r\n\t\t\t\t\t\t\t\t\t\tmarkNotificationAsRead(notification)\r\n\t\t\t\t\t\t\t\t\t:\tnull\r\n\t\t\t\t\t\t\t\t\">\r\n\t\t\t\t\t\t\t\t<div class=\"item-content\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-header\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-title\">\r\n\t\t\t\t\t\t\t\t\t\t\t@if (notification.type === ActivityTypesEnum.SMS) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon sms-icon\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faMessage\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t@if (!notification.read) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon email-icon unread\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faEnvelope\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon email-icon read\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faEnvelopeOpen\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"title-text ml-2\">{{ getNotificationTitle(notification) }}</p>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<span class=\"notification-date\">{{ formatNotificationDate(notification.sendingDate) }}</span>\r\n\t\t\t\t\t\t\t\t\t\t@if (!notification.read) {\r\n\t\t\t\t\t\t\t\t\t\t\t<fa-icon\r\n\t\t\t\t\t\t\t\t\t\t\t\t[icon]=\"solidIcons.faCircle\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tclass=\"unread-dot\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[pTooltip]=\"t('markAsRead')\"\r\n\t\t\t\t\t\t\t\t\t\t\t\ttooltipPosition=\"left\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(click)=\"markNotificationAsReadOnDotIcon(notification); $event.stopPropagation()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</fa-icon>\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-meta\"></div>\r\n\t\t\t\t\t\t\t\t\t@if (getNotificationContent(notification)) {\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-content-preview\">\r\n\t\t\t\t\t\t\t\t\t\t\t@if (notification.type === ActivityTypesEnum.EMAIL) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div [innerHTML]=\"notification.content | safe: 'html'\" class=\"html-preview line-clamp-3\"></div>\r\n\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<p class=\"text-content\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ getNotificationContent(notification) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-scrollPanel>\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<div class=\"empty-state\">\r\n\t\t\t\t<div class=\"empty-content\">\r\n\t\t\t\t\t<i class=\"pi pi-bell empty-icon\"></i>\r\n\t\t\t\t\t<h3 class=\"empty-title\">{{ t('noNotifications') }}</h3>\r\n\t\t\t\t\t<p class=\"empty-message\">{{ t('noNotificationsDescription') }}</p>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t}\r\n\r\n\t\t<div class=\"flex justify-content-center p-2 border-top-1 surface-border\">\r\n\t\t\t<aril-button\r\n\t\t\t\t[label]=\"t('allShow')\"\r\n\t\t\t\ticon=\"EXTERNAL_LINK\"\r\n\t\t\t\tcolor=\"primary\"\r\n\t\t\t\tsize=\"md\"\r\n\t\t\t\t(clickEvent)=\"navigateToAllNotifications()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<p-confirmDialog></p-confirmDialog>\r\n</p-sidebar>\r\n", styles: [":host ::ng-deep .layout-notifications-sidebar .p-sidebar-content{padding:0;background:var(--surface-ground)}:host ::ng-deep .layout-notifications-sidebar .p-sidebar-header{background:var(--primary-color);color:var(--primary-color-text);padding:1rem 1.5rem}:host ::ng-deep .layout-notifications-sidebar .p-sidebar-header span{font-size:1.1rem;font-weight:600}.notifications-content{display:flex;flex-direction:column;height:100%;background:var(--surface-0)}.add-section{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid var(--surface-border);background:var(--surface-0)}.notifications-list{flex:1;overflow:hidden}.notifications-items{padding:0}.notification-item{background:transparent;border-bottom:1px solid var(--surface-border);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background:var(--surface-hover)}.notification-item:last-child{border-bottom:none}.notification-item.unread-item{background:var(--surface-50)}.notification-item.unread-item:hover{background:var(--surface-100)}.notification-item.unread-item .title-text{font-weight:500}.item-content{padding:1.125rem 1rem}.item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem;gap:1rem}.item-title{display:flex;align-items:center;flex:1;min-width:0;gap:.4em}.item-title .notification-icon{width:1.75rem;height:1.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.item-title .notification-icon fa-icon{font-size:.875rem;transition:all .2s ease}.item-title .notification-icon.email-icon.unread{background-color:#3b82f6;color:#fff;box-shadow:0 1px 4px #00000026}.item-title .notification-icon.email-icon.unread fa-icon{color:#fff}.item-title .notification-icon.email-icon.read{background:var(--surface-200);color:var(--text-color-secondary)}.item-title .notification-icon.email-icon.read fa-icon{color:var(--text-color-secondary)}.item-title .notification-icon.sms-icon{background:linear-gradient(135deg,var(--green-500),var(--green-600));color:#fff;box-shadow:0 2px 8px #22c55e40}.item-title .notification-icon.sms-icon fa-icon{color:#fff}.item-title .title-text{font-weight:500;line-height:1.5;font-size:.975rem;margin:0}.notification-date{font-size:.8rem;color:var(--text-color-secondary);font-weight:500;white-space:nowrap;background:var(--surface-100);padding:.2rem .4rem;border-radius:.25rem}.item-content-preview{margin-top:.625rem;color:var(--text-color-secondary);padding-left:1.5rem;border-left:2px solid var(--surface-200)}.item-content-preview .text-content{font-size:.875rem;line-height:1.5;margin:0;font-style:italic}.item-content-preview .html-preview{font-size:.875rem;line-height:1.5;max-height:75px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;word-break:break-word;white-space:normal;font-style:italic}.empty-state{display:flex;align-items:center;justify-content:center;flex:1;padding:2rem}.empty-state .empty-content{text-align:center}.empty-state .empty-content .empty-icon{font-size:4rem;color:var(--text-color-secondary);opacity:.3;margin-bottom:1rem}.empty-state .empty-content .empty-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin-bottom:.5rem}.empty-state .empty-content .empty-message{color:var(--text-color-secondary);margin:0}.unread-dot{color:#3b82f6;font-size:.625rem;cursor:pointer;transition:opacity .2s ease;opacity:.8}.unread-dot:hover{opacity:1}@media (max-width: 768px){.layout-notifications-sidebar ::ng-deep .p-sidebar{width:100%!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: SidebarModule }, { kind: "component", type: i6.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ScrollPanelModule }, { kind: "component", type: i8.ScrollPanel, selector: "p-scrollPanel", inputs: ["style", "styleClass", "step"] }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i9.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "ngmodule", type: PaginatorModule }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i10.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i11.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "pipe", type: SafePipe, name: "safe" }] }); }
|
|
172
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NotificationsSidebarComponent, deps: [{ token: i1.LayoutService }, { token: i2.NotificationsService }, { token: i3.TranslocoService }, { token: i4.Router }, { token: i5.KeycloakService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
173
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: NotificationsSidebarComponent, isStandalone: true, selector: "app-notifications-sidebar", ngImport: i0, template: "<p-sidebar\r\n\t[(visible)]=\"visible\"\r\n\tposition=\"right\"\r\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\r\n\tstyleClass=\"layout-notifications-sidebar w-full sm:w-30rem\"\r\n\t*transloco=\"let t; read: 'notifications'\">\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"flex align-items-center justify-content-between w-full\">\r\n\t\t\t<div class=\"flex align-items-center\">\r\n\t\t\t\t<i class=\"pi pi-bell text-primary text-xl\"></i>\r\n\t\t\t\t<span class=\"font-bold text-lg\">{{ t('title') }}</span>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t<div class=\"notifications-content\">\r\n\t\t@if (notifications().length > 0) {\r\n\t\t\t<div class=\"notifications-list\">\r\n\t\t\t\t<p-scrollPanel [style]=\"{ width: '100%', height: '100%' }\">\r\n\t\t\t\t\t<div class=\"notifications-items\">\r\n\t\t\t\t\t\t@for (notification of notifications(); track trackByNotificationId($index, notification)) {\r\n\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\tclass=\"notification-item\"\r\n\t\t\t\t\t\t\t\t[class.unread-item]=\"!notification.read\"\r\n\t\t\t\t\t\t\t\t(click)=\"\r\n\t\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\t\tnotification?.detailNotificationType === DetailNotificationTypeEnum.TODO_ITEM ||\r\n\t\t\t\t\t\t\t\t\t\tnotification?.detailNotificationType === DetailNotificationTypeEnum.BATCH_JOB\r\n\t\t\t\t\t\t\t\t\t) ?\r\n\t\t\t\t\t\t\t\t\t\tmarkNotificationAsRead(notification)\r\n\t\t\t\t\t\t\t\t\t:\tnull\r\n\t\t\t\t\t\t\t\t\">\r\n\t\t\t\t\t\t\t\t<div class=\"item-content\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-header\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-title\">\r\n\t\t\t\t\t\t\t\t\t\t\t@if (notification.type === ActivityTypesEnum.SMS) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon sms-icon\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faMessage\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t@if (!notification.read) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon email-icon unread\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faEnvelope\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon email-icon read\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faEnvelopeOpen\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"title-text ml-2\">{{ getNotificationTitle(notification) }}</p>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<span class=\"notification-date\">{{ formatNotificationDate(notification.sendingDate) }}</span>\r\n\t\t\t\t\t\t\t\t\t\t@if (!notification.read) {\r\n\t\t\t\t\t\t\t\t\t\t\t<fa-icon\r\n\t\t\t\t\t\t\t\t\t\t\t\t[icon]=\"solidIcons.faCircle\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tclass=\"unread-dot\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[pTooltip]=\"t('markAsRead')\"\r\n\t\t\t\t\t\t\t\t\t\t\t\ttooltipPosition=\"left\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(click)=\"markNotificationAsReadOnDotIcon(notification); $event.stopPropagation()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</fa-icon>\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-meta\"></div>\r\n\t\t\t\t\t\t\t\t\t@if (getNotificationContent(notification)) {\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-content-preview\">\r\n\t\t\t\t\t\t\t\t\t\t\t@if (notification.type === ActivityTypesEnum.EMAIL) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div [innerHTML]=\"notification.content | safe: 'html'\" class=\"html-preview line-clamp-3\"></div>\r\n\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<p class=\"text-content\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ getNotificationContent(notification) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-scrollPanel>\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<div class=\"empty-state\">\r\n\t\t\t\t<div class=\"empty-content\">\r\n\t\t\t\t\t<i class=\"pi pi-bell empty-icon\"></i>\r\n\t\t\t\t\t<h3 class=\"empty-title\">{{ t('noNotifications') }}</h3>\r\n\t\t\t\t\t<p class=\"empty-message\">{{ t('noNotificationsDescription') }}</p>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t}\r\n\r\n\t\t<div class=\"flex justify-content-center p-2 border-top-1 surface-border\">\r\n\t\t\t<aril-button\r\n\t\t\t\t[label]=\"t('allShow')\"\r\n\t\t\t\ticon=\"EXTERNAL_LINK\"\r\n\t\t\t\tcolor=\"primary\"\r\n\t\t\t\tsize=\"md\"\r\n\t\t\t\t(clickEvent)=\"navigateToAllNotifications()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<p-confirmDialog></p-confirmDialog>\r\n</p-sidebar>\r\n", styles: [":host ::ng-deep .layout-notifications-sidebar .p-sidebar-content{padding:0;background:var(--surface-ground)}:host ::ng-deep .layout-notifications-sidebar .p-sidebar-header{background:var(--primary-color);color:var(--primary-color-text);padding:1rem 1.5rem}:host ::ng-deep .layout-notifications-sidebar .p-sidebar-header span{font-size:1.1rem;font-weight:600}.notifications-content{display:flex;flex-direction:column;height:100%;background:var(--surface-0)}.add-section{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid var(--surface-border);background:var(--surface-0)}.notifications-list{flex:1;overflow:hidden}.notifications-items{padding:0}.notification-item{background:transparent;border-bottom:1px solid var(--surface-border);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background:var(--surface-hover)}.notification-item:last-child{border-bottom:none}.notification-item.unread-item{background:var(--surface-50)}.notification-item.unread-item:hover{background:var(--surface-100)}.notification-item.unread-item .title-text{font-weight:500}.item-content{padding:1.125rem 1rem}.item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem;gap:1rem}.item-title{display:flex;align-items:center;flex:1;min-width:0;gap:.4em}.item-title .notification-icon{width:1.75rem;height:1.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.item-title .notification-icon fa-icon{font-size:.875rem;transition:all .2s ease}.item-title .notification-icon.email-icon.unread{background-color:#3b82f6;color:#fff;box-shadow:0 1px 4px #00000026}.item-title .notification-icon.email-icon.unread fa-icon{color:#fff}.item-title .notification-icon.email-icon.read{background:var(--surface-200);color:var(--text-color-secondary)}.item-title .notification-icon.email-icon.read fa-icon{color:var(--text-color-secondary)}.item-title .notification-icon.sms-icon{background:linear-gradient(135deg,var(--green-500),var(--green-600));color:#fff;box-shadow:0 2px 8px #22c55e40}.item-title .notification-icon.sms-icon fa-icon{color:#fff}.item-title .title-text{font-weight:500;line-height:1.5;font-size:.975rem;margin:0}.notification-date{font-size:.8rem;color:var(--text-color-secondary);font-weight:500;white-space:nowrap;background:var(--surface-100);padding:.2rem .4rem;border-radius:.25rem}.item-content-preview{margin-top:.625rem;color:var(--text-color-secondary);padding-left:1.5rem;border-left:2px solid var(--surface-200)}.item-content-preview .text-content{font-size:.875rem;line-height:1.5;margin:0;font-style:italic}.item-content-preview .html-preview{font-size:.875rem;line-height:1.5;max-height:75px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;word-break:break-word;white-space:normal;font-style:italic}.empty-state{display:flex;align-items:center;justify-content:center;flex:1;padding:2rem}.empty-state .empty-content{text-align:center}.empty-state .empty-content .empty-icon{font-size:4rem;color:var(--text-color-secondary);opacity:.3;margin-bottom:1rem}.empty-state .empty-content .empty-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin-bottom:.5rem}.empty-state .empty-content .empty-message{color:var(--text-color-secondary);margin:0}.unread-dot{color:#3b82f6;font-size:.625rem;cursor:pointer;transition:opacity .2s ease;opacity:.8}.unread-dot:hover{opacity:1}@media (max-width: 768px){.layout-notifications-sidebar ::ng-deep .p-sidebar{width:100%!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: SidebarModule }, { kind: "component", type: i6.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: ScrollPanelModule }, { kind: "component", type: i8.ScrollPanel, selector: "p-scrollPanel", inputs: ["style", "styleClass", "step"] }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i9.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "ngmodule", type: PaginatorModule }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "directive", type: i3.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i10.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i11.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "spin", "pulse", "mask", "styles", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "classes", "transform", "a11yRole"] }, { kind: "pipe", type: SafePipe, name: "safe" }] }); }
|
|
174
174
|
}
|
|
175
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
175
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NotificationsSidebarComponent, decorators: [{
|
|
176
176
|
type: Component,
|
|
177
177
|
args: [{ standalone: true, selector: 'app-notifications-sidebar', imports: [
|
|
178
178
|
CommonModule,
|
|
@@ -188,4 +188,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
188
188
|
SafePipe
|
|
189
189
|
], template: "<p-sidebar\r\n\t[(visible)]=\"visible\"\r\n\tposition=\"right\"\r\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\r\n\tstyleClass=\"layout-notifications-sidebar w-full sm:w-30rem\"\r\n\t*transloco=\"let t; read: 'notifications'\">\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"flex align-items-center justify-content-between w-full\">\r\n\t\t\t<div class=\"flex align-items-center\">\r\n\t\t\t\t<i class=\"pi pi-bell text-primary text-xl\"></i>\r\n\t\t\t\t<span class=\"font-bold text-lg\">{{ t('title') }}</span>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t<div class=\"notifications-content\">\r\n\t\t@if (notifications().length > 0) {\r\n\t\t\t<div class=\"notifications-list\">\r\n\t\t\t\t<p-scrollPanel [style]=\"{ width: '100%', height: '100%' }\">\r\n\t\t\t\t\t<div class=\"notifications-items\">\r\n\t\t\t\t\t\t@for (notification of notifications(); track trackByNotificationId($index, notification)) {\r\n\t\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t\tclass=\"notification-item\"\r\n\t\t\t\t\t\t\t\t[class.unread-item]=\"!notification.read\"\r\n\t\t\t\t\t\t\t\t(click)=\"\r\n\t\t\t\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t\t\t\tnotification?.detailNotificationType === DetailNotificationTypeEnum.TODO_ITEM ||\r\n\t\t\t\t\t\t\t\t\t\tnotification?.detailNotificationType === DetailNotificationTypeEnum.BATCH_JOB\r\n\t\t\t\t\t\t\t\t\t) ?\r\n\t\t\t\t\t\t\t\t\t\tmarkNotificationAsRead(notification)\r\n\t\t\t\t\t\t\t\t\t:\tnull\r\n\t\t\t\t\t\t\t\t\">\r\n\t\t\t\t\t\t\t\t<div class=\"item-content\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-header\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-title\">\r\n\t\t\t\t\t\t\t\t\t\t\t@if (notification.type === ActivityTypesEnum.SMS) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon sms-icon\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faMessage\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t@if (!notification.read) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon email-icon unread\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faEnvelope\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"notification-icon email-icon read\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<fa-icon [icon]=\"regularIcons.faEnvelopeOpen\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"title-text ml-2\">{{ getNotificationTitle(notification) }}</p>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<span class=\"notification-date\">{{ formatNotificationDate(notification.sendingDate) }}</span>\r\n\t\t\t\t\t\t\t\t\t\t@if (!notification.read) {\r\n\t\t\t\t\t\t\t\t\t\t\t<fa-icon\r\n\t\t\t\t\t\t\t\t\t\t\t\t[icon]=\"solidIcons.faCircle\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tclass=\"unread-dot\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[pTooltip]=\"t('markAsRead')\"\r\n\t\t\t\t\t\t\t\t\t\t\t\ttooltipPosition=\"left\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(click)=\"markNotificationAsReadOnDotIcon(notification); $event.stopPropagation()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</fa-icon>\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item-meta\"></div>\r\n\t\t\t\t\t\t\t\t\t@if (getNotificationContent(notification)) {\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item-content-preview\">\r\n\t\t\t\t\t\t\t\t\t\t\t@if (notification.type === ActivityTypesEnum.EMAIL) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div [innerHTML]=\"notification.content | safe: 'html'\" class=\"html-preview line-clamp-3\"></div>\r\n\t\t\t\t\t\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t\t\t\t\t\t<p class=\"text-content\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{{ getNotificationContent(notification) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</p-scrollPanel>\r\n\t\t\t</div>\r\n\t\t} @else {\r\n\t\t\t<div class=\"empty-state\">\r\n\t\t\t\t<div class=\"empty-content\">\r\n\t\t\t\t\t<i class=\"pi pi-bell empty-icon\"></i>\r\n\t\t\t\t\t<h3 class=\"empty-title\">{{ t('noNotifications') }}</h3>\r\n\t\t\t\t\t<p class=\"empty-message\">{{ t('noNotificationsDescription') }}</p>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t}\r\n\r\n\t\t<div class=\"flex justify-content-center p-2 border-top-1 surface-border\">\r\n\t\t\t<aril-button\r\n\t\t\t\t[label]=\"t('allShow')\"\r\n\t\t\t\ticon=\"EXTERNAL_LINK\"\r\n\t\t\t\tcolor=\"primary\"\r\n\t\t\t\tsize=\"md\"\r\n\t\t\t\t(clickEvent)=\"navigateToAllNotifications()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<p-confirmDialog></p-confirmDialog>\r\n</p-sidebar>\r\n", styles: [":host ::ng-deep .layout-notifications-sidebar .p-sidebar-content{padding:0;background:var(--surface-ground)}:host ::ng-deep .layout-notifications-sidebar .p-sidebar-header{background:var(--primary-color);color:var(--primary-color-text);padding:1rem 1.5rem}:host ::ng-deep .layout-notifications-sidebar .p-sidebar-header span{font-size:1.1rem;font-weight:600}.notifications-content{display:flex;flex-direction:column;height:100%;background:var(--surface-0)}.add-section{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid var(--surface-border);background:var(--surface-0)}.notifications-list{flex:1;overflow:hidden}.notifications-items{padding:0}.notification-item{background:transparent;border-bottom:1px solid var(--surface-border);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background:var(--surface-hover)}.notification-item:last-child{border-bottom:none}.notification-item.unread-item{background:var(--surface-50)}.notification-item.unread-item:hover{background:var(--surface-100)}.notification-item.unread-item .title-text{font-weight:500}.item-content{padding:1.125rem 1rem}.item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem;gap:1rem}.item-title{display:flex;align-items:center;flex:1;min-width:0;gap:.4em}.item-title .notification-icon{width:1.75rem;height:1.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.item-title .notification-icon fa-icon{font-size:.875rem;transition:all .2s ease}.item-title .notification-icon.email-icon.unread{background-color:#3b82f6;color:#fff;box-shadow:0 1px 4px #00000026}.item-title .notification-icon.email-icon.unread fa-icon{color:#fff}.item-title .notification-icon.email-icon.read{background:var(--surface-200);color:var(--text-color-secondary)}.item-title .notification-icon.email-icon.read fa-icon{color:var(--text-color-secondary)}.item-title .notification-icon.sms-icon{background:linear-gradient(135deg,var(--green-500),var(--green-600));color:#fff;box-shadow:0 2px 8px #22c55e40}.item-title .notification-icon.sms-icon fa-icon{color:#fff}.item-title .title-text{font-weight:500;line-height:1.5;font-size:.975rem;margin:0}.notification-date{font-size:.8rem;color:var(--text-color-secondary);font-weight:500;white-space:nowrap;background:var(--surface-100);padding:.2rem .4rem;border-radius:.25rem}.item-content-preview{margin-top:.625rem;color:var(--text-color-secondary);padding-left:1.5rem;border-left:2px solid var(--surface-200)}.item-content-preview .text-content{font-size:.875rem;line-height:1.5;margin:0;font-style:italic}.item-content-preview .html-preview{font-size:.875rem;line-height:1.5;max-height:75px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;word-break:break-word;white-space:normal;font-style:italic}.empty-state{display:flex;align-items:center;justify-content:center;flex:1;padding:2rem}.empty-state .empty-content{text-align:center}.empty-state .empty-content .empty-icon{font-size:4rem;color:var(--text-color-secondary);opacity:.3;margin-bottom:1rem}.empty-state .empty-content .empty-title{font-size:1.25rem;font-weight:600;color:var(--text-color);margin-bottom:.5rem}.empty-state .empty-content .empty-message{color:var(--text-color-secondary);margin:0}.unread-dot{color:#3b82f6;font-size:.625rem;cursor:pointer;transition:opacity .2s ease;opacity:.8}.unread-dot:hover{opacity:1}@media (max-width: 768px){.layout-notifications-sidebar ::ng-deep .p-sidebar{width:100%!important}}\n"] }]
|
|
190
190
|
}], ctorParameters: () => [{ type: i1.LayoutService }, { type: i2.NotificationsService }, { type: i3.TranslocoService }, { type: i4.Router }, { type: i5.KeycloakService }] });
|
|
191
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1zaWRlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXNpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztB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Q0FDRyxJQUFJLFlBQ04sMkJBQTJCLFdBQzVCO3dCQUNSLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsUUFBUTtxQkFDUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBlZmZlY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IEJhZGdlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9iYWRnZSc7XHJcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dNb2R1bGUgfSBmcm9tICdwcmltZW5nL2NvbmZpcm1kaWFsb2cnO1xyXG5pbXBvcnQgeyBQYWdpbmF0b3JNb2R1bGUgfSBmcm9tICdwcmltZW5nL3BhZ2luYXRvcic7XHJcbmltcG9ydCB7IFNjcm9sbFBhbmVsTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zY3JvbGxwYW5lbCc7XHJcbmltcG9ydCB7IFNpZGViYXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL3NpZGViYXInO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xyXG5pbXBvcnQgeyBUcmFuc2xvY29Nb2R1bGUsIFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XHJcbmltcG9ydCB7IEtleWNsb2FrU2VydmljZSB9IGZyb20gJ2tleWNsb2FrLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgcmVndWxhckljb25zLCBzb2xpZEljb25zIH0gZnJvbSAnYXJpbC91dGlsL2xpYic7XHJcbmltcG9ydCB7IFNhZmVQaXBlIH0gZnJvbSAnYXJpbC91dGlsL3BpcGVzJztcclxuXHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjdGl2aXR5VHlwZXNFbnVtLCBEZXRhaWxOb3RpZmljYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaW50ZXJmYWNlcy9lbnVtJztcclxuaW1wb3J0IHsgU21zRW1haWxBdWRpdFJlc3BvbnNlRFRPIH0gZnJvbSAnLi4vLi4vc2VydmljZS9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2Uvbm90aWZpY2F0aW9ucy5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtbm90aWZpY2F0aW9ucy1zaWRlYmFyJyxcclxuXHRpbXBvcnRzOiBbXHJcblx0XHRDb21tb25Nb2R1bGUsXHJcblx0XHRTaWRlYmFyTW9kdWxlLFxyXG5cdFx0U2Nyb2xsUGFuZWxNb2R1bGUsXHJcblx0XHRDb25maXJtRGlhbG9nTW9kdWxlLFxyXG5cdFx0UGFnaW5hdG9yTW9kdWxlLFxyXG5cdFx0QnV0dG9uQ29tcG9uZW50LFxyXG5cdFx0VHJhbnNsb2NvTW9kdWxlLFxyXG5cdFx0VG9vbHRpcE1vZHVsZSxcclxuXHRcdEJhZGdlTW9kdWxlLFxyXG5cdFx0Rm9udEF3ZXNvbWVNb2R1bGUsXHJcblx0XHRTYWZlUGlwZVxyXG5cdF0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbnMtc2lkZWJhci5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vbm90aWZpY2F0aW9ucy1zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbnNTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRub3RpZmljYXRpb25zID0gc2lnbmFsPFNtc0VtYWlsQXVkaXRSZXNwb25zZURUT1tdPihbXSk7XHJcblx0c2VsZWN0ZWROb3RpZmljYXRpb246IFNtc0VtYWlsQXVkaXRSZXNwb25zZURUTyB8IG51bGwgPSBudWxsO1xyXG5cclxuXHRBY3Rpdml0eVR5cGVzRW51bSA9IEFjdGl2aXR5VHlwZXNFbnVtO1xyXG5cdERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtID0gRGV0YWlsTm90aWZpY2F0aW9uVHlwZUVudW07XHJcblxyXG5cdHJlZ3VsYXJJY29ucyA9IHJlZ3VsYXJJY29ucztcclxuXHRzb2xpZEljb25zID0gc29saWRJY29ucztcclxuXHJcblx0b25lTW9udGhBZ28gPSBuZXcgRGF0ZShuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIDMwICogMjQgKiA2MCAqIDYwICogMTAwMCk7XHJcblxyXG5cdHByaXZhdGUgc3ViamVjdHMgPSB7XHJcblx0XHRtYXJrQXNSZWFkOiBuZXcgU3ViamVjdDxzdHJpbmc+KCksXHJcblx0XHRsb2FkTm90aWZpY2F0aW9uczogbmV3IFN1YmplY3Q8dm9pZD4oKVxyXG5cdH07XHJcblxyXG5cdG1hcmtBc1JlYWRTZXJ2aWNlID0gdG9TaWduYWwoXHJcblx0XHR0aGlzLnN1YmplY3RzLm1hcmtBc1JlYWQucGlwZShzd2l0Y2hNYXAoKGlkKSA9PiB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLm1hcmtBc1JlYWROb3RpZmljYXRpb24oaWQpKSlcclxuXHQpO1xyXG5cclxuXHRnZXQgZ2V0VXNlclBob25lcygpOiBzdHJpbmdbXSB7XHJcblx0XHRjb25zdCBwaG9uZXMgPSB0aGlzLmtleWNsb2FrLmdldEtleWNsb2FrSW5zdGFuY2UoKS5wcm9maWxlPy5hdHRyaWJ1dGVzPy5bJ3Bob25lJ107XHJcblx0XHRpZiAocGhvbmVzICYmIEFycmF5LmlzQXJyYXkocGhvbmVzKSkge1xyXG5cdFx0XHRyZXR1cm4gcGhvbmVzO1xyXG5cdFx0fSBlbHNlIGlmIChwaG9uZXMgJiYgdHlwZW9mIHBob25lcyA9PT0gJ3N0cmluZycpIHtcclxuXHRcdFx0cmV0dXJuIFtwaG9uZXNdO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIFtdO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldFVzZXJNYWlsKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMua2V5Y2xvYWsuZ2V0S2V5Y2xvYWtJbnN0YW5jZSgpLnByb2ZpbGU/LmVtYWlsIGFzIHN0cmluZztcclxuXHR9XHJcblxyXG5cdGxvYWROb3RpZmljYXRpb25zU2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5sb2FkTm90aWZpY2F0aW9ucy5waXBlKFxyXG5cdFx0XHRzd2l0Y2hNYXAoKCkgPT5cclxuXHRcdFx0XHR0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLmdldE5vdGlmaWNhdGlvbnMoe1xyXG5cdFx0XHRcdFx0cGFnZXI6IHtcclxuXHRcdFx0XHRcdFx0cGFnZVNpemU6IDEwLFxyXG5cdFx0XHRcdFx0XHRwYWdlTnVtYmVyOiAxXHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0c3RhcnREYXRlOiB0aGlzLm9uZU1vbnRoQWdvLmRhdGVUb0xvbmcoJ3RpbWUnKSB8fCAwLFxyXG5cdFx0XHRcdFx0ZW5kRGF0ZTogbmV3IERhdGUoKS5kYXRlVG9Mb25nKCd0aW1lJykgfHwgMCxcclxuXHRcdFx0XHRcdHJlYWQ6IGZhbHNlLFxyXG5cdFx0XHRcdFx0dG9MaXN0OiBbdGhpcy5nZXRVc2VyTWFpbCwgLi4udGhpcy5nZXRVc2VyUGhvbmVzXSxcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHQpXHJcblx0XHQpXHJcblx0KTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uc1NlcnZpY2U6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkga2V5Y2xvYWs6IEtleWNsb2FrU2VydmljZVxyXG5cdCkge1xyXG5cdFx0dGhpcy5pbml0aWFsaXplRWZmZWN0cygpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmxvYWROb3RpZmljYXRpb25zKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGxvYWROb3RpZmljYXRpb25zKCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zdWJqZWN0cy5sb2FkTm90aWZpY2F0aW9ucy5uZXh0KCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRpYWxpemVFZmZlY3RzKCk6IHZvaWQge1xyXG5cdFx0ZWZmZWN0KFxyXG5cdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMubG9hZE5vdGlmaWNhdGlvbnNTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLm5vdGlmaWNhdGlvbnMuc2V0KHNlcnZpY2UucmVzcG9uc2UucmVzdWx0KTtcclxuXHRcdFx0XHRcdC8vIFVwZGF0ZSB1bnJlYWQgY291bnQgaW4gbGF5b3V0U2VydmljZVxyXG5cdFx0XHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLnNldFVucmVhZE5vdGlmaWNhdGlvbkNvdW50KHNlcnZpY2U/LnJlc3BvbnNlLnJlc3VsdEluZm8udG90YWxJdGVtIHx8IDApO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcblx0XHQpO1xyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMubWFya0FzUmVhZFNlcnZpY2UoKTtcclxuXHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0dGhpcy5sb2FkTm90aWZpY2F0aW9ucygpO1xyXG5cclxuXHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZE5vdGlmaWNhdGlvbj8uZGV0YWlsTm90aWZpY2F0aW9uVHlwZSA9PT0gRGV0YWlsTm90aWZpY2F0aW9uVHlwZUVudW0uVE9ET19JVEVNKSB7XHJcblx0XHRcdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYG1uZy90b2RvLXRhc2tzL2RldGFpbC8ke3RoaXMuc2VsZWN0ZWROb3RpZmljYXRpb24/LnJlZmVyZW5jZUlkfWBdKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Z2V0IHZpc2libGUoKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLm5vdGlmaWNhdGlvbnNTaWRlYmFyVmlzaWJsZTtcclxuXHR9XHJcblxyXG5cdHNldCB2aXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XHJcblx0XHR0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUubm90aWZpY2F0aW9uc1NpZGViYXJWaXNpYmxlID0gdmFsdWU7XHJcblx0fVxyXG5cclxuXHRtYXJrTm90aWZpY2F0aW9uQXNSZWFkKG5vdGlmaWNhdGlvbjogU21zRW1haWxBdWRpdFJlc3BvbnNlRFRPKTogdm9pZCB7XHJcblx0XHR0aGlzLnNlbGVjdGVkTm90aWZpY2F0aW9uID0gbm90aWZpY2F0aW9uO1xyXG5cdFx0dGhpcy5zdWJqZWN0cy5tYXJrQXNSZWFkLm5leHQobm90aWZpY2F0aW9uLmlkKTtcclxuXHRcdHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG5cclxuXHRcdGlmIChub3RpZmljYXRpb24/LmRldGFpbE5vdGlmaWNhdGlvblR5cGUgPT09IERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtLlRPRE9fSVRFTSkge1xyXG5cdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYG1uZy90b2RvLXRhc2tzL2RldGFpbC8ke25vdGlmaWNhdGlvbj8ucmVmZXJlbmNlSWR9YF0pO1xyXG5cdFx0fSBlbHNlIGlmIChub3RpZmljYXRpb24/LmRldGFpbE5vdGlmaWNhdGlvblR5cGUgPT09IERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtLkJBVENIX0pPQikge1xyXG5cdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYG1uZy9idWxrLW9wZXJhdGlvbnMvJHtub3RpZmljYXRpb24/LnJlZmVyZW5jZUlkfWBdKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG1hcmtOb3RpZmljYXRpb25Bc1JlYWRPbkRvdEljb24obm90aWZpY2F0aW9uOiBTbXNFbWFpbEF1ZGl0UmVzcG9uc2VEVE8pOiB2b2lkIHtcclxuXHRcdGlmICghbm90aWZpY2F0aW9uLnJlYWQpIHtcclxuXHRcdFx0dGhpcy5zdWJqZWN0cy5tYXJrQXNSZWFkLm5leHQobm90aWZpY2F0aW9uLmlkKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHRyYWNrQnlOb3RpZmljYXRpb25JZChpbmRleDogbnVtYmVyLCBub3RpZmljYXRpb246IFNtc0VtYWlsQXVkaXRSZXNwb25zZURUTyk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gbm90aWZpY2F0aW9uLmlkO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm90aWZpY2F0aW9uVGl0bGUobm90aWZpY2F0aW9uOiBTbXNFbWFpbEF1ZGl0UmVzcG9uc2VEVE8pOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuIG5vdGlmaWNhdGlvbi50ZW1wbGF0ZVRpdGxlIHx8IG5vdGlmaWNhdGlvbi50ZW1wbGF0ZUNvZGUgfHwgJyc7XHJcblx0fVxyXG5cclxuXHRnZXROb3RpZmljYXRpb25Db250ZW50KG5vdGlmaWNhdGlvbjogU21zRW1haWxBdWRpdFJlc3BvbnNlRFRPKTogc3RyaW5nIHtcclxuXHRcdGNvbnN0IHRydW5jYXRlZCA9XHJcblx0XHRcdG5vdGlmaWNhdGlvbi5jb250ZW50Py5sZW5ndGghID4gMjAwID8gbm90aWZpY2F0aW9uLmNvbnRlbnQ/LnN1YnN0cmluZygwLCAyMDApICsgJy4uLicgOiBub3RpZmljYXRpb24uY29udGVudDtcclxuXHRcdHJldHVybiB0cnVuY2F0ZWQgfHwgJyc7XHJcblx0fVxyXG5cclxuXHRmb3JtYXROb3RpZmljYXRpb25EYXRlKHN0YXJ0RGF0ZTogbnVtYmVyIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcclxuXHRcdGlmICghc3RhcnREYXRlKSB7XHJcblx0XHRcdHJldHVybiAnJztcclxuXHRcdH1cclxuXHRcdGNvbnN0IGRhdGVTdHIgPSBzdGFydERhdGUudG9TdHJpbmcoKTtcclxuXHRcdGNvbnN0IHllYXIgPSBwYXJzZUludChkYXRlU3RyLnN1YnN0cmluZygwLCA0KSk7XHJcblx0XHRjb25zdCBtb250aCA9IHBhcnNlSW50KGRhdGVTdHIuc3Vic3RyaW5nKDQsIDYpKSAtIDE7XHJcblx0XHRjb25zdCBkYXkgPSBwYXJzZUludChkYXRlU3RyLnN1YnN0cmluZyg2LCA4KSk7XHJcblx0XHRjb25zdCBob3VyID0gcGFyc2VJbnQoZGF0ZVN0ci5zdWJzdHJpbmcoOCwgMTApKTtcclxuXHRcdGNvbnN0IG1pbnV0ZSA9IHBhcnNlSW50KGRhdGVTdHIuc3Vic3RyaW5nKDEwLCAxMikpO1xyXG5cdFx0Y29uc3Qgc2Vjb25kID0gcGFyc2VJbnQoZGF0ZVN0ci5zdWJzdHJpbmcoMTIsIDE0KSk7XHJcblxyXG5cdFx0Y29uc3Qgbm90aWZpY2F0aW9uRGF0ZSA9IG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1pbnV0ZSwgc2Vjb25kKTtcclxuXHRcdGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XHJcblx0XHRjb25zdCBkaWZmTXMgPSBub3cuZ2V0VGltZSgpIC0gbm90aWZpY2F0aW9uRGF0ZS5nZXRUaW1lKCk7XHJcblxyXG5cdFx0Y29uc3QgZGlmZk1pbnV0ZXMgPSBNYXRoLmZsb29yKGRpZmZNcyAvICgxMDAwICogNjApKTtcclxuXHRcdGNvbnN0IGRpZmZIb3VycyA9IE1hdGguZmxvb3IoZGlmZk1zIC8gKDEwMDAgKiA2MCAqIDYwKSk7XHJcblx0XHRjb25zdCBkaWZmRGF5cyA9IE1hdGguZmxvb3IoZGlmZk1zIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKTtcclxuXHRcdGNvbnN0IGRpZmZXZWVrcyA9IE1hdGguZmxvb3IoZGlmZkRheXMgLyA3KTtcclxuXHRcdGNvbnN0IGRpZmZNb250aHMgPSBNYXRoLmZsb29yKGRpZmZEYXlzIC8gMzApO1xyXG5cclxuXHRcdGlmIChkaWZmTWludXRlcyA8IDEpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ25vdGlmaWNhdGlvbnMudGltZS5qdXN0Tm93Jyk7XHJcblx0XHR9IGVsc2UgaWYgKGRpZmZNaW51dGVzIDwgNjApIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ25vdGlmaWNhdGlvbnMudGltZS5taW51dGVzQWdvJywgeyBjb3VudDogZGlmZk1pbnV0ZXMgfSk7XHJcblx0XHR9IGVsc2UgaWYgKGRpZmZIb3VycyA8IDI0KSB7XHJcblx0XHRcdHJldHVybiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdub3RpZmljYXRpb25zLnRpbWUuaG91cnNBZ28nLCB7IGNvdW50OiBkaWZmSG91cnMgfSk7XHJcblx0XHR9IGVsc2UgaWYgKGRpZmZEYXlzIDwgNykge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbm90aWZpY2F0aW9ucy50aW1lLmRheXNBZ28nLCB7IGNvdW50OiBkaWZmRGF5cyB9KTtcclxuXHRcdH0gZWxzZSBpZiAoZGlmZldlZWtzIDwgNCkge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbm90aWZpY2F0aW9ucy50aW1lLndlZWtzQWdvJywgeyBjb3VudDogZGlmZldlZWtzIH0pO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ25vdGlmaWNhdGlvbnMudGltZS5tb250aHNBZ28nLCB7IGNvdW50OiBkaWZmTW9udGhzIH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmF2aWdhdGVUb0FsbE5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XHJcblx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ21uZy9jb250cm9sLW1hbmFnZW1lbnQvc21zLWVtYWlsLWF1ZGl0J10pO1xyXG5cdFx0dGhpcy52aXNpYmxlID0gZmFsc2U7XHJcblx0fVxyXG59XHJcbiIsIjxwLXNpZGViYXJcclxuXHRbKHZpc2libGUpXT1cInZpc2libGVcIlxyXG5cdHBvc2l0aW9uPVwicmlnaHRcIlxyXG5cdFt0cmFuc2l0aW9uT3B0aW9uc109XCInLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpJ1wiXHJcblx0c3R5bGVDbGFzcz1cImxheW91dC1ub3RpZmljYXRpb25zLXNpZGViYXIgdy1mdWxsIHNtOnctMzByZW1cIlxyXG5cdCp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogJ25vdGlmaWNhdGlvbnMnXCI+XHJcblx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHctZnVsbFwiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuXHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWJlbGwgdGV4dC1wcmltYXJ5IHRleHQteGxcIj48L2k+XHJcblx0XHRcdFx0PHNwYW4gY2xhc3M9XCJmb250LWJvbGQgdGV4dC1sZ1wiPnt7IHQoJ3RpdGxlJykgfX08L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuXHJcblx0PGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtY29udGVudFwiPlxyXG5cdFx0QGlmIChub3RpZmljYXRpb25zKCkubGVuZ3RoID4gMCkge1xyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9ucy1saXN0XCI+XHJcblx0XHRcdFx0PHAtc2Nyb2xsUGFuZWwgW3N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJywgaGVpZ2h0OiAnMTAwJScgfVwiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtaXRlbXNcIj5cclxuXHRcdFx0XHRcdFx0QGZvciAobm90aWZpY2F0aW9uIG9mIG5vdGlmaWNhdGlvbnMoKTsgdHJhY2sgdHJhY2tCeU5vdGlmaWNhdGlvbklkKCRpbmRleCwgbm90aWZpY2F0aW9uKSkge1xyXG5cdFx0XHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0W2NsYXNzLnVucmVhZC1pdGVtXT1cIiFub3RpZmljYXRpb24ucmVhZFwiXHJcblx0XHRcdFx0XHRcdFx0XHQoY2xpY2spPVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdChcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRub3RpZmljYXRpb24/LmRldGFpbE5vdGlmaWNhdGlvblR5cGUgPT09IERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtLlRPRE9fSVRFTSB8fFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdG5vdGlmaWNhdGlvbj8uZGV0YWlsTm90aWZpY2F0aW9uVHlwZSA9PT0gRGV0YWlsTm90aWZpY2F0aW9uVHlwZUVudW0uQkFUQ0hfSk9CXHJcblx0XHRcdFx0XHRcdFx0XHRcdCkgP1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmtOb3RpZmljYXRpb25Bc1JlYWQobm90aWZpY2F0aW9uKVxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ6XHRudWxsXHJcblx0XHRcdFx0XHRcdFx0XHRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIml0ZW0taGVhZGVyXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIml0ZW0tdGl0bGVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdEBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09IEFjdGl2aXR5VHlwZXNFbnVtLlNNUykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWljb24gc21zLWljb25cIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZmEtaWNvbiBbaWNvbl09XCJyZWd1bGFySWNvbnMuZmFNZXNzYWdlXCIgLz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9IEBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0QGlmICghbm90aWZpY2F0aW9uLnJlYWQpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWljb24gZW1haWwtaWNvbiB1bnJlYWRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxmYS1pY29uIFtpY29uXT1cInJlZ3VsYXJJY29ucy5mYUVudmVsb3BlXCIgLz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pY29uIGVtYWlsLWljb24gcmVhZFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGZhLWljb24gW2ljb25dPVwicmVndWxhckljb25zLmZhRW52ZWxvcGVPcGVuXCIgLz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0aXRsZS10ZXh0IG1sLTJcIj57eyBnZXROb3RpZmljYXRpb25UaXRsZShub3RpZmljYXRpb24pIH19PC9wPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibm90aWZpY2F0aW9uLWRhdGVcIj57eyBmb3JtYXROb3RpZmljYXRpb25EYXRlKG5vdGlmaWNhdGlvbi5zZW5kaW5nRGF0ZSkgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0QGlmICghbm90aWZpY2F0aW9uLnJlYWQpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxmYS1pY29uXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFtpY29uXT1cInNvbGlkSWNvbnMuZmFDaXJjbGVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cInVucmVhZC1kb3RcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRbcFRvb2x0aXBdPVwidCgnbWFya0FzUmVhZCcpXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0dG9vbHRpcFBvc2l0aW9uPVwibGVmdFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdChjbGljayk9XCJtYXJrTm90aWZpY2F0aW9uQXNSZWFkT25Eb3RJY29uKG5vdGlmaWNhdGlvbik7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9mYS1pY29uPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLW1ldGFcIj48L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0QGlmIChnZXROb3RpZmljYXRpb25Db250ZW50KG5vdGlmaWNhdGlvbikpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaXRlbS1jb250ZW50LXByZXZpZXdcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdEBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09IEFjdGl2aXR5VHlwZXNFbnVtLkVNQUlMKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgW2lubmVySFRNTF09XCJub3RpZmljYXRpb24uY29udGVudCB8IHNhZmU6ICdodG1sJ1wiIGNsYXNzPVwiaHRtbC1wcmV2aWV3IGxpbmUtY2xhbXAtM1wiPjwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1jb250ZW50XCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3sgZ2V0Tm90aWZpY2F0aW9uQ29udGVudChub3RpZmljYXRpb24pIH19XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDwvcD5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvcC1zY3JvbGxQYW5lbD5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktYmVsbCBlbXB0eS1pY29uXCI+PC9pPlxyXG5cdFx0XHRcdFx0PGgzIGNsYXNzPVwiZW1wdHktdGl0bGVcIj57eyB0KCdub05vdGlmaWNhdGlvbnMnKSB9fTwvaDM+XHJcblx0XHRcdFx0XHQ8cCBjbGFzcz1cImVtcHR5LW1lc3NhZ2VcIj57eyB0KCdub05vdGlmaWNhdGlvbnNEZXNjcmlwdGlvbicpIH19PC9wPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHAtMiBib3JkZXItdG9wLTEgc3VyZmFjZS1ib3JkZXJcIj5cclxuXHRcdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFx0W2xhYmVsXT1cInQoJ2FsbFNob3cnKVwiXHJcblx0XHRcdFx0aWNvbj1cIkVYVEVSTkFMX0xJTktcIlxyXG5cdFx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFx0c2l6ZT1cIm1kXCJcclxuXHRcdFx0XHQoY2xpY2tFdmVudCk9XCJuYXZpZ2F0ZVRvQWxsTm90aWZpY2F0aW9ucygpXCI+XHJcblx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2Rpdj5cclxuXHJcblx0PHAtY29uZmlybURpYWxvZz48L3AtY29uZmlybURpYWxvZz5cclxuPC9wLXNpZGViYXI+XHJcbiJdfQ==
|
|
191
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy1zaWRlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMtc2lkZWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXNpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztB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Q0FDRyxJQUFJLFlBQ04sMkJBQTJCLFdBQzVCO3dCQUNSLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsUUFBUTtxQkFDUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBlZmZlY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IEJhZGdlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9iYWRnZSc7XHJcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dNb2R1bGUgfSBmcm9tICdwcmltZW5nL2NvbmZpcm1kaWFsb2cnO1xyXG5pbXBvcnQgeyBQYWdpbmF0b3JNb2R1bGUgfSBmcm9tICdwcmltZW5nL3BhZ2luYXRvcic7XHJcbmltcG9ydCB7IFNjcm9sbFBhbmVsTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zY3JvbGxwYW5lbCc7XHJcbmltcG9ydCB7IFNpZGViYXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL3NpZGViYXInO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xyXG5pbXBvcnQgeyBUcmFuc2xvY29Nb2R1bGUsIFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XHJcbmltcG9ydCB7IEtleWNsb2FrU2VydmljZSB9IGZyb20gJ2tleWNsb2FrLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgcmVndWxhckljb25zLCBzb2xpZEljb25zIH0gZnJvbSAnYXJpbC91dGlsL2xpYic7XHJcbmltcG9ydCB7IFNhZmVQaXBlIH0gZnJvbSAnYXJpbC91dGlsL3BpcGVzJztcclxuXHJcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2FwcC5sYXlvdXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjdGl2aXR5VHlwZXNFbnVtLCBEZXRhaWxOb3RpZmljYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaW50ZXJmYWNlcy9lbnVtJztcclxuaW1wb3J0IHsgU21zRW1haWxBdWRpdFJlc3BvbnNlRFRPIH0gZnJvbSAnLi4vLi4vc2VydmljZS9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2Uvbm90aWZpY2F0aW9ucy5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtbm90aWZpY2F0aW9ucy1zaWRlYmFyJyxcclxuXHRpbXBvcnRzOiBbXHJcblx0XHRDb21tb25Nb2R1bGUsXHJcblx0XHRTaWRlYmFyTW9kdWxlLFxyXG5cdFx0U2Nyb2xsUGFuZWxNb2R1bGUsXHJcblx0XHRDb25maXJtRGlhbG9nTW9kdWxlLFxyXG5cdFx0UGFnaW5hdG9yTW9kdWxlLFxyXG5cdFx0QnV0dG9uQ29tcG9uZW50LFxyXG5cdFx0VHJhbnNsb2NvTW9kdWxlLFxyXG5cdFx0VG9vbHRpcE1vZHVsZSxcclxuXHRcdEJhZGdlTW9kdWxlLFxyXG5cdFx0Rm9udEF3ZXNvbWVNb2R1bGUsXHJcblx0XHRTYWZlUGlwZVxyXG5cdF0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL25vdGlmaWNhdGlvbnMtc2lkZWJhci5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vbm90aWZpY2F0aW9ucy1zaWRlYmFyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE5vdGlmaWNhdGlvbnNTaWRlYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRub3RpZmljYXRpb25zID0gc2lnbmFsPFNtc0VtYWlsQXVkaXRSZXNwb25zZURUT1tdPihbXSk7XHJcblx0c2VsZWN0ZWROb3RpZmljYXRpb246IFNtc0VtYWlsQXVkaXRSZXNwb25zZURUTyB8IG51bGwgPSBudWxsO1xyXG5cclxuXHRBY3Rpdml0eVR5cGVzRW51bSA9IEFjdGl2aXR5VHlwZXNFbnVtO1xyXG5cdERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtID0gRGV0YWlsTm90aWZpY2F0aW9uVHlwZUVudW07XHJcblxyXG5cdHJlZ3VsYXJJY29ucyA9IHJlZ3VsYXJJY29ucztcclxuXHRzb2xpZEljb25zID0gc29saWRJY29ucztcclxuXHJcblx0b25lTW9udGhBZ28gPSBuZXcgRGF0ZShuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIDMwICogMjQgKiA2MCAqIDYwICogMTAwMCk7XHJcblxyXG5cdHByaXZhdGUgc3ViamVjdHMgPSB7XHJcblx0XHRtYXJrQXNSZWFkOiBuZXcgU3ViamVjdDxzdHJpbmc+KCksXHJcblx0XHRsb2FkTm90aWZpY2F0aW9uczogbmV3IFN1YmplY3Q8dm9pZD4oKVxyXG5cdH07XHJcblxyXG5cdG1hcmtBc1JlYWRTZXJ2aWNlID0gdG9TaWduYWwoXHJcblx0XHR0aGlzLnN1YmplY3RzLm1hcmtBc1JlYWQucGlwZShzd2l0Y2hNYXAoKGlkKSA9PiB0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLm1hcmtBc1JlYWROb3RpZmljYXRpb24oaWQpKSlcclxuXHQpO1xyXG5cclxuXHRnZXQgZ2V0VXNlclBob25lcygpOiBzdHJpbmdbXSB7XHJcblx0XHRjb25zdCBwaG9uZXMgPSB0aGlzLmtleWNsb2FrLmdldEtleWNsb2FrSW5zdGFuY2UoKS5wcm9maWxlPy5hdHRyaWJ1dGVzPy5bJ3Bob25lJ107XHJcblx0XHRpZiAocGhvbmVzICYmIEFycmF5LmlzQXJyYXkocGhvbmVzKSkge1xyXG5cdFx0XHRyZXR1cm4gcGhvbmVzO1xyXG5cdFx0fSBlbHNlIGlmIChwaG9uZXMgJiYgdHlwZW9mIHBob25lcyA9PT0gJ3N0cmluZycpIHtcclxuXHRcdFx0cmV0dXJuIFtwaG9uZXNdO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIFtdO1xyXG5cdH1cclxuXHJcblx0Z2V0IGdldFVzZXJNYWlsKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMua2V5Y2xvYWsuZ2V0S2V5Y2xvYWtJbnN0YW5jZSgpLnByb2ZpbGU/LmVtYWlsIGFzIHN0cmluZztcclxuXHR9XHJcblxyXG5cdGxvYWROb3RpZmljYXRpb25zU2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5sb2FkTm90aWZpY2F0aW9ucy5waXBlKFxyXG5cdFx0XHRzd2l0Y2hNYXAoKCkgPT5cclxuXHRcdFx0XHR0aGlzLm5vdGlmaWNhdGlvbnNTZXJ2aWNlLmdldE5vdGlmaWNhdGlvbnMoe1xyXG5cdFx0XHRcdFx0cGFnZXI6IHtcclxuXHRcdFx0XHRcdFx0cGFnZVNpemU6IDEwLFxyXG5cdFx0XHRcdFx0XHRwYWdlTnVtYmVyOiAxXHJcblx0XHRcdFx0XHR9LFxyXG5cdFx0XHRcdFx0c3RhcnREYXRlOiB0aGlzLm9uZU1vbnRoQWdvLmRhdGVUb0xvbmcoJ3RpbWUnKSB8fCAwLFxyXG5cdFx0XHRcdFx0ZW5kRGF0ZTogbmV3IERhdGUoKS5kYXRlVG9Mb25nKCd0aW1lJykgfHwgMCxcclxuXHRcdFx0XHRcdHJlYWQ6IGZhbHNlLFxyXG5cdFx0XHRcdFx0dG9MaXN0OiBbdGhpcy5nZXRVc2VyTWFpbCwgLi4udGhpcy5nZXRVc2VyUGhvbmVzXSxcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHQpXHJcblx0XHQpXHJcblx0KTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgbm90aWZpY2F0aW9uc1NlcnZpY2U6IE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkga2V5Y2xvYWs6IEtleWNsb2FrU2VydmljZVxyXG5cdCkge1xyXG5cdFx0dGhpcy5pbml0aWFsaXplRWZmZWN0cygpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmxvYWROb3RpZmljYXRpb25zKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGxvYWROb3RpZmljYXRpb25zKCk6IHZvaWQge1xyXG5cdFx0dGhpcy5zdWJqZWN0cy5sb2FkTm90aWZpY2F0aW9ucy5uZXh0KCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRpYWxpemVFZmZlY3RzKCk6IHZvaWQge1xyXG5cdFx0ZWZmZWN0KFxyXG5cdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMubG9hZE5vdGlmaWNhdGlvbnNTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLm5vdGlmaWNhdGlvbnMuc2V0KHNlcnZpY2UucmVzcG9uc2UucmVzdWx0KTtcclxuXHRcdFx0XHRcdC8vIFVwZGF0ZSB1bnJlYWQgY291bnQgaW4gbGF5b3V0U2VydmljZVxyXG5cdFx0XHRcdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLnNldFVucmVhZE5vdGlmaWNhdGlvbkNvdW50KHNlcnZpY2U/LnJlc3BvbnNlLnJlc3VsdEluZm8udG90YWxJdGVtIHx8IDApO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcblx0XHQpO1xyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0Y29uc3Qgc2VydmljZSA9IHRoaXMubWFya0FzUmVhZFNlcnZpY2UoKTtcclxuXHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0dGhpcy5sb2FkTm90aWZpY2F0aW9ucygpO1xyXG5cclxuXHRcdFx0XHRpZiAodGhpcy5zZWxlY3RlZE5vdGlmaWNhdGlvbj8uZGV0YWlsTm90aWZpY2F0aW9uVHlwZSA9PT0gRGV0YWlsTm90aWZpY2F0aW9uVHlwZUVudW0uVE9ET19JVEVNKSB7XHJcblx0XHRcdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYG1uZy90b2RvLXRhc2tzL2RldGFpbC8ke3RoaXMuc2VsZWN0ZWROb3RpZmljYXRpb24/LnJlZmVyZW5jZUlkfWBdKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Z2V0IHZpc2libGUoKTogYm9vbGVhbiB7XHJcblx0XHRyZXR1cm4gdGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLm5vdGlmaWNhdGlvbnNTaWRlYmFyVmlzaWJsZTtcclxuXHR9XHJcblxyXG5cdHNldCB2aXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XHJcblx0XHR0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUubm90aWZpY2F0aW9uc1NpZGViYXJWaXNpYmxlID0gdmFsdWU7XHJcblx0fVxyXG5cclxuXHRtYXJrTm90aWZpY2F0aW9uQXNSZWFkKG5vdGlmaWNhdGlvbjogU21zRW1haWxBdWRpdFJlc3BvbnNlRFRPKTogdm9pZCB7XHJcblx0XHR0aGlzLnNlbGVjdGVkTm90aWZpY2F0aW9uID0gbm90aWZpY2F0aW9uO1xyXG5cdFx0dGhpcy5zdWJqZWN0cy5tYXJrQXNSZWFkLm5leHQobm90aWZpY2F0aW9uLmlkKTtcclxuXHRcdHRoaXMudmlzaWJsZSA9IGZhbHNlO1xyXG5cclxuXHRcdGlmIChub3RpZmljYXRpb24/LmRldGFpbE5vdGlmaWNhdGlvblR5cGUgPT09IERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtLlRPRE9fSVRFTSkge1xyXG5cdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYG1uZy90b2RvLXRhc2tzL2RldGFpbC8ke25vdGlmaWNhdGlvbj8ucmVmZXJlbmNlSWR9YF0pO1xyXG5cdFx0fSBlbHNlIGlmIChub3RpZmljYXRpb24/LmRldGFpbE5vdGlmaWNhdGlvblR5cGUgPT09IERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtLkJBVENIX0pPQikge1xyXG5cdFx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYG1uZy9idWxrLW9wZXJhdGlvbnMvJHtub3RpZmljYXRpb24/LnJlZmVyZW5jZUlkfWBdKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG1hcmtOb3RpZmljYXRpb25Bc1JlYWRPbkRvdEljb24obm90aWZpY2F0aW9uOiBTbXNFbWFpbEF1ZGl0UmVzcG9uc2VEVE8pOiB2b2lkIHtcclxuXHRcdGlmICghbm90aWZpY2F0aW9uLnJlYWQpIHtcclxuXHRcdFx0dGhpcy5zdWJqZWN0cy5tYXJrQXNSZWFkLm5leHQobm90aWZpY2F0aW9uLmlkKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHRyYWNrQnlOb3RpZmljYXRpb25JZChpbmRleDogbnVtYmVyLCBub3RpZmljYXRpb246IFNtc0VtYWlsQXVkaXRSZXNwb25zZURUTyk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gbm90aWZpY2F0aW9uLmlkO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm90aWZpY2F0aW9uVGl0bGUobm90aWZpY2F0aW9uOiBTbXNFbWFpbEF1ZGl0UmVzcG9uc2VEVE8pOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuIG5vdGlmaWNhdGlvbi50ZW1wbGF0ZVRpdGxlIHx8IG5vdGlmaWNhdGlvbi50ZW1wbGF0ZUNvZGUgfHwgJyc7XHJcblx0fVxyXG5cclxuXHRnZXROb3RpZmljYXRpb25Db250ZW50KG5vdGlmaWNhdGlvbjogU21zRW1haWxBdWRpdFJlc3BvbnNlRFRPKTogc3RyaW5nIHtcclxuXHRcdGNvbnN0IHRydW5jYXRlZCA9XHJcblx0XHRcdG5vdGlmaWNhdGlvbi5jb250ZW50Py5sZW5ndGghID4gMjAwID8gbm90aWZpY2F0aW9uLmNvbnRlbnQ/LnN1YnN0cmluZygwLCAyMDApICsgJy4uLicgOiBub3RpZmljYXRpb24uY29udGVudDtcclxuXHRcdHJldHVybiB0cnVuY2F0ZWQgfHwgJyc7XHJcblx0fVxyXG5cclxuXHRmb3JtYXROb3RpZmljYXRpb25EYXRlKHN0YXJ0RGF0ZTogbnVtYmVyIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcclxuXHRcdGlmICghc3RhcnREYXRlKSB7XHJcblx0XHRcdHJldHVybiAnJztcclxuXHRcdH1cclxuXHRcdGNvbnN0IGRhdGVTdHIgPSBzdGFydERhdGUudG9TdHJpbmcoKTtcclxuXHRcdGNvbnN0IHllYXIgPSBwYXJzZUludChkYXRlU3RyLnN1YnN0cmluZygwLCA0KSk7XHJcblx0XHRjb25zdCBtb250aCA9IHBhcnNlSW50KGRhdGVTdHIuc3Vic3RyaW5nKDQsIDYpKSAtIDE7XHJcblx0XHRjb25zdCBkYXkgPSBwYXJzZUludChkYXRlU3RyLnN1YnN0cmluZyg2LCA4KSk7XHJcblx0XHRjb25zdCBob3VyID0gcGFyc2VJbnQoZGF0ZVN0ci5zdWJzdHJpbmcoOCwgMTApKTtcclxuXHRcdGNvbnN0IG1pbnV0ZSA9IHBhcnNlSW50KGRhdGVTdHIuc3Vic3RyaW5nKDEwLCAxMikpO1xyXG5cdFx0Y29uc3Qgc2Vjb25kID0gcGFyc2VJbnQoZGF0ZVN0ci5zdWJzdHJpbmcoMTIsIDE0KSk7XHJcblxyXG5cdFx0Y29uc3Qgbm90aWZpY2F0aW9uRGF0ZSA9IG5ldyBEYXRlKHllYXIsIG1vbnRoLCBkYXksIGhvdXIsIG1pbnV0ZSwgc2Vjb25kKTtcclxuXHRcdGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XHJcblx0XHRjb25zdCBkaWZmTXMgPSBub3cuZ2V0VGltZSgpIC0gbm90aWZpY2F0aW9uRGF0ZS5nZXRUaW1lKCk7XHJcblxyXG5cdFx0Y29uc3QgZGlmZk1pbnV0ZXMgPSBNYXRoLmZsb29yKGRpZmZNcyAvICgxMDAwICogNjApKTtcclxuXHRcdGNvbnN0IGRpZmZIb3VycyA9IE1hdGguZmxvb3IoZGlmZk1zIC8gKDEwMDAgKiA2MCAqIDYwKSk7XHJcblx0XHRjb25zdCBkaWZmRGF5cyA9IE1hdGguZmxvb3IoZGlmZk1zIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKTtcclxuXHRcdGNvbnN0IGRpZmZXZWVrcyA9IE1hdGguZmxvb3IoZGlmZkRheXMgLyA3KTtcclxuXHRcdGNvbnN0IGRpZmZNb250aHMgPSBNYXRoLmZsb29yKGRpZmZEYXlzIC8gMzApO1xyXG5cclxuXHRcdGlmIChkaWZmTWludXRlcyA8IDEpIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ25vdGlmaWNhdGlvbnMudGltZS5qdXN0Tm93Jyk7XHJcblx0XHR9IGVsc2UgaWYgKGRpZmZNaW51dGVzIDwgNjApIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ25vdGlmaWNhdGlvbnMudGltZS5taW51dGVzQWdvJywgeyBjb3VudDogZGlmZk1pbnV0ZXMgfSk7XHJcblx0XHR9IGVsc2UgaWYgKGRpZmZIb3VycyA8IDI0KSB7XHJcblx0XHRcdHJldHVybiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdub3RpZmljYXRpb25zLnRpbWUuaG91cnNBZ28nLCB7IGNvdW50OiBkaWZmSG91cnMgfSk7XHJcblx0XHR9IGVsc2UgaWYgKGRpZmZEYXlzIDwgNykge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbm90aWZpY2F0aW9ucy50aW1lLmRheXNBZ28nLCB7IGNvdW50OiBkaWZmRGF5cyB9KTtcclxuXHRcdH0gZWxzZSBpZiAoZGlmZldlZWtzIDwgNCkge1xyXG5cdFx0XHRyZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbm90aWZpY2F0aW9ucy50aW1lLndlZWtzQWdvJywgeyBjb3VudDogZGlmZldlZWtzIH0pO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0cmV0dXJuIHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ25vdGlmaWNhdGlvbnMudGltZS5tb250aHNBZ28nLCB7IGNvdW50OiBkaWZmTW9udGhzIH0pO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0bmF2aWdhdGVUb0FsbE5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XHJcblx0XHR0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJ21uZy9jb250cm9sLW1hbmFnZW1lbnQvc21zLWVtYWlsLWF1ZGl0J10pO1xyXG5cdFx0dGhpcy52aXNpYmxlID0gZmFsc2U7XHJcblx0fVxyXG59XHJcbiIsIjxwLXNpZGViYXJcclxuXHRbKHZpc2libGUpXT1cInZpc2libGVcIlxyXG5cdHBvc2l0aW9uPVwicmlnaHRcIlxyXG5cdFt0cmFuc2l0aW9uT3B0aW9uc109XCInLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpJ1wiXHJcblx0c3R5bGVDbGFzcz1cImxheW91dC1ub3RpZmljYXRpb25zLXNpZGViYXIgdy1mdWxsIHNtOnctMzByZW1cIlxyXG5cdCp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogJ25vdGlmaWNhdGlvbnMnXCI+XHJcblx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHctZnVsbFwiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuXHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWJlbGwgdGV4dC1wcmltYXJ5IHRleHQteGxcIj48L2k+XHJcblx0XHRcdFx0PHNwYW4gY2xhc3M9XCJmb250LWJvbGQgdGV4dC1sZ1wiPnt7IHQoJ3RpdGxlJykgfX08L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuXHJcblx0PGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtY29udGVudFwiPlxyXG5cdFx0QGlmIChub3RpZmljYXRpb25zKCkubGVuZ3RoID4gMCkge1xyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9ucy1saXN0XCI+XHJcblx0XHRcdFx0PHAtc2Nyb2xsUGFuZWwgW3N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJywgaGVpZ2h0OiAnMTAwJScgfVwiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtaXRlbXNcIj5cclxuXHRcdFx0XHRcdFx0QGZvciAobm90aWZpY2F0aW9uIG9mIG5vdGlmaWNhdGlvbnMoKTsgdHJhY2sgdHJhY2tCeU5vdGlmaWNhdGlvbklkKCRpbmRleCwgbm90aWZpY2F0aW9uKSkge1xyXG5cdFx0XHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0XHRcdGNsYXNzPVwibm90aWZpY2F0aW9uLWl0ZW1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0W2NsYXNzLnVucmVhZC1pdGVtXT1cIiFub3RpZmljYXRpb24ucmVhZFwiXHJcblx0XHRcdFx0XHRcdFx0XHQoY2xpY2spPVwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdChcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRub3RpZmljYXRpb24/LmRldGFpbE5vdGlmaWNhdGlvblR5cGUgPT09IERldGFpbE5vdGlmaWNhdGlvblR5cGVFbnVtLlRPRE9fSVRFTSB8fFxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdG5vdGlmaWNhdGlvbj8uZGV0YWlsTm90aWZpY2F0aW9uVHlwZSA9PT0gRGV0YWlsTm90aWZpY2F0aW9uVHlwZUVudW0uQkFUQ0hfSk9CXHJcblx0XHRcdFx0XHRcdFx0XHRcdCkgP1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdG1hcmtOb3RpZmljYXRpb25Bc1JlYWQobm90aWZpY2F0aW9uKVxyXG5cdFx0XHRcdFx0XHRcdFx0XHQ6XHRudWxsXHJcblx0XHRcdFx0XHRcdFx0XHRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIml0ZW0taGVhZGVyXCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIml0ZW0tdGl0bGVcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdEBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09IEFjdGl2aXR5VHlwZXNFbnVtLlNNUykge1xyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWljb24gc21zLWljb25cIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZmEtaWNvbiBbaWNvbl09XCJyZWd1bGFySWNvbnMuZmFNZXNzYWdlXCIgLz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9IEBlbHNlIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0QGlmICghbm90aWZpY2F0aW9uLnJlYWQpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibm90aWZpY2F0aW9uLWljb24gZW1haWwtaWNvbiB1bnJlYWRcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxmYS1pY29uIFtpY29uXT1cInJlZ3VsYXJJY29ucy5mYUVudmVsb3BlXCIgLz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm5vdGlmaWNhdGlvbi1pY29uIGVtYWlsLWljb24gcmVhZFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0PGZhLWljb24gW2ljb25dPVwicmVndWxhckljb25zLmZhRW52ZWxvcGVPcGVuXCIgLz5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PHAgY2xhc3M9XCJ0aXRsZS10ZXh0IG1sLTJcIj57eyBnZXROb3RpZmljYXRpb25UaXRsZShub3RpZmljYXRpb24pIH19PC9wPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwibm90aWZpY2F0aW9uLWRhdGVcIj57eyBmb3JtYXROb3RpZmljYXRpb25EYXRlKG5vdGlmaWNhdGlvbi5zZW5kaW5nRGF0ZSkgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0QGlmICghbm90aWZpY2F0aW9uLnJlYWQpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxmYS1pY29uXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFtpY29uXT1cInNvbGlkSWNvbnMuZmFDaXJjbGVcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRjbGFzcz1cInVucmVhZC1kb3RcIlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRbcFRvb2x0aXBdPVwidCgnbWFya0FzUmVhZCcpXCJcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0dG9vbHRpcFBvc2l0aW9uPVwibGVmdFwiXHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdChjbGljayk9XCJtYXJrTm90aWZpY2F0aW9uQXNSZWFkT25Eb3RJY29uKG5vdGlmaWNhdGlvbik7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PC9mYS1pY29uPlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpdGVtLW1ldGFcIj48L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0QGlmIChnZXROb3RpZmljYXRpb25Db250ZW50KG5vdGlmaWNhdGlvbikpIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaXRlbS1jb250ZW50LXByZXZpZXdcIj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdEBpZiAobm90aWZpY2F0aW9uLnR5cGUgPT09IEFjdGl2aXR5VHlwZXNFbnVtLkVNQUlMKSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxkaXYgW2lubmVySFRNTF09XCJub3RpZmljYXRpb24uY29udGVudCB8IHNhZmU6ICdodG1sJ1wiIGNsYXNzPVwiaHRtbC1wcmV2aWV3IGxpbmUtY2xhbXAtM1wiPjwvZGl2PlxyXG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidGV4dC1jb250ZW50XCI+XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0e3sgZ2V0Tm90aWZpY2F0aW9uQ29udGVudChub3RpZmljYXRpb24pIH19XHJcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDwvcD5cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvcC1zY3JvbGxQYW5lbD5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LXN0YXRlXCI+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cImVtcHR5LWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktYmVsbCBlbXB0eS1pY29uXCI+PC9pPlxyXG5cdFx0XHRcdFx0PGgzIGNsYXNzPVwiZW1wdHktdGl0bGVcIj57eyB0KCdub05vdGlmaWNhdGlvbnMnKSB9fTwvaDM+XHJcblx0XHRcdFx0XHQ8cCBjbGFzcz1cImVtcHR5LW1lc3NhZ2VcIj57eyB0KCdub05vdGlmaWNhdGlvbnNEZXNjcmlwdGlvbicpIH19PC9wPlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHAtMiBib3JkZXItdG9wLTEgc3VyZmFjZS1ib3JkZXJcIj5cclxuXHRcdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFx0W2xhYmVsXT1cInQoJ2FsbFNob3cnKVwiXHJcblx0XHRcdFx0aWNvbj1cIkVYVEVSTkFMX0xJTktcIlxyXG5cdFx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFx0c2l6ZT1cIm1kXCJcclxuXHRcdFx0XHQoY2xpY2tFdmVudCk9XCJuYXZpZ2F0ZVRvQWxsTm90aWZpY2F0aW9ucygpXCI+XHJcblx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2Rpdj5cclxuXHJcblx0PHAtY29uZmlybURpYWxvZz48L3AtY29uZmlybURpYWxvZz5cclxuPC9wLXNpZGViYXI+XHJcbiJdfQ==
|
|
@@ -102,10 +102,10 @@ export class AppProfileSidebarComponent {
|
|
|
102
102
|
});
|
|
103
103
|
ref.onClose.subscribe();
|
|
104
104
|
}
|
|
105
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
106
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.
|
|
105
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AppProfileSidebarComponent, deps: [{ token: i1.LayoutService }, { token: i2.KeycloakService }, { token: i3.ProfileService }, { token: i4.DialogService }, { token: i5.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
106
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: AppProfileSidebarComponent, isStandalone: true, selector: "app-profilemenu", providers: [DialogService], ngImport: i0, template: "<p-sidebar\r\n\t[(visible)]=\"visible\"\r\n\tposition=\"right\"\r\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\r\n\tstyleClass=\"layout-profile-sidebar w-full sm:w-30rem\">\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"flex align-items-center gap-2\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t\t\t<span class=\"font-bold\">{{ t('personalInfo') }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t@if (userProfile()) {\r\n\t\t<div class=\"profile-content\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t\t\t<!-- Personal Information -->\r\n\t\t\t<div class=\"info-section\">\r\n\t\t\t\t<div class=\"info-items\">\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-user info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('fullName') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.firstName }} {{ userProfile()?.lastName }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-id-card info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('tcNumber') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.tckn || '' }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-envelope info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('email') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.email || '' }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-phone info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('phone') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.phone || '' }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-at info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('username') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.userName }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-check-circle info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('accountStatus') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value status\" [class.active]=\"userProfile()?.enabled\">\r\n\t\t\t\t\t\t\t\t{{ userProfile()?.enabled ? t('active') : t('inactive') }}\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-user info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('systemUser') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value status\" [class.active]=\"userProfile()?.systemUser\">\r\n\t\t\t\t\t\t\t\t{{ userProfile()?.systemUser ? t('yes') : t('no') }}\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-building info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('clientSystemUser') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.clientOfSystemUser }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t}\r\n\r\n\t<!-- Fixed Action Buttons -->\r\n\t@if (userProfile()) {\r\n\t\t<div class=\"action-buttons-container grid p-fluid\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t\t\t<div class=\"col-12 flex justify-content-between align-items-center\">\r\n\t\t\t\t<aril-button\r\n\t\t\t\t\t[label]=\"t('editProfile')\"\r\n\t\t\t\t\ticon=\"USER_EDIT\"\r\n\t\t\t\t\tcolor=\"primary\"\r\n\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\tclass=\"col-6\"\r\n\t\t\t\t\t(clickEvent)=\"editProfile()\">\r\n\t\t\t\t</aril-button>\r\n\t\t\t\t<aril-button\r\n\t\t\t\t\t[label]=\"t('changePassword')\"\r\n\t\t\t\t\ticon=\"KEY\"\r\n\t\t\t\t\tcolor=\"secondary\"\r\n\t\t\t\t\t[outlined]=\"true\"\r\n\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\tclass=\"col-6\"\r\n\t\t\t\t\t(clickEvent)=\"changePassword()\">\r\n\t\t\t\t</aril-button>\r\n\t\t\t</div>\r\n\t\t\t<aril-button\r\n\t\t\t\t[label]=\"t('logout')\"\r\n\t\t\t\ticon=\"SIGN_OUT\"\r\n\t\t\t\tcolor=\"danger\"\r\n\t\t\t\t[outlined]=\"false\"\r\n\t\t\t\tsize=\"sm\"\r\n\t\t\t\tclass=\"col-12\"\r\n\t\t\t\t(clickEvent)=\"logout()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t}\r\n</p-sidebar>\r\n", styles: [":host .layout-profile-sidebar .p-sidebar-content{padding:0;background:var(--surface-0, #ffffff);color:var(--text-color, #333);height:100vh;overflow-y:auto;position:relative}:host .profile-content{padding:1rem .75rem 12rem;display:flex;flex-direction:column;gap:1.25rem}:host .action-buttons-container{width:100%;position:absolute;bottom:0;left:0;right:0;background:var(--surface-0, #ffffff);border-top:1px solid var(--surface-border, #e2e8f0);padding:1rem .75rem;z-index:300}:host .info-section .section-title{font-size:1.25rem;font-weight:500;color:var(--text-color-secondary, #64748b);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface-border, #e2e8f0);display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px}:host .info-section .section-title i{color:var(--text-color-secondary, #64748b);font-size:1rem}:host .info-section .info-items{display:flex;flex-direction:column;gap:0}:host .info-section .info-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--surface-border, #f1f5f9)}:host .info-section .info-item:last-child{border-bottom:none}:host .info-section .info-item .info-icon{color:var(--text-color-secondary, #64748b);font-size:1rem;flex-shrink:0;width:1.25rem;text-align:center}:host .info-section .info-item .info-content{flex:1;display:flex;flex-direction:column;gap:.25rem}:host .info-section .info-item .info-content .info-label{font-size:.95rem;color:var(--text-color-secondary, #64748b);font-weight:500;line-height:1}:host .info-section .info-item .info-content .info-value{font-size:.95rem;color:var(--text-color, #1e293b);font-weight:400;line-height:1.3}:host .info-section .info-item .info-content .info-value.status{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;width:fit-content;background:var(--red-100, #fee2e2);color:var(--red-700, #b91c1c);border:1px solid var(--red-200, #fecaca)}:host .info-section .info-item .info-content .info-value.status.active{background:var(--green-100, #dcfce7);color:var(--green-700, #15803d);border:1px solid var(--green-200, #bbf7d0)}@media (max-width: 768px){:host .profile-content{padding:.875rem .65rem 11rem;gap:1rem}:host .action-buttons-container{padding:.875rem .65rem}:host .action-buttons-container .action-buttons-vertical{gap:.65rem}:host .action-buttons-container .action-buttons-horizontal{gap:.4rem}:host .info-item{padding:.65rem 0}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: SidebarModule }, { kind: "component", type: i6.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: TagModule }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: SkeletonModule }, { kind: "ngmodule", type: AvatarModule }, { kind: "ngmodule", type: ChipModule }, { kind: "ngmodule", type: TranslocoModule }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }] }); }
|
|
107
107
|
}
|
|
108
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AppProfileSidebarComponent, decorators: [{
|
|
109
109
|
type: Component,
|
|
110
110
|
args: [{ standalone: true, selector: 'app-profilemenu', imports: [
|
|
111
111
|
CommonModule,
|
|
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
119
119
|
ButtonComponent
|
|
120
120
|
], providers: [DialogService], template: "<p-sidebar\r\n\t[(visible)]=\"visible\"\r\n\tposition=\"right\"\r\n\t[transitionOptions]=\"'.3s cubic-bezier(0, 0, 0.2, 1)'\"\r\n\tstyleClass=\"layout-profile-sidebar w-full sm:w-30rem\">\r\n\t<ng-template pTemplate=\"header\">\r\n\t\t<div class=\"flex align-items-center gap-2\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t\t\t<span class=\"font-bold\">{{ t('personalInfo') }}</span>\r\n\t\t</div>\r\n\t</ng-template>\r\n\r\n\t@if (userProfile()) {\r\n\t\t<div class=\"profile-content\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t\t\t<!-- Personal Information -->\r\n\t\t\t<div class=\"info-section\">\r\n\t\t\t\t<div class=\"info-items\">\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-user info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('fullName') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.firstName }} {{ userProfile()?.lastName }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-id-card info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('tcNumber') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.tckn || '' }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-envelope info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('email') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.email || '' }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-phone info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('phone') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.phone || '' }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-at info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('username') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.userName }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-check-circle info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('accountStatus') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value status\" [class.active]=\"userProfile()?.enabled\">\r\n\t\t\t\t\t\t\t\t{{ userProfile()?.enabled ? t('active') : t('inactive') }}\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-user info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('systemUser') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value status\" [class.active]=\"userProfile()?.systemUser\">\r\n\t\t\t\t\t\t\t\t{{ userProfile()?.systemUser ? t('yes') : t('no') }}\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"info-item\">\r\n\t\t\t\t\t\t<i class=\"pi pi-building info-icon\"></i>\r\n\t\t\t\t\t\t<div class=\"info-content\">\r\n\t\t\t\t\t\t\t<span class=\"info-label\">{{ t('clientSystemUser') }}</span>\r\n\t\t\t\t\t\t\t<span class=\"info-value\">{{ userProfile()?.clientOfSystemUser }}</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t}\r\n\r\n\t<!-- Fixed Action Buttons -->\r\n\t@if (userProfile()) {\r\n\t\t<div class=\"action-buttons-container grid p-fluid\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t\t\t<div class=\"col-12 flex justify-content-between align-items-center\">\r\n\t\t\t\t<aril-button\r\n\t\t\t\t\t[label]=\"t('editProfile')\"\r\n\t\t\t\t\ticon=\"USER_EDIT\"\r\n\t\t\t\t\tcolor=\"primary\"\r\n\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\tclass=\"col-6\"\r\n\t\t\t\t\t(clickEvent)=\"editProfile()\">\r\n\t\t\t\t</aril-button>\r\n\t\t\t\t<aril-button\r\n\t\t\t\t\t[label]=\"t('changePassword')\"\r\n\t\t\t\t\ticon=\"KEY\"\r\n\t\t\t\t\tcolor=\"secondary\"\r\n\t\t\t\t\t[outlined]=\"true\"\r\n\t\t\t\t\tsize=\"sm\"\r\n\t\t\t\t\tclass=\"col-6\"\r\n\t\t\t\t\t(clickEvent)=\"changePassword()\">\r\n\t\t\t\t</aril-button>\r\n\t\t\t</div>\r\n\t\t\t<aril-button\r\n\t\t\t\t[label]=\"t('logout')\"\r\n\t\t\t\ticon=\"SIGN_OUT\"\r\n\t\t\t\tcolor=\"danger\"\r\n\t\t\t\t[outlined]=\"false\"\r\n\t\t\t\tsize=\"sm\"\r\n\t\t\t\tclass=\"col-12\"\r\n\t\t\t\t(clickEvent)=\"logout()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t}\r\n</p-sidebar>\r\n", styles: [":host .layout-profile-sidebar .p-sidebar-content{padding:0;background:var(--surface-0, #ffffff);color:var(--text-color, #333);height:100vh;overflow-y:auto;position:relative}:host .profile-content{padding:1rem .75rem 12rem;display:flex;flex-direction:column;gap:1.25rem}:host .action-buttons-container{width:100%;position:absolute;bottom:0;left:0;right:0;background:var(--surface-0, #ffffff);border-top:1px solid var(--surface-border, #e2e8f0);padding:1rem .75rem;z-index:300}:host .info-section .section-title{font-size:1.25rem;font-weight:500;color:var(--text-color-secondary, #64748b);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--surface-border, #e2e8f0);display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px}:host .info-section .section-title i{color:var(--text-color-secondary, #64748b);font-size:1rem}:host .info-section .info-items{display:flex;flex-direction:column;gap:0}:host .info-section .info-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--surface-border, #f1f5f9)}:host .info-section .info-item:last-child{border-bottom:none}:host .info-section .info-item .info-icon{color:var(--text-color-secondary, #64748b);font-size:1rem;flex-shrink:0;width:1.25rem;text-align:center}:host .info-section .info-item .info-content{flex:1;display:flex;flex-direction:column;gap:.25rem}:host .info-section .info-item .info-content .info-label{font-size:.95rem;color:var(--text-color-secondary, #64748b);font-weight:500;line-height:1}:host .info-section .info-item .info-content .info-value{font-size:.95rem;color:var(--text-color, #1e293b);font-weight:400;line-height:1.3}:host .info-section .info-item .info-content .info-value.status{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;width:fit-content;background:var(--red-100, #fee2e2);color:var(--red-700, #b91c1c);border:1px solid var(--red-200, #fecaca)}:host .info-section .info-item .info-content .info-value.status.active{background:var(--green-100, #dcfce7);color:var(--green-700, #15803d);border:1px solid var(--green-200, #bbf7d0)}@media (max-width: 768px){:host .profile-content{padding:.875rem .65rem 11rem;gap:1rem}:host .action-buttons-container{padding:.875rem .65rem}:host .action-buttons-container .action-buttons-vertical{gap:.65rem}:host .action-buttons-container .action-buttons-horizontal{gap:.4rem}:host .info-item{padding:.65rem 0}}\n"] }]
|
|
121
121
|
}], ctorParameters: () => [{ type: i1.LayoutService }, { type: i2.KeycloakService }, { type: i3.ProfileService }, { type: i4.DialogService }, { type: i5.TranslocoService }] });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnByb2ZpbGVzaWRlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9wcm9maWxlU2lkZWJhci9hcHAucHJvZmlsZXNpZGViYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC90aGVtZS9sYXlvdXQvYXBwL3Byb2ZpbGVTaWRlYmFyL2FwcC5wcm9maWxlc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV4QyxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM5RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQzs7Ozs7Ozs7O0FBcUJyRyxNQUFNLE9BQU8sMEJBQTBCO0lBVXRDLFlBQ1EsYUFBNEIsRUFDbEIsUUFBeUIsRUFDekIsY0FBOEIsRUFDOUIsYUFBNEIsRUFDNUIsZ0JBQWtDO1FBSjVDLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQ2xCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBYnBELGdCQUFXLEdBQUcsTUFBTSxDQUF5QixJQUFJLENBQUMsQ0FBQztRQUUzQyxhQUFRLEdBQUc7WUFDbEIsT0FBTyxFQUFFLElBQUksT0FBTyxFQUFxQjtTQUN6QyxDQUFDO1FBRUYsbUJBQWMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFTN0csSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ1AsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxpQkFBaUI7UUFDeEIsTUFBTSxDQUNMLEdBQUcsRUFBRTtZQUNKLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0QyxJQUFJLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3hDLENBQUM7UUFDRixDQUFDLEVBQ0QsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FDM0IsQ0FBQztJQUNILENBQUM7SUFFTyxlQUFlO1FBQ3RCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDO1FBQ3RFLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0YsQ0FBQztJQUVELElBQUksT0FBTztRQUNWLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLElBQWE7UUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBQ3RELElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDRixDQUFDO0lBRUQsTUFBTTtRQUNMLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVc7UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUFFLE9BQU87UUFFaEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDOUQsTUFBTSxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsNEJBQTRCLENBQUM7WUFDckUsS0FBSyxFQUFFLEtBQUs7WUFDWixNQUFNLEVBQUUsTUFBTTtZQUNkLEtBQUssRUFBRSxJQUFJO1lBQ1gsV0FBVyxFQUFFLEtBQUs7WUFDbEIsUUFBUSxFQUFFLElBQUk7WUFDZCxJQUFJLEVBQUU7Z0JBQ0wsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUU7YUFDL0I7U0FDRCxDQUFDLENBQUM7UUFFSCxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hDLElBQUksTUFBTSxFQUFFLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3hCLENBQUM7UUFDRixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxjQUFjO1FBQ2IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUM7UUFDdEUsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFPO1FBRXBCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLDRCQUE0QixFQUFFO1lBQ2pFLE1BQU0sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLCtCQUErQixDQUFDO1lBQ3hFLEtBQUssRUFBRSxPQUFPO1lBQ2QsTUFBTSxFQUFFLE1BQU07WUFDZCxLQUFLLEVBQUUsSUFBSTtZQUNYLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLFFBQVEsRUFBRSxJQUFJO1lBQ2QsSUFBSSxFQUFFO2dCQUNMLE1BQU0sRUFBRSxNQUFNO2FBQ2Q7U0FDRCxDQUFDLENBQUM7UUFFSCxHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7OEdBbEdXLDBCQUEwQjtrR0FBMUIsMEJBQTBCLDhEQUYzQixDQUFDLGFBQWEsQ0FBQywwQkN2QzNCLG9zSkEwSEEsOGdGRC9GRSxZQUFZLDhCQUNaLGFBQWEsbWRBQ2IsU0FBUyw4QkFDVCxZQUFZLDhCQUNaLGNBQWMsOEJBQ2QsWUFBWSw4QkFDWixVQUFVLDhCQUNWLGVBQWUsaU9BQ2YsZUFBZTs7MkZBTUosMEJBQTBCO2tCQWxCdEMsU0FBUztpQ0FDRyxJQUFJLFlBQ04saUJBQWlCLFdBQ2xCO3dCQUNSLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixTQUFTO3dCQUNULFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsZUFBZTt3QkFDZixlQUFlO3FCQUNmLGFBR1UsQ0FBQyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5pbXBvcnQgeyBBdmF0YXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL2F2YXRhcic7XHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcclxuaW1wb3J0IHsgQ2hpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY2hpcCc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBTaWRlYmFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zaWRlYmFyJztcclxuaW1wb3J0IHsgU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3NrZWxldG9uJztcclxuaW1wb3J0IHsgVGFnTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWcnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBLZXljbG9ha1NlcnZpY2UgfSBmcm9tICdrZXljbG9hay1hbmd1bGFyJztcclxuaW1wb3J0IHsgU3ViamVjdCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcblxyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hcHAubGF5b3V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaGFuZ2VQYXNzd29yZE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbHMvY2hhbmdlLXBhc3N3b3JkLW1vZGFsL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFZGl0UHJvZmlsZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbHMvZWRpdC1wcm9maWxlLW1vZGFsL2VkaXQtcHJvZmlsZS1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHZXRVc2VyUmVxdWVzdERUTywgUHJvZmlsZVNlcnZpY2UsIFVzZXJSZXNwb25zZURUTyB9IGZyb20gJy4vcHJvZmlsZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtcHJvZmlsZW1lbnUnLFxyXG5cdGltcG9ydHM6IFtcclxuXHRcdENvbW1vbk1vZHVsZSxcclxuXHRcdFNpZGViYXJNb2R1bGUsXHJcblx0XHRUYWdNb2R1bGUsXHJcblx0XHRCdXR0b25Nb2R1bGUsXHJcblx0XHRTa2VsZXRvbk1vZHVsZSxcclxuXHRcdEF2YXRhck1vZHVsZSxcclxuXHRcdENoaXBNb2R1bGUsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRCdXR0b25Db21wb25lbnRcclxuXHRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9hcHAucHJvZmlsZXNpZGViYXIuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL2FwcC5wcm9maWxlc2lkZWJhci5jb21wb25lbnQuc2NzcyddLFxyXG5cdHByb3ZpZGVyczogW0RpYWxvZ1NlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBQcm9maWxlU2lkZWJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblx0dXNlcm5hbWU6IHN0cmluZztcclxuXHR1c2VyUHJvZmlsZSA9IHNpZ25hbDxVc2VyUmVzcG9uc2VEVE8gfCBudWxsPihudWxsKTtcclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdGdldFVzZXI6IG5ldyBTdWJqZWN0PEdldFVzZXJSZXF1ZXN0RFRPPigpXHJcblx0fTtcclxuXHJcblx0Z2V0VXNlclNlcnZpY2UgPSB0b1NpZ25hbCh0aGlzLnN1YmplY3RzLmdldFVzZXIucGlwZShzd2l0Y2hNYXAoKGRhdGEpID0+IHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0VXNlcihkYXRhKSkpKTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkga2V5Y2xvYWs6IEtleWNsb2FrU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlXHJcblx0KSB7XHJcblx0XHR0aGlzLnVzZXJuYW1lID0gdGhpcy5rZXljbG9hay5nZXRVc2VybmFtZSgpO1xyXG5cdFx0dGhpcy5pbml0aWFsaXplRWZmZWN0cygpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmxvYWRVc2VyUHJvZmlsZSgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0aWFsaXplRWZmZWN0cygpOiB2b2lkIHtcclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHNlcnZpY2UgPSB0aGlzLmdldFVzZXJTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLnVzZXJQcm9maWxlLnNldChzZXJ2aWNlLnJlc3BvbnNlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgbG9hZFVzZXJQcm9maWxlKCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgdXNlcklkID0gdGhpcy5rZXljbG9hay5nZXRLZXljbG9ha0luc3RhbmNlKCkuaWRUb2tlblBhcnNlZD8uc3ViO1xyXG5cdFx0aWYgKHVzZXJJZCkge1xyXG5cdFx0XHR0aGlzLnN1YmplY3RzLmdldFVzZXIubmV4dCh7IGlkOiB1c2VySWQgfSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUucHJvZmlsZVNpZGViYXJWaXNpYmxlO1xyXG5cdH1cclxuXHJcblx0c2V0IHZpc2libGUoX3ZhbDogYm9vbGVhbikge1xyXG5cdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLnByb2ZpbGVTaWRlYmFyVmlzaWJsZSA9IF92YWw7XHJcblx0XHRpZiAoX3ZhbCAmJiAhdGhpcy51c2VyUHJvZmlsZSgpKSB7XHJcblx0XHRcdHRoaXMubG9hZFVzZXJQcm9maWxlKCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRsb2dvdXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmtleWNsb2FrLmxvZ291dCgpO1xyXG5cdH1cclxuXHJcblx0ZWRpdFByb2ZpbGUoKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMudXNlclByb2ZpbGUoKSkgcmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IHJlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKEVkaXRQcm9maWxlTW9kYWxDb21wb25lbnQsIHtcclxuXHRcdFx0aGVhZGVyOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdwcm9maWxlU2lkZWJhci5lZGl0UHJvZmlsZScpLFxyXG5cdFx0XHR3aWR0aDogJzQwJScsXHJcblx0XHRcdGhlaWdodDogJ2F1dG8nLFxyXG5cdFx0XHRtb2RhbDogdHJ1ZSxcclxuXHRcdFx0bWF4aW1pemFibGU6IGZhbHNlLFxyXG5cdFx0XHRjbG9zYWJsZTogdHJ1ZSxcclxuXHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdHVzZXJQcm9maWxlOiB0aGlzLnVzZXJQcm9maWxlKClcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0cmVmLm9uQ2xvc2Uuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuXHRcdFx0aWYgKHJlc3VsdD8uc3RhdHVzID09PSAnc3VjY2VzcycpIHtcclxuXHRcdFx0XHR0aGlzLmxvYWRVc2VyUHJvZmlsZSgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGNoYW5nZVBhc3N3b3JkKCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgdXNlcklkID0gdGhpcy5rZXljbG9hay5nZXRLZXljbG9ha0luc3RhbmNlKCkuaWRUb2tlblBhcnNlZD8uc3ViO1xyXG5cdFx0aWYgKCF1c2VySWQpIHJldHVybjtcclxuXHJcblx0XHRjb25zdCByZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbihDaGFuZ2VQYXNzd29yZE1vZGFsQ29tcG9uZW50LCB7XHJcblx0XHRcdGhlYWRlcjogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncHJvZmlsZVNpZGViYXIuY2hhbmdlUGFzc3dvcmQnKSxcclxuXHRcdFx0d2lkdGg6ICc1MDBweCcsXHJcblx0XHRcdGhlaWdodDogJ2F1dG8nLFxyXG5cdFx0XHRtb2RhbDogdHJ1ZSxcclxuXHRcdFx0bWF4aW1pemFibGU6IGZhbHNlLFxyXG5cdFx0XHRjbG9zYWJsZTogdHJ1ZSxcclxuXHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdHVzZXJJZDogdXNlcklkXHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdHJlZi5vbkNsb3NlLnN1YnNjcmliZSgpO1xyXG5cdH1cclxufVxyXG4iLCI8cC1zaWRlYmFyXHJcblx0Wyh2aXNpYmxlKV09XCJ2aXNpYmxlXCJcclxuXHRwb3NpdGlvbj1cInJpZ2h0XCJcclxuXHRbdHJhbnNpdGlvbk9wdGlvbnNdPVwiJy4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSdcIlxyXG5cdHN0eWxlQ2xhc3M9XCJsYXlvdXQtcHJvZmlsZS1zaWRlYmFyIHctZnVsbCBzbTp3LTMwcmVtXCI+XHJcblx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCIgKnRyYW5zbG9jbz1cImxldCB0OyByZWFkOiAncHJvZmlsZVNpZGViYXInXCI+XHJcblx0XHRcdDxzcGFuIGNsYXNzPVwiZm9udC1ib2xkXCI+e3sgdCgncGVyc29uYWxJbmZvJykgfX08L3NwYW4+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG5cclxuXHRAaWYgKHVzZXJQcm9maWxlKCkpIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJwcm9maWxlLWNvbnRlbnRcIiAqdHJhbnNsb2NvPVwibGV0IHQ7IHJlYWQ6ICdwcm9maWxlU2lkZWJhcidcIj5cclxuXHRcdFx0PCEtLSBQZXJzb25hbCBJbmZvcm1hdGlvbiAtLT5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImluZm8tc2VjdGlvblwiPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWl0ZW1zXCI+XHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktdXNlciBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCdmdWxsTmFtZScpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby12YWx1ZVwiPnt7IHVzZXJQcm9maWxlKCk/LmZpcnN0TmFtZSB9fSB7eyB1c2VyUHJvZmlsZSgpPy5sYXN0TmFtZSB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktaWQtY2FyZCBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCd0Y051bWJlcicpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby12YWx1ZVwiPnt7IHVzZXJQcm9maWxlKCk/LnRja24gfHwgJycgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWVudmVsb3BlIGluZm8taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8tY29udGVudFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPnt7IHQoJ2VtYWlsJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlXCI+e3sgdXNlclByb2ZpbGUoKT8uZW1haWwgfHwgJycgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLXBob25lIGluZm8taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8tY29udGVudFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPnt7IHQoJ3Bob25lJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlXCI+e3sgdXNlclByb2ZpbGUoKT8ucGhvbmUgfHwgJycgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWF0IGluZm8taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8tY29udGVudFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPnt7IHQoJ3VzZXJuYW1lJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlXCI+e3sgdXNlclByb2ZpbGUoKT8udXNlck5hbWUgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWNoZWNrLWNpcmNsZSBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCdhY2NvdW50U3RhdHVzJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlIHN0YXR1c1wiIFtjbGFzcy5hY3RpdmVdPVwidXNlclByb2ZpbGUoKT8uZW5hYmxlZFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0e3sgdXNlclByb2ZpbGUoKT8uZW5hYmxlZCA/IHQoJ2FjdGl2ZScpIDogdCgnaW5hY3RpdmUnKSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktdXNlciBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCdzeXN0ZW1Vc2VyJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlIHN0YXR1c1wiIFtjbGFzcy5hY3RpdmVdPVwidXNlclByb2ZpbGUoKT8uc3lzdGVtVXNlclwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0e3sgdXNlclByb2ZpbGUoKT8uc3lzdGVtVXNlciA/IHQoJ3llcycpIDogdCgnbm8nKSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktYnVpbGRpbmcgaW5mby1pY29uXCI+PC9pPlxyXG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1jb250ZW50XCI+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLWxhYmVsXCI+e3sgdCgnY2xpZW50U3lzdGVtVXNlcicpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby12YWx1ZVwiPnt7IHVzZXJQcm9maWxlKCk/LmNsaWVudE9mU3lzdGVtVXNlciB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L2Rpdj5cclxuXHR9XHJcblxyXG5cdDwhLS0gRml4ZWQgQWN0aW9uIEJ1dHRvbnMgLS0+XHJcblx0QGlmICh1c2VyUHJvZmlsZSgpKSB7XHJcblx0XHQ8ZGl2IGNsYXNzPVwiYWN0aW9uLWJ1dHRvbnMtY29udGFpbmVyIGdyaWQgcC1mbHVpZFwiICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogJ3Byb2ZpbGVTaWRlYmFyJ1wiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcblx0XHRcdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFx0XHRbbGFiZWxdPVwidCgnZWRpdFByb2ZpbGUnKVwiXHJcblx0XHRcdFx0XHRpY29uPVwiVVNFUl9FRElUXCJcclxuXHRcdFx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFx0XHRzaXplPVwic21cIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJjb2wtNlwiXHJcblx0XHRcdFx0XHQoY2xpY2tFdmVudCk9XCJlZGl0UHJvZmlsZSgpXCI+XHJcblx0XHRcdFx0PC9hcmlsLWJ1dHRvbj5cclxuXHRcdFx0XHQ8YXJpbC1idXR0b25cclxuXHRcdFx0XHRcdFtsYWJlbF09XCJ0KCdjaGFuZ2VQYXNzd29yZCcpXCJcclxuXHRcdFx0XHRcdGljb249XCJLRVlcIlxyXG5cdFx0XHRcdFx0Y29sb3I9XCJzZWNvbmRhcnlcIlxyXG5cdFx0XHRcdFx0W291dGxpbmVkXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0c2l6ZT1cInNtXCJcclxuXHRcdFx0XHRcdGNsYXNzPVwiY29sLTZcIlxyXG5cdFx0XHRcdFx0KGNsaWNrRXZlbnQpPVwiY2hhbmdlUGFzc3dvcmQoKVwiPlxyXG5cdFx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8YXJpbC1idXR0b25cclxuXHRcdFx0XHRbbGFiZWxdPVwidCgnbG9nb3V0JylcIlxyXG5cdFx0XHRcdGljb249XCJTSUdOX09VVFwiXHJcblx0XHRcdFx0Y29sb3I9XCJkYW5nZXJcIlxyXG5cdFx0XHRcdFtvdXRsaW5lZF09XCJmYWxzZVwiXHJcblx0XHRcdFx0c2l6ZT1cInNtXCJcclxuXHRcdFx0XHRjbGFzcz1cImNvbC0xMlwiXHJcblx0XHRcdFx0KGNsaWNrRXZlbnQpPVwibG9nb3V0KClcIj5cclxuXHRcdFx0PC9hcmlsLWJ1dHRvbj5cclxuXHRcdDwvZGl2PlxyXG5cdH1cclxuPC9wLXNpZGViYXI+XHJcbiJdfQ==
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnByb2ZpbGVzaWRlYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9wcm9maWxlU2lkZWJhci9hcHAucHJvZmlsZXNpZGViYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC90aGVtZS9sYXlvdXQvYXBwL3Byb2ZpbGVTaWRlYmFyL2FwcC5wcm9maWxlc2lkZWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUV4QyxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUs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UztpQ0FDRyxJQUFJLFlBQ04saUJBQWlCLFdBQ2xCO3dCQUNSLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixTQUFTO3dCQUNULFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxZQUFZO3dCQUNaLFVBQVU7d0JBQ1YsZUFBZTt3QkFDZixlQUFlO3FCQUNmLGFBR1UsQ0FBQyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgZWZmZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5pbXBvcnQgeyBBdmF0YXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL2F2YXRhcic7XHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcclxuaW1wb3J0IHsgQ2hpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY2hpcCc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBTaWRlYmFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9zaWRlYmFyJztcclxuaW1wb3J0IHsgU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3NrZWxldG9uJztcclxuaW1wb3J0IHsgVGFnTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWcnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBLZXljbG9ha1NlcnZpY2UgfSBmcm9tICdrZXljbG9hay1hbmd1bGFyJztcclxuaW1wb3J0IHsgU3ViamVjdCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcblxyXG5pbXBvcnQgeyBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hcHAubGF5b3V0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaGFuZ2VQYXNzd29yZE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbHMvY2hhbmdlLXBhc3N3b3JkLW1vZGFsL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFZGl0UHJvZmlsZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9tb2RhbHMvZWRpdC1wcm9maWxlLW1vZGFsL2VkaXQtcHJvZmlsZS1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHZXRVc2VyUmVxdWVzdERUTywgUHJvZmlsZVNlcnZpY2UsIFVzZXJSZXNwb25zZURUTyB9IGZyb20gJy4vcHJvZmlsZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcHAtcHJvZmlsZW1lbnUnLFxyXG5cdGltcG9ydHM6IFtcclxuXHRcdENvbW1vbk1vZHVsZSxcclxuXHRcdFNpZGViYXJNb2R1bGUsXHJcblx0XHRUYWdNb2R1bGUsXHJcblx0XHRCdXR0b25Nb2R1bGUsXHJcblx0XHRTa2VsZXRvbk1vZHVsZSxcclxuXHRcdEF2YXRhck1vZHVsZSxcclxuXHRcdENoaXBNb2R1bGUsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRCdXR0b25Db21wb25lbnRcclxuXHRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9hcHAucHJvZmlsZXNpZGViYXIuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWycuL2FwcC5wcm9maWxlc2lkZWJhci5jb21wb25lbnQuc2NzcyddLFxyXG5cdHByb3ZpZGVyczogW0RpYWxvZ1NlcnZpY2VdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcHBQcm9maWxlU2lkZWJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblx0dXNlcm5hbWU6IHN0cmluZztcclxuXHR1c2VyUHJvZmlsZSA9IHNpZ25hbDxVc2VyUmVzcG9uc2VEVE8gfCBudWxsPihudWxsKTtcclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdGdldFVzZXI6IG5ldyBTdWJqZWN0PEdldFVzZXJSZXF1ZXN0RFRPPigpXHJcblx0fTtcclxuXHJcblx0Z2V0VXNlclNlcnZpY2UgPSB0b1NpZ25hbCh0aGlzLnN1YmplY3RzLmdldFVzZXIucGlwZShzd2l0Y2hNYXAoKGRhdGEpID0+IHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0VXNlcihkYXRhKSkpKTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwdWJsaWMgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkga2V5Y2xvYWs6IEtleWNsb2FrU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlXHJcblx0KSB7XHJcblx0XHR0aGlzLnVzZXJuYW1lID0gdGhpcy5rZXljbG9hay5nZXRVc2VybmFtZSgpO1xyXG5cdFx0dGhpcy5pbml0aWFsaXplRWZmZWN0cygpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmxvYWRVc2VyUHJvZmlsZSgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBpbml0aWFsaXplRWZmZWN0cygpOiB2b2lkIHtcclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHNlcnZpY2UgPSB0aGlzLmdldFVzZXJTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLnVzZXJQcm9maWxlLnNldChzZXJ2aWNlLnJlc3BvbnNlKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0sXHJcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgbG9hZFVzZXJQcm9maWxlKCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgdXNlcklkID0gdGhpcy5rZXljbG9hay5nZXRLZXljbG9ha0luc3RhbmNlKCkuaWRUb2tlblBhcnNlZD8uc3ViO1xyXG5cdFx0aWYgKHVzZXJJZCkge1xyXG5cdFx0XHR0aGlzLnN1YmplY3RzLmdldFVzZXIubmV4dCh7IGlkOiB1c2VySWQgfSk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmxheW91dFNlcnZpY2Uuc3RhdGUucHJvZmlsZVNpZGViYXJWaXNpYmxlO1xyXG5cdH1cclxuXHJcblx0c2V0IHZpc2libGUoX3ZhbDogYm9vbGVhbikge1xyXG5cdFx0dGhpcy5sYXlvdXRTZXJ2aWNlLnN0YXRlLnByb2ZpbGVTaWRlYmFyVmlzaWJsZSA9IF92YWw7XHJcblx0XHRpZiAoX3ZhbCAmJiAhdGhpcy51c2VyUHJvZmlsZSgpKSB7XHJcblx0XHRcdHRoaXMubG9hZFVzZXJQcm9maWxlKCk7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRsb2dvdXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLmtleWNsb2FrLmxvZ291dCgpO1xyXG5cdH1cclxuXHJcblx0ZWRpdFByb2ZpbGUoKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMudXNlclByb2ZpbGUoKSkgcmV0dXJuO1xyXG5cclxuXHRcdGNvbnN0IHJlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKEVkaXRQcm9maWxlTW9kYWxDb21wb25lbnQsIHtcclxuXHRcdFx0aGVhZGVyOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdwcm9maWxlU2lkZWJhci5lZGl0UHJvZmlsZScpLFxyXG5cdFx0XHR3aWR0aDogJzQwJScsXHJcblx0XHRcdGhlaWdodDogJ2F1dG8nLFxyXG5cdFx0XHRtb2RhbDogdHJ1ZSxcclxuXHRcdFx0bWF4aW1pemFibGU6IGZhbHNlLFxyXG5cdFx0XHRjbG9zYWJsZTogdHJ1ZSxcclxuXHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdHVzZXJQcm9maWxlOiB0aGlzLnVzZXJQcm9maWxlKClcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0cmVmLm9uQ2xvc2Uuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuXHRcdFx0aWYgKHJlc3VsdD8uc3RhdHVzID09PSAnc3VjY2VzcycpIHtcclxuXHRcdFx0XHR0aGlzLmxvYWRVc2VyUHJvZmlsZSgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGNoYW5nZVBhc3N3b3JkKCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgdXNlcklkID0gdGhpcy5rZXljbG9hay5nZXRLZXljbG9ha0luc3RhbmNlKCkuaWRUb2tlblBhcnNlZD8uc3ViO1xyXG5cdFx0aWYgKCF1c2VySWQpIHJldHVybjtcclxuXHJcblx0XHRjb25zdCByZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbihDaGFuZ2VQYXNzd29yZE1vZGFsQ29tcG9uZW50LCB7XHJcblx0XHRcdGhlYWRlcjogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncHJvZmlsZVNpZGViYXIuY2hhbmdlUGFzc3dvcmQnKSxcclxuXHRcdFx0d2lkdGg6ICc1MDBweCcsXHJcblx0XHRcdGhlaWdodDogJ2F1dG8nLFxyXG5cdFx0XHRtb2RhbDogdHJ1ZSxcclxuXHRcdFx0bWF4aW1pemFibGU6IGZhbHNlLFxyXG5cdFx0XHRjbG9zYWJsZTogdHJ1ZSxcclxuXHRcdFx0ZGF0YToge1xyXG5cdFx0XHRcdHVzZXJJZDogdXNlcklkXHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdHJlZi5vbkNsb3NlLnN1YnNjcmliZSgpO1xyXG5cdH1cclxufVxyXG4iLCI8cC1zaWRlYmFyXHJcblx0Wyh2aXNpYmxlKV09XCJ2aXNpYmxlXCJcclxuXHRwb3NpdGlvbj1cInJpZ2h0XCJcclxuXHRbdHJhbnNpdGlvbk9wdGlvbnNdPVwiJy4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSdcIlxyXG5cdHN0eWxlQ2xhc3M9XCJsYXlvdXQtcHJvZmlsZS1zaWRlYmFyIHctZnVsbCBzbTp3LTMwcmVtXCI+XHJcblx0PG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG5cdFx0PGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yXCIgKnRyYW5zbG9jbz1cImxldCB0OyByZWFkOiAncHJvZmlsZVNpZGViYXInXCI+XHJcblx0XHRcdDxzcGFuIGNsYXNzPVwiZm9udC1ib2xkXCI+e3sgdCgncGVyc29uYWxJbmZvJykgfX08L3NwYW4+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG5cclxuXHRAaWYgKHVzZXJQcm9maWxlKCkpIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJwcm9maWxlLWNvbnRlbnRcIiAqdHJhbnNsb2NvPVwibGV0IHQ7IHJlYWQ6ICdwcm9maWxlU2lkZWJhcidcIj5cclxuXHRcdFx0PCEtLSBQZXJzb25hbCBJbmZvcm1hdGlvbiAtLT5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImluZm8tc2VjdGlvblwiPlxyXG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWl0ZW1zXCI+XHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktdXNlciBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCdmdWxsTmFtZScpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby12YWx1ZVwiPnt7IHVzZXJQcm9maWxlKCk/LmZpcnN0TmFtZSB9fSB7eyB1c2VyUHJvZmlsZSgpPy5sYXN0TmFtZSB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktaWQtY2FyZCBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCd0Y051bWJlcicpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby12YWx1ZVwiPnt7IHVzZXJQcm9maWxlKCk/LnRja24gfHwgJycgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWVudmVsb3BlIGluZm8taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8tY29udGVudFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPnt7IHQoJ2VtYWlsJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlXCI+e3sgdXNlclByb2ZpbGUoKT8uZW1haWwgfHwgJycgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLXBob25lIGluZm8taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8tY29udGVudFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPnt7IHQoJ3Bob25lJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlXCI+e3sgdXNlclByb2ZpbGUoKT8ucGhvbmUgfHwgJycgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWF0IGluZm8taWNvblwiPjwvaT5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8tY29udGVudFwiPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby1sYWJlbFwiPnt7IHQoJ3VzZXJuYW1lJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlXCI+e3sgdXNlclByb2ZpbGUoKT8udXNlck5hbWUgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImluZm8taXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8aSBjbGFzcz1cInBpIHBpLWNoZWNrLWNpcmNsZSBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCdhY2NvdW50U3RhdHVzJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlIHN0YXR1c1wiIFtjbGFzcy5hY3RpdmVdPVwidXNlclByb2ZpbGUoKT8uZW5hYmxlZFwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0e3sgdXNlclByb2ZpbGUoKT8uZW5hYmxlZCA/IHQoJ2FjdGl2ZScpIDogdCgnaW5hY3RpdmUnKSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktdXNlciBpbmZvLWljb25cIj48L2k+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJpbmZvLWNvbnRlbnRcIj5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cImluZm8tbGFiZWxcIj57eyB0KCdzeXN0ZW1Vc2VyJykgfX08L3NwYW4+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLXZhbHVlIHN0YXR1c1wiIFtjbGFzcy5hY3RpdmVdPVwidXNlclByb2ZpbGUoKT8uc3lzdGVtVXNlclwiPlxyXG5cdFx0XHRcdFx0XHRcdFx0e3sgdXNlclByb2ZpbGUoKT8uc3lzdGVtVXNlciA/IHQoJ3llcycpIDogdCgnbm8nKSB9fVxyXG5cdFx0XHRcdFx0XHRcdDwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHJcblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1pdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxpIGNsYXNzPVwicGkgcGktYnVpbGRpbmcgaW5mby1pY29uXCI+PC9pPlxyXG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiaW5mby1jb250ZW50XCI+XHJcblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9XCJpbmZvLWxhYmVsXCI+e3sgdCgnY2xpZW50U3lzdGVtVXNlcicpIH19PC9zcGFuPlxyXG5cdFx0XHRcdFx0XHRcdDxzcGFuIGNsYXNzPVwiaW5mby12YWx1ZVwiPnt7IHVzZXJQcm9maWxlKCk/LmNsaWVudE9mU3lzdGVtVXNlciB9fTwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L2Rpdj5cclxuXHR9XHJcblxyXG5cdDwhLS0gRml4ZWQgQWN0aW9uIEJ1dHRvbnMgLS0+XHJcblx0QGlmICh1c2VyUHJvZmlsZSgpKSB7XHJcblx0XHQ8ZGl2IGNsYXNzPVwiYWN0aW9uLWJ1dHRvbnMtY29udGFpbmVyIGdyaWQgcC1mbHVpZFwiICp0cmFuc2xvY289XCJsZXQgdDsgcmVhZDogJ3Byb2ZpbGVTaWRlYmFyJ1wiPlxyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcblx0XHRcdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFx0XHRbbGFiZWxdPVwidCgnZWRpdFByb2ZpbGUnKVwiXHJcblx0XHRcdFx0XHRpY29uPVwiVVNFUl9FRElUXCJcclxuXHRcdFx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFx0XHRzaXplPVwic21cIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJjb2wtNlwiXHJcblx0XHRcdFx0XHQoY2xpY2tFdmVudCk9XCJlZGl0UHJvZmlsZSgpXCI+XHJcblx0XHRcdFx0PC9hcmlsLWJ1dHRvbj5cclxuXHRcdFx0XHQ8YXJpbC1idXR0b25cclxuXHRcdFx0XHRcdFtsYWJlbF09XCJ0KCdjaGFuZ2VQYXNzd29yZCcpXCJcclxuXHRcdFx0XHRcdGljb249XCJLRVlcIlxyXG5cdFx0XHRcdFx0Y29sb3I9XCJzZWNvbmRhcnlcIlxyXG5cdFx0XHRcdFx0W291dGxpbmVkXT1cInRydWVcIlxyXG5cdFx0XHRcdFx0c2l6ZT1cInNtXCJcclxuXHRcdFx0XHRcdGNsYXNzPVwiY29sLTZcIlxyXG5cdFx0XHRcdFx0KGNsaWNrRXZlbnQpPVwiY2hhbmdlUGFzc3dvcmQoKVwiPlxyXG5cdFx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8YXJpbC1idXR0b25cclxuXHRcdFx0XHRbbGFiZWxdPVwidCgnbG9nb3V0JylcIlxyXG5cdFx0XHRcdGljb249XCJTSUdOX09VVFwiXHJcblx0XHRcdFx0Y29sb3I9XCJkYW5nZXJcIlxyXG5cdFx0XHRcdFtvdXRsaW5lZF09XCJmYWxzZVwiXHJcblx0XHRcdFx0c2l6ZT1cInNtXCJcclxuXHRcdFx0XHRjbGFzcz1cImNvbC0xMlwiXHJcblx0XHRcdFx0KGNsaWNrRXZlbnQpPVwibG9nb3V0KClcIj5cclxuXHRcdFx0PC9hcmlsLWJ1dHRvbj5cclxuXHRcdDwvZGl2PlxyXG5cdH1cclxuPC9wLXNpZGViYXI+XHJcbiJdfQ==
|
|
@@ -122,10 +122,10 @@ export class ChangePasswordModalComponent {
|
|
|
122
122
|
cancel() {
|
|
123
123
|
this.dialogRef.close('cancel');
|
|
124
124
|
}
|
|
125
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
126
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
125
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChangePasswordModalComponent, deps: [{ token: i1.FormBuilder }, { token: i2.DynamicDialogRef }, { token: i2.DynamicDialogConfig }, { token: i3.ProfileService }, { token: i4.TranslocoService }, { token: i5.MessageService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
126
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ChangePasswordModalComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div class=\"change-password-modal\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t<aril-form [formGroup]=\"passwordForm\">\r\n\t\t<aril-field [label]=\"t('newPassword')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<p-password \r\n\t\t\t\tformControlName=\"newPassword\"\r\n\t\t\t\t[placeholder]=\"t('newPassword')\"\r\n\t\t\t\t[feedback]=\"false\"\r\n\t\t\t\t[toggleMask]=\"true\"\r\n\t\t\t\tstyleClass=\"w-full\"\r\n\t\t\t\tautocomplete=\"new-password\"\r\n\t\t\t\t[pTooltip]=\"passwordForm.get('newPassword')?.invalid && passwordForm.get('newPassword')?.touched ? getErrorMessage('newPassword') : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\ttooltipStyleClass=\"tooltipErrorMessage\">\r\n\t\t\t</p-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('confirmPassword')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<p-password \r\n\t\t\t\tformControlName=\"confirmPassword\"\r\n\t\t\t\t[placeholder]=\"t('confirmPassword')\"\r\n\t\t\t\t[feedback]=\"false\"\r\n\t\t\t\t[toggleMask]=\"true\"\r\n\t\t\t\tstyleClass=\"w-full\"\r\n\t\t\t\tautocomplete=\"new-password\"\r\n\t\t\t\t[pTooltip]=\"passwordForm.get('confirmPassword')?.invalid && passwordForm.get('confirmPassword')?.touched ? getErrorMessage('confirmPassword') : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\ttooltipStyleClass=\"tooltipErrorMessage\">\r\n\t\t\t</p-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<div class=\"col-12 flex justify-content-end mt-4 gap-2\">\r\n\t\t\t<aril-button\r\n\t\t\t\tcolor=\"danger\"\r\n\t\t\t\t[label]=\"t('cancel')\"\r\n\t\t\t\t[outlined]=\"true\"\r\n\t\t\t\ticon=\"TIMES\"\r\n\t\t\t\t(clickEvent)=\"cancel()\">\r\n\t\t\t</aril-button>\r\n\t\t\t<aril-button\r\n\t\t\t\tcolor=\"success\"\r\n\t\t\t\t[label]=\"t('save')\"\r\n\t\t\t\t[raised]=\"false\"\r\n\t\t\t\ticon=\"CHECK\"\r\n\t\t\t\t(clickEvent)=\"submit()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t</aril-form>\r\n</div>\r\n", styles: [".change-password-modal :host ::ng-deep .p-password.ng-invalid.ng-touched .p-inputtext{border-color:var(--red-500, #ef4444);box-shadow:0 0 0 1px var(--red-500, #ef4444)}.change-password-modal :host ::ng-deep .p-password.ng-valid.ng-touched .p-inputtext{border-color:var(--green-500, #22c55e);box-shadow:0 0 0 1px var(--green-500, #22c55e)}.change-password-modal :host ::ng-deep .tooltipErrorMessage{background-color:var(--red-500, #ef4444)!important;color:#fff!important;font-size:.75rem!important;font-weight:500!important;border-radius:4px!important;padding:.5rem .75rem!important;box-shadow:0 2px 4px #0000001a!important}.change-password-modal :host ::ng-deep .tooltipErrorMessage .p-tooltip-arrow{border-top-color:var(--red-500, #ef4444)!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ARiLFormModule }, { kind: "component", type: i6.FormComponent, selector: "aril-form", inputs: ["formGroup"] }, { kind: "component", type: FieldComponent, selector: "aril-field", inputs: ["label", "color", "labelWidth", "valueWidth", "labelPos", "markAsRequired", "cols", "infoData", "infoDataOverlayPanel"] }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: PasswordModule }, { kind: "component", type: i7.Password, selector: "p-password", inputs: ["ariaLabel", "ariaLabelledBy", "label", "disabled", "promptLabel", "mediumRegex", "strongRegex", "weakLabel", "mediumLabel", "maxLength", "strongLabel", "inputId", "feedback", "appendTo", "toggleMask", "inputStyleClass", "styleClass", "style", "inputStyle", "showTransitionOptions", "hideTransitionOptions", "autocomplete", "placeholder", "showClear", "autofocus", "variant"], outputs: ["onFocus", "onBlur", "onClear"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "directive", type: i4.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }] }); }
|
|
127
127
|
}
|
|
128
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ChangePasswordModalComponent, decorators: [{
|
|
129
129
|
type: Component,
|
|
130
130
|
args: [{ standalone: true, imports: [
|
|
131
131
|
CommonModule,
|
|
@@ -139,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
139
139
|
TranslocoModule
|
|
140
140
|
], template: "<div class=\"change-password-modal\" *transloco=\"let t; read: 'profileSidebar'\">\r\n\t<aril-form [formGroup]=\"passwordForm\">\r\n\t\t<aril-field [label]=\"t('newPassword')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<p-password \r\n\t\t\t\tformControlName=\"newPassword\"\r\n\t\t\t\t[placeholder]=\"t('newPassword')\"\r\n\t\t\t\t[feedback]=\"false\"\r\n\t\t\t\t[toggleMask]=\"true\"\r\n\t\t\t\tstyleClass=\"w-full\"\r\n\t\t\t\tautocomplete=\"new-password\"\r\n\t\t\t\t[pTooltip]=\"passwordForm.get('newPassword')?.invalid && passwordForm.get('newPassword')?.touched ? getErrorMessage('newPassword') : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\ttooltipStyleClass=\"tooltipErrorMessage\">\r\n\t\t\t</p-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('confirmPassword')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<p-password \r\n\t\t\t\tformControlName=\"confirmPassword\"\r\n\t\t\t\t[placeholder]=\"t('confirmPassword')\"\r\n\t\t\t\t[feedback]=\"false\"\r\n\t\t\t\t[toggleMask]=\"true\"\r\n\t\t\t\tstyleClass=\"w-full\"\r\n\t\t\t\tautocomplete=\"new-password\"\r\n\t\t\t\t[pTooltip]=\"passwordForm.get('confirmPassword')?.invalid && passwordForm.get('confirmPassword')?.touched ? getErrorMessage('confirmPassword') : ''\"\r\n\t\t\t\ttooltipPosition=\"top\"\r\n\t\t\t\ttooltipStyleClass=\"tooltipErrorMessage\">\r\n\t\t\t</p-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<div class=\"col-12 flex justify-content-end mt-4 gap-2\">\r\n\t\t\t<aril-button\r\n\t\t\t\tcolor=\"danger\"\r\n\t\t\t\t[label]=\"t('cancel')\"\r\n\t\t\t\t[outlined]=\"true\"\r\n\t\t\t\ticon=\"TIMES\"\r\n\t\t\t\t(clickEvent)=\"cancel()\">\r\n\t\t\t</aril-button>\r\n\t\t\t<aril-button\r\n\t\t\t\tcolor=\"success\"\r\n\t\t\t\t[label]=\"t('save')\"\r\n\t\t\t\t[raised]=\"false\"\r\n\t\t\t\ticon=\"CHECK\"\r\n\t\t\t\t(clickEvent)=\"submit()\">\r\n\t\t\t</aril-button>\r\n\t\t</div>\r\n\t</aril-form>\r\n</div>\r\n", styles: [".change-password-modal :host ::ng-deep .p-password.ng-invalid.ng-touched .p-inputtext{border-color:var(--red-500, #ef4444);box-shadow:0 0 0 1px var(--red-500, #ef4444)}.change-password-modal :host ::ng-deep .p-password.ng-valid.ng-touched .p-inputtext{border-color:var(--green-500, #22c55e);box-shadow:0 0 0 1px var(--green-500, #22c55e)}.change-password-modal :host ::ng-deep .tooltipErrorMessage{background-color:var(--red-500, #ef4444)!important;color:#fff!important;font-size:.75rem!important;font-weight:500!important;border-radius:4px!important;padding:.5rem .75rem!important;box-shadow:0 2px 4px #0000001a!important}.change-password-modal :host ::ng-deep .tooltipErrorMessage .p-tooltip-arrow{border-top-color:var(--red-500, #ef4444)!important}\n"] }]
|
|
141
141
|
}], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.DynamicDialogRef }, { type: i2.DynamicDialogConfig }, { type: i3.ProfileService }, { type: i4.TranslocoService }, { type: i5.MessageService }] });
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9wcm9maWxlU2lkZWJhci9tb2RhbHMvY2hhbmdlLXBhc3N3b3JkLW1vZGFsL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvcHJvZmlsZVNpZGViYXIvbW9kYWxzL2NoYW5nZS1wYXNzd29yZC1tb2RhbC9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBR04sV0FBVyxFQUVYLFdBQVcsRUFDWCxtQkFBbUIsRUFFbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUl4QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7OztB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Q2hDLENBQUM7OEdBN0ZXLDRCQUE0QjtrR0FBNUIsNEJBQTRCLHdFQ25GekMsazhEQWdEQSwweUJEc0JFLFlBQVksOEJBQ1osbUJBQW1CLG1sQkFDbkIsV0FBVyw4QkFDWCxjQUFjLDRIQUNkLGNBQWMseUxBQ2QsZUFBZSw2TkFDZixjQUFjLDZnQkFDZCxhQUFhLHFYQUNiLGVBQWU7OzJGQUtKLDRCQUE0QjtrQkFoQnhDLFNBQVM7aUNBQ0csSUFBSSxXQUNQO3dCQUNSLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixlQUFlO3FCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBlZmZlY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7XHJcblx0QWJzdHJhY3RDb250cm9sLFxyXG5cdEZvcm1CdWlsZGVyLFxyXG5cdEZvcm1Db250cm9sLFxyXG5cdEZvcm1Hcm91cCxcclxuXHRGb3Jtc01vZHVsZSxcclxuXHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cdFZhbGlkYXRpb25FcnJvcnNcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IFBhc3N3b3JkTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9wYXNzd29yZCc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgRmllbGRDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2ZpZWxkJztcclxuaW1wb3J0IHsgQVJpTEZvcm1Nb2R1bGUgfSBmcm9tICdhcmlsL3VpL2Zvcm0nO1xyXG5cclxuaW1wb3J0IHsgUHJvZmlsZVNlcnZpY2UsIFJlc2V0UGFzc3dvcmRSZXF1ZXN0RFRPIH0gZnJvbSAnLi4vLi4vcHJvZmlsZS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBQYXNzd29yZFZhbGlkYXRvcnMge1xyXG5cdHN0YXRpYyBwYXNzd29yZE1hdGNoVmFsaWRhdG9yID0gKHBhc3N3b3JkRm9ybUdyb3VwOiBGb3JtR3JvdXApID0+IHtcclxuXHRcdHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG5cdFx0XHRpZiAoIWNvbnRyb2wudmFsdWUgfHwgIXBhc3N3b3JkRm9ybUdyb3VwKSB7XHJcblx0XHRcdFx0cmV0dXJuIG51bGw7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGNvbnN0IHBhc3N3b3JkQ29udHJvbCA9IHBhc3N3b3JkRm9ybUdyb3VwLmdldCgnbmV3UGFzc3dvcmQnKTtcclxuXHRcdFx0Y29uc3QgY29uZmlybVBhc3N3b3JkVmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG5cclxuXHRcdFx0aWYgKCFwYXNzd29yZENvbnRyb2wgfHwgIWNvbmZpcm1QYXNzd29yZFZhbHVlKSB7XHJcblx0XHRcdFx0cmV0dXJuIG51bGw7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGNvbnN0IHBhc3N3b3Jkc01hdGNoID0gcGFzc3dvcmRDb250cm9sLnZhbHVlID09PSBjb25maXJtUGFzc3dvcmRWYWx1ZTtcclxuXHRcdFx0cmV0dXJuIHBhc3N3b3Jkc01hdGNoID8gbnVsbCA6IChcclxuXHRcdFx0XHRcdHtcclxuXHRcdFx0XHRcdFx0cGFzc3dvcmRNaXNtYXRjaDogJ8WeaWZyZWxlciBlxZ9sZcWfbWl5b3IuIEzDvHRmZW4gYXluxLEgxZ9pZnJleWkgZ2lyaW5pei4nXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0KTtcclxuXHRcdH07XHJcblx0fTtcclxuXHJcblx0c3RhdGljIG1pbkxlbmd0aChsZW5ndGg6IG51bWJlcikge1xyXG5cdFx0cmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcblx0XHRcdGlmICghY29udHJvbC52YWx1ZSB8fCBjb250cm9sLnZhbHVlLmxlbmd0aCA+PSBsZW5ndGgpIHtcclxuXHRcdFx0XHRyZXR1cm4gbnVsbDtcclxuXHRcdFx0fVxyXG5cdFx0XHRyZXR1cm4geyBtaW5sZW5ndGg6IGDFnmlmcmUgZW4gYXogJHtsZW5ndGh9IGthcmFrdGVyIG9sbWFsxLFkxLFyLmAgfTtcclxuXHRcdH07XHJcblx0fVxyXG5cclxuXHRzdGF0aWMgcmVxdWlyZWQoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG5cdFx0aWYgKCFjb250cm9sLnZhbHVlIHx8IGNvbnRyb2wudmFsdWUudHJpbSgpID09PSAnJykge1xyXG5cdFx0XHRyZXR1cm4geyByZXF1aXJlZDogJ0J1IGFsYW4gem9ydW5sdWR1ci4nIH07XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gbnVsbDtcclxuXHR9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0UmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuXHRcdEZvcm1zTW9kdWxlLFxyXG5cdFx0QVJpTEZvcm1Nb2R1bGUsXHJcblx0XHRGaWVsZENvbXBvbmVudCxcclxuXHRcdEJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdFBhc3N3b3JkTW9kdWxlLFxyXG5cdFx0VG9vbHRpcE1vZHVsZSxcclxuXHRcdFRyYW5zbG9jb01vZHVsZVxyXG5cdF0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vY2hhbmdlLXBhc3N3b3JkLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkTW9kYWxDb21wb25lbnQge1xyXG5cdHBhc3N3b3JkRm9ybSE6IEZvcm1Hcm91cDtcclxuXHR1c2VySWQ6IHN0cmluZztcclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdHJlc2V0UGFzc3dvcmQ6IG5ldyBTdWJqZWN0PFJlc2V0UGFzc3dvcmRSZXF1ZXN0RFRPPigpXHJcblx0fTtcclxuXHJcblx0cmVzZXRQYXNzd29yZFNlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMucmVzZXRQYXNzd29yZC5waXBlKHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5wcm9maWxlU2VydmljZS5yZXNldFBhc3N3b3JkKGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMudXNlcklkID0gdGhpcy5kaWFsb2dDb25maWcuZGF0YT8udXNlcklkO1xyXG5cclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHNlcnZpY2UgPSB0aGlzLnJlc2V0UGFzc3dvcmRTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRcdHNldmVyaXR5OiAnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdHN1bW1hcnk6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3Byb2ZpbGVTaWRlYmFyLmNoYW5nZVBhc3N3b3JkU3VjY2VzcycpLFxyXG5cdFx0XHRcdFx0XHRkZXRhaWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3Byb2ZpbGVTaWRlYmFyLmNoYW5nZVBhc3N3b3JkU3VjY2Vzc0RldGFpbCcpLFxyXG5cdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290J1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IHN0YXR1czogJ3N1Y2Nlc3MnIH0pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcblx0XHQpO1xyXG5cclxuXHRcdHRoaXMuaW5pdGlhbGl6ZUZvcm0oKTtcclxuXHJcblx0XHRpZiAoIXRoaXMudXNlcklkKSB7XHJcblx0XHRcdHRoaXMuZGlhbG9nUmVmLmNsb3NlKCdlcnJvcicpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aW5pdGlhbGl6ZUZvcm0oKTogdm9pZCB7XHJcblx0XHR0aGlzLnBhc3N3b3JkRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG5cdFx0XHRuZXdQYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBbUGFzc3dvcmRWYWxpZGF0b3JzLnJlcXVpcmVkLCBQYXNzd29yZFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXSksXHJcblx0XHRcdGNvbmZpcm1QYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBbUGFzc3dvcmRWYWxpZGF0b3JzLnJlcXVpcmVkXSlcclxuXHRcdH0pO1xyXG5cclxuXHRcdGNvbnN0IGNvbmZpcm1QYXNzd29yZENvbnRyb2wgPSB0aGlzLnBhc3N3b3JkRm9ybS5nZXQoJ2NvbmZpcm1QYXNzd29yZCcpO1xyXG5cdFx0aWYgKGNvbmZpcm1QYXNzd29yZENvbnRyb2wpIHtcclxuXHRcdFx0Y29uZmlybVBhc3N3b3JkQ29udHJvbC5zZXRWYWxpZGF0b3JzKFtcclxuXHRcdFx0XHRQYXNzd29yZFZhbGlkYXRvcnMucmVxdWlyZWQsXHJcblx0XHRcdFx0UGFzc3dvcmRWYWxpZGF0b3JzLnBhc3N3b3JkTWF0Y2hWYWxpZGF0b3IodGhpcy5wYXNzd29yZEZvcm0pXHJcblx0XHRcdF0pO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMucGFzc3dvcmRGb3JtLmdldCgnbmV3UGFzc3dvcmQnKT8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcblx0XHRcdGNvbmZpcm1QYXNzd29yZENvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRnZXRFcnJvck1lc3NhZ2UoY29udHJvbE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBjb250cm9sID0gdGhpcy5wYXNzd29yZEZvcm0uZ2V0KGNvbnRyb2xOYW1lKTtcclxuXHRcdGlmIChjb250cm9sPy5lcnJvcnMpIHtcclxuXHRcdFx0Y29uc3QgZXJyb3JzID0gY29udHJvbC5lcnJvcnM7XHJcblx0XHRcdGNvbnN0IGVycm9yS2V5cyA9IE9iamVjdC5rZXlzKGVycm9ycyk7XHJcblx0XHRcdGlmIChlcnJvcktleXMubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdHJldHVybiBlcnJvcnNbZXJyb3JLZXlzWzBdXTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuICcnO1xyXG5cdH1cclxuXHJcblx0c3VibWl0KCk6IHZvaWQge1xyXG5cdFx0aWYgKHRoaXMucGFzc3dvcmRGb3JtLmludmFsaWQpIHtcclxuXHRcdFx0dGhpcy5wYXNzd29yZEZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgZm9ybVZhbHVlID0gdGhpcy5wYXNzd29yZEZvcm0udmFsdWU7XHJcblx0XHRjb25zdCByZXNldFJlcXVlc3Q6IFJlc2V0UGFzc3dvcmRSZXF1ZXN0RFRPID0ge1xyXG5cdFx0XHR1c2VySWQ6IHRoaXMudXNlcklkLFxyXG5cdFx0XHRwYXNzd29yZDogZm9ybVZhbHVlLm5ld1Bhc3N3b3JkXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuc3ViamVjdHMucmVzZXRQYXNzd29yZC5uZXh0KHJlc2V0UmVxdWVzdCk7XHJcblx0fVxyXG5cclxuXHRjYW5jZWwoKTogdm9pZCB7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSgnY2FuY2VsJyk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjaGFuZ2UtcGFzc3dvcmQtbW9kYWxcIiAqdHJhbnNsb2NvPVwibGV0IHQ7IHJlYWQ6ICdwcm9maWxlU2lkZWJhcidcIj5cclxuXHQ8YXJpbC1mb3JtIFtmb3JtR3JvdXBdPVwicGFzc3dvcmRGb3JtXCI+XHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnbmV3UGFzc3dvcmQnKVwiIFtjb2xzXT1cInsgeGw6IDEyLCBsZzogMTIsIG1kOiAxMiwgc206IDEyIH1cIiBbbWFya0FzUmVxdWlyZWRdPVwidHJ1ZVwiPlxyXG5cdFx0XHQ8cC1wYXNzd29yZCBcclxuXHRcdFx0XHRmb3JtQ29udHJvbE5hbWU9XCJuZXdQYXNzd29yZFwiXHJcblx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cInQoJ25ld1Bhc3N3b3JkJylcIlxyXG5cdFx0XHRcdFtmZWVkYmFja109XCJmYWxzZVwiXHJcblx0XHRcdFx0W3RvZ2dsZU1hc2tdPVwidHJ1ZVwiXHJcblx0XHRcdFx0c3R5bGVDbGFzcz1cInctZnVsbFwiXHJcblx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCJcclxuXHRcdFx0XHRbcFRvb2x0aXBdPVwicGFzc3dvcmRGb3JtLmdldCgnbmV3UGFzc3dvcmQnKT8uaW52YWxpZCAmJiBwYXNzd29yZEZvcm0uZ2V0KCduZXdQYXNzd29yZCcpPy50b3VjaGVkID8gZ2V0RXJyb3JNZXNzYWdlKCduZXdQYXNzd29yZCcpIDogJydcIlxyXG5cdFx0XHRcdHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcblx0XHRcdFx0dG9vbHRpcFN0eWxlQ2xhc3M9XCJ0b29sdGlwRXJyb3JNZXNzYWdlXCI+XHJcblx0XHRcdDwvcC1wYXNzd29yZD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnY29uZmlybVBhc3N3b3JkJylcIiBbY29sc109XCJ7IHhsOiAxMiwgbGc6IDEyLCBtZDogMTIsIHNtOiAxMiB9XCIgW21hcmtBc1JlcXVpcmVkXT1cInRydWVcIj5cclxuXHRcdFx0PHAtcGFzc3dvcmQgXHJcblx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwiY29uZmlybVBhc3N3b3JkXCJcclxuXHRcdFx0XHRbcGxhY2Vob2xkZXJdPVwidCgnY29uZmlybVBhc3N3b3JkJylcIlxyXG5cdFx0XHRcdFtmZWVkYmFja109XCJmYWxzZVwiXHJcblx0XHRcdFx0W3RvZ2dsZU1hc2tdPVwidHJ1ZVwiXHJcblx0XHRcdFx0c3R5bGVDbGFzcz1cInctZnVsbFwiXHJcblx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCJcclxuXHRcdFx0XHRbcFRvb2x0aXBdPVwicGFzc3dvcmRGb3JtLmdldCgnY29uZmlybVBhc3N3b3JkJyk/LmludmFsaWQgJiYgcGFzc3dvcmRGb3JtLmdldCgnY29uZmlybVBhc3N3b3JkJyk/LnRvdWNoZWQgPyBnZXRFcnJvck1lc3NhZ2UoJ2NvbmZpcm1QYXNzd29yZCcpIDogJydcIlxyXG5cdFx0XHRcdHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcblx0XHRcdFx0dG9vbHRpcFN0eWxlQ2xhc3M9XCJ0b29sdGlwRXJyb3JNZXNzYWdlXCI+XHJcblx0XHRcdDwvcC1wYXNzd29yZD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWVuZCBtdC00IGdhcC0yXCI+XHJcblx0XHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRcdGNvbG9yPVwiZGFuZ2VyXCJcclxuXHRcdFx0XHRbbGFiZWxdPVwidCgnY2FuY2VsJylcIlxyXG5cdFx0XHRcdFtvdXRsaW5lZF09XCJ0cnVlXCJcclxuXHRcdFx0XHRpY29uPVwiVElNRVNcIlxyXG5cdFx0XHRcdChjbGlja0V2ZW50KT1cImNhbmNlbCgpXCI+XHJcblx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRcdGNvbG9yPVwic3VjY2Vzc1wiXHJcblx0XHRcdFx0W2xhYmVsXT1cInQoJ3NhdmUnKVwiXHJcblx0XHRcdFx0W3JhaXNlZF09XCJmYWxzZVwiXHJcblx0XHRcdFx0aWNvbj1cIkNIRUNLXCJcclxuXHRcdFx0XHQoY2xpY2tFdmVudCk9XCJzdWJtaXQoKVwiPlxyXG5cdFx0XHQ8L2FyaWwtYnV0dG9uPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9hcmlsLWZvcm0+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9wcm9maWxlU2lkZWJhci9tb2RhbHMvY2hhbmdlLXBhc3N3b3JkLW1vZGFsL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvcHJvZmlsZVNpZGViYXIvbW9kYWxzL2NoYW5nZS1wYXNzd29yZC1tb2RhbC9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBR04sV0FBVyxFQUVYLFdBQVcsRUFDWCxtQkFBbUIsRUFFbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUl4QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7Ozs7OztB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Q2hDLENBQUM7K0dBN0ZXLDRCQUE0QjttR0FBNUIsNEJBQTRCLHdFQ25GekMsazhEQWdEQSwweUJEc0JFLFlBQVksOEJBQ1osbUJBQW1CLG1sQkFDbkIsV0FBVyw4QkFDWCxjQUFjLDRIQUNkLGNBQWMseUxBQ2QsZUFBZSw2TkFDZixjQUFjLDZnQkFDZCxhQUFhLHFYQUNiLGVBQWU7OzRGQUtKLDRCQUE0QjtrQkFoQnhDLFNBQVM7aUNBQ0csSUFBSSxXQUNQO3dCQUNSLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixlQUFlO3FCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBlZmZlY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7XHJcblx0QWJzdHJhY3RDb250cm9sLFxyXG5cdEZvcm1CdWlsZGVyLFxyXG5cdEZvcm1Db250cm9sLFxyXG5cdEZvcm1Hcm91cCxcclxuXHRGb3Jtc01vZHVsZSxcclxuXHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cdFZhbGlkYXRpb25FcnJvcnNcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IFBhc3N3b3JkTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9wYXNzd29yZCc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdwcmltZW5nL3Rvb2x0aXAnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgRmllbGRDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2ZpZWxkJztcclxuaW1wb3J0IHsgQVJpTEZvcm1Nb2R1bGUgfSBmcm9tICdhcmlsL3VpL2Zvcm0nO1xyXG5cclxuaW1wb3J0IHsgUHJvZmlsZVNlcnZpY2UsIFJlc2V0UGFzc3dvcmRSZXF1ZXN0RFRPIH0gZnJvbSAnLi4vLi4vcHJvZmlsZS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBQYXNzd29yZFZhbGlkYXRvcnMge1xyXG5cdHN0YXRpYyBwYXNzd29yZE1hdGNoVmFsaWRhdG9yID0gKHBhc3N3b3JkRm9ybUdyb3VwOiBGb3JtR3JvdXApID0+IHtcclxuXHRcdHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG5cdFx0XHRpZiAoIWNvbnRyb2wudmFsdWUgfHwgIXBhc3N3b3JkRm9ybUdyb3VwKSB7XHJcblx0XHRcdFx0cmV0dXJuIG51bGw7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGNvbnN0IHBhc3N3b3JkQ29udHJvbCA9IHBhc3N3b3JkRm9ybUdyb3VwLmdldCgnbmV3UGFzc3dvcmQnKTtcclxuXHRcdFx0Y29uc3QgY29uZmlybVBhc3N3b3JkVmFsdWUgPSBjb250cm9sLnZhbHVlO1xyXG5cclxuXHRcdFx0aWYgKCFwYXNzd29yZENvbnRyb2wgfHwgIWNvbmZpcm1QYXNzd29yZFZhbHVlKSB7XHJcblx0XHRcdFx0cmV0dXJuIG51bGw7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGNvbnN0IHBhc3N3b3Jkc01hdGNoID0gcGFzc3dvcmRDb250cm9sLnZhbHVlID09PSBjb25maXJtUGFzc3dvcmRWYWx1ZTtcclxuXHRcdFx0cmV0dXJuIHBhc3N3b3Jkc01hdGNoID8gbnVsbCA6IChcclxuXHRcdFx0XHRcdHtcclxuXHRcdFx0XHRcdFx0cGFzc3dvcmRNaXNtYXRjaDogJ8WeaWZyZWxlciBlxZ9sZcWfbWl5b3IuIEzDvHRmZW4gYXluxLEgxZ9pZnJleWkgZ2lyaW5pei4nXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0KTtcclxuXHRcdH07XHJcblx0fTtcclxuXHJcblx0c3RhdGljIG1pbkxlbmd0aChsZW5ndGg6IG51bWJlcikge1xyXG5cdFx0cmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcblx0XHRcdGlmICghY29udHJvbC52YWx1ZSB8fCBjb250cm9sLnZhbHVlLmxlbmd0aCA+PSBsZW5ndGgpIHtcclxuXHRcdFx0XHRyZXR1cm4gbnVsbDtcclxuXHRcdFx0fVxyXG5cdFx0XHRyZXR1cm4geyBtaW5sZW5ndGg6IGDFnmlmcmUgZW4gYXogJHtsZW5ndGh9IGthcmFrdGVyIG9sbWFsxLFkxLFyLmAgfTtcclxuXHRcdH07XHJcblx0fVxyXG5cclxuXHRzdGF0aWMgcmVxdWlyZWQoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xyXG5cdFx0aWYgKCFjb250cm9sLnZhbHVlIHx8IGNvbnRyb2wudmFsdWUudHJpbSgpID09PSAnJykge1xyXG5cdFx0XHRyZXR1cm4geyByZXF1aXJlZDogJ0J1IGFsYW4gem9ydW5sdWR1ci4nIH07XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gbnVsbDtcclxuXHR9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0UmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuXHRcdEZvcm1zTW9kdWxlLFxyXG5cdFx0QVJpTEZvcm1Nb2R1bGUsXHJcblx0XHRGaWVsZENvbXBvbmVudCxcclxuXHRcdEJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdFBhc3N3b3JkTW9kdWxlLFxyXG5cdFx0VG9vbHRpcE1vZHVsZSxcclxuXHRcdFRyYW5zbG9jb01vZHVsZVxyXG5cdF0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmxzOiBbJy4vY2hhbmdlLXBhc3N3b3JkLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkTW9kYWxDb21wb25lbnQge1xyXG5cdHBhc3N3b3JkRm9ybSE6IEZvcm1Hcm91cDtcclxuXHR1c2VySWQ6IHN0cmluZztcclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdHJlc2V0UGFzc3dvcmQ6IG5ldyBTdWJqZWN0PFJlc2V0UGFzc3dvcmRSZXF1ZXN0RFRPPigpXHJcblx0fTtcclxuXHJcblx0cmVzZXRQYXNzd29yZFNlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMucmVzZXRQYXNzd29yZC5waXBlKHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5wcm9maWxlU2VydmljZS5yZXNldFBhc3N3b3JkKGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGRpYWxvZ0NvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMudXNlcklkID0gdGhpcy5kaWFsb2dDb25maWcuZGF0YT8udXNlcklkO1xyXG5cclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHNlcnZpY2UgPSB0aGlzLnJlc2V0UGFzc3dvcmRTZXJ2aWNlKCk7XHJcblx0XHRcdFx0aWYgKHNlcnZpY2U/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0XHR0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XHJcblx0XHRcdFx0XHRcdHNldmVyaXR5OiAnc3VjY2VzcycsXHJcblx0XHRcdFx0XHRcdHN1bW1hcnk6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3Byb2ZpbGVTaWRlYmFyLmNoYW5nZVBhc3N3b3JkU3VjY2VzcycpLFxyXG5cdFx0XHRcdFx0XHRkZXRhaWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3Byb2ZpbGVTaWRlYmFyLmNoYW5nZVBhc3N3b3JkU3VjY2Vzc0RldGFpbCcpLFxyXG5cdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290J1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IHN0YXR1czogJ3N1Y2Nlc3MnIH0pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcblx0XHQpO1xyXG5cclxuXHRcdHRoaXMuaW5pdGlhbGl6ZUZvcm0oKTtcclxuXHJcblx0XHRpZiAoIXRoaXMudXNlcklkKSB7XHJcblx0XHRcdHRoaXMuZGlhbG9nUmVmLmNsb3NlKCdlcnJvcicpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aW5pdGlhbGl6ZUZvcm0oKTogdm9pZCB7XHJcblx0XHR0aGlzLnBhc3N3b3JkRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG5cdFx0XHRuZXdQYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBbUGFzc3dvcmRWYWxpZGF0b3JzLnJlcXVpcmVkLCBQYXNzd29yZFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXSksXHJcblx0XHRcdGNvbmZpcm1QYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBbUGFzc3dvcmRWYWxpZGF0b3JzLnJlcXVpcmVkXSlcclxuXHRcdH0pO1xyXG5cclxuXHRcdGNvbnN0IGNvbmZpcm1QYXNzd29yZENvbnRyb2wgPSB0aGlzLnBhc3N3b3JkRm9ybS5nZXQoJ2NvbmZpcm1QYXNzd29yZCcpO1xyXG5cdFx0aWYgKGNvbmZpcm1QYXNzd29yZENvbnRyb2wpIHtcclxuXHRcdFx0Y29uZmlybVBhc3N3b3JkQ29udHJvbC5zZXRWYWxpZGF0b3JzKFtcclxuXHRcdFx0XHRQYXNzd29yZFZhbGlkYXRvcnMucmVxdWlyZWQsXHJcblx0XHRcdFx0UGFzc3dvcmRWYWxpZGF0b3JzLnBhc3N3b3JkTWF0Y2hWYWxpZGF0b3IodGhpcy5wYXNzd29yZEZvcm0pXHJcblx0XHRcdF0pO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRoaXMucGFzc3dvcmRGb3JtLmdldCgnbmV3UGFzc3dvcmQnKT8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcblx0XHRcdGNvbmZpcm1QYXNzd29yZENvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRnZXRFcnJvck1lc3NhZ2UoY29udHJvbE5hbWU6IHN0cmluZyk6IHN0cmluZyB7XHJcblx0XHRjb25zdCBjb250cm9sID0gdGhpcy5wYXNzd29yZEZvcm0uZ2V0KGNvbnRyb2xOYW1lKTtcclxuXHRcdGlmIChjb250cm9sPy5lcnJvcnMpIHtcclxuXHRcdFx0Y29uc3QgZXJyb3JzID0gY29udHJvbC5lcnJvcnM7XHJcblx0XHRcdGNvbnN0IGVycm9yS2V5cyA9IE9iamVjdC5rZXlzKGVycm9ycyk7XHJcblx0XHRcdGlmIChlcnJvcktleXMubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdHJldHVybiBlcnJvcnNbZXJyb3JLZXlzWzBdXTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuICcnO1xyXG5cdH1cclxuXHJcblx0c3VibWl0KCk6IHZvaWQge1xyXG5cdFx0aWYgKHRoaXMucGFzc3dvcmRGb3JtLmludmFsaWQpIHtcclxuXHRcdFx0dGhpcy5wYXNzd29yZEZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3QgZm9ybVZhbHVlID0gdGhpcy5wYXNzd29yZEZvcm0udmFsdWU7XHJcblx0XHRjb25zdCByZXNldFJlcXVlc3Q6IFJlc2V0UGFzc3dvcmRSZXF1ZXN0RFRPID0ge1xyXG5cdFx0XHR1c2VySWQ6IHRoaXMudXNlcklkLFxyXG5cdFx0XHRwYXNzd29yZDogZm9ybVZhbHVlLm5ld1Bhc3N3b3JkXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuc3ViamVjdHMucmVzZXRQYXNzd29yZC5uZXh0KHJlc2V0UmVxdWVzdCk7XHJcblx0fVxyXG5cclxuXHRjYW5jZWwoKTogdm9pZCB7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSgnY2FuY2VsJyk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjaGFuZ2UtcGFzc3dvcmQtbW9kYWxcIiAqdHJhbnNsb2NvPVwibGV0IHQ7IHJlYWQ6ICdwcm9maWxlU2lkZWJhcidcIj5cclxuXHQ8YXJpbC1mb3JtIFtmb3JtR3JvdXBdPVwicGFzc3dvcmRGb3JtXCI+XHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnbmV3UGFzc3dvcmQnKVwiIFtjb2xzXT1cInsgeGw6IDEyLCBsZzogMTIsIG1kOiAxMiwgc206IDEyIH1cIiBbbWFya0FzUmVxdWlyZWRdPVwidHJ1ZVwiPlxyXG5cdFx0XHQ8cC1wYXNzd29yZCBcclxuXHRcdFx0XHRmb3JtQ29udHJvbE5hbWU9XCJuZXdQYXNzd29yZFwiXHJcblx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cInQoJ25ld1Bhc3N3b3JkJylcIlxyXG5cdFx0XHRcdFtmZWVkYmFja109XCJmYWxzZVwiXHJcblx0XHRcdFx0W3RvZ2dsZU1hc2tdPVwidHJ1ZVwiXHJcblx0XHRcdFx0c3R5bGVDbGFzcz1cInctZnVsbFwiXHJcblx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCJcclxuXHRcdFx0XHRbcFRvb2x0aXBdPVwicGFzc3dvcmRGb3JtLmdldCgnbmV3UGFzc3dvcmQnKT8uaW52YWxpZCAmJiBwYXNzd29yZEZvcm0uZ2V0KCduZXdQYXNzd29yZCcpPy50b3VjaGVkID8gZ2V0RXJyb3JNZXNzYWdlKCduZXdQYXNzd29yZCcpIDogJydcIlxyXG5cdFx0XHRcdHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcblx0XHRcdFx0dG9vbHRpcFN0eWxlQ2xhc3M9XCJ0b29sdGlwRXJyb3JNZXNzYWdlXCI+XHJcblx0XHRcdDwvcC1wYXNzd29yZD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnY29uZmlybVBhc3N3b3JkJylcIiBbY29sc109XCJ7IHhsOiAxMiwgbGc6IDEyLCBtZDogMTIsIHNtOiAxMiB9XCIgW21hcmtBc1JlcXVpcmVkXT1cInRydWVcIj5cclxuXHRcdFx0PHAtcGFzc3dvcmQgXHJcblx0XHRcdFx0Zm9ybUNvbnRyb2xOYW1lPVwiY29uZmlybVBhc3N3b3JkXCJcclxuXHRcdFx0XHRbcGxhY2Vob2xkZXJdPVwidCgnY29uZmlybVBhc3N3b3JkJylcIlxyXG5cdFx0XHRcdFtmZWVkYmFja109XCJmYWxzZVwiXHJcblx0XHRcdFx0W3RvZ2dsZU1hc2tdPVwidHJ1ZVwiXHJcblx0XHRcdFx0c3R5bGVDbGFzcz1cInctZnVsbFwiXHJcblx0XHRcdFx0YXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCJcclxuXHRcdFx0XHRbcFRvb2x0aXBdPVwicGFzc3dvcmRGb3JtLmdldCgnY29uZmlybVBhc3N3b3JkJyk/LmludmFsaWQgJiYgcGFzc3dvcmRGb3JtLmdldCgnY29uZmlybVBhc3N3b3JkJyk/LnRvdWNoZWQgPyBnZXRFcnJvck1lc3NhZ2UoJ2NvbmZpcm1QYXNzd29yZCcpIDogJydcIlxyXG5cdFx0XHRcdHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcblx0XHRcdFx0dG9vbHRpcFN0eWxlQ2xhc3M9XCJ0b29sdGlwRXJyb3JNZXNzYWdlXCI+XHJcblx0XHRcdDwvcC1wYXNzd29yZD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8ZGl2IGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWVuZCBtdC00IGdhcC0yXCI+XHJcblx0XHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRcdGNvbG9yPVwiZGFuZ2VyXCJcclxuXHRcdFx0XHRbbGFiZWxdPVwidCgnY2FuY2VsJylcIlxyXG5cdFx0XHRcdFtvdXRsaW5lZF09XCJ0cnVlXCJcclxuXHRcdFx0XHRpY29uPVwiVElNRVNcIlxyXG5cdFx0XHRcdChjbGlja0V2ZW50KT1cImNhbmNlbCgpXCI+XHJcblx0XHRcdDwvYXJpbC1idXR0b24+XHJcblx0XHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRcdGNvbG9yPVwic3VjY2Vzc1wiXHJcblx0XHRcdFx0W2xhYmVsXT1cInQoJ3NhdmUnKVwiXHJcblx0XHRcdFx0W3JhaXNlZF09XCJmYWxzZVwiXHJcblx0XHRcdFx0aWNvbj1cIkNIRUNLXCJcclxuXHRcdFx0XHQoY2xpY2tFdmVudCk9XCJzdWJtaXQoKVwiPlxyXG5cdFx0XHQ8L2FyaWwtYnV0dG9uPlxyXG5cdFx0PC9kaXY+XHJcblx0PC9hcmlsLWZvcm0+XHJcbjwvZGl2PlxyXG4iXX0=
|