@cuby-ui/core 0.0.468 → 0.0.469
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -25
- package/components/sidebar/sidebar-header/sidebar-header.component.d.ts +1 -1
- package/components/sidebar/sidebar-navigation-item/sidebar-navigation-item.component.d.ts +1 -1
- package/esm2022/animations/animations.mjs +1 -1
- package/esm2022/animations/index.mjs +1 -1
- package/esm2022/classes/accessors.mjs +1 -1
- package/esm2022/classes/driver.mjs +1 -1
- package/esm2022/classes/index.mjs +1 -1
- package/esm2022/classes/vehicle.mjs +1 -1
- package/esm2022/components/accordion/accordion-item/accordion-item.component.mjs +3 -3
- package/esm2022/components/accordion/accordion-item/accordion-item.options.mjs +1 -1
- package/esm2022/components/accordion/accordion.component.mjs +3 -3
- package/esm2022/components/accordion/accordion.directive.mjs +1 -1
- package/esm2022/components/accordion/accordion.module.mjs +1 -1
- package/esm2022/components/accordion/index.mjs +1 -1
- package/esm2022/components/alert/alert.component.mjs +3 -3
- package/esm2022/components/alert/alert.interfaces.mjs +1 -1
- package/esm2022/components/alert/alert.module.mjs +1 -1
- package/esm2022/components/alert/alert.service.mjs +1 -1
- package/esm2022/components/alert/alert.tokens.mjs +1 -1
- package/esm2022/components/alert/alert.types.mjs +1 -1
- package/esm2022/components/alert/alerts.component.mjs +3 -3
- package/esm2022/components/alert/index.mjs +1 -1
- package/esm2022/components/alert-hint/alert-hint.component.mjs +3 -3
- package/esm2022/components/alert-hint/error-status.mjs +1 -1
- package/esm2022/components/alert-hint/index.mjs +1 -1
- package/esm2022/components/badge/badge.component.mjs +3 -3
- package/esm2022/components/badge/badge.module.mjs +1 -1
- package/esm2022/components/badge/badge.options.mjs +1 -1
- package/esm2022/components/badge/index.mjs +1 -1
- package/esm2022/components/banner/banner.component.mjs +3 -3
- package/esm2022/components/banner/banner.module.mjs +1 -1
- package/esm2022/components/banner/banner.options.mjs +1 -1
- package/esm2022/components/banner/index.mjs +1 -1
- package/esm2022/components/breadcrumbs/breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +3 -3
- package/esm2022/components/breadcrumbs/breadcrumbs.module.mjs +1 -1
- package/esm2022/components/breadcrumbs/index.mjs +1 -1
- package/esm2022/components/button/button.component.mjs +3 -3
- package/esm2022/components/button/button.module.mjs +1 -1
- package/esm2022/components/button/button.options.mjs +1 -1
- package/esm2022/components/button/index.mjs +1 -1
- package/esm2022/components/button-group/button-group.component.mjs +3 -3
- package/esm2022/components/button-group/button-group.module.mjs +1 -1
- package/esm2022/components/button-group/index.mjs +1 -1
- package/esm2022/components/card-wrapper/card-wrapper.component.mjs +3 -3
- package/esm2022/components/card-wrapper/index.mjs +1 -1
- package/esm2022/components/checkbox/checkbox.component.mjs +1 -1
- package/esm2022/components/checkbox/checkbox.module.mjs +1 -1
- package/esm2022/components/checkbox/index.mjs +1 -1
- package/esm2022/components/content-header/content-header.component.mjs +3 -3
- package/esm2022/components/content-header/index.mjs +1 -1
- package/esm2022/components/content-wrapper/content-wrapper.component.mjs +3 -3
- package/esm2022/components/content-wrapper/index.mjs +1 -1
- package/esm2022/components/context-menu/context-menu.component.mjs +3 -3
- package/esm2022/components/context-menu/context-menu.module.mjs +1 -1
- package/esm2022/components/context-menu/index.mjs +1 -1
- package/esm2022/components/dialog/dialog-actions/dialog-actions.component.mjs +3 -3
- package/esm2022/components/dialog/dialog-header/dialog-header.component.mjs +3 -3
- package/esm2022/components/dialog/dialog.component.mjs +3 -3
- package/esm2022/components/dialog/dialog.interfaces.mjs +1 -1
- package/esm2022/components/dialog/dialog.module.mjs +1 -1
- package/esm2022/components/dialog/dialog.service.mjs +1 -1
- package/esm2022/components/dialog/dialog.tokens.mjs +1 -1
- package/esm2022/components/dialog/dialogs.component.mjs +3 -3
- package/esm2022/components/dialog/index.mjs +1 -1
- package/esm2022/components/dropdown/dropdown.interfaces.mjs +1 -1
- package/esm2022/components/dropdown/index.mjs +1 -1
- package/esm2022/components/empty-state/empty-state.component.mjs +3 -3
- package/esm2022/components/empty-state/index.mjs +1 -1
- package/esm2022/components/file-icon/file-icon.component.mjs +3 -3
- package/esm2022/components/file-icon/file-icon.options.mjs +1 -1
- package/esm2022/components/file-icon/index.mjs +1 -1
- package/esm2022/components/form-field/form-field.component.mjs +3 -3
- package/esm2022/components/form-field/form-field.module.mjs +1 -1
- package/esm2022/components/form-field/index.mjs +1 -1
- package/esm2022/components/ghost-input/ghost-input.component.mjs +1 -1
- package/esm2022/components/ghost-input/index.mjs +1 -1
- package/esm2022/components/hint/hint.component.mjs +3 -3
- package/esm2022/components/hint/hint.module.mjs +1 -1
- package/esm2022/components/hint/index.mjs +1 -1
- package/esm2022/components/icon-button/icon-button.component.mjs +3 -3
- package/esm2022/components/icon-button/icon-button.module.mjs +1 -1
- package/esm2022/components/icon-button/index.mjs +1 -1
- package/esm2022/components/index.mjs +1 -1
- package/esm2022/components/input-number/index.mjs +1 -1
- package/esm2022/components/input-number/input-number.component.mjs +3 -3
- package/esm2022/components/input-number/input-number.module.mjs +1 -1
- package/esm2022/components/input-password/index.mjs +1 -1
- package/esm2022/components/input-password/input-password.component.mjs +3 -3
- package/esm2022/components/input-password/input-password.module.mjs +1 -1
- package/esm2022/components/input-text/index.mjs +1 -1
- package/esm2022/components/input-text/input-text.component.mjs +3 -3
- package/esm2022/components/input-text/input-text.module.mjs +1 -1
- package/esm2022/components/input-time/index.mjs +1 -1
- package/esm2022/components/input-time/input-time.component.mjs +3 -3
- package/esm2022/components/input-time/input-time.module.mjs +1 -1
- package/esm2022/components/input-time/input-time.options.mjs +1 -1
- package/esm2022/components/label/index.mjs +1 -1
- package/esm2022/components/label/label.component.mjs +3 -3
- package/esm2022/components/label/label.module.mjs +1 -1
- package/esm2022/components/layout/index.mjs +1 -1
- package/esm2022/components/layout/layout.component.mjs +3 -3
- package/esm2022/components/letter-box/index.mjs +1 -1
- package/esm2022/components/letter-box/letter-box.component.mjs +3 -3
- package/esm2022/components/letter-box/letter-box.interfaces.mjs +1 -1
- package/esm2022/components/notification/index.mjs +1 -1
- package/esm2022/components/notification/notification.component.mjs +3 -3
- package/esm2022/components/notification/notification.module.mjs +1 -1
- package/esm2022/components/notification/notification.options.mjs +1 -1
- package/esm2022/components/options-button/index.mjs +1 -1
- package/esm2022/components/options-button/options-button.component.mjs +3 -3
- package/esm2022/components/radio/index.mjs +1 -1
- package/esm2022/components/radio/radio.component.mjs +1 -1
- package/esm2022/components/radio/radio.module.mjs +1 -1
- package/esm2022/components/render-dynamic-components/index.mjs +1 -1
- package/esm2022/components/render-dynamic-components/render-dynamic-components.component.mjs +3 -3
- package/esm2022/components/render-dynamic-components/render-dynamic-components.options.mjs +1 -1
- package/esm2022/components/render-dynamic-components/render-dynamic-components.service.mjs +1 -1
- package/esm2022/components/root/index.mjs +1 -1
- package/esm2022/components/root/root.component.mjs +3 -3
- package/esm2022/components/root/root.module.mjs +1 -1
- package/esm2022/components/root/root.options.mjs +1 -1
- package/esm2022/components/select/index.mjs +1 -1
- package/esm2022/components/select/select.component.mjs +3 -3
- package/esm2022/components/select/select.module.mjs +1 -1
- package/esm2022/components/sidebar/index.mjs +1 -1
- package/esm2022/components/sidebar/sidebar-container/index.mjs +1 -1
- package/esm2022/components/sidebar/sidebar-container/sidebar-container.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar-header/index.mjs +1 -1
- package/esm2022/components/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar-navigation/index.mjs +1 -1
- package/esm2022/components/sidebar/sidebar-navigation/sidebar-navigation.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar-navigation-container/index.mjs +1 -1
- package/esm2022/components/sidebar/sidebar-navigation-container/sidebar-navigation-container.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar-navigation-item/index.mjs +1 -1
- package/esm2022/components/sidebar/sidebar-navigation-item/sidebar-navigation-item.component.mjs +3 -3
- package/esm2022/components/sidebar/sidebar.options.mjs +1 -1
- package/esm2022/components/sidebar/sidebar.service.mjs +1 -1
- package/esm2022/components/svg/index.mjs +1 -1
- package/esm2022/components/svg/svg.component.mjs +3 -3
- package/esm2022/components/svg/svg.module.mjs +1 -1
- package/esm2022/components/tab/index.mjs +1 -1
- package/esm2022/components/tab/tab.component.mjs +1 -1
- package/esm2022/components/tabs/components/abstract-tabs/abstract-tabs.component.mjs +3 -3
- package/esm2022/components/tabs/components/abstract-tabs/index.mjs +1 -1
- package/esm2022/components/tabs/components/index.mjs +1 -1
- package/esm2022/components/tabs/index.mjs +1 -1
- package/esm2022/components/tabs/services/index.mjs +1 -1
- package/esm2022/components/tabs/services/tabs.service.mjs +1 -1
- package/esm2022/components/tabs/tabs.component.mjs +3 -3
- package/esm2022/components/tabs/tabs.options.mjs +1 -1
- package/esm2022/components/tabs/tabs.provider.mjs +1 -1
- package/esm2022/components/textarea/index.mjs +1 -1
- package/esm2022/components/textarea/textarea.component.mjs +1 -1
- package/esm2022/components/textarea/textarea.module.mjs +1 -1
- package/esm2022/components/toggle/index.mjs +1 -1
- package/esm2022/components/toggle/toggle.component.mjs +1 -1
- package/esm2022/components/toggle/toggle.module.mjs +1 -1
- package/esm2022/directives/index.mjs +1 -1
- package/esm2022/directives/text-field-controller/index.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-controller.module.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-controller.provider.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-icon-left.directive.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-id.directive.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-is-error.directive.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-placeholder.directive.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field-size.directive.mjs +1 -1
- package/esm2022/directives/text-field-controller/text-field.controller.mjs +1 -1
- package/esm2022/directives/tooltip/index.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-describe.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-driver.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-host.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-hover.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-manual.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-options.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-overflow.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-pointer.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-position.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip-unstyled.component.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip.component.mjs +13 -13
- package/esm2022/directives/tooltip/tooltip.directive.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip.providers.mjs +1 -1
- package/esm2022/directives/tooltip/tooltip.service.mjs +1 -1
- package/esm2022/directives/tooltip/tooltips.component.mjs +3 -3
- package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.component.mjs +3 -3
- package/esm2022/editor/components/editor-tool-modal/editor-tool-modal.options.mjs +1 -1
- package/esm2022/editor/components/marker-modal/marker-modal.component.mjs +3 -3
- package/esm2022/editor/components/marker-select/component/select-item/select-option.component.mjs +3 -3
- package/esm2022/editor/components/marker-select/marker-select.component.mjs +3 -3
- package/esm2022/editor/config/custom-elements.mjs +1 -1
- package/esm2022/editor/editor.component.mjs +3 -3
- package/esm2022/editor/interfaces/angular-element.mjs +1 -1
- package/esm2022/editor/interfaces/custom-element.mjs +1 -1
- package/esm2022/editor/interfaces/editor-service.mjs +1 -1
- package/esm2022/editor/providers/index.mjs +1 -1
- package/esm2022/editor/tools/attaches.tool.mjs +1 -1
- package/esm2022/editor/tools/combined-text-block.tool.mjs +1 -1
- package/esm2022/editor/tools/image.tool.mjs +1 -1
- package/esm2022/editor/tools/role-marker.tool.mjs +3 -3
- package/esm2022/editor/tools/tool-marker.tool.mjs +1 -1
- package/esm2022/editor/tools/video.tool.mjs +1 -1
- package/esm2022/editor/utils/copy-text-to-clipboard.mjs +1 -1
- package/esm2022/editor/utils/create-tools-data.mjs +1 -1
- package/esm2022/editor/utils/open-file-in-browser.mjs +1 -1
- package/esm2022/editor/utils/set-loading.mjs +1 -1
- package/esm2022/editor/utils/url.validator.mjs +1 -1
- package/esm2022/editor/widgets/editor-block/editor-block.component.mjs +3 -3
- package/esm2022/editor/widgets/editor-modal/editor-modal.component.mjs +3 -3
- package/esm2022/editor/widgets/editor-modal/index.mjs +1 -1
- package/esm2022/editor/widgets/editor-readonly/editor-readonly.options.mjs +1 -1
- package/esm2022/editor/widgets/editor-readonly/editor-resize-observer.directive.mjs +1 -1
- package/esm2022/editor/widgets/index.mjs +1 -1
- package/esm2022/index.mjs +1 -1
- package/esm2022/interceptors/auth.interceptor.mjs +1 -1
- package/esm2022/interceptors/error-handler.interceptor.mjs +1 -1
- package/esm2022/interceptors/x-ndjson.interceptor.mjs +1 -1
- package/esm2022/interfaces/context-menu-item.mjs +1 -1
- package/esm2022/interfaces/image.mjs +1 -1
- package/esm2022/interfaces/index.mjs +1 -1
- package/esm2022/interfaces/option.mjs +1 -1
- package/esm2022/providers/auth.options.mjs +1 -1
- package/esm2022/providers/auth.provider.mjs +1 -1
- package/esm2022/providers/index.mjs +1 -1
- package/esm2022/services/auth.service.mjs +1 -1
- package/esm2022/services/browser-auth.service.mjs +1 -1
- package/esm2022/services/index.mjs +1 -1
- package/esm2022/services/loader.options.mjs +1 -1
- package/esm2022/services/mobile-auth.service.mjs +1 -1
- package/esm2022/services/position.service.mjs +1 -1
- package/esm2022/services/theme.options.mjs +1 -1
- package/esm2022/services/theme.service.mjs +1 -1
- package/esm2022/services/token.options.mjs +1 -1
- package/esm2022/services/token.service.mjs +1 -1
- package/esm2022/services/visual-viewport.service.mjs +1 -1
- package/esm2022/tokens/animations-speed.mjs +1 -1
- package/esm2022/tokens/index.mjs +1 -1
- package/esm2022/tokens/reduced-motion.mjs +1 -1
- package/esm2022/tokens/viewport.mjs +1 -1
- package/esm2022/types/appearance.mjs +1 -1
- package/esm2022/types/button-theme.mjs +1 -1
- package/esm2022/types/hint-type.mjs +1 -1
- package/esm2022/types/index.mjs +1 -1
- package/esm2022/types/point.mjs +1 -1
- package/esm2022/types/portal-item.mjs +1 -1
- package/esm2022/types/position.mjs +1 -1
- package/esm2022/types/resizing.mjs +1 -1
- package/esm2022/types/shape.mjs +1 -1
- package/esm2022/types/size.mjs +1 -1
- package/esm2022/types/status.mjs +1 -1
- package/esm2022/utils/check-fixed-position.mjs +1 -1
- package/esm2022/utils/default-validators/create-default-validators.mjs +1 -1
- package/esm2022/utils/default-validators/create-default-validators.options.mjs +1 -1
- package/esm2022/utils/default-validators/extra-spaces.options.mjs +1 -1
- package/esm2022/utils/default-validators/extra-spaces.validators.mjs +1 -1
- package/esm2022/utils/default-validators/index.mjs +1 -1
- package/esm2022/utils/format/index.mjs +1 -1
- package/esm2022/utils/format/remove-spaces.mjs +1 -1
- package/esm2022/utils/format/replace.mjs +1 -1
- package/esm2022/utils/index.mjs +1 -1
- package/esm2022/utils/miscellaneous/index.mjs +1 -1
- package/esm2022/utils/miscellaneous/is-obscured.mjs +1 -1
- package/esm2022/utils/miscellaneous/override-options.mjs +1 -1
- package/esm2022/utils/miscellaneous/to-animation-options.mjs +1 -1
- package/esm2022/widgets/assets/constants/index.mjs +1 -1
- package/esm2022/widgets/assets/constants/translations.mjs +1 -1
- package/esm2022/widgets/assets/index.mjs +1 -1
- package/esm2022/widgets/index.mjs +1 -1
- package/esm2022/widgets/model/index.mjs +1 -1
- package/esm2022/widgets/model/resource-state-service.interface.mjs +1 -1
- package/esm2022/widgets/model/resource-state-service.token.mjs +1 -1
- package/esm2022/widgets/model/resources-block.options.mjs +1 -1
- package/esm2022/widgets/model/subject-modal-service.interface.mjs +1 -1
- package/esm2022/widgets/model/subject-modal-service.token.mjs +1 -1
- package/esm2022/widgets/model/used-elements-service.interface.mjs +1 -1
- package/esm2022/widgets/model/used-elements-service.token.mjs +1 -1
- package/esm2022/widgets/model/utility-service.interface.mjs +1 -1
- package/esm2022/widgets/model/utility-service.token.mjs +1 -1
- package/esm2022/widgets/service/index.mjs +1 -1
- package/esm2022/widgets/service/resource-state-base.service.mjs +1 -1
- package/esm2022/widgets/service/subject-modal-base.service.mjs +1 -1
- package/esm2022/widgets/service/used-elements-base.service.mjs +1 -1
- package/esm2022/widgets/service/utility-base.service.mjs +1 -1
- package/esm2022/widgets/ui/assignee-role-item/assignee-role-item.component.mjs +3 -3
- package/esm2022/widgets/ui/assignee-role-item/index.mjs +1 -1
- package/esm2022/widgets/ui/assignee-roles-tabs/assignee-roles-tabs.component.mjs +3 -3
- package/esm2022/widgets/ui/assignee-roles-tabs/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/categories.component.mjs +3 -3
- package/esm2022/widgets/ui/categories/components/categories-list/categories-list.component.mjs +3 -3
- package/esm2022/widgets/ui/categories/components/categories-list/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/components/category-form/category-form.component.mjs +3 -3
- package/esm2022/widgets/ui/categories/components/category-form/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/components/category-item/category-item.component.mjs +3 -3
- package/esm2022/widgets/ui/categories/components/category-item/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/components/create-category-item/create-category-item.component.mjs +3 -3
- package/esm2022/widgets/ui/categories/components/create-category-item/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/components/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/services/index.mjs +1 -1
- package/esm2022/widgets/ui/categories/services/selected-category.service.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/checklist-block.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/checklist-block.options.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list/checklist-block-list.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-card/checklist-block-list-item-action-card.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-card/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-with-verification/checklist-block-list-item-action-with-verification.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-with-verification/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-without-verification/checklist-block-list-item-action-without-verification.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-action-without-verification/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/checklist-block-list-item-container.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/checklist-block-list-item-container.options.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/checklist-block-list-item-evaluation.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/checklist-block-list-item-evaluation.options.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.options.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-title-control/checklist-block-title-control.component.mjs +3 -3
- package/esm2022/widgets/ui/checklist-block/components/checklist-block-title-control/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/components/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/index.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/services/checklist-block.service.mjs +1 -1
- package/esm2022/widgets/ui/checklist-block/services/index.mjs +1 -1
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/consumable-form-item.component.mjs +3 -3
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/default-control-delay.mjs +1 -1
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/index.mjs +1 -1
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item-readonly/consumable-form-item-readonly.component.mjs +3 -3
- package/esm2022/widgets/ui/consumable-form/components/consumable-form-item-readonly/index.mjs +1 -1
- package/esm2022/widgets/ui/consumable-form/components/index.mjs +1 -1
- package/esm2022/widgets/ui/consumable-form/consumable-form.component.mjs +3 -3
- package/esm2022/widgets/ui/consumable-form/consumable-form.options.mjs +1 -1
- package/esm2022/widgets/ui/consumable-form/index.mjs +1 -1
- package/esm2022/widgets/ui/criterion-info/criterion-info.component.mjs +3 -3
- package/esm2022/widgets/ui/criterion-info/index.mjs +1 -1
- package/esm2022/widgets/ui/criterion-info-form/criterion-info-form.component.mjs +3 -3
- package/esm2022/widgets/ui/criterion-info-form/criterion-info-form.options.mjs +1 -1
- package/esm2022/widgets/ui/criterion-info-form/index.mjs +1 -1
- package/esm2022/widgets/ui/criterion-readonly-info/criterion-readonly-info.component.mjs +3 -3
- package/esm2022/widgets/ui/criterion-readonly-info/index.mjs +1 -1
- package/esm2022/widgets/ui/delete-modal/delete-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/delete-modal/delete-modal.options.mjs +1 -1
- package/esm2022/widgets/ui/delete-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/framer-preview/framer-preview.component.mjs +3 -3
- package/esm2022/widgets/ui/framer-preview/framer-preview.options.mjs +1 -1
- package/esm2022/widgets/ui/framer-preview/index.mjs +1 -1
- package/esm2022/widgets/ui/general-control-error-hint/general-control-error-hint.component.mjs +3 -3
- package/esm2022/widgets/ui/general-control-error-hint/index.mjs +1 -1
- package/esm2022/widgets/ui/index.mjs +1 -1
- package/esm2022/widgets/ui/inserted/index.mjs +1 -1
- package/esm2022/widgets/ui/inserted/inserted.component.mjs +3 -3
- package/esm2022/widgets/ui/instruction-info/index.mjs +1 -1
- package/esm2022/widgets/ui/instruction-info/instruction-info.component.mjs +3 -3
- package/esm2022/widgets/ui/instruction-info-form/index.mjs +1 -1
- package/esm2022/widgets/ui/instruction-info-form/instruction-info-form.component.mjs +3 -3
- package/esm2022/widgets/ui/instruction-info-form/instruction-info-form.options.mjs +1 -1
- package/esm2022/widgets/ui/instruction-readonly-info/index.mjs +1 -1
- package/esm2022/widgets/ui/instruction-readonly-info/instruction-readonly-info.component.mjs +3 -3
- package/esm2022/widgets/ui/loader/index.mjs +1 -1
- package/esm2022/widgets/ui/loader/loader.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-criteria-tab/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-criteria-tab/modal-criteria-tab.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-divided-section/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-divided-section/modal-divided-section.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-divided-section/modal-divided-section.interfaces.mjs +1 -1
- package/esm2022/widgets/ui/modal-header/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-header/modal-header.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-header-inserted-buttons/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-header-inserted-buttons/modal-header-inserted-buttons.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-header-tabs/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-header-tabs/modal-header-tabs.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-info-tab/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-info-tab/modal-info-tab.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-info-tab/modal-info-tab.options.mjs +1 -1
- package/esm2022/widgets/ui/modal-instructions-tab/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-instructions-tab/modal-instructions-tab.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-operation-part/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-operation-part/modal-operation-part.component.mjs +3 -3
- package/esm2022/widgets/ui/modal-resources-tab/index.mjs +1 -1
- package/esm2022/widgets/ui/modal-resources-tab/modal-resources-tab.component.mjs +3 -3
- package/esm2022/widgets/ui/render-dynamic-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/render-dynamic-modal/render-dynamic-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/render-dynamic-modal/render-dynamic-modal.option.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-consumables/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-consumables/resources-block-consumables.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block/components/resources-block-consumables/resources-block-consumables.options.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-content/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-content/resources-block-content.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block/components/resources-block-part/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-part/resources-block-part.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block/components/resources-block-part/resources-block-part.options.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-tabs/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-tabs/resources-block-tabs.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block/components/resources-block-tabs/resources-block-tabs.options.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-toolbox/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-block-toolbox/resources-block-toolbox.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block/components/resources-block-toolbox/resources-block-toolbox.options.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-options/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/components/resources-options/resources-options.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block/resources-block.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block-tabs/index.mjs +1 -1
- package/esm2022/widgets/ui/resources-block-tabs/resources-block-tabs.component.mjs +3 -3
- package/esm2022/widgets/ui/resources-block-tabs/resources-block-tabs.options.mjs +1 -1
- package/esm2022/widgets/ui/select-modal/components/index.mjs +1 -1
- package/esm2022/widgets/ui/select-modal/components/select-modal-folder/index.mjs +1 -1
- package/esm2022/widgets/ui/select-modal/components/select-modal-folder/select-modal-folder.component.mjs +3 -3
- package/esm2022/widgets/ui/select-modal/components/select-modal-search/index.mjs +1 -1
- package/esm2022/widgets/ui/select-modal/components/select-modal-search/select-modal-search.component.mjs +3 -3
- package/esm2022/widgets/ui/select-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/select-modal/select-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/select-modal/select-modal.interfaces.mjs +1 -1
- package/esm2022/widgets/ui/select-modal/select-modal.service.mjs +1 -1
- package/esm2022/widgets/ui/storage-list/components/index.mjs +1 -1
- package/esm2022/widgets/ui/storage-list/components/storage-list-item/index.mjs +1 -1
- package/esm2022/widgets/ui/storage-list/components/storage-list-item/storage-list-item.component.mjs +3 -3
- package/esm2022/widgets/ui/storage-list/index.mjs +1 -1
- package/esm2022/widgets/ui/storage-list/storage-list.component.mjs +3 -3
- package/esm2022/widgets/ui/storage-list/storage-list.options.mjs +1 -1
- package/esm2022/widgets/ui/toolbox-form/components/index.mjs +1 -1
- package/esm2022/widgets/ui/toolbox-form/components/tool-form-readonly/index.mjs +1 -1
- package/esm2022/widgets/ui/toolbox-form/components/tool-form-readonly/tool-form-readonly.component.mjs +3 -3
- package/esm2022/widgets/ui/toolbox-form/index.mjs +1 -1
- package/esm2022/widgets/ui/toolbox-form/tool-form.component.mjs +3 -3
- package/esm2022/widgets/ui/toolbox-form/tool-form.options.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/activity-item/activity-item.component.mjs +3 -3
- package/esm2022/widgets/ui/user-action-context-menu/activity-item/index.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/company-item/company-item.component.mjs +3 -3
- package/esm2022/widgets/ui/user-action-context-menu/company-item/index.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/index.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/services/activity-base.service.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/services/activity.service.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/services/index.mjs +1 -1
- package/esm2022/widgets/ui/user-action-context-menu/user-action-context-menu.component.mjs +3 -3
- package/esm2022/widgets/ui/user-action-context-menu/user-action-context.option.mjs +1 -1
- package/esm2022/widgets/ui/utility-info-readonly/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-info-readonly/utility-info-readonly.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-info-readonly/utility-info-readonly.options.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/criterion-modal-create/criterion-modal-create.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/components/criterion-modal-create/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/instruction-modal-create/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/instruction-modal-create/instruction-modal-create.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/components/readonly-criterion-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/readonly-criterion-modal/readonly-criterion-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/components/readonly-instruction-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/readonly-instruction-modal/readonly-instruction-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/components/readonly-utility-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/readonly-utility-modal/readonly-utility-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/components/utility-modal-create/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/components/utility-modal-create/utility-modal-create.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-modal/utility-modal.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-modal/utility-modal.options.mjs +1 -1
- package/esm2022/widgets/ui/utility-readonly-thumbnail/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-readonly-thumbnail/utility-readonly-thumbnail.component.mjs +3 -3
- package/esm2022/widgets/ui/utility-thumbnail/index.mjs +1 -1
- package/esm2022/widgets/ui/utility-thumbnail/utility-thumbnail.component.mjs +3 -3
- package/fesm2022/cuby-ui-core.mjs +254 -254
- package/fesm2022/cuby-ui-core.mjs.map +1 -1
- package/fonts/Inter-Bold.svg +25443 -25443
- package/fonts/Inter-Medium.svg +25400 -25400
- package/fonts/Inter-Regular.svg +24341 -24341
- package/fonts/Inter-SemiBold.svg +25459 -25459
- package/fonts/Nunito-ExtraBoldItalic.svg +9508 -9508
- package/package.json +4 -4
- package/styles/direcive/flex-container.scss +3 -3
- package/styles/fonts.scss +69 -69
- package/styles/global.scss +10 -10
- package/styles/mixins/buttons.scss +13 -13
- package/styles/mixins/flex.scss +21 -21
- package/styles/mixins/headings.scss +115 -115
- package/styles/mixins/inputs.scss +91 -91
- package/styles/mixins/lists.scss +41 -41
- package/styles/mixins/paddings.scss +35 -35
- package/styles/mixins/shadows.scss +42 -42
- package/styles/mixins/texts.scss +224 -224
- package/styles/theme.scss +427 -427
- package/styles/variables/colors.scss +288 -288
- package/styles/variables/fonts.scss +2 -2
- package/widgets/ui/categories/components/category-item/category-item.component.d.ts +2 -2
- package/widgets/ui/storage-list/components/storage-list-item/storage-list-item.component.d.ts +1 -1
|
@@ -26,10 +26,10 @@ export class CuiCheckListBlockListItemActionWithoutVerificationComponent {
|
|
|
26
26
|
.subscribe((checkListItem) => this.checkListBlockService.updateCheckListItem(checkListItem));
|
|
27
27
|
}
|
|
28
28
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCheckListBlockListItemActionWithoutVerificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
29
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CuiCheckListBlockListItemActionWithoutVerificationComponent, isStandalone: true, selector: "cui-checklist-block-list-item-action-without-verification", inputs: { checkListItem: { classPropertyName: "checkListItem", publicName: "checkListItem", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <ng-container *cuiLet=\"checkListItem().content as checkListItemContent\">\n <div class=\"action\">\n <div class=\"action__header\">\n {{ t('CONDITIONAL_LOGIC') | uppercase }}\n </div>\n <div class=\"action__content\">\n <div class=\"cards-container\">\n <cui-checklist-block-list-item-action-card\n [actionInfo]=\"checkListItemContent.actionsAssignee![0]\"\n (checkListActionChanged)=\"\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![0].id)\n \"\n />\n <cui-checklist-block-list-item-action-card\n [actionInfo]=\"checkListItemContent.actionsAssignee![1]\"\n (checkListActionChanged)=\"\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![1].id)\n \"\n />\n </div>\n </div>\n </div>\n </ng-container>\n</ng-container>\n", styles: [":host{padding-right:15px;padding-left:15px;padding-bottom:15px;border-radius:inherit}.action{display:flex;flex-direction:column;border:1px solid var(--cui-base-200);border-radius:8px}.action__content{padding:15px;display:flex;flex-direction:column;border-radius:8px;background:var(--cui-base-0);gap:16px}.action__header{font-weight:400;font-size:12px;line-height:14px;padding:15px 19px 15.5px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--cui-base-900);border-bottom:.5px solid var(--cui-base-200);border-radius:8px 8px 0 0}.cards-container{display:flex;flex-direction:row;flex-wrap:wrap;justify-items:center;gap:16px}\n"], dependencies: [{ kind: "component", type: CuiCheckListBlockListItemActionCardComponent, selector: "cui-checklist-block-list-item-action-card", inputs: ["purposeType", "isConsiderationNeeded", "actionInfo"], outputs: ["consideredCorrectChanged", "checkListActionChanged"] }, { kind: "directive", type: CuiLetDirective, selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CuiCheckListBlockListItemActionWithoutVerificationComponent, isStandalone: true, selector: "cui-checklist-block-list-item-action-without-verification", inputs: { checkListItem: { classPropertyName: "checkListItem", publicName: "checkListItem", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <ng-container *cuiLet=\"checkListItem().content as checkListItemContent\">\r\n <div class=\"action\">\r\n <div class=\"action__header\">\r\n {{ t('CONDITIONAL_LOGIC') | uppercase }}\r\n </div>\r\n <div class=\"action__content\">\r\n <div class=\"cards-container\">\r\n <cui-checklist-block-list-item-action-card\r\n [actionInfo]=\"checkListItemContent.actionsAssignee![0]\"\r\n (checkListActionChanged)=\"\r\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![0].id)\r\n \"\r\n />\r\n <cui-checklist-block-list-item-action-card\r\n [actionInfo]=\"checkListItemContent.actionsAssignee![1]\"\r\n (checkListActionChanged)=\"\r\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![1].id)\r\n \"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{padding-right:15px;padding-left:15px;padding-bottom:15px;border-radius:inherit}.action{display:flex;flex-direction:column;border:1px solid var(--cui-base-200);border-radius:8px}.action__content{padding:15px;display:flex;flex-direction:column;border-radius:8px;background:var(--cui-base-0);gap:16px}.action__header{font-weight:400;font-size:12px;line-height:14px;padding:15px 19px 15.5px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--cui-base-900);border-bottom:.5px solid var(--cui-base-200);border-radius:8px 8px 0 0}.cards-container{display:flex;flex-direction:row;flex-wrap:wrap;justify-items:center;gap:16px}\n"], dependencies: [{ kind: "component", type: CuiCheckListBlockListItemActionCardComponent, selector: "cui-checklist-block-list-item-action-card", inputs: ["purposeType", "isConsiderationNeeded", "actionInfo"], outputs: ["consideredCorrectChanged", "checkListActionChanged"] }, { kind: "directive", type: CuiLetDirective, selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
30
30
|
}
|
|
31
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCheckListBlockListItemActionWithoutVerificationComponent, decorators: [{
|
|
32
32
|
type: Component,
|
|
33
|
-
args: [{ selector: 'cui-checklist-block-list-item-action-without-verification', imports: [CuiCheckListBlockListItemActionCardComponent, CuiLetDirective, TranslocoDirective, UpperCasePipe], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\n <ng-container *cuiLet=\"checkListItem().content as checkListItemContent\">\n <div class=\"action\">\n <div class=\"action__header\">\n {{ t('CONDITIONAL_LOGIC') | uppercase }}\n </div>\n <div class=\"action__content\">\n <div class=\"cards-container\">\n <cui-checklist-block-list-item-action-card\n [actionInfo]=\"checkListItemContent.actionsAssignee![0]\"\n (checkListActionChanged)=\"\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![0].id)\n \"\n />\n <cui-checklist-block-list-item-action-card\n [actionInfo]=\"checkListItemContent.actionsAssignee![1]\"\n (checkListActionChanged)=\"\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![1].id)\n \"\n />\n </div>\n </div>\n </div>\n </ng-container>\n</ng-container>\n", styles: [":host{padding-right:15px;padding-left:15px;padding-bottom:15px;border-radius:inherit}.action{display:flex;flex-direction:column;border:1px solid var(--cui-base-200);border-radius:8px}.action__content{padding:15px;display:flex;flex-direction:column;border-radius:8px;background:var(--cui-base-0);gap:16px}.action__header{font-weight:400;font-size:12px;line-height:14px;padding:15px 19px 15.5px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--cui-base-900);border-bottom:.5px solid var(--cui-base-200);border-radius:8px 8px 0 0}.cards-container{display:flex;flex-direction:row;flex-wrap:wrap;justify-items:center;gap:16px}\n"] }]
|
|
33
|
+
args: [{ selector: 'cui-checklist-block-list-item-action-without-verification', imports: [CuiCheckListBlockListItemActionCardComponent, CuiLetDirective, TranslocoDirective, UpperCasePipe], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <ng-container *cuiLet=\"checkListItem().content as checkListItemContent\">\r\n <div class=\"action\">\r\n <div class=\"action__header\">\r\n {{ t('CONDITIONAL_LOGIC') | uppercase }}\r\n </div>\r\n <div class=\"action__content\">\r\n <div class=\"cards-container\">\r\n <cui-checklist-block-list-item-action-card\r\n [actionInfo]=\"checkListItemContent.actionsAssignee![0]\"\r\n (checkListActionChanged)=\"\r\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![0].id)\r\n \"\r\n />\r\n <cui-checklist-block-list-item-action-card\r\n [actionInfo]=\"checkListItemContent.actionsAssignee![1]\"\r\n (checkListActionChanged)=\"\r\n onCheckListActionChanged($event, checkListItemContent.actionsAssignee![1].id)\r\n \"\r\n />\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{padding-right:15px;padding-left:15px;padding-bottom:15px;border-radius:inherit}.action{display:flex;flex-direction:column;border:1px solid var(--cui-base-200);border-radius:8px}.action__content{padding:15px;display:flex;flex-direction:column;border-radius:8px;background:var(--cui-base-0);gap:16px}.action__header{font-weight:400;font-size:12px;line-height:14px;padding:15px 19px 15.5px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--cui-base-900);border-bottom:.5px solid var(--cui-base-200);border-radius:8px 8px 0 0}.cards-container{display:flex;flex-direction:row;flex-wrap:wrap;justify-items:center;gap:16px}\n"] }]
|
|
34
34
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1hY3Rpb24td2l0aG91dC12ZXJpZmljYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS93aWRnZXRzL3VpL2NoZWNrbGlzdC1ibG9jay9jb21wb25lbnRzL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tYWN0aW9uLXdpdGhvdXQtdmVyaWZpY2F0aW9uL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tYWN0aW9uLXdpdGhvdXQtdmVyaWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWFjdGlvbi13aXRob3V0LXZlcmlmaWNhdGlvbi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWFjdGlvbi13aXRob3V0LXZlcmlmaWNhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUNILDBCQUEwQixFQUk3QixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQUUsNENBQTRDLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN4RyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFVMUQsTUFBTSxPQUFPLDJEQUEyRDtJQVJ4RTtRQVNxQiw0QkFBdUIsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUN0RSwwQkFBcUIsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUVqRCxrQkFBYSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFELENBQUM7S0FnQnZHO0lBZGEsd0JBQXdCLENBQUMsYUFBNkMsRUFBRSxRQUFnQjtRQUM5RixNQUFNLFdBQVcsR0FBRztZQUNoQixlQUFlLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLEVBQUU7WUFDeEMsa0JBQWtCLEVBQUUsUUFBUTtZQUM1QixRQUFRO1lBQ1IsU0FBUyxFQUFFLGFBQWEsQ0FBQyxFQUFFO1lBQzNCLFFBQVEsRUFBRSxhQUFhLENBQUMsUUFBUTtZQUNoQyxVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7U0FDdkMsQ0FBQztRQUVGLElBQUksQ0FBQyx1QkFBdUI7YUFDdkIsb0NBQW9DLENBQUMsV0FBVyxDQUFDO2FBQ2pELFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDckcsQ0FBQzsrR0FuQlEsMkRBQTJEO21HQUEzRCwyREFBMkQsZ1JDdEJ4RSxpdENBeUJBLDBzQkRUYyw0Q0FBNEMsdU5BQUUsZUFBZSx5RUFBRSxrQkFBa0IsMkxBQUUsYUFBYTs7NEZBTWpHLDJEQUEyRDtrQkFSdkUsU0FBUzsrQkFDSSwyREFBMkQsV0FDNUQsQ0FBQyw0Q0FBNEMsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxDQUFDLGNBQy9GLElBQUksbUJBR0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVwcGVyQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEN1aUxldERpcmVjdGl2ZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XHJcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XHJcbmltcG9ydCB7XHJcbiAgICBDdWlOb2RlQ2hlY2tsaXN0QXBpU2VydmljZSxcclxuICAgIE5vZGVDaGVja0xpc3RBY3Rpb25JdGVtQ29udGVudCxcclxuICAgIE5vZGVDaGVja0xpc3RJdGVtLFxyXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50QWN0aW9uXHJcbn0gZnJvbSAnQGN1YnktdWkvYXBpJztcclxuXHJcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrTGlzdEl0ZW1BY3Rpb25DYXJkQ29tcG9uZW50IH0gZnJvbSAnLi4vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1hY3Rpb24tY2FyZCc7XHJcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjdWktY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1hY3Rpb24td2l0aG91dC12ZXJpZmljYXRpb24nLFxyXG4gICAgaW1wb3J0czogW0N1aUNoZWNrTGlzdEJsb2NrTGlzdEl0ZW1BY3Rpb25DYXJkQ29tcG9uZW50LCBDdWlMZXREaXJlY3RpdmUsIFRyYW5zbG9jb0RpcmVjdGl2ZSwgVXBwZXJDYXNlUGlwZV0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tYWN0aW9uLXdpdGhvdXQtdmVyaWZpY2F0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsOiAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWFjdGlvbi13aXRob3V0LXZlcmlmaWNhdGlvbi5jb21wb25lbnQuc2NzcycsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3VpQ2hlY2tMaXN0QmxvY2tMaXN0SXRlbUFjdGlvbldpdGhvdXRWZXJpZmljYXRpb25Db21wb25lbnQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBub2RlQ2hlY2tMaXN0QXBpU2VydmljZSA9IGluamVjdChDdWlOb2RlQ2hlY2tsaXN0QXBpU2VydmljZSk7XHJcbiAgICBwcml2YXRlIGNoZWNrTGlzdEJsb2NrU2VydmljZSA9IGluamVjdChDdWlDaGVja0xpc3RCbG9ja1NlcnZpY2UpO1xyXG5cclxuICAgIHB1YmxpYyByZWFkb25seSBjaGVja0xpc3RJdGVtID0gaW5wdXQucmVxdWlyZWQ8Tm9kZUNoZWNrTGlzdEl0ZW08Tm9kZUNoZWNrTGlzdEFjdGlvbkl0ZW1Db250ZW50Pj4oKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgb25DaGVja0xpc3RBY3Rpb25DaGFuZ2VkKGFjdGlvbkNvbnRlbnQ6IE5vZGVDaGVja0xpc3RJdGVtQ29udGVudEFjdGlvbiwgYWN0aW9uSWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHJlcXVlc3REYXRhID0ge1xyXG4gICAgICAgICAgICBub2RlQ2hlY2tMaXN0SWQ6IHRoaXMuY2hlY2tMaXN0SXRlbSgpLmlkLFxyXG4gICAgICAgICAgICBhc3NpZ25lZUFjdGlvblR5cGU6ICdBU1NJR04nLFxyXG4gICAgICAgICAgICBhY3Rpb25JZCxcclxuICAgICAgICAgICAgY29udGVudElkOiBhY3Rpb25Db250ZW50LmlkLFxyXG4gICAgICAgICAgICBpc0VuYWJsZTogYWN0aW9uQ29udGVudC5pc0VuYWJsZSxcclxuICAgICAgICAgICAgaXNSZXF1aXJlZDogYWN0aW9uQ29udGVudC5pc1JlcXVpcmVkXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5ub2RlQ2hlY2tMaXN0QXBpU2VydmljZVxyXG4gICAgICAgICAgICAudXBkYXRlTm9kZUNoZWNrTGlzdEl0ZW1BY3Rpb25Db250ZW50KHJlcXVlc3REYXRhKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS51cGRhdGVDaGVja0xpc3RJdGVtKGNoZWNrTGlzdEl0ZW0pKTtcclxuICAgIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdFwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqY3VpTGV0PVwiY2hlY2tMaXN0SXRlbSgpLmNvbnRlbnQgYXMgY2hlY2tMaXN0SXRlbUNvbnRlbnRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25fX2hlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAge3sgdCgnQ09ORElUSU9OQUxfTE9HSUMnKSB8IHVwcGVyY2FzZSB9fVxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbl9fY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmRzLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxjdWktY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1hY3Rpb24tY2FyZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbYWN0aW9uSW5mb109XCJjaGVja0xpc3RJdGVtQ29udGVudC5hY3Rpb25zQXNzaWduZWUhWzBdXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoZWNrTGlzdEFjdGlvbkNoYW5nZWQpPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoZWNrTGlzdEFjdGlvbkNoYW5nZWQoJGV2ZW50LCBjaGVja0xpc3RJdGVtQ29udGVudC5hY3Rpb25zQXNzaWduZWUhWzBdLmlkKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGN1aS1jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWFjdGlvbi1jYXJkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthY3Rpb25JbmZvXT1cImNoZWNrTGlzdEl0ZW1Db250ZW50LmFjdGlvbnNBc3NpZ25lZSFbMV1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hlY2tMaXN0QWN0aW9uQ2hhbmdlZCk9XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hlY2tMaXN0QWN0aW9uQ2hhbmdlZCgkZXZlbnQsIGNoZWNrTGlzdEl0ZW1Db250ZW50LmFjdGlvbnNBc3NpZ25lZSFbMV0uaWQpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { CuiCheckListBlockListItemActionWithoutVerificationComponent } from './checklist-block-list-item-action-without-verification.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2hlY2tsaXN0LWJsb2NrL2NvbXBvbmVudHMvY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1hY3Rpb24td2l0aG91dC12ZXJpZmljYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDJEQUEyRCxFQUFFLE1BQU0sbUVBQW1FLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBDdWlDaGVja0xpc3RCbG9ja0xpc3RJdGVtQWN0aW9uV2l0aG91dFZlcmlmaWNhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1hY3Rpb24td2l0aG91dC12ZXJpZmljYXRpb24uY29tcG9uZW50JztcclxuIl19
|
|
@@ -130,7 +130,7 @@ export class CuiChecklistBlockListItemContainerComponent {
|
|
|
130
130
|
.subscribe((data) => data?.canceled || this.checkListBlockService.deleteCheckListItem(this.checkListItem().id));
|
|
131
131
|
}
|
|
132
132
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiChecklistBlockListItemContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
133
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiChecklistBlockListItemContainerComponent, isStandalone: true, selector: "cui-checklist-block-list-item-container", inputs: { checkListBlockItem: { classPropertyName: "checkListBlockItem", publicName: "checkListBlockItem", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <ng-container *cuiLet=\"checkListItemWithOptions() as checkListItem\">\n <header\n class=\"header\"\n [style.border-left-color]=\"headerBorderColor()\"\n [class.header__opened]=\"isOpen()\"\n >\n <button\n class=\"icon-drag\"\n cuiButton\n cuiDragPointer\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n [icon]=\"'cuiIconDragHandleDots'\"\n (mouseenter)=\"onAllowDrag()\"\n (mouseleave)=\"onProhibitDrag()\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n [style.transform]=\"rotate()\"\n icon=\"cuiIconCaretDownFillXxs\"\n (click)=\"onRowToggle()\"\n ></button>\n <cui-svg\n [icon]=\"iconChecklistType()\"\n color=\"var(--cui-base-500)\"\n />\n <div class=\"header__content\">\n <div class=\"header__numeration\">{{ index() }}.</div>\n <div class=\"header__text\">{{ headerText() }}</div>\n </div>\n @if (isTitleEmpty) {\n <cui-svg\n [cuiTooltip]=\"t('TITLE_IS_REQUIRED')\"\n icon=\"cuiIconAlertTriangle\"\n color=\"var(--cui-danger)\"\n class=\"icon\"\n />\n }\n <button\n #actionButton=\"elementRef\"\n cuiButton\n type=\"button\"\n cuiElement\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconMoreVertical\"\n class=\"list__context-menu-button\"\n ></button>\n <cui-context-menu\n [items]=\"checkListItem.options\"\n [target]=\"actionButton.nativeElement\"\n />\n </header>\n @if (isOpen()) {\n <div class=\"info\">\n <cui-checklist-block-title-control [control]=\"titleControl\" />\n <cui-editor-block\n [config]=\"config()\"\n [editorId]=\"checkListItem.textContainerId!\"\n [title]=\"titleControl.value\"\n />\n </div>\n <ng-container\n [ngComponentOutlet]=\"checkListItemComponent()\"\n [ngComponentOutletInputs]=\"{\n checkListItem: checkListItem\n }\"\n />\n }\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;gap:16px;border-radius:inherit;background-color:var(--cui-base-0)}.header{padding-right:7px;padding-left:7px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:4px;background:var(--cui-base-0);border-radius:inherit;border-left:6px solid var(--cui-yellow-bg)}.header__content{display:flex;flex-direction:row;align-items:center;gap:8px;flex:1}.header__numeration{font-weight:600;font-size:13px;line-height:16px;padding-right:8px;padding-left:8px;display:flex;justify-content:center;align-items:center}.header__text{font-weight:500;font-size:14px;line-height:20px;padding-top:11px;padding-bottom:11px;flex:1;width:0;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.header__opened{background:var(--cui-badge-info-bg);border-bottom:.5px solid var(--cui-base-200);border-bottom-left-radius:0;border-bottom-right-radius:0}.header:hover{background:var(--cui-base-10)}.info{padding-right:15px;padding-left:15px;display:flex;flex-direction:column;gap:16px}.icon{padding:6px;width:max-content}\n"], dependencies: [{ kind: "directive", type: i1.CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }, { kind: "component", type: CuiEditorBlockComponent, selector: "cui-editor-block", inputs: ["title", "editorId", "config", "required"], outputs: ["editorEmpty"] }, { kind: "component", type: CuiChecklistBlockTitleControlComponent, selector: "cui-checklist-block-title-control", inputs: ["control"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i2.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: CuiContextMenuModule }, { kind: "component", type: i3.CuiContextMenuComponent, selector: "cui-context-menu[items][target]", inputs: ["items", "target", "width", "withPaddings"] }, { kind: "directive", type: CuiElementDirective, selector: "[cuiElement]", exportAs: ["elementRef"] }, { kind: "ngmodule", type: CuiLabelModule }, { kind: "directive", type: CuiLetDirective, selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i4.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: CuiDragPointerDirective, selector: "[cuiDragPointer]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
133
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiChecklistBlockListItemContainerComponent, isStandalone: true, selector: "cui-checklist-block-list-item-container", inputs: { checkListBlockItem: { classPropertyName: "checkListBlockItem", publicName: "checkListBlockItem", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <ng-container *cuiLet=\"checkListItemWithOptions() as checkListItem\">\r\n <header\r\n class=\"header\"\r\n [style.border-left-color]=\"headerBorderColor()\"\r\n [class.header__opened]=\"isOpen()\"\r\n >\r\n <button\r\n class=\"icon-drag\"\r\n cuiButton\r\n cuiDragPointer\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n [icon]=\"'cuiIconDragHandleDots'\"\r\n (mouseenter)=\"onAllowDrag()\"\r\n (mouseleave)=\"onProhibitDrag()\"\r\n ></button>\r\n <button\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n [style.transform]=\"rotate()\"\r\n icon=\"cuiIconCaretDownFillXxs\"\r\n (click)=\"onRowToggle()\"\r\n ></button>\r\n <cui-svg\r\n [icon]=\"iconChecklistType()\"\r\n color=\"var(--cui-base-500)\"\r\n />\r\n <div class=\"header__content\">\r\n <div class=\"header__numeration\">{{ index() }}.</div>\r\n <div class=\"header__text\">{{ headerText() }}</div>\r\n </div>\r\n @if (isTitleEmpty) {\r\n <cui-svg\r\n [cuiTooltip]=\"t('TITLE_IS_REQUIRED')\"\r\n icon=\"cuiIconAlertTriangle\"\r\n color=\"var(--cui-danger)\"\r\n class=\"icon\"\r\n />\r\n }\r\n <button\r\n #actionButton=\"elementRef\"\r\n cuiButton\r\n type=\"button\"\r\n cuiElement\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n icon=\"cuiIconMoreVertical\"\r\n class=\"list__context-menu-button\"\r\n ></button>\r\n <cui-context-menu\r\n [items]=\"checkListItem.options\"\r\n [target]=\"actionButton.nativeElement\"\r\n />\r\n </header>\r\n @if (isOpen()) {\r\n <div class=\"info\">\r\n <cui-checklist-block-title-control [control]=\"titleControl\" />\r\n <cui-editor-block\r\n [config]=\"config()\"\r\n [editorId]=\"checkListItem.textContainerId!\"\r\n [title]=\"titleControl.value\"\r\n />\r\n </div>\r\n <ng-container\r\n [ngComponentOutlet]=\"checkListItemComponent()\"\r\n [ngComponentOutletInputs]=\"{\r\n checkListItem: checkListItem\r\n }\"\r\n />\r\n }\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column;gap:16px;border-radius:inherit;background-color:var(--cui-base-0)}.header{padding-right:7px;padding-left:7px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:4px;background:var(--cui-base-0);border-radius:inherit;border-left:6px solid var(--cui-yellow-bg)}.header__content{display:flex;flex-direction:row;align-items:center;gap:8px;flex:1}.header__numeration{font-weight:600;font-size:13px;line-height:16px;padding-right:8px;padding-left:8px;display:flex;justify-content:center;align-items:center}.header__text{font-weight:500;font-size:14px;line-height:20px;padding-top:11px;padding-bottom:11px;flex:1;width:0;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.header__opened{background:var(--cui-badge-info-bg);border-bottom:.5px solid var(--cui-base-200);border-bottom-left-radius:0;border-bottom-right-radius:0}.header:hover{background:var(--cui-base-10)}.info{padding-right:15px;padding-left:15px;display:flex;flex-direction:column;gap:16px}.icon{padding:6px;width:max-content}\n"], dependencies: [{ kind: "directive", type: i1.CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }, { kind: "component", type: CuiEditorBlockComponent, selector: "cui-editor-block", inputs: ["title", "editorId", "config", "required"], outputs: ["editorEmpty"] }, { kind: "component", type: CuiChecklistBlockTitleControlComponent, selector: "cui-checklist-block-title-control", inputs: ["control"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i2.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: CuiContextMenuModule }, { kind: "component", type: i3.CuiContextMenuComponent, selector: "cui-context-menu[items][target]", inputs: ["items", "target", "width", "withPaddings"] }, { kind: "directive", type: CuiElementDirective, selector: "[cuiElement]", exportAs: ["elementRef"] }, { kind: "ngmodule", type: CuiLabelModule }, { kind: "directive", type: CuiLetDirective, selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i4.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: CuiDragPointerDirective, selector: "[cuiDragPointer]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
134
134
|
}
|
|
135
135
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiChecklistBlockListItemContainerComponent, decorators: [{
|
|
136
136
|
type: Component,
|
|
@@ -147,6 +147,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
147
147
|
NgComponentOutlet,
|
|
148
148
|
TranslocoDirective,
|
|
149
149
|
CuiDragPointerDirective
|
|
150
|
-
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\n <ng-container *cuiLet=\"checkListItemWithOptions() as checkListItem\">\n <header\n class=\"header\"\n [style.border-left-color]=\"headerBorderColor()\"\n [class.header__opened]=\"isOpen()\"\n >\n <button\n class=\"icon-drag\"\n cuiButton\n cuiDragPointer\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n [icon]=\"'cuiIconDragHandleDots'\"\n (mouseenter)=\"onAllowDrag()\"\n (mouseleave)=\"onProhibitDrag()\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n [style.transform]=\"rotate()\"\n icon=\"cuiIconCaretDownFillXxs\"\n (click)=\"onRowToggle()\"\n ></button>\n <cui-svg\n [icon]=\"iconChecklistType()\"\n color=\"var(--cui-base-500)\"\n />\n <div class=\"header__content\">\n <div class=\"header__numeration\">{{ index() }}.</div>\n <div class=\"header__text\">{{ headerText() }}</div>\n </div>\n @if (isTitleEmpty) {\n <cui-svg\n [cuiTooltip]=\"t('TITLE_IS_REQUIRED')\"\n icon=\"cuiIconAlertTriangle\"\n color=\"var(--cui-danger)\"\n class=\"icon\"\n />\n }\n <button\n #actionButton=\"elementRef\"\n cuiButton\n type=\"button\"\n cuiElement\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconMoreVertical\"\n class=\"list__context-menu-button\"\n ></button>\n <cui-context-menu\n [items]=\"checkListItem.options\"\n [target]=\"actionButton.nativeElement\"\n />\n </header>\n @if (isOpen()) {\n <div class=\"info\">\n <cui-checklist-block-title-control [control]=\"titleControl\" />\n <cui-editor-block\n [config]=\"config()\"\n [editorId]=\"checkListItem.textContainerId!\"\n [title]=\"titleControl.value\"\n />\n </div>\n <ng-container\n [ngComponentOutlet]=\"checkListItemComponent()\"\n [ngComponentOutletInputs]=\"{\n checkListItem: checkListItem\n }\"\n />\n }\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;gap:16px;border-radius:inherit;background-color:var(--cui-base-0)}.header{padding-right:7px;padding-left:7px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:4px;background:var(--cui-base-0);border-radius:inherit;border-left:6px solid var(--cui-yellow-bg)}.header__content{display:flex;flex-direction:row;align-items:center;gap:8px;flex:1}.header__numeration{font-weight:600;font-size:13px;line-height:16px;padding-right:8px;padding-left:8px;display:flex;justify-content:center;align-items:center}.header__text{font-weight:500;font-size:14px;line-height:20px;padding-top:11px;padding-bottom:11px;flex:1;width:0;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.header__opened{background:var(--cui-badge-info-bg);border-bottom:.5px solid var(--cui-base-200);border-bottom-left-radius:0;border-bottom-right-radius:0}.header:hover{background:var(--cui-base-10)}.info{padding-right:15px;padding-left:15px;display:flex;flex-direction:column;gap:16px}.icon{padding:6px;width:max-content}\n"] }]
|
|
150
|
+
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <ng-container *cuiLet=\"checkListItemWithOptions() as checkListItem\">\r\n <header\r\n class=\"header\"\r\n [style.border-left-color]=\"headerBorderColor()\"\r\n [class.header__opened]=\"isOpen()\"\r\n >\r\n <button\r\n class=\"icon-drag\"\r\n cuiButton\r\n cuiDragPointer\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n [icon]=\"'cuiIconDragHandleDots'\"\r\n (mouseenter)=\"onAllowDrag()\"\r\n (mouseleave)=\"onProhibitDrag()\"\r\n ></button>\r\n <button\r\n cuiButton\r\n type=\"button\"\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n [style.transform]=\"rotate()\"\r\n icon=\"cuiIconCaretDownFillXxs\"\r\n (click)=\"onRowToggle()\"\r\n ></button>\r\n <cui-svg\r\n [icon]=\"iconChecklistType()\"\r\n color=\"var(--cui-base-500)\"\r\n />\r\n <div class=\"header__content\">\r\n <div class=\"header__numeration\">{{ index() }}.</div>\r\n <div class=\"header__text\">{{ headerText() }}</div>\r\n </div>\r\n @if (isTitleEmpty) {\r\n <cui-svg\r\n [cuiTooltip]=\"t('TITLE_IS_REQUIRED')\"\r\n icon=\"cuiIconAlertTriangle\"\r\n color=\"var(--cui-danger)\"\r\n class=\"icon\"\r\n />\r\n }\r\n <button\r\n #actionButton=\"elementRef\"\r\n cuiButton\r\n type=\"button\"\r\n cuiElement\r\n appearance=\"ghost\"\r\n size=\"xxs\"\r\n icon=\"cuiIconMoreVertical\"\r\n class=\"list__context-menu-button\"\r\n ></button>\r\n <cui-context-menu\r\n [items]=\"checkListItem.options\"\r\n [target]=\"actionButton.nativeElement\"\r\n />\r\n </header>\r\n @if (isOpen()) {\r\n <div class=\"info\">\r\n <cui-checklist-block-title-control [control]=\"titleControl\" />\r\n <cui-editor-block\r\n [config]=\"config()\"\r\n [editorId]=\"checkListItem.textContainerId!\"\r\n [title]=\"titleControl.value\"\r\n />\r\n </div>\r\n <ng-container\r\n [ngComponentOutlet]=\"checkListItemComponent()\"\r\n [ngComponentOutletInputs]=\"{\r\n checkListItem: checkListItem\r\n }\"\r\n />\r\n }\r\n </ng-container>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column;gap:16px;border-radius:inherit;background-color:var(--cui-base-0)}.header{padding-right:7px;padding-left:7px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:4px;background:var(--cui-base-0);border-radius:inherit;border-left:6px solid var(--cui-yellow-bg)}.header__content{display:flex;flex-direction:row;align-items:center;gap:8px;flex:1}.header__numeration{font-weight:600;font-size:13px;line-height:16px;padding-right:8px;padding-left:8px;display:flex;justify-content:center;align-items:center}.header__text{font-weight:500;font-size:14px;line-height:20px;padding-top:11px;padding-bottom:11px;flex:1;width:0;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.header__opened{background:var(--cui-badge-info-bg);border-bottom:.5px solid var(--cui-base-200);border-bottom-left-radius:0;border-bottom-right-radius:0}.header:hover{background:var(--cui-base-10)}.info{padding-right:15px;padding-left:15px;display:flex;flex-direction:column;gap:16px}.icon{padding:6px;width:max-content}\n"] }]
|
|
151
151
|
}] });
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS93aWRnZXRzL3VpL2NoZWNrbGlzdC1ibG9jay9jb21wb25lbnRzL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tY29udGFpbmVyL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsMEJBQTBCLEVB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QVksd0tBQ1osaUJBQWlCLG9QQUNqQixrQkFBa0IsZ01BQ2xCLHVCQUF1Qjs7NEZBT2xCLDJDQUEyQztrQkFyQnZELFNBQVM7K0JBQ0kseUNBQXlDLFdBQzFDO3dCQUNMLFVBQVU7d0JBQ1YsdUJBQXVCO3dCQUN2QixzQ0FBc0M7d0JBQ3RDLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQix1QkFBdUI7cUJBQzFCLGNBQ1csSUFBSSxtQkFHQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUgeyBPbkluaXQsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBEZXN0cm95UmVmLCBpbmplY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDdWlFbGVtZW50RGlyZWN0aXZlLCBDdWlMZXREaXJlY3RpdmUsIEN1aURyYWdQb2ludGVyRGlyZWN0aXZlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIEN1aVRyZWVTdHJ1Y3RBcGlTZXJ2aWNlLFxuICAgIEN1aU5vZGVDaGVja2xpc3RBcGlTZXJ2aWNlLFxuICAgIE5vZGVDaGVja0xpc3RJdGVtLFxuICAgIE5vZGVDaGVja0xpc3RJdGVtQ29udGVudFR5cGVcbn0gZnJvbSAnQGN1YnktdWkvYXBpJztcblxuaW1wb3J0IHR5cGUgeyBDdWlDaGVja0xpc3RCbG9ja0l0ZW0gfSBmcm9tICcuLi8uLi9jaGVja2xpc3QtYmxvY2sub3B0aW9ucyc7XG5pbXBvcnQgeyBDdWlUb29sdGlwIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQge1xuICAgIEN1aUJ1dHRvbk1vZHVsZSxcbiAgICBDdWlDb250ZXh0TWVudU1vZHVsZSxcbiAgICBDdWlEaWFsb2dTZXJ2aWNlLFxuICAgIEN1aUxhYmVsTW9kdWxlLFxuICAgIEN1aVN2Z01vZHVsZVxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NoZWNrbGlzdC1ibG9jay5zZXJ2aWNlJztcbmltcG9ydCB7IEN1aUNoZWNrbGlzdEJsb2NrVGl0bGVDb250cm9sQ29tcG9uZW50IH0gZnJvbSAnLi4vY2hlY2tsaXN0LWJsb2NrLXRpdGxlLWNvbnRyb2wnO1xuaW1wb3J0IHsgQ3VpTm9kZUNoZWNrTGlzdEl0ZW1XaXRoT3B0aW9uIH0gZnJvbSAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5vcHRpb25zJztcbmltcG9ydCB7IEN1aUVkaXRvckJsb2NrQ29tcG9uZW50LCBDdWlFZGl0b3JDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9lZGl0b3InO1xuaW1wb3J0IHsgQ3VpRGVsZXRlTW9kYWxDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQgeyBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjdWktY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXInLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ3VpVG9vbHRpcCxcbiAgICAgICAgQ3VpRWRpdG9yQmxvY2tDb21wb25lbnQsXG4gICAgICAgIEN1aUNoZWNrbGlzdEJsb2NrVGl0bGVDb250cm9sQ29tcG9uZW50LFxuICAgICAgICBDdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxuICAgICAgICBDdWlFbGVtZW50RGlyZWN0aXZlLFxuICAgICAgICBDdWlMYWJlbE1vZHVsZSxcbiAgICAgICAgQ3VpTGV0RGlyZWN0aXZlLFxuICAgICAgICBDdWlTdmdNb2R1bGUsXG4gICAgICAgIE5nQ29tcG9uZW50T3V0bGV0LFxuICAgICAgICBUcmFuc2xvY29EaXJlY3RpdmUsXG4gICAgICAgIEN1aURyYWdQb2ludGVyRGlyZWN0aXZlXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDdWlDaGVja2xpc3RCbG9ja0xpc3RJdGVtQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBub25OdWxsYWJsZUZvcm1CdWlsZGVyID0gaW5qZWN0KE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsb2NvU2VydmljZSA9IGluamVjdChUcmFuc2xvY29TZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1aURpYWxvZ1NlcnZpY2UgPSBpbmplY3QoQ3VpRGlhbG9nU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmVlU3RydWN0QXBpU2VydmljZSA9IGluamVjdChDdWlUcmVlU3RydWN0QXBpU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGVja0xpc3RCbG9ja1NlcnZpY2UgPSBpbmplY3QoQ3VpQ2hlY2tMaXN0QmxvY2tTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5vZGVDaGVja0xpc3RBcGlTZXJ2aWNlID0gaW5qZWN0KEN1aU5vZGVDaGVja2xpc3RBcGlTZXJ2aWNlKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBERUZBVUxUX0NPTlRST0xfREVMQVkgPSA3MDA7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNPcGVuID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBjaGVja0xpc3RCbG9ja0l0ZW0gPSBpbnB1dC5yZXF1aXJlZDxDdWlDaGVja0xpc3RCbG9ja0l0ZW0+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgaW5kZXggPSBpbnB1dDxudW1iZXI+KDApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbXBvbmVudElkID0gdGhpcy5jaGVja0xpc3RCbG9ja1NlcnZpY2UuY29tcG9uZW50SWQ7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdGF0ZSA9IGNvbXB1dGVkKCgpID0+IGByb3RhdGUoJHt0aGlzLmlzT3BlbigpID8gJzBkZWcnIDogJy05MGRlZyd9KWApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBoZWFkZXJUZXh0ID0gY29tcHV0ZWQoKCkgPT5cbiAgICAgICAgdGhpcy5jaGVja0xpc3RJdGVtKCkudGl0bGUgPyB0aGlzLmNoZWNrTGlzdEl0ZW0oKS50aXRsZSA6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ1VOVElUTEVEJylcbiAgICApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjaGVja0xpc3RJdGVtID0gY29tcHV0ZWQ8Tm9kZUNoZWNrTGlzdEl0ZW08Tm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50VHlwZT4+KFxuICAgICAgICAoKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrSXRlbSgpLmNvbnRlbnRcbiAgICApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjaGVja0xpc3RJdGVtQ29tcG9uZW50ID0gY29tcHV0ZWQ8VHlwZTx1bmtub3duPj4oKCkgPT4gdGhpcy5jaGVja0xpc3RCbG9ja0l0ZW0oKS5jb21wb25lbnQpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjaGVja0xpc3RJdGVtV2l0aE9wdGlvbnMgPSBjb21wdXRlZDxcbiAgICAgICAgQ3VpTm9kZUNoZWNrTGlzdEl0ZW1XaXRoT3B0aW9uPE5vZGVDaGVja0xpc3RJdGVtQ29udGVudFR5cGU+XG4gICAgPigoKSA9PiAoe1xuICAgICAgICAuLi50aGlzLmNoZWNrTGlzdEl0ZW0oKSxcbiAgICAgICAgb3B0aW9uczogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdEVVBMSUNBVEUnKSxcbiAgICAgICAgICAgICAgICBpY29uOiAnY3VpSWNvbkNvcHknXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdERUxFVEUnKSxcbiAgICAgICAgICAgICAgICBpY29uOiAnY3VpSWNvblRyYXNoJyxcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWN1aS1kYW5nZXIpJyxcbiAgICAgICAgICAgICAgICBjb21tYW5kOiB0aGlzLm9wZW5EZWxldGVDaGVja2xpc3ROb2RlTW9kYWwuYmluZCh0aGlzKVxuICAgICAgICAgICAgfVxuICAgICAgICBdXG4gICAgfSkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBoZWFkZXJCb3JkZXJDb2xvciA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2hlY2tMaXN0SXRlbSA9IHRoaXMuY2hlY2tMaXN0SXRlbSgpO1xuXG4gICAgICAgIGlmIChjaGVja0xpc3RJdGVtLmNvbnRlbnQuYWN0aW9uc0FwcHJvdmUgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiAndmFyKC0tY3VpLXZpb2xldC1iZyknO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCdhY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucycgaW4gY2hlY2tMaXN0SXRlbS5jb250ZW50LmFjdGlvbnNBc3NpZ25lZSFbMF0pIHtcbiAgICAgICAgICAgIHJldHVybiAndmFyKC0tY3VpLWN5YW4tYmcpJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH0pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29uQ2hlY2tsaXN0VHlwZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgY2hlY2tMaXN0SXRlbSA9IHRoaXMuY2hlY2tMaXN0SXRlbSgpO1xuXG4gICAgICAgIGlmIChjaGVja0xpc3RJdGVtLmNvbnRlbnQuYWN0aW9uc0FwcHJvdmUgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiAnY3VpSWNvblVzZXJzU20nO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCdhY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucycgaW4gY2hlY2tMaXN0SXRlbS5jb250ZW50LmFjdGlvbnNBc3NpZ25lZSFbMF0pIHtcbiAgICAgICAgICAgIHJldHVybiAnY3VpSWNvbkNoZWNrbGlzdCc7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gJ2N1aUljb25Vc2VyU20nO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRpdGxlQ29udHJvbCA9IHRoaXMubm9uTnVsbGFibGVGb3JtQnVpbGRlci5jb250cm9sKFxuICAgICAgICB7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMoKVxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzVGl0bGVFbXB0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICF0aGlzLnRpdGxlQ29udHJvbC52YWx1ZTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0IGlzVGl0bGVFcnJvcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGl0bGVDb250cm9sLmludmFsaWQgJiYgdGhpcy50aXRsZUNvbnRyb2wuZGlydHk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRDb250cm9scygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblJvd1RvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc09wZW4udXBkYXRlKChwcmV2KSA9PiAhcHJldik7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQWxsb3dEcmFnKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS50b2dnbGVEcmFnUGVybWlzc2lvbih0cnVlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Qcm9oaWJpdERyYWcoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnRvZ2dsZURyYWdQZXJtaXNzaW9uKGZhbHNlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRDb250cm9scygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0VGl0bGVDb250cm9sVmFsdWUoKTtcbiAgICAgICAgdGhpcy5pbml0VGl0bGVDb250cm9sU3Vic2NyaXB0aW9uKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VGl0bGVDb250cm9sVmFsdWUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGl0bGVDb250cm9sLmVuYWJsZSgpO1xuICAgICAgICB0aGlzLnRpdGxlQ29udHJvbC5zZXRWYWx1ZSh0aGlzLmNoZWNrTGlzdEl0ZW0oKS50aXRsZSA/IHRoaXMuY2hlY2tMaXN0SXRlbSgpLnRpdGxlIDogJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdFRpdGxlQ29udHJvbFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50aXRsZUNvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUodGhpcy5ERUZBVUxUX0NPTlRST0xfREVMQVkpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRpdGxlVmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50aXRsZUNvbnRyb2wuaW52YWxpZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5ub2RlQ2hlY2tMaXN0QXBpU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAudXBkYXRlTm9kZUNoZWNrTGlzdEl0ZW1UaXRsZSh0aGlzLmNoZWNrTGlzdEl0ZW0oKS5pZCwgdGl0bGVWYWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS51cGRhdGVDaGVja0xpc3RJdGVtKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmNoZWNrTGlzdEl0ZW0oKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogdGl0bGVWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvcGVuRGVsZXRlQ2hlY2tsaXN0Tm9kZU1vZGFsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gWydUSElTX0FDVElPTl9XSUxMX1BFUk1BTkVOVExZX0RFTEVURV9USEVfSVRFTV9GUk9NX0NIRUNLTElTVCddO1xuXG4gICAgICAgIHRoaXMuY3VpRGlhbG9nU2VydmljZVxuICAgICAgICAgICAgLm9wZW4oQ3VpRGVsZXRlTW9kYWxDb21wb25lbnQsIHtcbiAgICAgICAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnREVMRVRFX0VWQUxVQVRJT05fQ0hFQ0tMSVNUX0lURU1fUVVFU1RJT04nLFxuICAgICAgICAgICAgICAgICAgICBjb250ZW50LFxuICAgICAgICAgICAgICAgICAgICBkZWxldGU6ICgpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyZWVTdHJ1Y3RBcGlTZXJ2aWNlLmRlbGV0ZVRyZWVTdHJ1Y3RFbGVtZW50KHRoaXMuY29tcG9uZW50SWQoKSEsIHRoaXMuY2hlY2tMaXN0SXRlbSgpLmlkKVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgIChkYXRhKSA9PiBkYXRhPy5jYW5jZWxlZCB8fCB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS5kZWxldGVDaGVja0xpc3RJdGVtKHRoaXMuY2hlY2tMaXN0SXRlbSgpLmlkKVxuICAgICAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdFwiPlxuICAgIDxuZy1jb250YWluZXIgKmN1aUxldD1cImNoZWNrTGlzdEl0ZW1XaXRoT3B0aW9ucygpIGFzIGNoZWNrTGlzdEl0ZW1cIj5cbiAgICAgICAgPGhlYWRlclxuICAgICAgICAgICAgY2xhc3M9XCJoZWFkZXJcIlxuICAgICAgICAgICAgW3N0eWxlLmJvcmRlci1sZWZ0LWNvbG9yXT1cImhlYWRlckJvcmRlckNvbG9yKClcIlxuICAgICAgICAgICAgW2NsYXNzLmhlYWRlcl9fb3BlbmVkXT1cImlzT3BlbigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbi1kcmFnXCJcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cbiAgICAgICAgICAgICAgICBjdWlEcmFnUG9pbnRlclxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgW2ljb25dPVwiJ2N1aUljb25EcmFnSGFuZGxlRG90cydcIlxuICAgICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cIm9uQWxsb3dEcmFnKClcIlxuICAgICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cIm9uUHJvaGliaXREcmFnKClcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgW3N0eWxlLnRyYW5zZm9ybV09XCJyb3RhdGUoKVwiXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25DYXJldERvd25GaWxsWHhzXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Sb3dUb2dnbGUoKVwiXG4gICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICA8Y3VpLXN2Z1xuICAgICAgICAgICAgICAgIFtpY29uXT1cImljb25DaGVja2xpc3RUeXBlKClcIlxuICAgICAgICAgICAgICAgIGNvbG9yPVwidmFyKC0tY3VpLWJhc2UtNTAwKVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfX251bWVyYXRpb25cIj57eyBpbmRleCgpIH19LjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJfX3RleHRcIj57eyBoZWFkZXJUZXh0KCkgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgQGlmIChpc1RpdGxlRW1wdHkpIHtcbiAgICAgICAgICAgICAgICA8Y3VpLXN2Z1xuICAgICAgICAgICAgICAgICAgICBbY3VpVG9vbHRpcF09XCJ0KCdUSVRMRV9JU19SRVFVSVJFRCcpXCJcbiAgICAgICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25BbGVydFRyaWFuZ2xlXCJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I9XCJ2YXIoLS1jdWktZGFuZ2VyKVwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvblwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAjYWN0aW9uQnV0dG9uPVwiZWxlbWVudFJlZlwiXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY3VpRWxlbWVudFxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25Nb3JlVmVydGljYWxcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdF9fY29udGV4dC1tZW51LWJ1dHRvblwiXG4gICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICA8Y3VpLWNvbnRleHQtbWVudVxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJjaGVja0xpc3RJdGVtLm9wdGlvbnNcIlxuICAgICAgICAgICAgICAgIFt0YXJnZXRdPVwiYWN0aW9uQnV0dG9uLm5hdGl2ZUVsZW1lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9oZWFkZXI+XG4gICAgICAgIEBpZiAoaXNPcGVuKCkpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvXCI+XG4gICAgICAgICAgICAgICAgPGN1aS1jaGVja2xpc3QtYmxvY2stdGl0bGUtY29udHJvbCBbY29udHJvbF09XCJ0aXRsZUNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgIDxjdWktZWRpdG9yLWJsb2NrXG4gICAgICAgICAgICAgICAgICAgIFtjb25maWddPVwiY29uZmlnKClcIlxuICAgICAgICAgICAgICAgICAgICBbZWRpdG9ySWRdPVwiY2hlY2tMaXN0SXRlbS50ZXh0Q29udGFpbmVySWQhXCJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInRpdGxlQ29udHJvbC52YWx1ZVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgIFtuZ0NvbXBvbmVudE91dGxldF09XCJjaGVja0xpc3RJdGVtQ29tcG9uZW50KClcIlxuICAgICAgICAgICAgICAgIFtuZ0NvbXBvbmVudE91dGxldElucHV0c109XCJ7XG4gICAgICAgICAgICAgICAgICAgIGNoZWNrTGlzdEl0ZW06IGNoZWNrTGlzdEl0ZW1cbiAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS93aWRnZXRzL3VpL2NoZWNrbGlzdC1ibG9jay9jb21wb25lbnRzL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tY29udGFpbmVyL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsMEJBQTBCLEVBRzdCLE1BQU0sY0FBYyxDQUFDO0FBR3RCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQ0gsZUFBZSxFQUNmLG9CQUFvQixFQUNwQixnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLFlBQVksRUFDZixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRTFGLE9BQU8sRUFBRSx1QkFBdUIsRUFBbUIsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7O0FBdUJsRSxNQUFNLE9BQU8sMkNBQTJDO0lBckJ4RDtRQXNCcUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNoQywyQkFBc0IsR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN4RCxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1QyxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1Qyx5QkFBb0IsR0FBRyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUN2RCwwQkFBcUIsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUN6RCw0QkFBdUIsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUUzRCwwQkFBcUIsR0FBRyxHQUFHLENBQUM7UUFFNUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUxQix1QkFBa0IsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF5QixDQUFDO1FBQzdELFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQixDQUFDO1FBQzNDLFVBQUssR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFdEIsZ0JBQVcsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsV0FBVyxDQUFDO1FBQ3JELFdBQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUN4RSxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUMxQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUN4RyxDQUFDO1FBQ2lCLGtCQUFhLEdBQUcsUUFBUSxDQUN2QyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxPQUFPLENBQzFDLENBQUM7UUFDaUIsMkJBQXNCLEdBQUcsUUFBUSxDQUFnQixHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1Riw2QkFBd0IsR0FBRyxRQUFRLENBRXBELEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDTCxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdkIsT0FBTyxFQUFFO2dCQUNMO29CQUNJLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztvQkFDbkQsSUFBSSxFQUFFLGFBQWE7aUJBQ3RCO2dCQUNEO29CQUNJLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztvQkFDaEQsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLEtBQUssRUFBRSxtQkFBbUI7b0JBQzFCLE9BQU8sRUFBRSxJQUFJLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztpQkFDeEQ7YUFDSjtTQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ2Usc0JBQWlCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFFM0MsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLGNBQWMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDaEQsT0FBTyxzQkFBc0IsQ0FBQztZQUNsQyxDQUFDO1lBRUQsSUFBSSwrQkFBK0IsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLGVBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDL0UsT0FBTyxvQkFBb0IsQ0FBQztZQUNoQyxDQUFDO1lBRUQsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7UUFDZ0Isc0JBQWlCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFFM0MsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLGNBQWMsS0FBSyxJQUFJLEVBQUUsQ0FBQztnQkFDaEQsT0FBTyxnQkFBZ0IsQ0FBQztZQUM1QixDQUFDO1lBRUQsSUFBSSwrQkFBK0IsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLGVBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDL0UsT0FBTyxrQkFBa0IsQ0FBQztZQUM5QixDQUFDO1lBRUQsT0FBTyxlQUFlLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFZ0IsaUJBQVksR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUNqRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxFQUM3QiwwQkFBMEIsRUFBRSxDQUMvQixDQUFDO0tBdUVMO0lBckVHLElBQWMsWUFBWTtRQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQWMsWUFBWTtRQUN0QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO0lBQ2hFLENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFUyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFUyxXQUFXO1FBQ2pCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRVMsY0FBYztRQUNwQixJQUFJLENBQUMscUJBQXFCLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVPLFlBQVk7UUFDaEIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVPLHFCQUFxQjtRQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFFTyw0QkFBNEI7UUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZO2FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsb0JBQW9CLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDM0csU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDdEIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixPQUFPO1lBQ1gsQ0FBQztZQUVELElBQUksQ0FBQyx1QkFBdUI7aUJBQ3ZCLDRCQUE0QixDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDO2lCQUNqRSxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNaLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDM0MsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFO29CQUN2QixLQUFLLEVBQUUsVUFBVTtpQkFDcEIsQ0FBQyxDQUFDO1lBQ1AsQ0FBQyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTyw0QkFBNEI7UUFDaEMsTUFBTSxPQUFPLEdBQUcsQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO1FBRWhGLElBQUksQ0FBQyxnQkFBZ0I7YUFDaEIsSUFBSSxDQUFDLHVCQUF1QixFQUFFO1lBQzNCLElBQUksRUFBRTtnQkFDRixLQUFLLEVBQUUsMkNBQTJDO2dCQUNsRCxPQUFPO2dCQUNQLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FDVCxJQUFJLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxFQUFFLENBQUM7YUFDdEc7U0FDSixDQUFDO2FBQ0QsU0FBUyxDQUNOLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQ3RHLENBQUM7SUFDVixDQUFDOytHQS9JUSwyQ0FBMkM7bUdBQTNDLDJDQUEyQywrZkNwRHhELHU0RkE0RUEsNHhDRHpDUSx1QkFBdUIsNElBQ3ZCLHNDQUFzQyxrR0FDdEMsZUFBZSxtT0FDZixvQkFBb0IsMkxBQ3BCLG1CQUFtQixrRkFDbkIsY0FBYywrQkFDZCxlQUFlLHdFQUNmLFlBQVksd0tBQ1osaUJBQWlCLG9QQUNqQixrQkFBa0IsZ01BQ2xCLHVCQUF1Qjs7NEZBT2xCLDJDQUEyQztrQkFyQnZELFNBQVM7K0JBQ0kseUNBQXlDLFdBQzFDO3dCQUNMLFVBQVU7d0JBQ1YsdUJBQXVCO3dCQUN2QixzQ0FBc0M7d0JBQ3RDLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQix1QkFBdUI7cUJBQzFCLGNBQ1csSUFBSSxtQkFHQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgdHlwZSB7IE9uSW5pdCwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgRGVzdHJveVJlZiwgaW5qZWN0LCBpbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgTm9uTnVsbGFibGVGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ3VpRWxlbWVudERpcmVjdGl2ZSwgQ3VpTGV0RGlyZWN0aXZlLCBDdWlEcmFnUG9pbnRlckRpcmVjdGl2ZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XHJcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICAgIEN1aVRyZWVTdHJ1Y3RBcGlTZXJ2aWNlLFxyXG4gICAgQ3VpTm9kZUNoZWNrbGlzdEFwaVNlcnZpY2UsXHJcbiAgICBOb2RlQ2hlY2tMaXN0SXRlbSxcclxuICAgIE5vZGVDaGVja0xpc3RJdGVtQ29udGVudFR5cGVcclxufSBmcm9tICdAY3VieS11aS9hcGknO1xyXG5cclxuaW1wb3J0IHR5cGUgeyBDdWlDaGVja0xpc3RCbG9ja0l0ZW0gfSBmcm9tICcuLi8uLi9jaGVja2xpc3QtYmxvY2sub3B0aW9ucyc7XHJcbmltcG9ydCB7IEN1aVRvb2x0aXAgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kaXJlY3RpdmVzJztcclxuaW1wb3J0IHtcclxuICAgIEN1aUJ1dHRvbk1vZHVsZSxcclxuICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxyXG4gICAgQ3VpRGlhbG9nU2VydmljZSxcclxuICAgIEN1aUxhYmVsTW9kdWxlLFxyXG4gICAgQ3VpU3ZnTW9kdWxlXHJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NoZWNrbGlzdC1ibG9jay5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ3VpQ2hlY2tsaXN0QmxvY2tUaXRsZUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuLi9jaGVja2xpc3QtYmxvY2stdGl0bGUtY29udHJvbCc7XHJcbmltcG9ydCB7IEN1aU5vZGVDaGVja0xpc3RJdGVtV2l0aE9wdGlvbiB9IGZyb20gJy4vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXIub3B0aW9ucyc7XHJcbmltcG9ydCB7IEN1aUVkaXRvckJsb2NrQ29tcG9uZW50LCBDdWlFZGl0b3JDb25maWcgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9lZGl0b3InO1xyXG5pbXBvcnQgeyBDdWlEZWxldGVNb2RhbENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2luZGV4JztcclxuaW1wb3J0IHsgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY3VpLWNoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tY29udGFpbmVyJyxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDdWlUb29sdGlwLFxyXG4gICAgICAgIEN1aUVkaXRvckJsb2NrQ29tcG9uZW50LFxyXG4gICAgICAgIEN1aUNoZWNrbGlzdEJsb2NrVGl0bGVDb250cm9sQ29tcG9uZW50LFxyXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBDdWlDb250ZXh0TWVudU1vZHVsZSxcclxuICAgICAgICBDdWlFbGVtZW50RGlyZWN0aXZlLFxyXG4gICAgICAgIEN1aUxhYmVsTW9kdWxlLFxyXG4gICAgICAgIEN1aUxldERpcmVjdGl2ZSxcclxuICAgICAgICBDdWlTdmdNb2R1bGUsXHJcbiAgICAgICAgTmdDb21wb25lbnRPdXRsZXQsXHJcbiAgICAgICAgVHJhbnNsb2NvRGlyZWN0aXZlLFxyXG4gICAgICAgIEN1aURyYWdQb2ludGVyRGlyZWN0aXZlXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybDogJy4vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXIuY29tcG9uZW50LnNjc3MnLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEN1aUNoZWNrbGlzdEJsb2NrTGlzdEl0ZW1Db250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBub25OdWxsYWJsZUZvcm1CdWlsZGVyID0gaW5qZWN0KE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlID0gaW5qZWN0KFRyYW5zbG9jb1NlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjdWlEaWFsb2dTZXJ2aWNlID0gaW5qZWN0KEN1aURpYWxvZ1NlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmVlU3RydWN0QXBpU2VydmljZSA9IGluamVjdChDdWlUcmVlU3RydWN0QXBpU2VydmljZSk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrTGlzdEJsb2NrU2VydmljZSA9IGluamVjdChDdWlDaGVja0xpc3RCbG9ja1NlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBub2RlQ2hlY2tMaXN0QXBpU2VydmljZSA9IGluamVjdChDdWlOb2RlQ2hlY2tsaXN0QXBpU2VydmljZSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IERFRkFVTFRfQ09OVFJPTF9ERUxBWSA9IDcwMDtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNPcGVuID0gc2lnbmFsKGZhbHNlKTtcclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2hlY2tMaXN0QmxvY2tJdGVtID0gaW5wdXQucmVxdWlyZWQ8Q3VpQ2hlY2tMaXN0QmxvY2tJdGVtPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSBpbmRleCA9IGlucHV0PG51bWJlcj4oMCk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbXBvbmVudElkID0gdGhpcy5jaGVja0xpc3RCbG9ja1NlcnZpY2UuY29tcG9uZW50SWQ7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcm90YXRlID0gY29tcHV0ZWQoKCkgPT4gYHJvdGF0ZSgke3RoaXMuaXNPcGVuKCkgPyAnMGRlZycgOiAnLTkwZGVnJ30pYCk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGVhZGVyVGV4dCA9IGNvbXB1dGVkKCgpID0+XHJcbiAgICAgICAgdGhpcy5jaGVja0xpc3RJdGVtKCkudGl0bGUgPyB0aGlzLmNoZWNrTGlzdEl0ZW0oKS50aXRsZSA6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ1VOVElUTEVEJylcclxuICAgICk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hlY2tMaXN0SXRlbSA9IGNvbXB1dGVkPE5vZGVDaGVja0xpc3RJdGVtPE5vZGVDaGVja0xpc3RJdGVtQ29udGVudFR5cGU+PihcclxuICAgICAgICAoKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrSXRlbSgpLmNvbnRlbnRcclxuICAgICk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hlY2tMaXN0SXRlbUNvbXBvbmVudCA9IGNvbXB1dGVkPFR5cGU8dW5rbm93bj4+KCgpID0+IHRoaXMuY2hlY2tMaXN0QmxvY2tJdGVtKCkuY29tcG9uZW50KTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaGVja0xpc3RJdGVtV2l0aE9wdGlvbnMgPSBjb21wdXRlZDxcclxuICAgICAgICBDdWlOb2RlQ2hlY2tMaXN0SXRlbVdpdGhPcHRpb248Tm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50VHlwZT5cclxuICAgID4oKCkgPT4gKHtcclxuICAgICAgICAuLi50aGlzLmNoZWNrTGlzdEl0ZW0oKSxcclxuICAgICAgICBvcHRpb25zOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdEVVBMSUNBVEUnKSxcclxuICAgICAgICAgICAgICAgIGljb246ICdjdWlJY29uQ29weSdcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0RFTEVURScpLFxyXG4gICAgICAgICAgICAgICAgaWNvbjogJ2N1aUljb25UcmFzaCcsXHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJ3ZhcigtLWN1aS1kYW5nZXIpJyxcclxuICAgICAgICAgICAgICAgIGNvbW1hbmQ6IHRoaXMub3BlbkRlbGV0ZUNoZWNrbGlzdE5vZGVNb2RhbC5iaW5kKHRoaXMpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBdXHJcbiAgICB9KSk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGVhZGVyQm9yZGVyQ29sb3IgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY2hlY2tMaXN0SXRlbSA9IHRoaXMuY2hlY2tMaXN0SXRlbSgpO1xyXG5cclxuICAgICAgICBpZiAoY2hlY2tMaXN0SXRlbS5jb250ZW50LmFjdGlvbnNBcHByb3ZlICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAndmFyKC0tY3VpLXZpb2xldC1iZyknO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCdhY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucycgaW4gY2hlY2tMaXN0SXRlbS5jb250ZW50LmFjdGlvbnNBc3NpZ25lZSFbMF0pIHtcclxuICAgICAgICAgICAgcmV0dXJuICd2YXIoLS1jdWktY3lhbi1iZyknO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9KTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29uQ2hlY2tsaXN0VHlwZSA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgICBjb25zdCBjaGVja0xpc3RJdGVtID0gdGhpcy5jaGVja0xpc3RJdGVtKCk7XHJcblxyXG4gICAgICAgIGlmIChjaGVja0xpc3RJdGVtLmNvbnRlbnQuYWN0aW9uc0FwcHJvdmUgIT09IG51bGwpIHtcclxuICAgICAgICAgICAgcmV0dXJuICdjdWlJY29uVXNlcnNTbSc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoJ2FjY2VwdGFuY2VDcml0ZXJpYUV2YWx1YXRpb25zJyBpbiBjaGVja0xpc3RJdGVtLmNvbnRlbnQuYWN0aW9uc0Fzc2lnbmVlIVswXSkge1xyXG4gICAgICAgICAgICByZXR1cm4gJ2N1aUljb25DaGVja2xpc3QnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuICdjdWlJY29uVXNlclNtJztcclxuICAgIH0pO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSB0aXRsZUNvbnRyb2wgPSB0aGlzLm5vbk51bGxhYmxlRm9ybUJ1aWxkZXIuY29udHJvbChcclxuICAgICAgICB7IHZhbHVlOiAnJywgZGlzYWJsZWQ6IHRydWUgfSxcclxuICAgICAgICBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycygpXHJcbiAgICApO1xyXG5cclxuICAgIHByb3RlY3RlZCBnZXQgaXNUaXRsZUVtcHR5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy50aXRsZUNvbnRyb2wudmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIGdldCBpc1RpdGxlRXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudGl0bGVDb250cm9sLmludmFsaWQgJiYgdGhpcy50aXRsZUNvbnRyb2wuZGlydHk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW5pdENvbnRyb2xzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uUm93VG9nZ2xlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaXNPcGVuLnVwZGF0ZSgocHJldikgPT4gIXByZXYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvbkFsbG93RHJhZygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS50b2dnbGVEcmFnUGVybWlzc2lvbih0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25Qcm9oaWJpdERyYWcoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5jaGVja0xpc3RCbG9ja1NlcnZpY2UudG9nZ2xlRHJhZ1Blcm1pc3Npb24oZmFsc2UpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdENvbnRyb2xzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW5pdFRpdGxlQ29udHJvbFZhbHVlKCk7XHJcbiAgICAgICAgdGhpcy5pbml0VGl0bGVDb250cm9sU3Vic2NyaXB0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0VGl0bGVDb250cm9sVmFsdWUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50aXRsZUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICAgICAgdGhpcy50aXRsZUNvbnRyb2wuc2V0VmFsdWUodGhpcy5jaGVja0xpc3RJdGVtKCkudGl0bGUgPyB0aGlzLmNoZWNrTGlzdEl0ZW0oKS50aXRsZSA6ICcnKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGluaXRUaXRsZUNvbnRyb2xTdWJzY3JpcHRpb24oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50aXRsZUNvbnRyb2wudmFsdWVDaGFuZ2VzXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSh0aGlzLkRFRkFVTFRfQ09OVFJPTF9ERUxBWSksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCh0aXRsZVZhbHVlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50aXRsZUNvbnRyb2wuaW52YWxpZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLm5vZGVDaGVja0xpc3RBcGlTZXJ2aWNlXHJcbiAgICAgICAgICAgICAgICAgICAgLnVwZGF0ZU5vZGVDaGVja0xpc3RJdGVtVGl0bGUodGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsIHRpdGxlVmFsdWUpXHJcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnVwZGF0ZUNoZWNrTGlzdEl0ZW0oe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5jaGVja0xpc3RJdGVtKCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogdGl0bGVWYWx1ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvcGVuRGVsZXRlQ2hlY2tsaXN0Tm9kZU1vZGFsKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSBbJ1RISVNfQUNUSU9OX1dJTExfUEVSTUFORU5UTFlfREVMRVRFX1RIRV9JVEVNX0ZST01fQ0hFQ0tMSVNUJ107XHJcblxyXG4gICAgICAgIHRoaXMuY3VpRGlhbG9nU2VydmljZVxyXG4gICAgICAgICAgICAub3BlbihDdWlEZWxldGVNb2RhbENvbXBvbmVudCwge1xyXG4gICAgICAgICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiAnREVMRVRFX0VWQUxVQVRJT05fQ0hFQ0tMSVNUX0lURU1fUVVFU1RJT04nLFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlOiAoKSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyZWVTdHJ1Y3RBcGlTZXJ2aWNlLmRlbGV0ZVRyZWVTdHJ1Y3RFbGVtZW50KHRoaXMuY29tcG9uZW50SWQoKSEsIHRoaXMuY2hlY2tMaXN0SXRlbSgpLmlkKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKGRhdGEpID0+IGRhdGE/LmNhbmNlbGVkIHx8IHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLmRlbGV0ZUNoZWNrTGlzdEl0ZW0odGhpcy5jaGVja0xpc3RJdGVtKCkuaWQpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cclxuICAgIDxuZy1jb250YWluZXIgKmN1aUxldD1cImNoZWNrTGlzdEl0ZW1XaXRoT3B0aW9ucygpIGFzIGNoZWNrTGlzdEl0ZW1cIj5cclxuICAgICAgICA8aGVhZGVyXHJcbiAgICAgICAgICAgIGNsYXNzPVwiaGVhZGVyXCJcclxuICAgICAgICAgICAgW3N0eWxlLmJvcmRlci1sZWZ0LWNvbG9yXT1cImhlYWRlckJvcmRlckNvbG9yKClcIlxyXG4gICAgICAgICAgICBbY2xhc3MuaGVhZGVyX19vcGVuZWRdPVwiaXNPcGVuKClcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJpY29uLWRyYWdcIlxyXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXHJcbiAgICAgICAgICAgICAgICBjdWlEcmFnUG9pbnRlclxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXHJcbiAgICAgICAgICAgICAgICBbaWNvbl09XCInY3VpSWNvbkRyYWdIYW5kbGVEb3RzJ1wiXHJcbiAgICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJvbkFsbG93RHJhZygpXCJcclxuICAgICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cIm9uUHJvaGliaXREcmFnKClcIlxyXG4gICAgICAgICAgICA+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXHJcbiAgICAgICAgICAgICAgICBbc3R5bGUudHJhbnNmb3JtXT1cInJvdGF0ZSgpXCJcclxuICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uQ2FyZXREb3duRmlsbFh4c1wiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Sb3dUb2dnbGUoKVwiXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgICAgPGN1aS1zdmdcclxuICAgICAgICAgICAgICAgIFtpY29uXT1cImljb25DaGVja2xpc3RUeXBlKClcIlxyXG4gICAgICAgICAgICAgICAgY29sb3I9XCJ2YXIoLS1jdWktYmFzZS01MDApXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlcl9fbnVtZXJhdGlvblwiPnt7IGluZGV4KCkgfX0uPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyX190ZXh0XCI+e3sgaGVhZGVyVGV4dCgpIH19PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICBAaWYgKGlzVGl0bGVFbXB0eSkge1xyXG4gICAgICAgICAgICAgICAgPGN1aS1zdmdcclxuICAgICAgICAgICAgICAgICAgICBbY3VpVG9vbHRpcF09XCJ0KCdUSVRMRV9JU19SRVFVSVJFRCcpXCJcclxuICAgICAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbkFsZXJ0VHJpYW5nbGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yPVwidmFyKC0tY3VpLWRhbmdlcilcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvblwiXHJcbiAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICNhY3Rpb25CdXR0b249XCJlbGVtZW50UmVmXCJcclxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBjdWlFbGVtZW50XHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXHJcbiAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbk1vcmVWZXJ0aWNhbFwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImxpc3RfX2NvbnRleHQtbWVudS1idXR0b25cIlxyXG4gICAgICAgICAgICA+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDxjdWktY29udGV4dC1tZW51XHJcbiAgICAgICAgICAgICAgICBbaXRlbXNdPVwiY2hlY2tMaXN0SXRlbS5vcHRpb25zXCJcclxuICAgICAgICAgICAgICAgIFt0YXJnZXRdPVwiYWN0aW9uQnV0dG9uLm5hdGl2ZUVsZW1lbnRcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgIDwvaGVhZGVyPlxyXG4gICAgICAgIEBpZiAoaXNPcGVuKCkpIHtcclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZm9cIj5cclxuICAgICAgICAgICAgICAgIDxjdWktY2hlY2tsaXN0LWJsb2NrLXRpdGxlLWNvbnRyb2wgW2NvbnRyb2xdPVwidGl0bGVDb250cm9sXCIgLz5cclxuICAgICAgICAgICAgICAgIDxjdWktZWRpdG9yLWJsb2NrXHJcbiAgICAgICAgICAgICAgICAgICAgW2NvbmZpZ109XCJjb25maWcoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2VkaXRvcklkXT1cImNoZWNrTGlzdEl0ZW0udGV4dENvbnRhaW5lcklkIVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInRpdGxlQ29udHJvbC52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgW25nQ29tcG9uZW50T3V0bGV0XT1cImNoZWNrTGlzdEl0ZW1Db21wb25lbnQoKVwiXHJcbiAgICAgICAgICAgICAgICBbbmdDb21wb25lbnRPdXRsZXRJbnB1dHNdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgIGNoZWNrTGlzdEl0ZW06IGNoZWNrTGlzdEl0ZW1cclxuICAgICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgIH1cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXIub3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb2RlQ2hlY2tMaXN0SXRlbSB9IGZyb20gJ0BjdWJ5LXVpL2FwaSc7XHJcblxyXG5pbXBvcnQgeyBDdWlDb250ZXh0TWVudUl0ZW0gfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpTm9kZUNoZWNrTGlzdEl0ZW1XaXRoT3B0aW9uPFQ+IGV4dGVuZHMgTm9kZUNoZWNrTGlzdEl0ZW08VD4ge1xyXG4gICAgcmVhZG9ubHkgb3B0aW9uczogQ3VpQ29udGV4dE1lbnVJdGVtW107XHJcbn1cclxuIl19
|
package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-container/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { CuiChecklistBlockListItemContainerComponent } from './checklist-block-list-item-container.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2hlY2tsaXN0LWJsb2NrL2NvbXBvbmVudHMvY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1jb250YWluZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDJDQUEyQyxFQUFFLE1BQU0saURBQWlELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBDdWlDaGVja2xpc3RCbG9ja0xpc3RJdGVtQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG4iXX0=
|
|
@@ -257,7 +257,7 @@ export class CuiCheckListBlockListItemEvaluationComponent {
|
|
|
257
257
|
array.splice(toIndex, 0, item);
|
|
258
258
|
}
|
|
259
259
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCheckListBlockListItemEvaluationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
260
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiCheckListBlockListItemEvaluationComponent, isStandalone: true, selector: "cui-checklist-block-list-item-evaluation", inputs: { checkListItem: { classPropertyName: "checkListItem", publicName: "checkListItem", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <div class=\"action\">\n <div class=\"action__inputs-container\">\n <div\n class=\"action__input\"\n [formGroup]=\"photoFormGroup\"\n >\n <label cuiLabel>\n <input\n cuiCheckbox\n type=\"checkbox\"\n formControlName=\"isEnable\"\n />\n {{ t('PHOTO') }}\n </label>\n <label cuiLabel>\n <input\n cuiToggle\n type=\"checkbox\"\n formControlName=\"isRequired\"\n />\n {{ t('REQUIRED') }}\n </label>\n </div>\n <div\n class=\"action__input\"\n [formGroup]=\"commentFormGroup\"\n >\n <label cuiLabel>\n <input\n cuiCheckbox\n type=\"checkbox\"\n formControlName=\"isEnable\"\n />\n {{ t('COMMENT') }}\n </label>\n <label cuiLabel>\n <input\n cuiToggle\n type=\"checkbox\"\n formControlName=\"isRequired\"\n />\n {{ t('REQUIRED') }}\n </label>\n </div>\n </div>\n <div class=\"action__criteria-title-container\">\n <label\n cuiLabel\n [isRequired]=\"true\"\n for=\"evaluationCriteria\"\n >\n {{ t('EVALUATION_CRITERIA') }}\n </label>\n <p class=\"action__criteria-subtitle\">{{ t('EACH_EVALUATION_CRITERION_SHOULD_BE') }}</p>\n </div>\n <ul\n cuiDragList\n class=\"list\"\n >\n @for (control of evaluationCriteriaFormArray.controls; track control.controls['id']; let index = $index) {\n <li\n cuiChecklistBlockListItemEvaluationCriteria\n [index]=\"index + 1\"\n cuiDragDrop\n [disabled]=\"isAddButtonDisabled()\"\n (elementDragged)=\"onDrop($event)\"\n [criteriaGroup]=\"control\"\n [evaluationCriteriaFormArray]=\"evaluationCriteriaFormArray\"\n [loadingIds]=\"loadingIds()\"\n (saveClicked)=\"onSaveEvaluationCriteria($event)\"\n (cancelClicked)=\"onCancelNewEvaluationCriteria()\"\n (deleteClicked)=\"openModalDeleteEvaluationCriteria($event)\"\n ></li>\n } @empty {\n <li\n cuiEmptyState\n [subtitle]=\"t('NO_EVALUATION_CRITERIA_TO_VIEW')\"\n ></li>\n }\n </ul>\n <div class=\"action__footer\">\n <button\n cuiButton\n size=\"xxs\"\n appearance=\"flat\"\n icon=\"cuiIconPlus\"\n type=\"button\"\n [disabled]=\"isAddButtonDisabled()\"\n (click)=\"onAddEvaluationCriteriaItem()\"\n >\n {{ t('NEW_OPTION') }}\n </button>\n </div>\n </div>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;border-radius:inherit}.action{padding:15px;display:flex;flex-direction:column;border-radius:0 0 8px 8px;gap:16px;background:var(--cui-base-10)}.action__criteria-title-container{display:flex;flex-direction:column;gap:4px}.action__criteria-subtitle{font-weight:400;font-size:14px;line-height:20px;color:var(--cui-base-500)}.action__inputs-container{display:flex;flex-direction:column;gap:8px;background:var(--cui-base-0)}.action__input{padding-right:11px;padding-left:11px;display:flex;height:48px;flex-direction:row;justify-content:space-between;border:1px solid var(--cui-base-200);border-radius:8px}.action__criteria{display:flex;flex-direction:row;align-items:center;gap:12px}.action__criteria-index{padding:8px;font-weight:500;font-size:14px;line-height:20px;display:flex;width:44px;flex-direction:row;justify-content:center;align-items:center;border-radius:8px;background-color:var(--cui-base-0)}.action__criteria-input{flex:1;background:var(--cui-base-0)}.list{display:flex;flex-direction:column;gap:8px}\n"], dependencies: [{ kind: "component", type: CuiCheckListBlockListItemEvaluationCriteriaComponent, selector: "li[cuiChecklistBlockListItemEvaluationCriteria]", inputs: ["loadingIds", "index", "criteriaGroup", "evaluationCriteriaFormArray"], outputs: ["saveClicked", "deleteClicked", "cancelClicked"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: CuiCheckboxModule }, { kind: "component", type: i2.CuiCheckboxComponent, selector: "input[type=\"checkbox\"][cuiCheckbox]" }, { kind: "ngmodule", type: CuiContextMenuModule }, { kind: "ngmodule", type: CuiHintModule }, { kind: "ngmodule", type: CuiInputModule }, { kind: "ngmodule", type: CuiLabelModule }, { kind: "component", type: i3.CuiLabelComponent, selector: "label[cuiLabel]", inputs: ["isRequired"] }, { kind: "ngmodule", type: CuiTextareaModule }, { kind: "ngmodule", type: CuiTextFieldControllerModule }, { kind: "ngmodule", type: CuiToggleModule }, { kind: "component", type: i4.CuiToggleComponent, selector: "input[type=\"checkbox\"][cuiToggle]" }, { kind: "component", type: CuiEmptyStateComponent, selector: "cui-empty-state, [cuiEmptyState]", inputs: ["title", "subtitle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: CuiDragDropDirective, selector: "[cuiDragDrop]", inputs: ["disabled"], outputs: ["elementDragged"] }, { kind: "directive", type: CuiDragListDirective, selector: "[cuiDragList]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
260
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiCheckListBlockListItemEvaluationComponent, isStandalone: true, selector: "cui-checklist-block-list-item-evaluation", inputs: { checkListItem: { classPropertyName: "checkListItem", publicName: "checkListItem", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<ng-container *transloco=\"let t\">\r\n <div class=\"action\">\r\n <div class=\"action__inputs-container\">\r\n <div\r\n class=\"action__input\"\r\n [formGroup]=\"photoFormGroup\"\r\n >\r\n <label cuiLabel>\r\n <input\r\n cuiCheckbox\r\n type=\"checkbox\"\r\n formControlName=\"isEnable\"\r\n />\r\n {{ t('PHOTO') }}\r\n </label>\r\n <label cuiLabel>\r\n <input\r\n cuiToggle\r\n type=\"checkbox\"\r\n formControlName=\"isRequired\"\r\n />\r\n {{ t('REQUIRED') }}\r\n </label>\r\n </div>\r\n <div\r\n class=\"action__input\"\r\n [formGroup]=\"commentFormGroup\"\r\n >\r\n <label cuiLabel>\r\n <input\r\n cuiCheckbox\r\n type=\"checkbox\"\r\n formControlName=\"isEnable\"\r\n />\r\n {{ t('COMMENT') }}\r\n </label>\r\n <label cuiLabel>\r\n <input\r\n cuiToggle\r\n type=\"checkbox\"\r\n formControlName=\"isRequired\"\r\n />\r\n {{ t('REQUIRED') }}\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"action__criteria-title-container\">\r\n <label\r\n cuiLabel\r\n [isRequired]=\"true\"\r\n for=\"evaluationCriteria\"\r\n >\r\n {{ t('EVALUATION_CRITERIA') }}\r\n </label>\r\n <p class=\"action__criteria-subtitle\">{{ t('EACH_EVALUATION_CRITERION_SHOULD_BE') }}</p>\r\n </div>\r\n <ul\r\n cuiDragList\r\n class=\"list\"\r\n >\r\n @for (control of evaluationCriteriaFormArray.controls; track control.controls['id']; let index = $index) {\r\n <li\r\n cuiChecklistBlockListItemEvaluationCriteria\r\n [index]=\"index + 1\"\r\n cuiDragDrop\r\n [disabled]=\"isAddButtonDisabled()\"\r\n (elementDragged)=\"onDrop($event)\"\r\n [criteriaGroup]=\"control\"\r\n [evaluationCriteriaFormArray]=\"evaluationCriteriaFormArray\"\r\n [loadingIds]=\"loadingIds()\"\r\n (saveClicked)=\"onSaveEvaluationCriteria($event)\"\r\n (cancelClicked)=\"onCancelNewEvaluationCriteria()\"\r\n (deleteClicked)=\"openModalDeleteEvaluationCriteria($event)\"\r\n ></li>\r\n } @empty {\r\n <li\r\n cuiEmptyState\r\n [subtitle]=\"t('NO_EVALUATION_CRITERIA_TO_VIEW')\"\r\n ></li>\r\n }\r\n </ul>\r\n <div class=\"action__footer\">\r\n <button\r\n cuiButton\r\n size=\"xxs\"\r\n appearance=\"flat\"\r\n icon=\"cuiIconPlus\"\r\n type=\"button\"\r\n [disabled]=\"isAddButtonDisabled()\"\r\n (click)=\"onAddEvaluationCriteriaItem()\"\r\n >\r\n {{ t('NEW_OPTION') }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column;border-radius:inherit}.action{padding:15px;display:flex;flex-direction:column;border-radius:0 0 8px 8px;gap:16px;background:var(--cui-base-10)}.action__criteria-title-container{display:flex;flex-direction:column;gap:4px}.action__criteria-subtitle{font-weight:400;font-size:14px;line-height:20px;color:var(--cui-base-500)}.action__inputs-container{display:flex;flex-direction:column;gap:8px;background:var(--cui-base-0)}.action__input{padding-right:11px;padding-left:11px;display:flex;height:48px;flex-direction:row;justify-content:space-between;border:1px solid var(--cui-base-200);border-radius:8px}.action__criteria{display:flex;flex-direction:row;align-items:center;gap:12px}.action__criteria-index{padding:8px;font-weight:500;font-size:14px;line-height:20px;display:flex;width:44px;flex-direction:row;justify-content:center;align-items:center;border-radius:8px;background-color:var(--cui-base-0)}.action__criteria-input{flex:1;background:var(--cui-base-0)}.list{display:flex;flex-direction:column;gap:8px}\n"], dependencies: [{ kind: "component", type: CuiCheckListBlockListItemEvaluationCriteriaComponent, selector: "li[cuiChecklistBlockListItemEvaluationCriteria]", inputs: ["loadingIds", "index", "criteriaGroup", "evaluationCriteriaFormArray"], outputs: ["saveClicked", "deleteClicked", "cancelClicked"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: CuiCheckboxModule }, { kind: "component", type: i2.CuiCheckboxComponent, selector: "input[type=\"checkbox\"][cuiCheckbox]" }, { kind: "ngmodule", type: CuiContextMenuModule }, { kind: "ngmodule", type: CuiHintModule }, { kind: "ngmodule", type: CuiInputModule }, { kind: "ngmodule", type: CuiLabelModule }, { kind: "component", type: i3.CuiLabelComponent, selector: "label[cuiLabel]", inputs: ["isRequired"] }, { kind: "ngmodule", type: CuiTextareaModule }, { kind: "ngmodule", type: CuiTextFieldControllerModule }, { kind: "ngmodule", type: CuiToggleModule }, { kind: "component", type: i4.CuiToggleComponent, selector: "input[type=\"checkbox\"][cuiToggle]" }, { kind: "component", type: CuiEmptyStateComponent, selector: "cui-empty-state, [cuiEmptyState]", inputs: ["title", "subtitle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "directive", type: CuiDragDropDirective, selector: "[cuiDragDrop]", inputs: ["disabled"], outputs: ["elementDragged"] }, { kind: "directive", type: CuiDragListDirective, selector: "[cuiDragList]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
261
261
|
}
|
|
262
262
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCheckListBlockListItemEvaluationComponent, decorators: [{
|
|
263
263
|
type: Component,
|
|
@@ -277,6 +277,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
277
277
|
TranslocoDirective,
|
|
278
278
|
CuiDragDropDirective,
|
|
279
279
|
CuiDragListDirective
|
|
280
|
-
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\n <div class=\"action\">\n <div class=\"action__inputs-container\">\n <div\n class=\"action__input\"\n [formGroup]=\"photoFormGroup\"\n >\n <label cuiLabel>\n <input\n cuiCheckbox\n type=\"checkbox\"\n formControlName=\"isEnable\"\n />\n {{ t('PHOTO') }}\n </label>\n <label cuiLabel>\n <input\n cuiToggle\n type=\"checkbox\"\n formControlName=\"isRequired\"\n />\n {{ t('REQUIRED') }}\n </label>\n </div>\n <div\n class=\"action__input\"\n [formGroup]=\"commentFormGroup\"\n >\n <label cuiLabel>\n <input\n cuiCheckbox\n type=\"checkbox\"\n formControlName=\"isEnable\"\n />\n {{ t('COMMENT') }}\n </label>\n <label cuiLabel>\n <input\n cuiToggle\n type=\"checkbox\"\n formControlName=\"isRequired\"\n />\n {{ t('REQUIRED') }}\n </label>\n </div>\n </div>\n <div class=\"action__criteria-title-container\">\n <label\n cuiLabel\n [isRequired]=\"true\"\n for=\"evaluationCriteria\"\n >\n {{ t('EVALUATION_CRITERIA') }}\n </label>\n <p class=\"action__criteria-subtitle\">{{ t('EACH_EVALUATION_CRITERION_SHOULD_BE') }}</p>\n </div>\n <ul\n cuiDragList\n class=\"list\"\n >\n @for (control of evaluationCriteriaFormArray.controls; track control.controls['id']; let index = $index) {\n <li\n cuiChecklistBlockListItemEvaluationCriteria\n [index]=\"index + 1\"\n cuiDragDrop\n [disabled]=\"isAddButtonDisabled()\"\n (elementDragged)=\"onDrop($event)\"\n [criteriaGroup]=\"control\"\n [evaluationCriteriaFormArray]=\"evaluationCriteriaFormArray\"\n [loadingIds]=\"loadingIds()\"\n (saveClicked)=\"onSaveEvaluationCriteria($event)\"\n (cancelClicked)=\"onCancelNewEvaluationCriteria()\"\n (deleteClicked)=\"openModalDeleteEvaluationCriteria($event)\"\n ></li>\n } @empty {\n <li\n cuiEmptyState\n [subtitle]=\"t('NO_EVALUATION_CRITERIA_TO_VIEW')\"\n ></li>\n }\n </ul>\n <div class=\"action__footer\">\n <button\n cuiButton\n size=\"xxs\"\n appearance=\"flat\"\n icon=\"cuiIconPlus\"\n type=\"button\"\n [disabled]=\"isAddButtonDisabled()\"\n (click)=\"onAddEvaluationCriteriaItem()\"\n >\n {{ t('NEW_OPTION') }}\n </button>\n </div>\n </div>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;border-radius:inherit}.action{padding:15px;display:flex;flex-direction:column;border-radius:0 0 8px 8px;gap:16px;background:var(--cui-base-10)}.action__criteria-title-container{display:flex;flex-direction:column;gap:4px}.action__criteria-subtitle{font-weight:400;font-size:14px;line-height:20px;color:var(--cui-base-500)}.action__inputs-container{display:flex;flex-direction:column;gap:8px;background:var(--cui-base-0)}.action__input{padding-right:11px;padding-left:11px;display:flex;height:48px;flex-direction:row;justify-content:space-between;border:1px solid var(--cui-base-200);border-radius:8px}.action__criteria{display:flex;flex-direction:row;align-items:center;gap:12px}.action__criteria-index{padding:8px;font-weight:500;font-size:14px;line-height:20px;display:flex;width:44px;flex-direction:row;justify-content:center;align-items:center;border-radius:8px;background-color:var(--cui-base-0)}.action__criteria-input{flex:1;background:var(--cui-base-0)}.list{display:flex;flex-direction:column;gap:8px}\n"] }]
|
|
280
|
+
], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\r\n <div class=\"action\">\r\n <div class=\"action__inputs-container\">\r\n <div\r\n class=\"action__input\"\r\n [formGroup]=\"photoFormGroup\"\r\n >\r\n <label cuiLabel>\r\n <input\r\n cuiCheckbox\r\n type=\"checkbox\"\r\n formControlName=\"isEnable\"\r\n />\r\n {{ t('PHOTO') }}\r\n </label>\r\n <label cuiLabel>\r\n <input\r\n cuiToggle\r\n type=\"checkbox\"\r\n formControlName=\"isRequired\"\r\n />\r\n {{ t('REQUIRED') }}\r\n </label>\r\n </div>\r\n <div\r\n class=\"action__input\"\r\n [formGroup]=\"commentFormGroup\"\r\n >\r\n <label cuiLabel>\r\n <input\r\n cuiCheckbox\r\n type=\"checkbox\"\r\n formControlName=\"isEnable\"\r\n />\r\n {{ t('COMMENT') }}\r\n </label>\r\n <label cuiLabel>\r\n <input\r\n cuiToggle\r\n type=\"checkbox\"\r\n formControlName=\"isRequired\"\r\n />\r\n {{ t('REQUIRED') }}\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"action__criteria-title-container\">\r\n <label\r\n cuiLabel\r\n [isRequired]=\"true\"\r\n for=\"evaluationCriteria\"\r\n >\r\n {{ t('EVALUATION_CRITERIA') }}\r\n </label>\r\n <p class=\"action__criteria-subtitle\">{{ t('EACH_EVALUATION_CRITERION_SHOULD_BE') }}</p>\r\n </div>\r\n <ul\r\n cuiDragList\r\n class=\"list\"\r\n >\r\n @for (control of evaluationCriteriaFormArray.controls; track control.controls['id']; let index = $index) {\r\n <li\r\n cuiChecklistBlockListItemEvaluationCriteria\r\n [index]=\"index + 1\"\r\n cuiDragDrop\r\n [disabled]=\"isAddButtonDisabled()\"\r\n (elementDragged)=\"onDrop($event)\"\r\n [criteriaGroup]=\"control\"\r\n [evaluationCriteriaFormArray]=\"evaluationCriteriaFormArray\"\r\n [loadingIds]=\"loadingIds()\"\r\n (saveClicked)=\"onSaveEvaluationCriteria($event)\"\r\n (cancelClicked)=\"onCancelNewEvaluationCriteria()\"\r\n (deleteClicked)=\"openModalDeleteEvaluationCriteria($event)\"\r\n ></li>\r\n } @empty {\r\n <li\r\n cuiEmptyState\r\n [subtitle]=\"t('NO_EVALUATION_CRITERIA_TO_VIEW')\"\r\n ></li>\r\n }\r\n </ul>\r\n <div class=\"action__footer\">\r\n <button\r\n cuiButton\r\n size=\"xxs\"\r\n appearance=\"flat\"\r\n icon=\"cuiIconPlus\"\r\n type=\"button\"\r\n [disabled]=\"isAddButtonDisabled()\"\r\n (click)=\"onAddEvaluationCriteriaItem()\"\r\n >\r\n {{ t('NEW_OPTION') }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [":host{display:flex;flex-direction:column;border-radius:inherit}.action{padding:15px;display:flex;flex-direction:column;border-radius:0 0 8px 8px;gap:16px;background:var(--cui-base-10)}.action__criteria-title-container{display:flex;flex-direction:column;gap:4px}.action__criteria-subtitle{font-weight:400;font-size:14px;line-height:20px;color:var(--cui-base-500)}.action__inputs-container{display:flex;flex-direction:column;gap:8px;background:var(--cui-base-0)}.action__input{padding-right:11px;padding-left:11px;display:flex;height:48px;flex-direction:row;justify-content:space-between;border:1px solid var(--cui-base-200);border-radius:8px}.action__criteria{display:flex;flex-direction:row;align-items:center;gap:12px}.action__criteria-index{padding:8px;font-weight:500;font-size:14px;line-height:20px;display:flex;width:44px;flex-direction:row;justify-content:center;align-items:center;border-radius:8px;background-color:var(--cui-base-0)}.action__criteria-input{flex:1;background:var(--cui-base-0)}.list{display:flex;flex-direction:column;gap:8px}\n"] }]
|
|
281
281
|
}] });
|
|
282
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQWdDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25FLE9BQU8sRUFDSCwwQkFBMEIsRUFPN0IsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLG9EQUFvRCxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFD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RUFBRSxPQUFlO1FBQ3JFLElBQUksU0FBUyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTlCLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzNCLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDOytHQXZUUSw0Q0FBNEM7bUdBQTVDLDRDQUE0QywrUENoRXpELDA4R0FnR0Esc2xDRHJEUSxvREFBb0Qsd09BQ3BELGVBQWUsbU9BQ2YsaUJBQWlCLHVJQUNqQixvQkFBb0IsOEJBQ3BCLGFBQWEsOEJBQ2IsY0FBYyw4QkFDZCxjQUFjLHNJQUNkLGlCQUFpQiw4QkFDakIsNEJBQTRCLDhCQUM1QixlQUFlLG9JQUNmLHNCQUFzQiwyR0FDdEIsbUJBQW1CLHF3QkFDbkIsa0JBQWtCLGdNQUNsQixvQkFBb0IsNkdBQ3BCLG9CQUFvQjs7NEZBT2YsNENBQTRDO2tCQXhCeEQsU0FBUzsrQkFDSSwwQ0FBMEMsV0FDM0M7d0JBQ0wsb0RBQW9EO3dCQUNwRCxlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLDRCQUE0Qjt3QkFDNUIsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjtxQkFDdkIsY0FDVyxJQUFJLG1CQUdDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTm9uTnVsbGFibGVGb3JtQnVpbGRlciwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEN1aU51bGxhYmxlLCBDdWlEcmFnRHJvcERhdGEsIEN1aURyYWdEcm9wRGlyZWN0aXZlLCBDdWlEcmFnTGlzdERpcmVjdGl2ZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XG5pbXBvcnQgeyBUcmFuc2xvY29EaXJlY3RpdmUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xuaW1wb3J0IHsgZmluYWxpemUsIG9mLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBDdWlOb2RlQ2hlY2tsaXN0QXBpU2VydmljZSxcbiAgICBOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkNyaXRlcmlhLFxuICAgIE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uSXRlbUNvbnRlbnQsXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW0sXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50QWN0aW9uLFxuICAgIE5vZGVDaGVja0xpc3RJdGVtU3dpdGNoQ29udGVudFBvaW50ZXIsXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UmVxdWVzdFBhcmFtc1xufSBmcm9tICdAY3VieS11aS9hcGknO1xuXG5pbXBvcnQgeyBDdWlDaGVja0xpc3RCbG9ja0xpc3RJdGVtRXZhbHVhdGlvbkNyaXRlcmlhQ29tcG9uZW50IH0gZnJvbSAnLi4vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLWNyaXRlcmlhJztcbmltcG9ydCB7XG4gICAgQ3VpQnV0dG9uTW9kdWxlLFxuICAgIEN1aUNoZWNrYm94TW9kdWxlLFxuICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxuICAgIEN1aURpYWxvZ1NlcnZpY2UsXG4gICAgQ3VpSGludE1vZHVsZSxcbiAgICBDdWlJbnB1dE1vZHVsZSxcbiAgICBDdWlMYWJlbE1vZHVsZSxcbiAgICBDdWlUZXh0YXJlYU1vZHVsZSxcbiAgICBDdWlUb2dnbGVNb2R1bGUsXG4gICAgQ3VpRW1wdHlTdGF0ZUNvbXBvbmVudFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEN1aURlbGV0ZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHsgQ3VpVGV4dEZpZWxkQ29udHJvbGxlck1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscyc7XG5cbmltcG9ydCB0eXBlIHtcbiAgICBDdWlFdmFsdWF0aW9uQ3JpdGVyaWFFbGVtZW50RGF0YSxcbiAgICBDdWlFdmFsdWF0aW9uQ3JpdGVyaWFHcm91cFxufSBmcm9tICcuL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tZXZhbHVhdGlvbi5vcHRpb25zJztcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjdWktY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEN1aUNoZWNrTGlzdEJsb2NrTGlzdEl0ZW1FdmFsdWF0aW9uQ3JpdGVyaWFDb21wb25lbnQsXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpQ2hlY2tib3hNb2R1bGUsXG4gICAgICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxuICAgICAgICBDdWlIaW50TW9kdWxlLFxuICAgICAgICBDdWlJbnB1dE1vZHVsZSxcbiAgICAgICAgQ3VpTGFiZWxNb2R1bGUsXG4gICAgICAgIEN1aVRleHRhcmVhTW9kdWxlLFxuICAgICAgICBDdWlUZXh0RmllbGRDb250cm9sbGVyTW9kdWxlLFxuICAgICAgICBDdWlUb2dnbGVNb2R1bGUsXG4gICAgICAgIEN1aUVtcHR5U3RhdGVDb21wb25lbnQsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZSxcbiAgICAgICAgQ3VpRHJhZ0Ryb3BEaXJlY3RpdmUsXG4gICAgICAgIEN1aURyYWdMaXN0RGlyZWN0aXZlXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24uY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNoZWNrTGlzdEJsb2NrTGlzdEl0ZW1FdmFsdWF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5vbk51bGxhYmxlRm9ybUJ1aWxkZXIgPSBpbmplY3QoTm9uTnVsbGFibGVGb3JtQnVpbGRlcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBub2RlQ2hlY2tMaXN0QXBpU2VydmljZSA9IGluamVjdChDdWlOb2RlQ2hlY2tsaXN0QXBpU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGVja0xpc3RCbG9ja1NlcnZpY2UgPSBpbmplY3QoQ3VpQ2hlY2tMaXN0QmxvY2tTZXJ2aWNlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1aURpYWxvZ1NlcnZpY2UgPSBpbmplY3QoQ3VpRGlhbG9nU2VydmljZSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzQXZhaWxhYmxlT2JzZXJ2ZXIgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHBob3RvRm9ybUdyb3VwID0gdGhpcy5ub25OdWxsYWJsZUZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgaXNFbmFibGU6IGZhbHNlLFxuICAgICAgICBpc1JlcXVpcmVkOiB7XG4gICAgICAgICAgICB2YWx1ZTogZmFsc2UsXG4gICAgICAgICAgICBkaXNhYmxlZDogdHJ1ZVxuICAgICAgICB9XG4gICAgfSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbW1lbnRGb3JtR3JvdXAgPSB0aGlzLm5vbk51bGxhYmxlRm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICBpc0VuYWJsZTogZmFsc2UsXG4gICAgICAgIGlzUmVxdWlyZWQ6IHtcbiAgICAgICAgICAgIHZhbHVlOiBmYWxzZSxcbiAgICAgICAgICAgIGRpc2FibGVkOiB0cnVlXG4gICAgICAgIH1cbiAgICB9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5ID0gdGhpcy5ub25OdWxsYWJsZUZvcm1CdWlsZGVyLmFycmF5PEZvcm1Hcm91cD4oW10pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxvYWRpbmdJZHMgPSBzaWduYWw8UmVjb3JkPHN0cmluZywgYm9vbGVhbj4+KHt9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNBZGRCdXR0b25EaXNhYmxlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGFzc2lnbmVlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jaGVja0xpc3RJdGVtKCkuY29udGVudC5hY3Rpb25zQXNzaWduZWUhWzBdKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXR0YWNobWVudFBob3RvQWN0aW9uID0gY29tcHV0ZWQ8Tm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50QWN0aW9uPihcbiAgICAgICAgKCkgPT4gdGhpcy5hc3NpZ25lZSgpLmFjdGlvbnMuZmluZCgoY29udGVudEFjdGlvbikgPT4gY29udGVudEFjdGlvbi5jb250ZW50QWN0aW9uVHlwZSA9PT0gJ0FUVEFDSE1FTlRfUEhPVE8nKSFcbiAgICApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXh0QXJlYUFjdGlvbiA9IGNvbXB1dGVkPE5vZGVDaGVja0xpc3RJdGVtQ29udGVudEFjdGlvbj4oXG4gICAgICAgICgpID0+IHRoaXMuYXNzaWduZWUoKS5hY3Rpb25zLmZpbmQoKGNvbnRlbnRBY3Rpb24pID0+IGNvbnRlbnRBY3Rpb24uY29udGVudEFjdGlvblR5cGUgPT09ICdURVhUX0FSRUEnKSFcbiAgICApO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IGNoZWNrTGlzdEl0ZW0gPSBpbnB1dC5yZXF1aXJlZDxOb2RlQ2hlY2tMaXN0SXRlbTxOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkl0ZW1Db250ZW50Pj4oKTtcblxuICAgIHByb3RlY3RlZCBnZXRQb2ludGVyKGN1cnJlbnRJbmRleDogbnVtYmVyKTogTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlciB7XG4gICAgICAgIHJldHVybiBjdXJyZW50SW5kZXggPT09IDBcbiAgICAgICAgICAgID8gTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlci5CRUZPUkVcbiAgICAgICAgICAgIDogTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlci5BRlRFUjtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0VGFyZ2V0SW5kZXgoY3VycmVudEluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gY3VycmVudEluZGV4ID09PSAwID8gMSA6IGN1cnJlbnRJbmRleCAtIDE7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uRHJvcChldmVudDogQ3VpRHJhZ0Ryb3BEYXRhKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgcHJldkluZGV4LCBpbmRleCB9ID0gZXZlbnQ7XG5cbiAgICAgICAgaWYgKHByZXZJbmRleCA9PT0gaW5kZXgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubW92ZUl0ZW1JbkFycmF5KHRoaXMuZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LmNvbnRyb2xzLCBwcmV2SW5kZXgsIGluZGV4KTtcbiAgICAgICAgY29uc3QgbW92aW5nRWxlbWVudElkOiBzdHJpbmcgPSB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5hdChpbmRleCkudmFsdWUuaWQ7XG4gICAgICAgIGNvbnN0IHRhcmdldEl0ZW1JZDogc3RyaW5nID0gdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkuYXQodGhpcy5nZXRUYXJnZXRJbmRleChpbmRleCkpLnZhbHVlLmlkO1xuICAgICAgICBjb25zdCBwb2ludGVyOiBOb2RlQ2hlY2tMaXN0SXRlbVN3aXRjaENvbnRlbnRQb2ludGVyID0gdGhpcy5nZXRQb2ludGVyKGluZGV4KTtcblxuICAgICAgICBjb25zdCByZXF1ZXN0Qm9keTogTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UmVxdWVzdFBhcmFtcyA9IHtcbiAgICAgICAgICAgIG5vZGVDaGVja0xpc3RJZDogdGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsXG4gICAgICAgICAgICBsaXN0RXZhbHVhdGlvbklkOiB0aGlzLmFzc2lnbmVlKCkuaWQsXG4gICAgICAgICAgICBtb3ZpbmdFbGVtZW50SWQsXG4gICAgICAgICAgICB0YXJnZXRJdGVtSWQsXG4gICAgICAgICAgICBwb2ludGVyXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5ub2RlQ2hlY2tMaXN0QXBpU2VydmljZS51cGRhdGVOb2RlQ2hlY2tMaXN0SXRlbVN3aXRjaENvbnRlbnQocmVxdWVzdEJvZHkpLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBlcnJvcjogKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubW92ZUl0ZW1JbkFycmF5KHRoaXMuZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LmNvbnRyb2xzLCBpbmRleCwgcHJldkluZGV4KTtcbiAgICAgICAgICAgICAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25BZGRFdmFsdWF0aW9uQ3JpdGVyaWFJdGVtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBldmFsdWF0aW9uSXRlbUNvbnRyb2wgPSB0aGlzLmNyZWF0ZUV2YWx1YXRpb25Gb3JtR3JvdXAoKTtcblxuICAgICAgICB0aGlzLmlzQWRkQnV0dG9uRGlzYWJsZWQuc2V0KHRydWUpO1xuICAgICAgICB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5wdXNoKGV2YWx1YXRpb25JdGVtQ29udHJvbCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uU2F2ZUV2YWx1YXRpb25Dcml0ZXJpYShncm91cDogQ3VpRXZhbHVhdGlvbkNyaXRlcmlhR3JvdXApOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaXNOZXcgPSBncm91cC5pc05ldy52YWx1ZTtcblxuICAgICAgICBpZiAoaXNOZXcpIHtcbiAgICAgICAgICAgIHRoaXMuYWRkRXZhbHVhdGlvbkNyaXRlcmlhKGdyb3VwKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51cGRhdGVFdmFsdWF0aW9uQ3JpdGVyaWEoZ3JvdXApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkNhbmNlbE5ld0V2YWx1YXRpb25Dcml0ZXJpYSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbGFzdEluZGV4ID0gdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkubGVuZ3RoIC0gMTtcblxuICAgICAgICB0aGlzLmlzQWRkQnV0dG9uRGlzYWJsZWQuc2V0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkucmVtb3ZlQXQobGFzdEluZGV4KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3Blbk1vZGFsRGVsZXRlRXZhbHVhdGlvbkNyaXRlcmlhKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29udGVudCA9IFsnREVMRVRFX0VWQUxVQVRJT05fQ0hFQ0tMSVNUX0lURU1fQ09ORklSTUFUSU9OX1RFWFQnXTtcbiAgICAgICAgY29uc3QgY3JpdGVyaWEgPSB0aGlzLmZpbmRFeGlzdGluZ0V2YWx1YXRpb25Dcml0ZXJpYShpZCk7XG5cbiAgICAgICAgaWYgKCFjcml0ZXJpYT8uaWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubG9hZGluZ0lkcy51cGRhdGUoKGlkcykgPT4gKHsgLi4uaWRzLCBbY3JpdGVyaWEuaWRdOiB0cnVlIH0pKTtcbiAgICAgICAgdGhpcy5jdWlEaWFsb2dTZXJ2aWNlXG4gICAgICAgICAgICAub3BlbihDdWlEZWxldGVNb2RhbENvbXBvbmVudCwge1xuICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICdERUxFVEVfRVZBTFVBVElPTl9DSEVDS0xJU1RfSVRFTScsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZTogKCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubm9kZUNoZWNrTGlzdEFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVsZXRlRXZhbHVhdGlvbkNyaXRlcmlhSXRlbSh0aGlzLmNoZWNrTGlzdEl0ZW0oKS5pZCwgdGhpcy5hc3NpZ25lZSgpLmlkLCBjcml0ZXJpYS5pZClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChjaGVja0xpc3RJdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LmNvbnRyb2xzLmZpbmRJbmRleChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29udHJvbCkgPT4gY29udHJvbC52YWx1ZS5pZCA9PT0gaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnVwZGF0ZUNoZWNrTGlzdEl0ZW0oY2hlY2tMaXN0SXRlbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5yZW1vdmVBdChpbmRleCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jb21wbGV0ZUV2YWx1YXRpb25Dcml0ZXJpYURlbGV0aW9uKGNyaXRlcmlhKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNvbXBsZXRlRXZhbHVhdGlvbkNyaXRlcmlhRGVsZXRpb24oY3JpdGVyaWE6IE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uQ3JpdGVyaWEpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5sb2FkaW5nSWRzLnVwZGF0ZSgoaWRzKSA9PiB7XG4gICAgICAgICAgICBkZWxldGUgaWRzW2NyaXRlcmlhLmlkXTtcblxuICAgICAgICAgICAgcmV0dXJuIHsgLi4uaWRzIH07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25DaGVja0xpc3RBY3Rpb25DaGFuZ2VkKGFjdGlvbklkOiBzdHJpbmcsIGFjdGlvbkNvbnRlbnQ6IE5vZGVDaGVja0xpc3RJdGVtQ29udGVudEFjdGlvbik6IHZvaWQge1xuICAgICAgICBjb25zdCByZXF1ZXN0RGF0YSA9IHtcbiAgICAgICAgICAgIG5vZGVDaGVja0xpc3RJZDogdGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsXG4gICAgICAgICAgICBhc3NpZ25lZUFjdGlvblR5cGU6ICdBU1NJR04nLFxuICAgICAgICAgICAgYWN0aW9uSWQsXG4gICAgICAgICAgICBjb250ZW50SWQ6IGFjdGlvbkNvbnRlbnQuaWQsXG4gICAgICAgICAgICBpc0VuYWJsZTogYWN0aW9uQ29udGVudC5pc0VuYWJsZSxcbiAgICAgICAgICAgIGlzUmVxdWlyZWQ6IGFjdGlvbkNvbnRlbnQuaXNSZXF1aXJlZFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMubm9kZUNoZWNrTGlzdEFwaVNlcnZpY2UudXBkYXRlTm9kZUNoZWNrTGlzdEl0ZW1BY3Rpb25Db250ZW50KHJlcXVlc3REYXRhKS5zdWJzY3JpYmUoKGNoZWNrTGlzdEl0ZW0pID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnVwZGF0ZUNoZWNrTGlzdEl0ZW0oY2hlY2tMaXN0SXRlbSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0RXZhbHVhdGlvbkZvcm1WYWx1ZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRFdmFsdWF0aW9uRm9ybVZhbHVlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkuY2xlYXIoKTtcbiAgICAgICAgdGhpcy5waG90b0Zvcm1Hcm91cC5wYXRjaFZhbHVlKHtcbiAgICAgICAgICAgIGlzRW5hYmxlOiB0aGlzLmF0dGFjaG1lbnRQaG90b0FjdGlvbigpLmlzRW5hYmxlLFxuICAgICAgICAgICAgaXNSZXF1aXJlZDogdGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5pc1JlcXVpcmVkXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNvbW1lbnRGb3JtR3JvdXAucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgICBpc0VuYWJsZTogdGhpcy50ZXh0QXJlYUFjdGlvbigpLmlzRW5hYmxlLFxuICAgICAgICAgICAgaXNSZXF1aXJlZDogdGhpcy50ZXh0QXJlYUFjdGlvbigpLmlzUmVxdWlyZWRcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuYXR0YWNobWVudFBob3RvQWN0aW9uKCkuaXNFbmFibGUpIHtcbiAgICAgICAgICAgIHRoaXMucGhvdG9Gb3JtR3JvdXAuY29udHJvbHMuaXNSZXF1aXJlZC5lbmFibGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnRleHRBcmVhQWN0aW9uKCkuaXNFbmFibGUpIHtcbiAgICAgICAgICAgIHRoaXMuY29tbWVudEZvcm1Hcm91cC5jb250cm9scy5pc1JlcXVpcmVkLmVuYWJsZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbml0QWN0aW9uRm9ybVNlZ21lbnRzU3Vic2NyaXB0aW9ucygpO1xuXG4gICAgICAgIHRoaXMuYXNzaWduZWUoKS5hY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucy5mb3JFYWNoKChldmFsdWF0aW9uQ3JpdGVyaWE6IE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uQ3JpdGVyaWEpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGV2YWx1YXRpb25JdGVtQ29udHJvbCA9IHRoaXMuY3JlYXRlRXZhbHVhdGlvbkZvcm1Hcm91cCh7XG4gICAgICAgICAgICAgICAgaXNOZXc6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGNyaXRlcmlhOiBldmFsdWF0aW9uQ3JpdGVyaWEuY3JpdGVyaWEsXG4gICAgICAgICAgICAgICAgZXZhbHVhdGlvbjogZXZhbHVhdGlvbkNyaXRlcmlhLmV2YWx1YXRpb24sXG4gICAgICAgICAgICAgICAgaWQ6IGV2YWx1YXRpb25Dcml0ZXJpYS5pZFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMuZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LnB1c2goZXZhbHVhdGlvbkl0ZW1Db250cm9sKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0QWN0aW9uRm9ybVNlZ21lbnRzU3Vic2NyaXB0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0UGhvdG9Hcm91cFN1YnNjcmlwdGlvbigpO1xuICAgICAgICB0aGlzLmluaXRDb21tZW50R3JvdXBTdWJzY3JpcHRpb24oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRQaG90b0dyb3VwU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBob3RvRm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLmlzQXZhaWxhYmxlT2JzZXJ2ZXIpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXZhbHVlLmlzRW5hYmxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5waG90b0Zvcm1Hcm91cC5nZXQoJ2lzUmVxdWlyZWQnKT8uc2V0VmFsdWUoZmFsc2UsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnBob3RvRm9ybUdyb3VwLmdldCgnaXNSZXF1aXJlZCcpPy5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hlY2tMaXN0QWN0aW9uQ2hhbmdlZCh0aGlzLmFzc2lnbmVlKCkuaWQsIHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMuYXR0YWNobWVudFBob3RvQWN0aW9uKCkuaWQsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRBY3Rpb25UeXBlOiB0aGlzLmF0dGFjaG1lbnRQaG90b0FjdGlvbigpLmNvbnRlbnRBY3Rpb25UeXBlLFxuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnBob3RvRm9ybUdyb3VwLmdldFJhd1ZhbHVlKClcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5waG90b0Zvcm1Hcm91cC5nZXQoJ2lzUmVxdWlyZWQnKT8uZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICAgIHRoaXMub25DaGVja0xpc3RBY3Rpb25DaGFuZ2VkKHRoaXMuYXNzaWduZWUoKS5pZCwge1xuICAgICAgICAgICAgICAgIGlkOiB0aGlzLmF0dGFjaG1lbnRQaG90b0FjdGlvbigpLmlkLFxuICAgICAgICAgICAgICAgIGNvbnRlbnRBY3Rpb25UeXBlOiB0aGlzLmF0dGFjaG1lbnRQaG90b0FjdGlvbigpLmNvbnRlbnRBY3Rpb25UeXBlLFxuICAgICAgICAgICAgICAgIC4uLnRoaXMucGhvdG9Gb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdENvbW1lbnRHcm91cFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb21tZW50Rm9ybUdyb3VwLnZhbHVlQ2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLmlzQXZhaWxhYmxlT2JzZXJ2ZXIpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXZhbHVlLmlzRW5hYmxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb21tZW50Rm9ybUdyb3VwLmdldCgnaXNSZXF1aXJlZCcpPy5zZXRWYWx1ZShmYWxzZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICAgICAgICAgIHRoaXMuY29tbWVudEZvcm1Hcm91cC5nZXQoJ2lzUmVxdWlyZWQnKT8uZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkNoZWNrTGlzdEFjdGlvbkNoYW5nZWQodGhpcy5hc3NpZ25lZSgpLmlkLCB7XG4gICAgICAgICAgICAgICAgICAgIGlkOiB0aGlzLnRleHRBcmVhQWN0aW9uKCkuaWQsXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRBY3Rpb25UeXBlOiB0aGlzLnRleHRBcmVhQWN0aW9uKCkuY29udGVudEFjdGlvblR5cGUsXG4gICAgICAgICAgICAgICAgICAgIC4uLnRoaXMuY29tbWVudEZvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY29tbWVudEZvcm1Hcm91cC5nZXQoJ2lzUmVxdWlyZWQnKT8uZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgICAgIHRoaXMub25DaGVja0xpc3RBY3Rpb25DaGFuZ2VkKHRoaXMuYXNzaWduZWUoKS5pZCwge1xuICAgICAgICAgICAgICAgIGlkOiB0aGlzLnRleHRBcmVhQWN0aW9uKCkuaWQsXG4gICAgICAgICAgICAgICAgY29udGVudEFjdGlvblR5cGU6IHRoaXMudGV4dEFyZWFBY3Rpb24oKS5jb250ZW50QWN0aW9uVHlwZSxcbiAgICAgICAgICAgICAgICAuLi50aGlzLmNvbW1lbnRGb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRXZhbHVhdGlvbkNyaXRlcmlhKGdyb3VwOiBDdWlFdmFsdWF0aW9uQ3JpdGVyaWFHcm91cCk6IHZvaWQge1xuICAgICAgICBjb25zdCBldmFsdWF0aW9uID0gZ3JvdXAuZXZhbHVhdGlvbi52YWx1ZTtcbiAgICAgICAgY29uc3QgY3JpdGVyaWEgPSBncm91cC5jcml0ZXJpYS52YWx1ZTtcbiAgICAgICAgY29uc3QgaWQgPSBncm91cC5pZC52YWx1ZTtcblxuICAgICAgICB0aGlzLm5vZGVDaGVja0xpc3RBcGlTZXJ2aWNlXG4gICAgICAgICAgICAudXBkYXRlRXZhbHVhdGlvbkNyaXRlcmlhSXRlbSh0aGlzLmNoZWNrTGlzdEl0ZW0oKS5pZCwgdGhpcy5hc3NpZ25lZSgpLmlkLCBpZCwgY3JpdGVyaWEsIGV2YWx1YXRpb24pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS51cGRhdGVDaGVja0xpc3RJdGVtKGNoZWNrTGlzdEl0ZW0pKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZEV2YWx1YXRpb25Dcml0ZXJpYShncm91cDogQ3VpRXZhbHVhdGlvbkNyaXRlcmlhR3JvdXApOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZXZhbHVhdGlvbiA9IGdyb3VwLmV2YWx1YXRpb24udmFsdWU7XG4gICAgICAgIGNvbnN0IGNyaXRlcmlhID0gZ3JvdXAuY3JpdGVyaWEudmFsdWU7XG5cbiAgICAgICAgdGhpcy5ub2RlQ2hlY2tMaXN0QXBpU2VydmljZVxuICAgICAgICAgICAgLmFkZEV2YWx1YXRpb25Dcml0ZXJpYUl0ZW0odGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsIHRoaXMuYXNzaWduZWUoKS5pZCwgY3JpdGVyaWEsIGV2YWx1YXRpb24pXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLmlzQWRkQnV0dG9uRGlzYWJsZWQuc2V0KGZhbHNlKSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB0aGlzLnVwZGF0ZUNyZWF0ZWRFdmFsdWF0aW9uQ3JpdGVyaWEoY2hlY2tMaXN0SXRlbSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlQ3JlYXRlZEV2YWx1YXRpb25Dcml0ZXJpYShcbiAgICAgICAgY2hlY2tMaXN0SXRlbTogTm9kZUNoZWNrTGlzdEl0ZW08Tm9kZUNoZWNrTGlzdEV2YWx1YXRpb25JdGVtQ29udGVudD5cbiAgICApOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYWNjZXB0YW5jZUNyaXRlcmlhRXZhbHVhdGlvbnMgPSBjaGVja0xpc3RJdGVtLmNvbnRlbnQuYWN0aW9uc0Fzc2lnbmVlIVswXS5hY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucztcbiAgICAgICAgY29uc3QgaWQgPSBhY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucy5hdCgtMSk/LmlkO1xuICAgICAgICBjb25zdCBjb250cm9sID0gdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkuY29udHJvbHMuYXQoLTEpPy5nZXRSYXdWYWx1ZSgpO1xuICAgICAgICBjb25zdCBjcmVhdGVkQ29udHJvbCA9IHRoaXMuY3JlYXRlRXZhbHVhdGlvbkZvcm1Hcm91cCh7IC4uLmNvbnRyb2wsIGlkLCBpc05ldzogZmFsc2UgfSk7XG5cbiAgICAgICAgdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkucmVtb3ZlQXQoLTEpO1xuICAgICAgICB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5wdXNoKGNyZWF0ZWRDb250cm9sKTtcbiAgICAgICAgdGhpcy5jaGVja0xpc3RCbG9ja1NlcnZpY2UudXBkYXRlQ2hlY2tMaXN0SXRlbShjaGVja0xpc3RJdGVtKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUV2YWx1YXRpb25Gb3JtR3JvdXAoe1xuICAgICAgICBpZCxcbiAgICAgICAgY3JpdGVyaWEgPSAnJyxcbiAgICAgICAgZXZhbHVhdGlvbiA9IG51bGwsXG4gICAgICAgIGlzTmV3ID0gdHJ1ZVxuICAgIH06IEN1aUV2YWx1YXRpb25Dcml0ZXJpYUVsZW1lbnREYXRhID0ge30pOiBGb3JtR3JvdXAge1xuICAgICAgICByZXR1cm4gdGhpcy5ub25OdWxsYWJsZUZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgICAgIGlkOiBbaWRdLFxuICAgICAgICAgICAgY3JpdGVyaWE6IFtjcml0ZXJpYSwgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMoeyBtYXhMZW5ndGg6IDUwMCB9KV0sXG4gICAgICAgICAgICBldmFsdWF0aW9uOiBbZXZhbHVhdGlvbiwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgICAgICAgIGlzTmV3OiBbaXNOZXddXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmluZEV4aXN0aW5nRXZhbHVhdGlvbkNyaXRlcmlhKGlkOiBzdHJpbmcpOiBDdWlOdWxsYWJsZTxOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkNyaXRlcmlhPiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmFzc2lnbmVlKCkuYWNjZXB0YW5jZUNyaXRlcmlhRXZhbHVhdGlvbnMuZmluZChcbiAgICAgICAgICAgICAgICAoZXZhbHVhdGlvbkNyaXRlcmlhOiBOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkNyaXRlcmlhKSA9PiBldmFsdWF0aW9uQ3JpdGVyaWEuaWQgPT09IGlkXG4gICAgICAgICAgICApIHx8IG51bGxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG1vdmVJdGVtSW5BcnJheTxUPihhcnJheTogVFtdLCBmcm9tSW5kZXg6IG51bWJlciwgdG9JbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmIChmcm9tSW5kZXggPT09IHRvSW5kZXgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGl0ZW0gPSBhcnJheVtmcm9tSW5kZXhdO1xuXG4gICAgICAgIGFycmF5LnNwbGljZShmcm9tSW5kZXgsIDEpO1xuICAgICAgICBhcnJheS5zcGxpY2UodG9JbmRleCwgMCwgaXRlbSk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25fX2lucHV0cy1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbl9faW5wdXRcIlxuICAgICAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwicGhvdG9Gb3JtR3JvdXBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBjdWlMYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBjdWlDaGVja2JveFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzRW5hYmxlXCJcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAge3sgdCgnUEhPVE8nKSB9fVxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGN1aUxhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1aVRvZ2dsZVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzUmVxdWlyZWRcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICB7eyB0KCdSRVFVSVJFRCcpIH19XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uX19pbnB1dFwiXG4gICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJjb21tZW50Rm9ybUdyb3VwXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8bGFiZWwgY3VpTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgY3VpQ2hlY2tib3hcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJpc0VuYWJsZVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIHt7IHQoJ0NPTU1FTlQnKSB9fVxuICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgPGxhYmVsIGN1aUxhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1aVRvZ2dsZVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzUmVxdWlyZWRcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICB7eyB0KCdSRVFVSVJFRCcpIH19XG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbl9fY3JpdGVyaWEtdGl0bGUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICBjdWlMYWJlbFxuICAgICAgICAgICAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxuICAgICAgICAgICAgICAgIGZvcj1cImV2YWx1YXRpb25Dcml0ZXJpYVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdCgnRVZBTFVBVElPTl9DUklURVJJQScpIH19XG4gICAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJhY3Rpb25fX2NyaXRlcmlhLXN1YnRpdGxlXCI+e3sgdCgnRUFDSF9FVkFMVUFUSU9OX0NSSVRFUklPTl9TSE9VTERfQkUnKSB9fTwvcD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDx1bFxuICAgICAgICAgICAgY3VpRHJhZ0xpc3RcbiAgICAgICAgICAgIGNsYXNzPVwibGlzdFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBmb3IgKGNvbnRyb2wgb2YgZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LmNvbnRyb2xzOyB0cmFjayBjb250cm9sLmNvbnRyb2xzWydpZCddOyBsZXQgaW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICAgICAgY3VpQ2hlY2tsaXN0QmxvY2tMaXN0SXRlbUV2YWx1YXRpb25Dcml0ZXJpYVxuICAgICAgICAgICAgICAgICAgICBbaW5kZXhdPVwiaW5kZXggKyAxXCJcbiAgICAgICAgICAgICAgICAgICAgY3VpRHJhZ0Ryb3BcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzQWRkQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICAgICAgICAgIChlbGVtZW50RHJhZ2dlZCk9XCJvbkRyb3AoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtjcml0ZXJpYUdyb3VwXT1cImNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICBbZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5XT1cImV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheVwiXG4gICAgICAgICAgICAgICAgICAgIFtsb2FkaW5nSWRzXT1cImxvYWRpbmdJZHMoKVwiXG4gICAgICAgICAgICAgICAgICAgIChzYXZlQ2xpY2tlZCk9XCJvblNhdmVFdmFsdWF0aW9uQ3JpdGVyaWEoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIChjYW5jZWxDbGlja2VkKT1cIm9uQ2FuY2VsTmV3RXZhbHVhdGlvbkNyaXRlcmlhKClcIlxuICAgICAgICAgICAgICAgICAgICAoZGVsZXRlQ2xpY2tlZCk9XCJvcGVuTW9kYWxEZWxldGVFdmFsdWF0aW9uQ3JpdGVyaWEoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPjwvbGk+XG4gICAgICAgICAgICB9IEBlbXB0eSB7XG4gICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgIGN1aUVtcHR5U3RhdGVcbiAgICAgICAgICAgICAgICAgICAgW3N1YnRpdGxlXT1cInQoJ05PX0VWQUxVQVRJT05fQ1JJVEVSSUFfVE9fVklFVycpXCJcbiAgICAgICAgICAgICAgICA+PC9saT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC91bD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbl9fZm9vdGVyXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImZsYXRcIlxuICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uUGx1c1wiXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzQWRkQnV0dG9uRGlzYWJsZWQoKVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQWRkRXZhbHVhdGlvbkNyaXRlcmlhSXRlbSgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0KCdORVdfT1BUSU9OJykgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
282
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY29tcG9uZW50cy9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQWdDLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ25FLE9BQU8sRUFDSCwwQkFBMEIsRUFPN0IsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLG9EQUFvRCxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFD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RUFBRSxPQUFlO1FBQ3JFLElBQUksU0FBUyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTlCLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzNCLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDOytHQXZUUSw0Q0FBNEM7bUdBQTVDLDRDQUE0QywrUENoRXpELDBvSEFnR0Esc2xDRHJEUSxvREFBb0Qsd09BQ3BELGVBQWUsbU9BQ2YsaUJBQWlCLHVJQUNqQixvQkFBb0IsOEJBQ3BCLGFBQWEsOEJBQ2IsY0FBYyw4QkFDZCxjQUFjLHNJQUNkLGlCQUFpQiw4QkFDakIsNEJBQTRCLDhCQUM1QixlQUFlLG9JQUNmLHNCQUFzQiwyR0FDdEIsbUJBQW1CLHF3QkFDbkIsa0JBQWtCLGdNQUNsQixvQkFBb0IsNkdBQ3BCLG9CQUFvQjs7NEZBT2YsNENBQTRDO2tCQXhCeEQsU0FBUzsrQkFDSSwwQ0FBMEMsV0FDM0M7d0JBQ0wsb0RBQW9EO3dCQUNwRCxlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsb0JBQW9CO3dCQUNwQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLDRCQUE0Qjt3QkFDNUIsZUFBZTt3QkFDZixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixvQkFBb0I7d0JBQ3BCLG9CQUFvQjtxQkFDdkIsY0FDVyxJQUFJLG1CQUdDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgY29tcHV0ZWQsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgdHlwZSB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTm9uTnVsbGFibGVGb3JtQnVpbGRlciwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ3VpTnVsbGFibGUsIEN1aURyYWdEcm9wRGF0YSwgQ3VpRHJhZ0Ryb3BEaXJlY3RpdmUsIEN1aURyYWdMaXN0RGlyZWN0aXZlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcclxuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgZmluYWxpemUsIG9mLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gICAgQ3VpTm9kZUNoZWNrbGlzdEFwaVNlcnZpY2UsXHJcbiAgICBOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkNyaXRlcmlhLFxyXG4gICAgTm9kZUNoZWNrTGlzdEV2YWx1YXRpb25JdGVtQ29udGVudCxcclxuICAgIE5vZGVDaGVja0xpc3RJdGVtLFxyXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50QWN0aW9uLFxyXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlcixcclxuICAgIE5vZGVDaGVja0xpc3RJdGVtU3dpdGNoQ29udGVudFJlcXVlc3RQYXJhbXNcclxufSBmcm9tICdAY3VieS11aS9hcGknO1xyXG5cclxuaW1wb3J0IHsgQ3VpQ2hlY2tMaXN0QmxvY2tMaXN0SXRlbUV2YWx1YXRpb25Dcml0ZXJpYUNvbXBvbmVudCB9IGZyb20gJy4uL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tZXZhbHVhdGlvbi1jcml0ZXJpYSc7XHJcbmltcG9ydCB7XHJcbiAgICBDdWlCdXR0b25Nb2R1bGUsXHJcbiAgICBDdWlDaGVja2JveE1vZHVsZSxcclxuICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxyXG4gICAgQ3VpRGlhbG9nU2VydmljZSxcclxuICAgIEN1aUhpbnRNb2R1bGUsXHJcbiAgICBDdWlJbnB1dE1vZHVsZSxcclxuICAgIEN1aUxhYmVsTW9kdWxlLFxyXG4gICAgQ3VpVGV4dGFyZWFNb2R1bGUsXHJcbiAgICBDdWlUb2dnbGVNb2R1bGUsXHJcbiAgICBDdWlFbXB0eVN0YXRlQ29tcG9uZW50XHJcbn0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IEN1aURlbGV0ZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xyXG5pbXBvcnQgeyBDdWlUZXh0RmllbGRDb250cm9sbGVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vZGlyZWN0aXZlcyc7XHJcbmltcG9ydCB7IGN1aUNyZWF0ZURlZmF1bHRWYWxpZGF0b3JzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbHMnO1xyXG5cclxuaW1wb3J0IHR5cGUge1xyXG4gICAgQ3VpRXZhbHVhdGlvbkNyaXRlcmlhRWxlbWVudERhdGEsXHJcbiAgICBDdWlFdmFsdWF0aW9uQ3JpdGVyaWFHcm91cFxyXG59IGZyb20gJy4vY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLm9wdGlvbnMnO1xyXG5pbXBvcnQgeyBDdWlDaGVja0xpc3RCbG9ja1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY3VpLWNoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tZXZhbHVhdGlvbicsXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ3VpQ2hlY2tMaXN0QmxvY2tMaXN0SXRlbUV2YWx1YXRpb25Dcml0ZXJpYUNvbXBvbmVudCxcclxuICAgICAgICBDdWlCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgQ3VpQ2hlY2tib3hNb2R1bGUsXHJcbiAgICAgICAgQ3VpQ29udGV4dE1lbnVNb2R1bGUsXHJcbiAgICAgICAgQ3VpSGludE1vZHVsZSxcclxuICAgICAgICBDdWlJbnB1dE1vZHVsZSxcclxuICAgICAgICBDdWlMYWJlbE1vZHVsZSxcclxuICAgICAgICBDdWlUZXh0YXJlYU1vZHVsZSxcclxuICAgICAgICBDdWlUZXh0RmllbGRDb250cm9sbGVyTW9kdWxlLFxyXG4gICAgICAgIEN1aVRvZ2dsZU1vZHVsZSxcclxuICAgICAgICBDdWlFbXB0eVN0YXRlQ29tcG9uZW50LFxyXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICAgICAgVHJhbnNsb2NvRGlyZWN0aXZlLFxyXG4gICAgICAgIEN1aURyYWdEcm9wRGlyZWN0aXZlLFxyXG4gICAgICAgIEN1aURyYWdMaXN0RGlyZWN0aXZlXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tZXZhbHVhdGlvbi5jb21wb25lbnQuc2NzcycsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3VpQ2hlY2tMaXN0QmxvY2tMaXN0SXRlbUV2YWx1YXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBub25OdWxsYWJsZUZvcm1CdWlsZGVyID0gaW5qZWN0KE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBub2RlQ2hlY2tMaXN0QXBpU2VydmljZSA9IGluamVjdChDdWlOb2RlQ2hlY2tsaXN0QXBpU2VydmljZSk7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrTGlzdEJsb2NrU2VydmljZSA9IGluamVjdChDdWlDaGVja0xpc3RCbG9ja1NlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZFJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGN1aURpYWxvZ1NlcnZpY2UgPSBpbmplY3QoQ3VpRGlhbG9nU2VydmljZSk7XHJcblxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0F2YWlsYWJsZU9ic2VydmVyID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGhvdG9Gb3JtR3JvdXAgPSB0aGlzLm5vbk51bGxhYmxlRm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG4gICAgICAgIGlzRW5hYmxlOiBmYWxzZSxcclxuICAgICAgICBpc1JlcXVpcmVkOiB7XHJcbiAgICAgICAgICAgIHZhbHVlOiBmYWxzZSxcclxuICAgICAgICAgICAgZGlzYWJsZWQ6IHRydWVcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBjb21tZW50Rm9ybUdyb3VwID0gdGhpcy5ub25OdWxsYWJsZUZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgICBpc0VuYWJsZTogZmFsc2UsXHJcbiAgICAgICAgaXNSZXF1aXJlZDoge1xyXG4gICAgICAgICAgICB2YWx1ZTogZmFsc2UsXHJcbiAgICAgICAgICAgIGRpc2FibGVkOiB0cnVlXHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5ID0gdGhpcy5ub25OdWxsYWJsZUZvcm1CdWlsZGVyLmFycmF5PEZvcm1Hcm91cD4oW10pO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBsb2FkaW5nSWRzID0gc2lnbmFsPFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+Pih7fSk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNBZGRCdXR0b25EaXNhYmxlZCA9IHNpZ25hbChmYWxzZSk7XHJcblxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhc3NpZ25lZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY2hlY2tMaXN0SXRlbSgpLmNvbnRlbnQuYWN0aW9uc0Fzc2lnbmVlIVswXSk7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXR0YWNobWVudFBob3RvQWN0aW9uID0gY29tcHV0ZWQ8Tm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50QWN0aW9uPihcclxuICAgICAgICAoKSA9PiB0aGlzLmFzc2lnbmVlKCkuYWN0aW9ucy5maW5kKChjb250ZW50QWN0aW9uKSA9PiBjb250ZW50QWN0aW9uLmNvbnRlbnRBY3Rpb25UeXBlID09PSAnQVRUQUNITUVOVF9QSE9UTycpIVxyXG4gICAgKTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXh0QXJlYUFjdGlvbiA9IGNvbXB1dGVkPE5vZGVDaGVja0xpc3RJdGVtQ29udGVudEFjdGlvbj4oXHJcbiAgICAgICAgKCkgPT4gdGhpcy5hc3NpZ25lZSgpLmFjdGlvbnMuZmluZCgoY29udGVudEFjdGlvbikgPT4gY29udGVudEFjdGlvbi5jb250ZW50QWN0aW9uVHlwZSA9PT0gJ1RFWFRfQVJFQScpIVxyXG4gICAgKTtcclxuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2hlY2tMaXN0SXRlbSA9IGlucHV0LnJlcXVpcmVkPE5vZGVDaGVja0xpc3RJdGVtPE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uSXRlbUNvbnRlbnQ+PigpO1xyXG5cclxuICAgIHByb3RlY3RlZCBnZXRQb2ludGVyKGN1cnJlbnRJbmRleDogbnVtYmVyKTogTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlciB7XHJcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRJbmRleCA9PT0gMFxyXG4gICAgICAgICAgICA/IE5vZGVDaGVja0xpc3RJdGVtU3dpdGNoQ29udGVudFBvaW50ZXIuQkVGT1JFXHJcbiAgICAgICAgICAgIDogTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlci5BRlRFUjtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0VGFyZ2V0SW5kZXgoY3VycmVudEluZGV4OiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiBjdXJyZW50SW5kZXggPT09IDAgPyAxIDogY3VycmVudEluZGV4IC0gMTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25Ecm9wKGV2ZW50OiBDdWlEcmFnRHJvcERhdGEpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB7IHByZXZJbmRleCwgaW5kZXggfSA9IGV2ZW50O1xyXG5cclxuICAgICAgICBpZiAocHJldkluZGV4ID09PSBpbmRleCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLm1vdmVJdGVtSW5BcnJheSh0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5jb250cm9scywgcHJldkluZGV4LCBpbmRleCk7XHJcbiAgICAgICAgY29uc3QgbW92aW5nRWxlbWVudElkOiBzdHJpbmcgPSB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5hdChpbmRleCkudmFsdWUuaWQ7XHJcbiAgICAgICAgY29uc3QgdGFyZ2V0SXRlbUlkOiBzdHJpbmcgPSB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5hdCh0aGlzLmdldFRhcmdldEluZGV4KGluZGV4KSkudmFsdWUuaWQ7XHJcbiAgICAgICAgY29uc3QgcG9pbnRlcjogTm9kZUNoZWNrTGlzdEl0ZW1Td2l0Y2hDb250ZW50UG9pbnRlciA9IHRoaXMuZ2V0UG9pbnRlcihpbmRleCk7XHJcblxyXG4gICAgICAgIGNvbnN0IHJlcXVlc3RCb2R5OiBOb2RlQ2hlY2tMaXN0SXRlbVN3aXRjaENvbnRlbnRSZXF1ZXN0UGFyYW1zID0ge1xyXG4gICAgICAgICAgICBub2RlQ2hlY2tMaXN0SWQ6IHRoaXMuY2hlY2tMaXN0SXRlbSgpLmlkLFxyXG4gICAgICAgICAgICBsaXN0RXZhbHVhdGlvbklkOiB0aGlzLmFzc2lnbmVlKCkuaWQsXHJcbiAgICAgICAgICAgIG1vdmluZ0VsZW1lbnRJZCxcclxuICAgICAgICAgICAgdGFyZ2V0SXRlbUlkLFxyXG4gICAgICAgICAgICBwb2ludGVyXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5ub2RlQ2hlY2tMaXN0QXBpU2VydmljZS51cGRhdGVOb2RlQ2hlY2tMaXN0SXRlbVN3aXRjaENvbnRlbnQocmVxdWVzdEJvZHkpLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICAgIGVycm9yOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1vdmVJdGVtSW5BcnJheSh0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5jb250cm9scywgaW5kZXgsIHByZXZJbmRleCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uQWRkRXZhbHVhdGlvbkNyaXRlcmlhSXRlbSgpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBldmFsdWF0aW9uSXRlbUNvbnRyb2wgPSB0aGlzLmNyZWF0ZUV2YWx1YXRpb25Gb3JtR3JvdXAoKTtcclxuXHJcbiAgICAgICAgdGhpcy5pc0FkZEJ1dHRvbkRpc2FibGVkLnNldCh0cnVlKTtcclxuICAgICAgICB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5wdXNoKGV2YWx1YXRpb25JdGVtQ29udHJvbCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uU2F2ZUV2YWx1YXRpb25Dcml0ZXJpYShncm91cDogQ3VpRXZhbHVhdGlvbkNyaXRlcmlhR3JvdXApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBpc05ldyA9IGdyb3VwLmlzTmV3LnZhbHVlO1xyXG5cclxuICAgICAgICBpZiAoaXNOZXcpIHtcclxuICAgICAgICAgICAgdGhpcy5hZGRFdmFsdWF0aW9uQ3JpdGVyaWEoZ3JvdXApO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy51cGRhdGVFdmFsdWF0aW9uQ3JpdGVyaWEoZ3JvdXApO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvbkNhbmNlbE5ld0V2YWx1YXRpb25Dcml0ZXJpYSgpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBsYXN0SW5kZXggPSB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5sZW5ndGggLSAxO1xyXG5cclxuICAgICAgICB0aGlzLmlzQWRkQnV0dG9uRGlzYWJsZWQuc2V0KGZhbHNlKTtcclxuICAgICAgICB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5yZW1vdmVBdChsYXN0SW5kZXgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvcGVuTW9kYWxEZWxldGVFdmFsdWF0aW9uQ3JpdGVyaWEoaWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQgPSBbJ0RFTEVURV9FVkFMVUFUSU9OX0NIRUNLTElTVF9JVEVNX0NPTkZJUk1BVElPTl9URVhUJ107XHJcbiAgICAgICAgY29uc3QgY3JpdGVyaWEgPSB0aGlzLmZpbmRFeGlzdGluZ0V2YWx1YXRpb25Dcml0ZXJpYShpZCk7XHJcblxyXG4gICAgICAgIGlmICghY3JpdGVyaWE/LmlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubG9hZGluZ0lkcy51cGRhdGUoKGlkcykgPT4gKHsgLi4uaWRzLCBbY3JpdGVyaWEuaWRdOiB0cnVlIH0pKTtcclxuICAgICAgICB0aGlzLmN1aURpYWxvZ1NlcnZpY2VcclxuICAgICAgICAgICAgLm9wZW4oQ3VpRGVsZXRlTW9kYWxDb21wb25lbnQsIHtcclxuICAgICAgICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ0RFTEVURV9FVkFMVUFUSU9OX0NIRUNLTElTVF9JVEVNJyxcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50LFxyXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZTogKCkgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ub2RlQ2hlY2tMaXN0QXBpU2VydmljZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlbGV0ZUV2YWx1YXRpb25Dcml0ZXJpYUl0ZW0odGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsIHRoaXMuYXNzaWduZWUoKS5pZCwgY3JpdGVyaWEuaWQpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKGNoZWNrTGlzdEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5jb250cm9scy5maW5kSW5kZXgoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29udHJvbCkgPT4gY29udHJvbC52YWx1ZS5pZCA9PT0gaWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnVwZGF0ZUNoZWNrTGlzdEl0ZW0oY2hlY2tMaXN0SXRlbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LnJlbW92ZUF0KGluZGV4KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihudWxsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY29tcGxldGVFdmFsdWF0aW9uQ3JpdGVyaWFEZWxldGlvbihjcml0ZXJpYSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBjb21wbGV0ZUV2YWx1YXRpb25Dcml0ZXJpYURlbGV0aW9uKGNyaXRlcmlhOiBOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkNyaXRlcmlhKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nSWRzLnVwZGF0ZSgoaWRzKSA9PiB7XHJcbiAgICAgICAgICAgIGRlbGV0ZSBpZHNbY3JpdGVyaWEuaWRdO1xyXG5cclxuICAgICAgICAgICAgcmV0dXJuIHsgLi4uaWRzIH07XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvbkNoZWNrTGlzdEFjdGlvbkNoYW5nZWQoYWN0aW9uSWQ6IHN0cmluZywgYWN0aW9uQ29udGVudDogTm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50QWN0aW9uKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgcmVxdWVzdERhdGEgPSB7XHJcbiAgICAgICAgICAgIG5vZGVDaGVja0xpc3RJZDogdGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsXHJcbiAgICAgICAgICAgIGFzc2lnbmVlQWN0aW9uVHlwZTogJ0FTU0lHTicsXHJcbiAgICAgICAgICAgIGFjdGlvbklkLFxyXG4gICAgICAgICAgICBjb250ZW50SWQ6IGFjdGlvbkNvbnRlbnQuaWQsXHJcbiAgICAgICAgICAgIGlzRW5hYmxlOiBhY3Rpb25Db250ZW50LmlzRW5hYmxlLFxyXG4gICAgICAgICAgICBpc1JlcXVpcmVkOiBhY3Rpb25Db250ZW50LmlzUmVxdWlyZWRcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLm5vZGVDaGVja0xpc3RBcGlTZXJ2aWNlLnVwZGF0ZU5vZGVDaGVja0xpc3RJdGVtQWN0aW9uQ29udGVudChyZXF1ZXN0RGF0YSkuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnVwZGF0ZUNoZWNrTGlzdEl0ZW0oY2hlY2tMaXN0SXRlbSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuaW5pdEV2YWx1YXRpb25Gb3JtVmFsdWVzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0RXZhbHVhdGlvbkZvcm1WYWx1ZXMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkuY2xlYXIoKTtcclxuICAgICAgICB0aGlzLnBob3RvRm9ybUdyb3VwLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBpc0VuYWJsZTogdGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5pc0VuYWJsZSxcclxuICAgICAgICAgICAgaXNSZXF1aXJlZDogdGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5pc1JlcXVpcmVkXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5jb21tZW50Rm9ybUdyb3VwLnBhdGNoVmFsdWUoe1xyXG4gICAgICAgICAgICBpc0VuYWJsZTogdGhpcy50ZXh0QXJlYUFjdGlvbigpLmlzRW5hYmxlLFxyXG4gICAgICAgICAgICBpc1JlcXVpcmVkOiB0aGlzLnRleHRBcmVhQWN0aW9uKCkuaXNSZXF1aXJlZFxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5pc0VuYWJsZSkge1xyXG4gICAgICAgICAgICB0aGlzLnBob3RvRm9ybUdyb3VwLmNvbnRyb2xzLmlzUmVxdWlyZWQuZW5hYmxlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy50ZXh0QXJlYUFjdGlvbigpLmlzRW5hYmxlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29tbWVudEZvcm1Hcm91cC5jb250cm9scy5pc1JlcXVpcmVkLmVuYWJsZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5pbml0QWN0aW9uRm9ybVNlZ21lbnRzU3Vic2NyaXB0aW9ucygpO1xyXG5cclxuICAgICAgICB0aGlzLmFzc2lnbmVlKCkuYWNjZXB0YW5jZUNyaXRlcmlhRXZhbHVhdGlvbnMuZm9yRWFjaCgoZXZhbHVhdGlvbkNyaXRlcmlhOiBOb2RlQ2hlY2tMaXN0RXZhbHVhdGlvbkNyaXRlcmlhKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGV2YWx1YXRpb25JdGVtQ29udHJvbCA9IHRoaXMuY3JlYXRlRXZhbHVhdGlvbkZvcm1Hcm91cCh7XHJcbiAgICAgICAgICAgICAgICBpc05ldzogZmFsc2UsXHJcbiAgICAgICAgICAgICAgICBjcml0ZXJpYTogZXZhbHVhdGlvbkNyaXRlcmlhLmNyaXRlcmlhLFxyXG4gICAgICAgICAgICAgICAgZXZhbHVhdGlvbjogZXZhbHVhdGlvbkNyaXRlcmlhLmV2YWx1YXRpb24sXHJcbiAgICAgICAgICAgICAgICBpZDogZXZhbHVhdGlvbkNyaXRlcmlhLmlkXHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkucHVzaChldmFsdWF0aW9uSXRlbUNvbnRyb2wpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdEFjdGlvbkZvcm1TZWdtZW50c1N1YnNjcmlwdGlvbnMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pbml0UGhvdG9Hcm91cFN1YnNjcmlwdGlvbigpO1xyXG4gICAgICAgIHRoaXMuaW5pdENvbW1lbnRHcm91cFN1YnNjcmlwdGlvbigpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdFBob3RvR3JvdXBTdWJzY3JpcHRpb24oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5waG90b0Zvcm1Hcm91cC52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5pc0F2YWlsYWJsZU9ic2VydmVyKSkuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXZhbHVlLmlzRW5hYmxlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBob3RvRm9ybUdyb3VwLmdldCgnaXNSZXF1aXJlZCcpPy5zZXRWYWx1ZShmYWxzZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5waG90b0Zvcm1Hcm91cC5nZXQoJ2lzUmVxdWlyZWQnKT8uZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hlY2tMaXN0QWN0aW9uQ2hhbmdlZCh0aGlzLmFzc2lnbmVlKCkuaWQsIHtcclxuICAgICAgICAgICAgICAgICAgICBpZDogdGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5pZCxcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50QWN0aW9uVHlwZTogdGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5jb250ZW50QWN0aW9uVHlwZSxcclxuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnBob3RvRm9ybUdyb3VwLmdldFJhd1ZhbHVlKClcclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5waG90b0Zvcm1Hcm91cC5nZXQoJ2lzUmVxdWlyZWQnKT8uZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgdGhpcy5vbkNoZWNrTGlzdEFjdGlvbkNoYW5nZWQodGhpcy5hc3NpZ25lZSgpLmlkLCB7XHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5hdHRhY2htZW50UGhvdG9BY3Rpb24oKS5pZCxcclxuICAgICAgICAgICAgICAgIGNvbnRlbnRBY3Rpb25UeXBlOiB0aGlzLmF0dGFjaG1lbnRQaG90b0FjdGlvbigpLmNvbnRlbnRBY3Rpb25UeXBlLFxyXG4gICAgICAgICAgICAgICAgLi4udGhpcy5waG90b0Zvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaW5pdENvbW1lbnRHcm91cFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNvbW1lbnRGb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuaXNBdmFpbGFibGVPYnNlcnZlcikpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF2YWx1ZS5pc0VuYWJsZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb21tZW50Rm9ybUdyb3VwLmdldCgnaXNSZXF1aXJlZCcpPy5zZXRWYWx1ZShmYWxzZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb21tZW50Rm9ybUdyb3VwLmdldCgnaXNSZXF1aXJlZCcpPy5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgIHRoaXMub25DaGVja0xpc3RBY3Rpb25DaGFuZ2VkKHRoaXMuYXNzaWduZWUoKS5pZCwge1xyXG4gICAgICAgICAgICAgICAgICAgIGlkOiB0aGlzLnRleHRBcmVhQWN0aW9uKCkuaWQsXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudEFjdGlvblR5cGU6IHRoaXMudGV4dEFyZWFBY3Rpb24oKS5jb250ZW50QWN0aW9uVHlwZSxcclxuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmNvbW1lbnRGb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLmNvbW1lbnRGb3JtR3JvdXAuZ2V0KCdpc1JlcXVpcmVkJyk/LmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGVja0xpc3RBY3Rpb25DaGFuZ2VkKHRoaXMuYXNzaWduZWUoKS5pZCwge1xyXG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMudGV4dEFyZWFBY3Rpb24oKS5pZCxcclxuICAgICAgICAgICAgICAgIGNvbnRlbnRBY3Rpb25UeXBlOiB0aGlzLnRleHRBcmVhQWN0aW9uKCkuY29udGVudEFjdGlvblR5cGUsXHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLmNvbW1lbnRGb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHVwZGF0ZUV2YWx1YXRpb25Dcml0ZXJpYShncm91cDogQ3VpRXZhbHVhdGlvbkNyaXRlcmlhR3JvdXApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBldmFsdWF0aW9uID0gZ3JvdXAuZXZhbHVhdGlvbi52YWx1ZTtcclxuICAgICAgICBjb25zdCBjcml0ZXJpYSA9IGdyb3VwLmNyaXRlcmlhLnZhbHVlO1xyXG4gICAgICAgIGNvbnN0IGlkID0gZ3JvdXAuaWQudmFsdWU7XHJcblxyXG4gICAgICAgIHRoaXMubm9kZUNoZWNrTGlzdEFwaVNlcnZpY2VcclxuICAgICAgICAgICAgLnVwZGF0ZUV2YWx1YXRpb25Dcml0ZXJpYUl0ZW0odGhpcy5jaGVja0xpc3RJdGVtKCkuaWQsIHRoaXMuYXNzaWduZWUoKS5pZCwgaWQsIGNyaXRlcmlhLCBldmFsdWF0aW9uKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS51cGRhdGVDaGVja0xpc3RJdGVtKGNoZWNrTGlzdEl0ZW0pKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFkZEV2YWx1YXRpb25Dcml0ZXJpYShncm91cDogQ3VpRXZhbHVhdGlvbkNyaXRlcmlhR3JvdXApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBldmFsdWF0aW9uID0gZ3JvdXAuZXZhbHVhdGlvbi52YWx1ZTtcclxuICAgICAgICBjb25zdCBjcml0ZXJpYSA9IGdyb3VwLmNyaXRlcmlhLnZhbHVlO1xyXG5cclxuICAgICAgICB0aGlzLm5vZGVDaGVja0xpc3RBcGlTZXJ2aWNlXHJcbiAgICAgICAgICAgIC5hZGRFdmFsdWF0aW9uQ3JpdGVyaWFJdGVtKHRoaXMuY2hlY2tMaXN0SXRlbSgpLmlkLCB0aGlzLmFzc2lnbmVlKCkuaWQsIGNyaXRlcmlhLCBldmFsdWF0aW9uKVxyXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLmlzQWRkQnV0dG9uRGlzYWJsZWQuc2V0KGZhbHNlKSkpXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNoZWNrTGlzdEl0ZW0pID0+IHRoaXMudXBkYXRlQ3JlYXRlZEV2YWx1YXRpb25Dcml0ZXJpYShjaGVja0xpc3RJdGVtKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB1cGRhdGVDcmVhdGVkRXZhbHVhdGlvbkNyaXRlcmlhKFxyXG4gICAgICAgIGNoZWNrTGlzdEl0ZW06IE5vZGVDaGVja0xpc3RJdGVtPE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uSXRlbUNvbnRlbnQ+XHJcbiAgICApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBhY2NlcHRhbmNlQ3JpdGVyaWFFdmFsdWF0aW9ucyA9IGNoZWNrTGlzdEl0ZW0uY29udGVudC5hY3Rpb25zQXNzaWduZWUhWzBdLmFjY2VwdGFuY2VDcml0ZXJpYUV2YWx1YXRpb25zO1xyXG4gICAgICAgIGNvbnN0IGlkID0gYWNjZXB0YW5jZUNyaXRlcmlhRXZhbHVhdGlvbnMuYXQoLTEpPy5pZDtcclxuICAgICAgICBjb25zdCBjb250cm9sID0gdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkuY29udHJvbHMuYXQoLTEpPy5nZXRSYXdWYWx1ZSgpO1xyXG4gICAgICAgIGNvbnN0IGNyZWF0ZWRDb250cm9sID0gdGhpcy5jcmVhdGVFdmFsdWF0aW9uRm9ybUdyb3VwKHsgLi4uY29udHJvbCwgaWQsIGlzTmV3OiBmYWxzZSB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5ldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXkucmVtb3ZlQXQoLTEpO1xyXG4gICAgICAgIHRoaXMuZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5LnB1c2goY3JlYXRlZENvbnRyb2wpO1xyXG4gICAgICAgIHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnVwZGF0ZUNoZWNrTGlzdEl0ZW0oY2hlY2tMaXN0SXRlbSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjcmVhdGVFdmFsdWF0aW9uRm9ybUdyb3VwKHtcclxuICAgICAgICBpZCxcclxuICAgICAgICBjcml0ZXJpYSA9ICcnLFxyXG4gICAgICAgIGV2YWx1YXRpb24gPSBudWxsLFxyXG4gICAgICAgIGlzTmV3ID0gdHJ1ZVxyXG4gICAgfTogQ3VpRXZhbHVhdGlvbkNyaXRlcmlhRWxlbWVudERhdGEgPSB7fSk6IEZvcm1Hcm91cCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubm9uTnVsbGFibGVGb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgICAgICAgIGlkOiBbaWRdLFxyXG4gICAgICAgICAgICBjcml0ZXJpYTogW2NyaXRlcmlhLCBjdWlDcmVhdGVEZWZhdWx0VmFsaWRhdG9ycyh7IG1heExlbmd0aDogNTAwIH0pXSxcclxuICAgICAgICAgICAgZXZhbHVhdGlvbjogW2V2YWx1YXRpb24sIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgICAgICAgIGlzTmV3OiBbaXNOZXddXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBmaW5kRXhpc3RpbmdFdmFsdWF0aW9uQ3JpdGVyaWEoaWQ6IHN0cmluZyk6IEN1aU51bGxhYmxlPE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uQ3JpdGVyaWE+IHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICB0aGlzLmFzc2lnbmVlKCkuYWNjZXB0YW5jZUNyaXRlcmlhRXZhbHVhdGlvbnMuZmluZChcclxuICAgICAgICAgICAgICAgIChldmFsdWF0aW9uQ3JpdGVyaWE6IE5vZGVDaGVja0xpc3RFdmFsdWF0aW9uQ3JpdGVyaWEpID0+IGV2YWx1YXRpb25Dcml0ZXJpYS5pZCA9PT0gaWRcclxuICAgICAgICAgICAgKSB8fCBudWxsXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIG1vdmVJdGVtSW5BcnJheTxUPihhcnJheTogVFtdLCBmcm9tSW5kZXg6IG51bWJlciwgdG9JbmRleDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGZyb21JbmRleCA9PT0gdG9JbmRleCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBpdGVtID0gYXJyYXlbZnJvbUluZGV4XTtcclxuXHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKGZyb21JbmRleCwgMSk7XHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKHRvSW5kZXgsIDAsIGl0ZW0pO1xyXG4gICAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKnRyYW5zbG9jbz1cImxldCB0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYWN0aW9uXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbl9faW5wdXRzLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbl9faW5wdXRcIlxyXG4gICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJwaG90b0Zvcm1Hcm91cFwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjdWlMYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3VpQ2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiaXNFbmFibGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgdCgnUEhPVE8nKSB9fVxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjdWlMYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3VpVG9nZ2xlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgdCgnUkVRVUlSRUQnKSB9fVxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uX19pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICBbZm9ybUdyb3VwXT1cImNvbW1lbnRGb3JtR3JvdXBcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY3VpTGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1aUNoZWNrYm94XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzRW5hYmxlXCJcclxuICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7IHQoJ0NPTU1FTlQnKSB9fVxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjdWlMYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3VpVG9nZ2xlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImlzUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgdCgnUkVRVUlSRUQnKSB9fVxyXG4gICAgICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbl9fY3JpdGVyaWEtdGl0bGUtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbFxyXG4gICAgICAgICAgICAgICAgY3VpTGFiZWxcclxuICAgICAgICAgICAgICAgIFtpc1JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgZm9yPVwiZXZhbHVhdGlvbkNyaXRlcmlhXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgdCgnRVZBTFVBVElPTl9DUklURVJJQScpIH19XHJcbiAgICAgICAgICAgIDwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxwIGNsYXNzPVwiYWN0aW9uX19jcml0ZXJpYS1zdWJ0aXRsZVwiPnt7IHQoJ0VBQ0hfRVZBTFVBVElPTl9DUklURVJJT05fU0hPVUxEX0JFJykgfX08L3A+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPHVsXHJcbiAgICAgICAgICAgIGN1aURyYWdMaXN0XHJcbiAgICAgICAgICAgIGNsYXNzPVwibGlzdFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgICBAZm9yIChjb250cm9sIG9mIGV2YWx1YXRpb25Dcml0ZXJpYUZvcm1BcnJheS5jb250cm9sczsgdHJhY2sgY29udHJvbC5jb250cm9sc1snaWQnXTsgbGV0IGluZGV4ID0gJGluZGV4KSB7XHJcbiAgICAgICAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgICAgICAgICBjdWlDaGVja2xpc3RCbG9ja0xpc3RJdGVtRXZhbHVhdGlvbkNyaXRlcmlhXHJcbiAgICAgICAgICAgICAgICAgICAgW2luZGV4XT1cImluZGV4ICsgMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgY3VpRHJhZ0Ryb3BcclxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNBZGRCdXR0b25EaXNhYmxlZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAoZWxlbWVudERyYWdnZWQpPVwib25Ecm9wKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjcml0ZXJpYUdyb3VwXT1cImNvbnRyb2xcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtldmFsdWF0aW9uQ3JpdGVyaWFGb3JtQXJyYXldPVwiZXZhbHVhdGlvbkNyaXRlcmlhRm9ybUFycmF5XCJcclxuICAgICAgICAgICAgICAgICAgICBbbG9hZGluZ0lkc109XCJsb2FkaW5nSWRzKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIChzYXZlQ2xpY2tlZCk9XCJvblNhdmVFdmFsdWF0aW9uQ3JpdGVyaWEoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNhbmNlbENsaWNrZWQpPVwib25DYW5jZWxOZXdFdmFsdWF0aW9uQ3JpdGVyaWEoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGRlbGV0ZUNsaWNrZWQpPVwib3Blbk1vZGFsRGVsZXRlRXZhbHVhdGlvbkNyaXRlcmlhKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgPjwvbGk+XHJcbiAgICAgICAgICAgIH0gQGVtcHR5IHtcclxuICAgICAgICAgICAgICAgIDxsaVxyXG4gICAgICAgICAgICAgICAgICAgIGN1aUVtcHR5U3RhdGVcclxuICAgICAgICAgICAgICAgICAgICBbc3VidGl0bGVdPVwidCgnTk9fRVZBTFVBVElPTl9DUklURVJJQV9UT19WSUVXJylcIlxyXG4gICAgICAgICAgICAgICAgPjwvbGk+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICA8L3VsPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25fX2Zvb3RlclwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cclxuICAgICAgICAgICAgICAgIHNpemU9XCJ4eHNcIlxyXG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImZsYXRcIlxyXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25QbHVzXCJcclxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImlzQWRkQnV0dG9uRGlzYWJsZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25BZGRFdmFsdWF0aW9uQ3JpdGVyaWFJdGVtKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7eyB0KCdORVdfT1BUSU9OJykgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2hlY2tsaXN0LWJsb2NrL2NvbXBvbmVudHMvY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tZXZhbHVhdGlvbi5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgdHlwZSB7IEN1aU51bGxhYmxlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpRXZhbHVhdGlvbkNyaXRlcmlhR3JvdXAge1xyXG4gICAgaWQ6IEZvcm1Db250cm9sPHN0cmluZz47XHJcbiAgICBjcml0ZXJpYTogRm9ybUNvbnRyb2w8c3RyaW5nPjtcclxuICAgIGV2YWx1YXRpb246IEZvcm1Db250cm9sPG51bWJlcj47XHJcbiAgICBpc05ldzogRm9ybUNvbnRyb2w8Ym9vbGVhbj47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3VpRXZhbHVhdGlvbkNyaXRlcmlhRWxlbWVudERhdGEge1xyXG4gICAgaWQ/OiBzdHJpbmc7XHJcbiAgICBjcml0ZXJpYT86IHN0cmluZztcclxuICAgIGV2YWx1YXRpb24/OiBDdWlOdWxsYWJsZTxudW1iZXI+O1xyXG4gICAgaXNOZXc/OiBib29sZWFuO1xyXG59XHJcbiJdfQ==
|
package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { CuiCheckListBlockListItemEvaluationComponent } from './checklist-block-list-item-evaluation.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2hlY2tsaXN0LWJsb2NrL2NvbXBvbmVudHMvY2hlY2tsaXN0LWJsb2NrLWxpc3QtaXRlbS1ldmFsdWF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgQ3VpQ2hlY2tMaXN0QmxvY2tMaXN0SXRlbUV2YWx1YXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NoZWNrbGlzdC1ibG9jay1saXN0LWl0ZW0tZXZhbHVhdGlvbi5jb21wb25lbnQnO1xyXG5leHBvcnQgdHlwZSB7IEN1aUV2YWx1YXRpb25Dcml0ZXJpYUdyb3VwIH0gZnJvbSAnLi9jaGVja2xpc3QtYmxvY2stbGlzdC1pdGVtLWV2YWx1YXRpb24ub3B0aW9ucyc7XHJcbiJdfQ==
|