@cuby-ui/core 0.0.562 → 0.0.564
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 +811 -811
- package/components/filter-bar/components/add-filter-button/add-filter-button.component.d.ts +2 -1
- package/components/filter-bar/components/date-filter/date-filter.component.d.ts +4 -3
- package/components/filter-bar/components/multiselect-filter/multiselect-filter.component.d.ts +3 -2
- package/components/filter-bar/components/range-filter/range-filter.component.d.ts +3 -2
- package/components/filter-bar/components/select-filter/select-filter.component.d.ts +3 -2
- package/components/filter-bar/components/string-filter/string-filter.component.d.ts +3 -2
- package/components/filter-bar/filter-bar.component.d.ts +3 -2
- package/components/filter-bar/filter-bar.interfaces.d.ts +10 -0
- package/components/filter-bar/index.d.ts +2 -1
- package/components/notification/notification.component.d.ts +2 -2
- package/directives/tooltip/tooltip.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/date-range-calendar/date-range-calendar.component.mjs +3 -3
- package/esm2022/components/date-range-calendar/date-range-calendar.interfaces.mjs +1 -1
- package/esm2022/components/date-range-calendar/date-range-calendar.module.mjs +1 -1
- package/esm2022/components/date-range-calendar/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/filter-bar/components/add-filter-button/add-filter-button.component.mjs +4 -4
- package/esm2022/components/filter-bar/components/date-filter/date-filter.component.mjs +4 -3
- package/esm2022/components/filter-bar/components/filter-remove-button/filter-remove-button.component.mjs +3 -4
- package/esm2022/components/filter-bar/components/index.mjs +1 -1
- package/esm2022/components/filter-bar/components/multiselect-filter/multiselect-filter.component.mjs +5 -6
- package/esm2022/components/filter-bar/components/range-filter/range-filter.component.mjs +5 -6
- package/esm2022/components/filter-bar/components/select-filter/select-filter.component.mjs +5 -6
- package/esm2022/components/filter-bar/components/string-filter/string-filter.component.mjs +5 -6
- package/esm2022/components/filter-bar/filter-bar.component.mjs +5 -3
- package/esm2022/components/filter-bar/filter-bar.interfaces.mjs +10 -2
- package/esm2022/components/filter-bar/filter-bar.module.mjs +1 -1
- package/esm2022/components/filter-bar/filter-bar.utils.mjs +1 -1
- package/esm2022/components/filter-bar/index.mjs +2 -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/skeleton/constants/fade.const.mjs +1 -1
- package/esm2022/directives/skeleton/constants/index.mjs +1 -1
- package/esm2022/directives/skeleton/constants/max-placeholder-length-limiter.const.mjs +1 -1
- package/esm2022/directives/skeleton/constants/min-placeholder-length-limiter.const.mjs +1 -1
- package/esm2022/directives/skeleton/index.mjs +1 -1
- package/esm2022/directives/skeleton/skeleton.directive.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 +25 -9
- package/esm2022/editor/interfaces/angular-element.mjs +1 -1
- package/esm2022/editor/interfaces/chunk-descriptor.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/services/editor.service.mjs +3 -3
- package/esm2022/editor/tools/combined-text-block.tool.mjs +2 -2
- package/esm2022/editor/tools/role-marker.tool.mjs +3 -3
- package/esm2022/editor/tools/tool-marker.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/merge-small-chunks.mjs +1 -1
- package/esm2022/editor/utils/open-file-in-browser.mjs +1 -1
- package/esm2022/editor/utils/preset-config-token.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/i18n/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/sse-stream-reader.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/error-notification-service.mjs +1 -1
- package/esm2022/interfaces/error-stategy.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/operators/handle-error.mjs +1 -1
- package/esm2022/operators/index.mjs +1 -1
- package/esm2022/pipes/index.mjs +1 -1
- package/esm2022/pipes/time.pipe.mjs +1 -1
- package/esm2022/providers/auth.options.mjs +1 -1
- package/esm2022/providers/auth.provider.mjs +1 -1
- package/esm2022/providers/error-handler.options.mjs +1 -1
- package/esm2022/providers/error-handler.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/error-resolver-factory.service.mjs +1 -1
- package/esm2022/services/global-handler-error.service.mjs +1 -1
- package/esm2022/services/hybrid-storage.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/error-notification-service.mjs +1 -1
- package/esm2022/tokens/error-translation-prefix.mjs +1 -1
- package/esm2022/tokens/index.mjs +1 -1
- package/esm2022/tokens/reduced-motion.mjs +1 -1
- package/esm2022/tokens/should-handle-error.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/should-handle-error.type.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/loader.options.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/button-change-theme/button-change-theme.component.mjs +3 -3
- package/esm2022/widgets/ui/button-change-theme/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/components/circle-loader/circle-loader.component.mjs +3 -3
- package/esm2022/widgets/ui/loader/components/circle-loader/index.mjs +1 -1
- package/esm2022/widgets/ui/loader/components/index.mjs +1 -1
- package/esm2022/widgets/ui/loader/components/linear-loader/index.mjs +1 -1
- package/esm2022/widgets/ui/loader/components/linear-loader/linear-loader.component.mjs +3 -3
- package/esm2022/widgets/ui/loader/components/pulse-loader/index.mjs +1 -1
- package/esm2022/widgets/ui/loader/components/pulse-loader/pulse-loader.component.mjs +3 -3
- package/esm2022/widgets/ui/loader/components/stated-loader/index.mjs +1 -1
- package/esm2022/widgets/ui/loader/components/stated-loader/stated-loader.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 +330 -300
- 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/providers/auth.options.d.ts +1 -1
- 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 +10 -10
- package/styles/mixins/headings.scss +115 -115
- package/styles/mixins/inputs.scss +101 -101
- 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 +608 -608
- package/styles/variables/colors.scss +396 -396
- package/styles/variables/fonts.scss +2 -2
- package/widgets/ui/user-action-context-menu/activity-item/activity-item.component.d.ts +1 -1
package/esm2022/components/filter-bar/components/multiselect-filter/multiselect-filter.component.mjs
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, computed, input, output } from '@angular/core';
|
|
2
|
-
import { TranslocoPipe } from '@jsverse/transloco';
|
|
3
2
|
import { CuiCheckboxModule } from '../../../../components/checkbox';
|
|
4
3
|
import { CuiDropdownDirective } from '../../../../components/dropdown';
|
|
5
4
|
import { CuiSvgModule } from '../../../../components/svg';
|
|
@@ -11,6 +10,7 @@ import * as i2 from "../../../svg/svg.component";
|
|
|
11
10
|
export class CuiMultiSelectFilterComponent {
|
|
12
11
|
constructor() {
|
|
13
12
|
this.filter = input.required();
|
|
13
|
+
this.translations = input.required();
|
|
14
14
|
this.removed = output();
|
|
15
15
|
this.changed = output();
|
|
16
16
|
this.currentValues = computed(() => {
|
|
@@ -54,7 +54,7 @@ export class CuiMultiSelectFilterComponent {
|
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
56
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiMultiSelectFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
57
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiMultiSelectFilterComponent, isStandalone: true, selector: "cui-multiselect-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\n [label]=\"filter().field.label
|
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiMultiSelectFilterComponent, isStandalone: true, selector: "cui-multiselect-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null }, translations: { classPropertyName: "translations", publicName: "translations", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"multiselect-filter__trigger\"\r\n [class.multiselect-filter__trigger--active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"multiselect-filter__value\"\r\n [cuiTooltip]=\"currentLabels()\"\r\n >\r\n {{ currentLabels() }}\r\n </span>\r\n } @else {\r\n <span class=\"multiselect-filter__placeholder\">{{ translations().selectValues }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"multiselect-filter__dropdown\">\r\n @for (opt of options(); track opt.value) {\r\n <label class=\"multiselect-filter__option\">\r\n <input\r\n type=\"checkbox\"\r\n cuiCheckbox\r\n [checked]=\"isOptionSelected(opt.value)\"\r\n (change)=\"toggleOption(opt.value)\"\r\n />\r\n <span>{{ opt.label }}</span>\r\n </label>\r\n }\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.multiselect-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.multiselect-filter__trigger:hover{background:var(--cui-base-200)}.multiselect-filter__trigger:focus{outline:none}.multiselect-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.multiselect-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.multiselect-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multiselect-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.multiselect-filter__dropdown{display:flex;flex-direction:column;gap:0;padding-top:4px;padding-bottom:4px;min-width:165px;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.multiselect-filter__option{display:flex;flex-direction:row;gap:8px;align-items:center;justify-content:flex-start;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.multiselect-filter__option:hover{background:var(--cui-base-50)}.multiselect-filter__option span{font-weight:400;font-size:13px;line-height:16px;color:var(--cui-base-900)}\n"], dependencies: [{ kind: "ngmodule", type: CuiCheckboxModule }, { kind: "component", type: i1.CuiCheckboxComponent, selector: "input[type=\"checkbox\"][cuiCheckbox]" }, { kind: "directive", type: CuiDropdownDirective, selector: "[cuiDropdown]", inputs: ["cuiDropdown", "orientation"], outputs: ["isOpened"], exportAs: ["cuiDropdown"] }, { kind: "component", type: CuiFilterRemoveButtonComponent, selector: "cui-filter-remove-button", inputs: ["label"], outputs: ["removed"] }, { kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i2.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "directive", type: CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
58
58
|
}
|
|
59
59
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiMultiSelectFilterComponent, decorators: [{
|
|
60
60
|
type: Component,
|
|
@@ -63,8 +63,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
63
63
|
CuiDropdownDirective,
|
|
64
64
|
CuiFilterRemoveButtonComponent,
|
|
65
65
|
CuiSvgModule,
|
|
66
|
-
CuiTooltipDirective
|
|
67
|
-
|
|
68
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\n [label]=\"filter().field.label | transloco\"\n (removed)=\"onRemove()\"\n/>\n\n<button\n type=\"button\"\n class=\"multiselect-filter__trigger\"\n [class.multiselect-filter__trigger--active]=\"hasValue()\"\n [cuiDropdown]=\"dropdownTpl\"\n>\n @if (hasValue()) {\n <span\n class=\"multiselect-filter__value\"\n [cuiTooltip]=\"currentLabels()\"\n >\n {{ currentLabels() }}\n </span>\n } @else {\n <span class=\"multiselect-filter__placeholder\">{{ 'SELECT_VALUES' | transloco }}</span>\n }\n <cui-svg icon=\"cuiIconChevronDown\" />\n</button>\n\n<ng-template #dropdownTpl>\n <div class=\"multiselect-filter__dropdown\">\n @for (opt of options(); track opt.value) {\n <label class=\"multiselect-filter__option\">\n <input\n type=\"checkbox\"\n cuiCheckbox\n [checked]=\"isOptionSelected(opt.value)\"\n (change)=\"toggleOption(opt.value)\"\n />\n <span>{{ opt.label }}</span>\n </label>\n }\n </div>\n</ng-template>", styles: [":host{display:inline-flex}.multiselect-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.multiselect-filter__trigger:hover{background:var(--cui-base-200)}.multiselect-filter__trigger:focus{outline:none}.multiselect-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.multiselect-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.multiselect-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multiselect-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.multiselect-filter__dropdown{display:flex;flex-direction:column;gap:0;padding-top:4px;padding-bottom:4px;min-width:165px;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.multiselect-filter__option{display:flex;flex-direction:row;gap:8px;align-items:center;justify-content:flex-start;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.multiselect-filter__option:hover{background:var(--cui-base-50)}.multiselect-filter__option span{font-weight:400;font-size:13px;line-height:16px;color:var(--cui-base-900)}\n"] }]
|
|
66
|
+
CuiTooltipDirective
|
|
67
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"multiselect-filter__trigger\"\r\n [class.multiselect-filter__trigger--active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"multiselect-filter__value\"\r\n [cuiTooltip]=\"currentLabels()\"\r\n >\r\n {{ currentLabels() }}\r\n </span>\r\n } @else {\r\n <span class=\"multiselect-filter__placeholder\">{{ translations().selectValues }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"multiselect-filter__dropdown\">\r\n @for (opt of options(); track opt.value) {\r\n <label class=\"multiselect-filter__option\">\r\n <input\r\n type=\"checkbox\"\r\n cuiCheckbox\r\n [checked]=\"isOptionSelected(opt.value)\"\r\n (change)=\"toggleOption(opt.value)\"\r\n />\r\n <span>{{ opt.label }}</span>\r\n </label>\r\n }\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.multiselect-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.multiselect-filter__trigger:hover{background:var(--cui-base-200)}.multiselect-filter__trigger:focus{outline:none}.multiselect-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.multiselect-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.multiselect-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multiselect-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.multiselect-filter__dropdown{display:flex;flex-direction:column;gap:0;padding-top:4px;padding-bottom:4px;min-width:165px;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.multiselect-filter__option{display:flex;flex-direction:row;gap:8px;align-items:center;justify-content:flex-start;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.multiselect-filter__option:hover{background:var(--cui-base-50)}.multiselect-filter__option span{font-weight:400;font-size:13px;line-height:16px;color:var(--cui-base-900)}\n"] }]
|
|
69
68
|
}] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlzZWxlY3QtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9maWx0ZXItYmFyL2NvbXBvbmVudHMvbXVsdGlzZWxlY3QtZmlsdGVyL211bHRpc2VsZWN0LWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL211bHRpc2VsZWN0LWZpbHRlci9tdWx0aXNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7OztBQWdCeEcsTUFBTSxPQUFPLDZCQUE2QjtJQWQxQztRQWVvQixXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBbUIsQ0FBQztRQUMzQyxpQkFBWSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQTRCLENBQUM7UUFDMUQsWUFBTyxHQUFHLE1BQU0sRUFBVSxDQUFDO1FBQzNCLFlBQU8sR0FBRyxNQUFNLEVBQW1CLENBQUM7UUFFakMsa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzdDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FB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cUJBQ3RCLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEN1aUNoZWNrYm94TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9jaGVja2JveCc7XHJcbmltcG9ydCB7IEN1aURyb3Bkb3duRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9kcm9wZG93bic7XHJcbmltcG9ydCB7IEN1aVN2Z01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvc3ZnJztcclxuaW1wb3J0IHsgQ3VpVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xyXG5pbXBvcnQgdHlwZSB7IEN1aUFjdGl2ZUZpbHRlciwgQ3VpRmlsdGVyQmFyVHJhbnNsYXRpb25zLCBDdWlNdWx0aVNlbGVjdEZpbHRlckZpZWxkIH0gZnJvbSAnLi4vLi4vZmlsdGVyLWJhci5pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ3VpRmlsdGVyUmVtb3ZlQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vZmlsdGVyLXJlbW92ZS1idXR0b24vZmlsdGVyLXJlbW92ZS1idXR0b24uY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjdWktbXVsdGlzZWxlY3QtZmlsdGVyJyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbXHJcbiAgICAgICAgQ3VpQ2hlY2tib3hNb2R1bGUsXHJcbiAgICAgICAgQ3VpRHJvcGRvd25EaXJlY3RpdmUsXHJcbiAgICAgICAgQ3VpRmlsdGVyUmVtb3ZlQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgICAgIEN1aVN2Z01vZHVsZSxcclxuICAgICAgICBDdWlUb29sdGlwRGlyZWN0aXZlXHJcbiAgICBdLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL211bHRpc2VsZWN0LWZpbHRlci50ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL211bHRpc2VsZWN0LWZpbHRlci5zdHlsZS5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ3VpTXVsdGlTZWxlY3RGaWx0ZXJDb21wb25lbnQge1xyXG4gICAgcHVibGljIHJlYWRvbmx5IGZpbHRlciA9IGlucHV0LnJlcXVpcmVkPEN1aUFjdGl2ZUZpbHRlcj4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSB0cmFuc2xhdGlvbnMgPSBpbnB1dC5yZXF1aXJlZDxDdWlGaWx0ZXJCYXJUcmFuc2xhdGlvbnM+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVtb3ZlZCA9IG91dHB1dDxzdHJpbmc+KCk7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2hhbmdlZCA9IG91dHB1dDxDdWlBY3RpdmVGaWx0ZXI+KCk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGN1cnJlbnRWYWx1ZXMgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZiA9IHRoaXMuZmlsdGVyKCk7XHJcblxyXG4gICAgICAgIHJldHVybiBmLnZhbHVlLnR5cGUgPT09ICdtdWx0aXNlbGVjdCcgPyBmLnZhbHVlLnZhbHVlcyA6IFtdO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGN1cnJlbnRMYWJlbHMgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZiA9IHRoaXMuZmlsdGVyKCk7XHJcblxyXG4gICAgICAgIGlmIChmLnZhbHVlLnR5cGUgIT09ICdtdWx0aXNlbGVjdCcpIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZmllbGQgPSBmLmZpZWxkIGFzIEN1aU11bHRpU2VsZWN0RmlsdGVyRmllbGQ7XHJcblxyXG4gICAgICAgIHJldHVybiBmLnZhbHVlLnZhbHVlc1xyXG4gICAgICAgICAgICAubWFwKCh2YWwpID0+IGZpZWxkLm11bHRpU2VsZWN0T3B0aW9ucz8uZmluZCgob3B0KSA9PiBvcHQudmFsdWUgPT09IHZhbCk/LmxhYmVsID8/IHZhbClcclxuICAgICAgICAgICAgLmpvaW4oJywgJyk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGFzVmFsdWUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmN1cnJlbnRWYWx1ZXMoKS5sZW5ndGggPiAwKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmlsdGVyKCkuZmllbGQgYXMgQ3VpTXVsdGlTZWxlY3RGaWx0ZXJGaWVsZDtcclxuXHJcbiAgICAgICAgcmV0dXJuIGZpZWxkLm11bHRpU2VsZWN0T3B0aW9ucyA/PyBbXTtcclxuICAgIH0pO1xyXG5cclxuICAgIHByb3RlY3RlZCBvblJlbW92ZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnJlbW92ZWQuZW1pdCh0aGlzLmZpbHRlcigpLmlkKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgaXNPcHRpb25TZWxlY3RlZCh2YWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFZhbHVlcygpLmluY2x1ZGVzKHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgdG9nZ2xlT3B0aW9uKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcclxuXHJcbiAgICAgICAgaWYgKGYudmFsdWUudHlwZSAhPT0gJ211bHRpc2VsZWN0Jykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBjdXJyZW50VmFsdWVzID0gZi52YWx1ZS52YWx1ZXM7XHJcbiAgICAgICAgY29uc3QgbmV3VmFsdWVzID0gY3VycmVudFZhbHVlcy5pbmNsdWRlcyh2YWx1ZSlcclxuICAgICAgICAgICAgPyBjdXJyZW50VmFsdWVzLmZpbHRlcigodikgPT4gdiAhPT0gdmFsdWUpXHJcbiAgICAgICAgICAgIDogWy4uLmN1cnJlbnRWYWx1ZXMsIHZhbHVlXTtcclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoe1xyXG4gICAgICAgICAgICAuLi5mLFxyXG4gICAgICAgICAgICB2YWx1ZTogeyAuLi5mLnZhbHVlLCB2YWx1ZXM6IG5ld1ZhbHVlcyB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn0iLCI8Y3VpLWZpbHRlci1yZW1vdmUtYnV0dG9uXHJcbiAgICBbbGFiZWxdPVwiZmlsdGVyKCkuZmllbGQubGFiZWxcIlxyXG4gICAgKHJlbW92ZWQpPVwib25SZW1vdmUoKVwiXHJcbi8+XHJcblxyXG48YnV0dG9uXHJcbiAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgIGNsYXNzPVwibXVsdGlzZWxlY3QtZmlsdGVyX190cmlnZ2VyXCJcclxuICAgIFtjbGFzcy5tdWx0aXNlbGVjdC1maWx0ZXJfX3RyaWdnZXItLWFjdGl2ZV09XCJoYXNWYWx1ZSgpXCJcclxuICAgIFtjdWlEcm9wZG93bl09XCJkcm9wZG93blRwbFwiXHJcbj5cclxuICAgIEBpZiAoaGFzVmFsdWUoKSkge1xyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwibXVsdGlzZWxlY3QtZmlsdGVyX192YWx1ZVwiXHJcbiAgICAgICAgICAgIFtjdWlUb29sdGlwXT1cImN1cnJlbnRMYWJlbHMoKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgICB7eyBjdXJyZW50TGFiZWxzKCkgfX1cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICA8c3BhbiBjbGFzcz1cIm11bHRpc2VsZWN0LWZpbHRlcl9fcGxhY2Vob2xkZXJcIj57eyB0cmFuc2xhdGlvbnMoKS5zZWxlY3RWYWx1ZXMgfX08L3NwYW4+XHJcbiAgICB9XHJcbiAgICA8Y3VpLXN2ZyBpY29uPVwiY3VpSWNvbkNoZXZyb25Eb3duXCIgLz5cclxuPC9idXR0b24+XHJcblxyXG48bmctdGVtcGxhdGUgI2Ryb3Bkb3duVHBsPlxyXG4gICAgPGRpdiBjbGFzcz1cIm11bHRpc2VsZWN0LWZpbHRlcl9fZHJvcGRvd25cIj5cclxuICAgICAgICBAZm9yIChvcHQgb2Ygb3B0aW9ucygpOyB0cmFjayBvcHQudmFsdWUpIHtcclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwibXVsdGlzZWxlY3QtZmlsdGVyX19vcHRpb25cIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgICAgICAgICAgY3VpQ2hlY2tib3hcclxuICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJpc09wdGlvblNlbGVjdGVkKG9wdC52YWx1ZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidG9nZ2xlT3B0aW9uKG9wdC52YWx1ZSlcIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IG9wdC5sYWJlbCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICB9XHJcbiAgICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, computed, input, output, signal } from '@angular/core';
|
|
2
2
|
import { FormsModule } from '@angular/forms';
|
|
3
|
-
import { TranslocoPipe } from '@jsverse/transloco';
|
|
4
3
|
import { CuiButtonModule } from '../../../../components/button';
|
|
5
4
|
import { CuiDropdownDirective } from '../../../../components/dropdown';
|
|
6
5
|
import { CuiInputNumberModule } from '../../../../components/input-number';
|
|
@@ -16,6 +15,7 @@ import * as i5 from "@angular/forms";
|
|
|
16
15
|
export class CuiRangeFilterComponent {
|
|
17
16
|
constructor() {
|
|
18
17
|
this.filter = input.required();
|
|
18
|
+
this.translations = input.required();
|
|
19
19
|
this.removed = output();
|
|
20
20
|
this.changed = output();
|
|
21
21
|
this.tmpMin = signal(null);
|
|
@@ -81,7 +81,7 @@ export class CuiRangeFilterComponent {
|
|
|
81
81
|
dropdown.close();
|
|
82
82
|
}
|
|
83
83
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiRangeFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
84
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiRangeFilterComponent, isStandalone: true, selector: "cui-range-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\n [label]=\"filter().field.label
|
|
84
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiRangeFilterComponent, isStandalone: true, selector: "cui-range-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null }, translations: { classPropertyName: "translations", publicName: "translations", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"range-filter__trigger\"\r\n [class.range-filter__trigger_active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n #dropdown=\"cuiDropdown\"\r\n (isOpened)=\"onDropdownOpened($event)\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"range-filter__value\"\r\n [cuiTooltip]=\"displayValue()\"\r\n >\r\n {{ displayValue() }}\r\n </span>\r\n } @else {\r\n <span class=\"range-filter__placeholder\">{{ translations().enterValue }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"range-filter__dropdown\">\r\n <div class=\"range-filter__label\">\r\n {{ translations().filterBy }} {{ filter().field.label }}\r\n </div>\r\n <div class=\"range-filter__inputs\">\r\n <cui-input-number\r\n [ngModel]=\"tmpMin()\"\r\n (ngModelChange)=\"onTmpMinChange($event)\"\r\n [cuiTextFieldPlaceholder]=\"minPlaceholder()\"\r\n />\r\n <span class=\"range-filter__separator\">\u2013</span>\r\n <cui-input-number\r\n [ngModel]=\"tmpMax()\"\r\n (ngModelChange)=\"onTmpMaxChange($event)\"\r\n [cuiTextFieldPlaceholder]=\"maxPlaceholder()\"\r\n />\r\n </div>\r\n <div class=\"range-filter__footer\">\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"secondary\"\r\n (click)=\"dropdown.close()\"\r\n >\r\n {{ translations().cancel }}\r\n </button>\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"action-cyan\"\r\n (click)=\"applyValue(dropdown)\"\r\n >\r\n {{ translations().apply }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.range-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.range-filter__trigger:hover{background:var(--cui-base-200)}.range-filter__trigger:focus{outline:none}.range-filter__trigger_active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.range-filter__trigger_active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.range-filter__value{font-weight:500;font-size:12px;line-height:14px;max-width:200px;overflow:hidden;color:var(--cui-base-900);text-overflow:ellipsis;white-space:nowrap}.range-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.range-filter__dropdown{display:flex;flex-direction:column;gap:12px;padding:8px;width:300px;max-width:calc(100vw - 16px);overflow:hidden;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026}.range-filter__label{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-900)}.range-filter__inputs{display:flex;flex-direction:row;gap:8px;align-items:center}.range-filter__separator{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-500)}.range-filter__footer{display:flex;flex-direction:row;gap:8px;justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "directive", type: CuiDropdownDirective, selector: "[cuiDropdown]", inputs: ["cuiDropdown", "orientation"], outputs: ["isOpened"], exportAs: ["cuiDropdown"] }, { kind: "component", type: CuiFilterRemoveButtonComponent, selector: "cui-filter-remove-button", inputs: ["label"], outputs: ["removed"] }, { kind: "ngmodule", type: CuiInputNumberModule }, { kind: "component", type: i2.CuiInputNumberComponent, selector: "cui-input-number", inputs: ["precision", "min", "max"] }, { kind: "directive", type: i3.CuiTextFieldPlaceholderDirective, selector: "[cuiTextFieldPlaceholder]", inputs: ["cuiTextFieldPlaceholder"] }, { kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i4.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "directive", type: CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
85
85
|
}
|
|
86
86
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiRangeFilterComponent, decorators: [{
|
|
87
87
|
type: Component,
|
|
@@ -92,8 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
92
92
|
CuiInputNumberModule,
|
|
93
93
|
CuiSvgModule,
|
|
94
94
|
CuiTooltipDirective,
|
|
95
|
-
FormsModule
|
|
96
|
-
|
|
97
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\n [label]=\"filter().field.label | transloco\"\n (removed)=\"onRemove()\"\n/>\n\n<button\n type=\"button\"\n class=\"range-filter__trigger\"\n [class.range-filter__trigger_active]=\"hasValue()\"\n [cuiDropdown]=\"dropdownTpl\"\n #dropdown=\"cuiDropdown\"\n (isOpened)=\"onDropdownOpened($event)\"\n>\n @if (hasValue()) {\n <span\n class=\"range-filter__value\"\n [cuiTooltip]=\"displayValue()\"\n >\n {{ displayValue() }}\n </span>\n } @else {\n <span class=\"range-filter__placeholder\">{{ 'ENTER_VALUE' | transloco }}</span>\n }\n <cui-svg icon=\"cuiIconChevronDown\" />\n</button>\n\n<ng-template #dropdownTpl>\n <div class=\"range-filter__dropdown\">\n <div class=\"range-filter__label\">\n {{ 'FILTER_BY' | transloco: { field: filter().field.label | transloco } }}\n </div>\n <div class=\"range-filter__inputs\">\n <cui-input-number\n [ngModel]=\"tmpMin()\"\n (ngModelChange)=\"onTmpMinChange($event)\"\n [cuiTextFieldPlaceholder]=\"minPlaceholder() | transloco\"\n />\n <span class=\"range-filter__separator\">\u2013</span>\n <cui-input-number\n [ngModel]=\"tmpMax()\"\n (ngModelChange)=\"onTmpMaxChange($event)\"\n [cuiTextFieldPlaceholder]=\"maxPlaceholder() | transloco\"\n />\n </div>\n <div class=\"range-filter__footer\">\n <button\n type=\"button\"\n cuiButton\n size=\"xs\"\n appearance=\"secondary\"\n (click)=\"dropdown.close()\"\n >\n {{ 'CANCEL' | transloco }}\n </button>\n <button\n type=\"button\"\n cuiButton\n size=\"xs\"\n appearance=\"action-cyan\"\n (click)=\"applyValue(dropdown)\"\n >\n {{ 'APPLY' | transloco }}\n </button>\n </div>\n </div>\n</ng-template>", styles: [":host{display:inline-flex}.range-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.range-filter__trigger:hover{background:var(--cui-base-200)}.range-filter__trigger:focus{outline:none}.range-filter__trigger_active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.range-filter__trigger_active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.range-filter__value{font-weight:500;font-size:12px;line-height:14px;max-width:200px;overflow:hidden;color:var(--cui-base-900);text-overflow:ellipsis;white-space:nowrap}.range-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.range-filter__dropdown{display:flex;flex-direction:column;gap:12px;padding:8px;width:300px;max-width:calc(100vw - 16px);overflow:hidden;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026}.range-filter__label{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-900)}.range-filter__inputs{display:flex;flex-direction:row;gap:8px;align-items:center}.range-filter__separator{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-500)}.range-filter__footer{display:flex;flex-direction:row;gap:8px;justify-content:flex-end}\n"] }]
|
|
95
|
+
FormsModule
|
|
96
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"range-filter__trigger\"\r\n [class.range-filter__trigger_active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n #dropdown=\"cuiDropdown\"\r\n (isOpened)=\"onDropdownOpened($event)\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"range-filter__value\"\r\n [cuiTooltip]=\"displayValue()\"\r\n >\r\n {{ displayValue() }}\r\n </span>\r\n } @else {\r\n <span class=\"range-filter__placeholder\">{{ translations().enterValue }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"range-filter__dropdown\">\r\n <div class=\"range-filter__label\">\r\n {{ translations().filterBy }} {{ filter().field.label }}\r\n </div>\r\n <div class=\"range-filter__inputs\">\r\n <cui-input-number\r\n [ngModel]=\"tmpMin()\"\r\n (ngModelChange)=\"onTmpMinChange($event)\"\r\n [cuiTextFieldPlaceholder]=\"minPlaceholder()\"\r\n />\r\n <span class=\"range-filter__separator\">\u2013</span>\r\n <cui-input-number\r\n [ngModel]=\"tmpMax()\"\r\n (ngModelChange)=\"onTmpMaxChange($event)\"\r\n [cuiTextFieldPlaceholder]=\"maxPlaceholder()\"\r\n />\r\n </div>\r\n <div class=\"range-filter__footer\">\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"secondary\"\r\n (click)=\"dropdown.close()\"\r\n >\r\n {{ translations().cancel }}\r\n </button>\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"action-cyan\"\r\n (click)=\"applyValue(dropdown)\"\r\n >\r\n {{ translations().apply }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.range-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.range-filter__trigger:hover{background:var(--cui-base-200)}.range-filter__trigger:focus{outline:none}.range-filter__trigger_active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.range-filter__trigger_active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.range-filter__value{font-weight:500;font-size:12px;line-height:14px;max-width:200px;overflow:hidden;color:var(--cui-base-900);text-overflow:ellipsis;white-space:nowrap}.range-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.range-filter__dropdown{display:flex;flex-direction:column;gap:12px;padding:8px;width:300px;max-width:calc(100vw - 16px);overflow:hidden;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026}.range-filter__label{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-900)}.range-filter__inputs{display:flex;flex-direction:row;gap:8px;align-items:center}.range-filter__separator{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-500)}.range-filter__footer{display:flex;flex-direction:row;gap:8px;justify-content:flex-end}\n"] }]
|
|
98
97
|
}] });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9maWx0ZXItYmFyL2NvbXBvbmVudHMvcmFuZ2UtZmlsdGVyL3JhbmdlLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL3JhbmdlLWZpbHRlci9yYW5nZS1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFN0QsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sd0RBQXdELENBQUM7Ozs7Ozs7QUFtQnhHLE1BQU0sT0FBTyx1QkFBdUI7SUFqQnBDO1FBa0JvQixXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBbUIsQ0FBQztRQUMzQyxZQUFPLEdBQUcsTUFBTSxFQUFVLENBQUM7UUFDM0IsWUFBTyxHQUFHLE1BQU0sRUFBbUIs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QUFvQjtRQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRVMsVUFBVSxDQUFDLFFBQThCO1FBQy9DLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQzNCLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQW1CO1lBQzdCLElBQUksRUFBRSxPQUFPO1lBQ2IsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbEIsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUU7U0FDckIsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDN0MsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUM7K0dBdkZRLHVCQUF1QjttR0FBdkIsdUJBQXVCLHVRQzdCcEMsaW5FQWlFYyxxaEREakROLGVBQWUsb09BQ2Ysb0JBQW9CLG9KQUNwQiw4QkFBOEIsNkdBQzlCLG9CQUFvQix3U0FDcEIsWUFBWSx3S0FDWixtQkFBbUIsZ0tBQ25CLFdBQVcsMFZBQ1gsYUFBYTs7NEZBTVIsdUJBQXVCO2tCQWpCbkMsU0FBUzsrQkFDSSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQO3dCQUNMLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQiw4QkFBOEI7d0JBQzlCLG9CQUFvQjt3QkFDcEIsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsYUFBYTtxQkFDaEIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRyYW5zbG9jb1BpcGUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xuXG5pbXBvcnQgeyBDdWlCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBDdWlEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgQ3VpSW5wdXROdW1iZXJNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XG5pbXBvcnQgeyBDdWlTdmdNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL3N2Zyc7XG5pbXBvcnQgeyBDdWlUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgdHlwZSB7IEN1aUFjdGl2ZUZpbHRlciwgQ3VpRmlsdGVyVmFsdWUsIEN1aVJhbmdlRmlsdGVyRmllbGQgfSBmcm9tICcuLi8uLi9maWx0ZXItYmFyLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgQ3VpRmlsdGVyUmVtb3ZlQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vZmlsdGVyLXJlbW92ZS1idXR0b24vZmlsdGVyLXJlbW92ZS1idXR0b24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjdWktcmFuZ2UtZmlsdGVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ3VpQnV0dG9uTW9kdWxlLFxuICAgICAgICBDdWlEcm9wZG93bkRpcmVjdGl2ZSxcbiAgICAgICAgQ3VpRmlsdGVyUmVtb3ZlQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBDdWlJbnB1dE51bWJlck1vZHVsZSxcbiAgICAgICAgQ3VpU3ZnTW9kdWxlLFxuICAgICAgICBDdWlUb29sdGlwRGlyZWN0aXZlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgVHJhbnNsb2NvUGlwZVxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JhbmdlLWZpbHRlci50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yYW5nZS1maWx0ZXIuc3R5bGUuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aVJhbmdlRmlsdGVyQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZmlsdGVyID0gaW5wdXQucmVxdWlyZWQ8Q3VpQWN0aXZlRmlsdGVyPigpO1xuICAgIHB1YmxpYyByZWFkb25seSByZW1vdmVkID0gb3V0cHV0PHN0cmluZz4oKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2hhbmdlZCA9IG91dHB1dDxDdWlBY3RpdmVGaWx0ZXI+KCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG1wTWluID0gc2lnbmFsPG51bWJlciB8IG51bGw+KG51bGwpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0bXBNYXggPSBzaWduYWw8bnVtYmVyIHwgbnVsbD4obnVsbCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY3VycmVudE1pbiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgZiA9IHRoaXMuZmlsdGVyKCk7XG5cbiAgICAgICAgcmV0dXJuIGYudmFsdWUudHlwZSA9PT0gJ3JhbmdlJyA/IGYudmFsdWUubWluIDogbnVsbDtcbiAgICB9KTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjdXJyZW50TWF4ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcblxuICAgICAgICByZXR1cm4gZi52YWx1ZS50eXBlID09PSAncmFuZ2UnID8gZi52YWx1ZS5tYXggOiBudWxsO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc1ZhbHVlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jdXJyZW50TWluKCkgIT09IG51bGwgfHwgdGhpcy5jdXJyZW50TWF4KCkgIT09IG51bGwpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpc3BsYXlWYWx1ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgbWluID0gdGhpcy5jdXJyZW50TWluKCk7XG4gICAgICAgIGNvbnN0IG1heCA9IHRoaXMuY3VycmVudE1heCgpO1xuXG4gICAgICAgIGlmIChtaW4gIT09IG51bGwgJiYgbWF4ICE9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7bWlufSDigJMgJHttYXh9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtaW4gIT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBg4omlICR7bWlufWA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWF4ICE9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gYOKJpCAke21heH1gO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1pblBsYWNlaG9sZGVyID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmlsdGVyKCkuZmllbGQgYXMgQ3VpUmFuZ2VGaWx0ZXJGaWVsZDtcblxuICAgICAgICByZXR1cm4gZmllbGQucmFuZ2VDb25maWc/Lm1pblBsYWNlaG9sZGVyID8/ICdNSU4nO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1heFBsYWNlaG9sZGVyID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmlsdGVyKCkuZmllbGQgYXMgQ3VpUmFuZ2VGaWx0ZXJGaWVsZDtcblxuICAgICAgICByZXR1cm4gZmllbGQucmFuZ2VDb25maWc/Lm1heFBsYWNlaG9sZGVyID8/ICdNQVgnO1xuICAgIH0pO1xuXG4gICAgcHJvdGVjdGVkIG9uUmVtb3ZlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZWQuZW1pdCh0aGlzLmZpbHRlcigpLmlkKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Ecm9wZG93bk9wZW5lZChpc09wZW5lZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoaXNPcGVuZWQpIHtcbiAgICAgICAgICAgIHRoaXMudG1wTWluLnNldCh0aGlzLmN1cnJlbnRNaW4oKSk7XG4gICAgICAgICAgICB0aGlzLnRtcE1heC5zZXQodGhpcy5jdXJyZW50TWF4KCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uVG1wTWluQ2hhbmdlKHZhbHVlOiBudW1iZXIgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMudG1wTWluLnNldCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uVG1wTWF4Q2hhbmdlKHZhbHVlOiBudW1iZXIgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMudG1wTWF4LnNldCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFwcGx5VmFsdWUoZHJvcGRvd246IEN1aURyb3Bkb3duRGlyZWN0aXZlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGYgPSB0aGlzLmZpbHRlcigpO1xuXG4gICAgICAgIGlmIChmLnZhbHVlLnR5cGUgIT09ICdyYW5nZScpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlOiBDdWlGaWx0ZXJWYWx1ZSA9IHtcbiAgICAgICAgICAgIHR5cGU6ICdyYW5nZScsXG4gICAgICAgICAgICBtaW46IHRoaXMudG1wTWluKCksXG4gICAgICAgICAgICBtYXg6IHRoaXMudG1wTWF4KClcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmNoYW5nZWQuZW1pdCh7IC4uLmYsIHZhbHVlOiBuZXdWYWx1ZSB9KTtcbiAgICAgICAgZHJvcGRvd24uY2xvc2UoKTtcbiAgICB9XG59IiwiPGN1aS1maWx0ZXItcmVtb3ZlLWJ1dHRvblxuICAgIFtsYWJlbF09XCJmaWx0ZXIoKS5maWVsZC5sYWJlbCB8IHRyYW5zbG9jb1wiXG4gICAgKHJlbW92ZWQpPVwib25SZW1vdmUoKVwiXG4vPlxuXG48YnV0dG9uXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX3RyaWdnZXJcIlxuICAgIFtjbGFzcy5yYW5nZS1maWx0ZXJfX3RyaWdnZXJfYWN0aXZlXT1cImhhc1ZhbHVlKClcIlxuICAgIFtjdWlEcm9wZG93bl09XCJkcm9wZG93blRwbFwiXG4gICAgI2Ryb3Bkb3duPVwiY3VpRHJvcGRvd25cIlxuICAgIChpc09wZW5lZCk9XCJvbkRyb3Bkb3duT3BlbmVkKCRldmVudClcIlxuPlxuICAgIEBpZiAoaGFzVmFsdWUoKSkge1xuICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX3ZhbHVlXCJcbiAgICAgICAgICAgIFtjdWlUb29sdGlwXT1cImRpc3BsYXlWYWx1ZSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgZGlzcGxheVZhbHVlKCkgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgIH0gQGVsc2Uge1xuICAgICAgICA8c3BhbiBjbGFzcz1cInJhbmdlLWZpbHRlcl9fcGxhY2Vob2xkZXJcIj57eyAnRU5URVJfVkFMVUUnIHwgdHJhbnNsb2NvIH19PC9zcGFuPlxuICAgIH1cbiAgICA8Y3VpLXN2ZyBpY29uPVwiY3VpSWNvbkNoZXZyb25Eb3duXCIgLz5cbjwvYnV0dG9uPlxuXG48bmctdGVtcGxhdGUgI2Ryb3Bkb3duVHBsPlxuICAgIDxkaXYgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX2Ryb3Bkb3duXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX2xhYmVsXCI+XG4gICAgICAgICAgICB7eyAnRklMVEVSX0JZJyB8IHRyYW5zbG9jbzogeyBmaWVsZDogZmlsdGVyKCkuZmllbGQubGFiZWwgfCB0cmFuc2xvY28gfSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInJhbmdlLWZpbHRlcl9faW5wdXRzXCI+XG4gICAgICAgICAgICA8Y3VpLWlucHV0LW51bWJlclxuICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInRtcE1pbigpXCJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblRtcE1pbkNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICBbY3VpVGV4dEZpZWxkUGxhY2Vob2xkZXJdPVwibWluUGxhY2Vob2xkZXIoKSB8IHRyYW5zbG9jb1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJyYW5nZS1maWx0ZXJfX3NlcGFyYXRvclwiPuKAkzwvc3Bhbj5cbiAgICAgICAgICAgIDxjdWktaW5wdXQtbnVtYmVyXG4gICAgICAgICAgICAgICAgW25nTW9kZWxdPVwidG1wTWF4KClcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVG1wTWF4Q2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgIFtjdWlUZXh0RmllbGRQbGFjZWhvbGRlcl09XCJtYXhQbGFjZWhvbGRlcigpIHwgdHJhbnNsb2NvXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwicmFuZ2UtZmlsdGVyX19mb290ZXJcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cbiAgICAgICAgICAgICAgICBzaXplPVwieHNcIlxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkcm9wZG93bi5jbG9zZSgpXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyAnQ0FOQ0VMJyB8IHRyYW5zbG9jbyB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiYWN0aW9uLWN5YW5cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJhcHBseVZhbHVlKGRyb3Bkb3duKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgJ0FQUExZJyB8IHRyYW5zbG9jbyB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9maWx0ZXItYmFyL2NvbXBvbmVudHMvcmFuZ2UtZmlsdGVyL3JhbmdlLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL3JhbmdlLWZpbHRlci9yYW5nZS1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7Ozs7OztBQWtCeEcsTUFBTSxPQUFPLHVCQUF1QjtJQWhCcEM7UUFpQm9CLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQixDQUFDO1FBQzNDLGlCQUFZLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBNEIsQ0FBQztRQUMxRCxZQUFPLEdBQUcsTUFBTSxFQUFVLENBQUM7UUFDM0IsWUFBTyxHQUFHLE1BQU0sRUFBbUIs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QUFvQjtRQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRVMsVUFBVSxDQUFDLFFBQThCO1FBQy9DLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQzNCLE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQW1CO1lBQzdCLElBQUksRUFBRSxPQUFPO1lBQ2IsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbEIsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUU7U0FDckIsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDN0MsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3JCLENBQUM7K0dBeEZRLHVCQUF1QjttR0FBdkIsdUJBQXVCLG1aQzNCcEMsK3JFQWlFYyxxaEREbEROLGVBQWUsb09BQ2Ysb0JBQW9CLG9KQUNwQiw4QkFBOEIsNkdBQzlCLG9CQUFvQix3U0FDcEIsWUFBWSx3S0FDWixtQkFBbUIsZ0tBQ25CLFdBQVc7OzRGQU1OLHVCQUF1QjtrQkFoQm5DLFNBQVM7K0JBQ0ksa0JBQWtCLGNBQ2hCLElBQUksV0FDUDt3QkFDTCxlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsOEJBQThCO3dCQUM5QixvQkFBb0I7d0JBQ3BCLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixXQUFXO3FCQUNkLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEN1aUJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvYnV0dG9uJztcclxuaW1wb3J0IHsgQ3VpRHJvcGRvd25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2Ryb3Bkb3duJztcclxuaW1wb3J0IHsgQ3VpSW5wdXROdW1iZXJNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2lucHV0LW51bWJlcic7XHJcbmltcG9ydCB7IEN1aVN2Z01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvc3ZnJztcclxuaW1wb3J0IHsgQ3VpVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xyXG5pbXBvcnQgdHlwZSB7IEN1aUFjdGl2ZUZpbHRlciwgQ3VpRmlsdGVyQmFyVHJhbnNsYXRpb25zLCBDdWlGaWx0ZXJWYWx1ZSwgQ3VpUmFuZ2VGaWx0ZXJGaWVsZCB9IGZyb20gJy4uLy4uL2ZpbHRlci1iYXIuaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEN1aUZpbHRlclJlbW92ZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ZpbHRlci1yZW1vdmUtYnV0dG9uL2ZpbHRlci1yZW1vdmUtYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY3VpLXJhbmdlLWZpbHRlcicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBDdWlEcm9wZG93bkRpcmVjdGl2ZSxcclxuICAgICAgICBDdWlGaWx0ZXJSZW1vdmVCdXR0b25Db21wb25lbnQsXHJcbiAgICAgICAgQ3VpSW5wdXROdW1iZXJNb2R1bGUsXHJcbiAgICAgICAgQ3VpU3ZnTW9kdWxlLFxyXG4gICAgICAgIEN1aVRvb2x0aXBEaXJlY3RpdmUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGVcclxuICAgIF0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vcmFuZ2UtZmlsdGVyLnRlbXBsYXRlLmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vcmFuZ2UtZmlsdGVyLnN0eWxlLnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdWlSYW5nZUZpbHRlckNvbXBvbmVudCB7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZmlsdGVyID0gaW5wdXQucmVxdWlyZWQ8Q3VpQWN0aXZlRmlsdGVyPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IHRyYW5zbGF0aW9ucyA9IGlucHV0LnJlcXVpcmVkPEN1aUZpbHRlckJhclRyYW5zbGF0aW9ucz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSByZW1vdmVkID0gb3V0cHV0PHN0cmluZz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSBjaGFuZ2VkID0gb3V0cHV0PEN1aUFjdGl2ZUZpbHRlcj4oKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG1wTWluID0gc2lnbmFsPG51bWJlciB8IG51bGw+KG51bGwpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRtcE1heCA9IHNpZ25hbDxudW1iZXIgfCBudWxsPihudWxsKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY3VycmVudE1pbiA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGYudmFsdWUudHlwZSA9PT0gJ3JhbmdlJyA/IGYudmFsdWUubWluIDogbnVsbDtcclxuICAgIH0pO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBjdXJyZW50TWF4ID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGYgPSB0aGlzLmZpbHRlcigpO1xyXG5cclxuICAgICAgICByZXR1cm4gZi52YWx1ZS50eXBlID09PSAncmFuZ2UnID8gZi52YWx1ZS5tYXggOiBudWxsO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc1ZhbHVlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jdXJyZW50TWluKCkgIT09IG51bGwgfHwgdGhpcy5jdXJyZW50TWF4KCkgIT09IG51bGwpO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBkaXNwbGF5VmFsdWUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgbWluID0gdGhpcy5jdXJyZW50TWluKCk7XHJcbiAgICAgICAgY29uc3QgbWF4ID0gdGhpcy5jdXJyZW50TWF4KCk7XHJcblxyXG4gICAgICAgIGlmIChtaW4gIT09IG51bGwgJiYgbWF4ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHttaW59IOKAkyAke21heH1gO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKG1pbiAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYOKJpSAke21pbn1gO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKG1heCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYOKJpCAke21heH1gO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1pblBsYWNlaG9sZGVyID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWx0ZXIoKS5maWVsZCBhcyBDdWlSYW5nZUZpbHRlckZpZWxkO1xyXG5cclxuICAgICAgICByZXR1cm4gZmllbGQucmFuZ2VDb25maWc/Lm1pblBsYWNlaG9sZGVyID8/ICdNSU4nO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1heFBsYWNlaG9sZGVyID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZpZWxkID0gdGhpcy5maWx0ZXIoKS5maWVsZCBhcyBDdWlSYW5nZUZpbHRlckZpZWxkO1xyXG5cclxuICAgICAgICByZXR1cm4gZmllbGQucmFuZ2VDb25maWc/Lm1heFBsYWNlaG9sZGVyID8/ICdNQVgnO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uUmVtb3ZlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlZC5lbWl0KHRoaXMuZmlsdGVyKCkuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvbkRyb3Bkb3duT3BlbmVkKGlzT3BlbmVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGlzT3BlbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG1wTWluLnNldCh0aGlzLmN1cnJlbnRNaW4oKSk7XHJcbiAgICAgICAgICAgIHRoaXMudG1wTWF4LnNldCh0aGlzLmN1cnJlbnRNYXgoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvblRtcE1pbkNoYW5nZSh2YWx1ZTogbnVtYmVyIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudG1wTWluLnNldCh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uVG1wTWF4Q2hhbmdlKHZhbHVlOiBudW1iZXIgfCBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50bXBNYXguc2V0KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgYXBwbHlWYWx1ZShkcm9wZG93bjogQ3VpRHJvcGRvd25EaXJlY3RpdmUpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcclxuXHJcbiAgICAgICAgaWYgKGYudmFsdWUudHlwZSAhPT0gJ3JhbmdlJykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBuZXdWYWx1ZTogQ3VpRmlsdGVyVmFsdWUgPSB7XHJcbiAgICAgICAgICAgIHR5cGU6ICdyYW5nZScsXHJcbiAgICAgICAgICAgIG1pbjogdGhpcy50bXBNaW4oKSxcclxuICAgICAgICAgICAgbWF4OiB0aGlzLnRtcE1heCgpXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoeyAuLi5mLCB2YWx1ZTogbmV3VmFsdWUgfSk7XHJcbiAgICAgICAgZHJvcGRvd24uY2xvc2UoKTtcclxuICAgIH1cclxufSIsIjxjdWktZmlsdGVyLXJlbW92ZS1idXR0b25cclxuICAgIFtsYWJlbF09XCJmaWx0ZXIoKS5maWVsZC5sYWJlbFwiXHJcbiAgICAocmVtb3ZlZCk9XCJvblJlbW92ZSgpXCJcclxuLz5cclxuXHJcbjxidXR0b25cclxuICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX3RyaWdnZXJcIlxyXG4gICAgW2NsYXNzLnJhbmdlLWZpbHRlcl9fdHJpZ2dlcl9hY3RpdmVdPVwiaGFzVmFsdWUoKVwiXHJcbiAgICBbY3VpRHJvcGRvd25dPVwiZHJvcGRvd25UcGxcIlxyXG4gICAgI2Ryb3Bkb3duPVwiY3VpRHJvcGRvd25cIlxyXG4gICAgKGlzT3BlbmVkKT1cIm9uRHJvcGRvd25PcGVuZWQoJGV2ZW50KVwiXHJcbj5cclxuICAgIEBpZiAoaGFzVmFsdWUoKSkge1xyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwicmFuZ2UtZmlsdGVyX192YWx1ZVwiXHJcbiAgICAgICAgICAgIFtjdWlUb29sdGlwXT1cImRpc3BsYXlWYWx1ZSgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGRpc3BsYXlWYWx1ZSgpIH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJyYW5nZS1maWx0ZXJfX3BsYWNlaG9sZGVyXCI+e3sgdHJhbnNsYXRpb25zKCkuZW50ZXJWYWx1ZSB9fTwvc3Bhbj5cclxuICAgIH1cclxuICAgIDxjdWktc3ZnIGljb249XCJjdWlJY29uQ2hldnJvbkRvd25cIiAvPlxyXG48L2J1dHRvbj5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd25UcGw+XHJcbiAgICA8ZGl2IGNsYXNzPVwicmFuZ2UtZmlsdGVyX19kcm9wZG93blwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX2xhYmVsXCI+XHJcbiAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9ucygpLmZpbHRlckJ5IH19IHt7IGZpbHRlcigpLmZpZWxkLmxhYmVsIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJhbmdlLWZpbHRlcl9faW5wdXRzXCI+XHJcbiAgICAgICAgICAgIDxjdWktaW5wdXQtbnVtYmVyXHJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJ0bXBNaW4oKVwiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblRtcE1pbkNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIFtjdWlUZXh0RmllbGRQbGFjZWhvbGRlcl09XCJtaW5QbGFjZWhvbGRlcigpXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJyYW5nZS1maWx0ZXJfX3NlcGFyYXRvclwiPuKAkzwvc3Bhbj5cclxuICAgICAgICAgICAgPGN1aS1pbnB1dC1udW1iZXJcclxuICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cInRtcE1heCgpXCJcclxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVG1wTWF4Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgW2N1aVRleHRGaWVsZFBsYWNlaG9sZGVyXT1cIm1heFBsYWNlaG9sZGVyKClcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyYW5nZS1maWx0ZXJfX2Zvb3RlclwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcclxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImRyb3Bkb3duLmNsb3NlKClcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7eyB0cmFuc2xhdGlvbnMoKS5jYW5jZWwgfX1cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXHJcbiAgICAgICAgICAgICAgICBzaXplPVwieHNcIlxyXG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImFjdGlvbi1jeWFuXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJhcHBseVZhbHVlKGRyb3Bkb3duKVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9ucygpLmFwcGx5IH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, computed, input, output } from '@angular/core';
|
|
2
|
-
import { TranslocoPipe } from '@jsverse/transloco';
|
|
3
2
|
import { CuiDropdownDirective } from '../../../../components/dropdown';
|
|
4
3
|
import { CuiSvgModule } from '../../../../components/svg';
|
|
5
4
|
import { CuiTooltipDirective } from '../../../../directives';
|
|
@@ -9,6 +8,7 @@ import * as i1 from "../../../svg/svg.component";
|
|
|
9
8
|
export class CuiSelectFilterComponent {
|
|
10
9
|
constructor() {
|
|
11
10
|
this.filter = input.required();
|
|
11
|
+
this.translations = input.required();
|
|
12
12
|
this.removed = output();
|
|
13
13
|
this.changed = output();
|
|
14
14
|
this.currentValue = computed(() => {
|
|
@@ -48,7 +48,7 @@ export class CuiSelectFilterComponent {
|
|
|
48
48
|
dropdown.close();
|
|
49
49
|
}
|
|
50
50
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiSelectFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
51
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiSelectFilterComponent, isStandalone: true, selector: "cui-select-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\n [label]=\"filter().field.label
|
|
51
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiSelectFilterComponent, isStandalone: true, selector: "cui-select-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null }, translations: { classPropertyName: "translations", publicName: "translations", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"select-filter__trigger\"\r\n [class.select-filter__trigger--active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n #dropdown=\"cuiDropdown\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"select-filter__value\"\r\n [cuiTooltip]=\"currentLabel()\"\r\n >\r\n {{ currentLabel() }}\r\n </span>\r\n } @else {\r\n <span class=\"select-filter__placeholder\">{{ translations().selectValue }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"select-filter__dropdown\">\r\n @for (opt of options(); track opt.value) {\r\n <button\r\n type=\"button\"\r\n class=\"select-filter__option\"\r\n [class.select-filter__option--selected]=\"isOptionSelected(opt.value)\"\r\n (click)=\"selectOption(opt.value, dropdown)\"\r\n >\r\n {{ opt.label }}\r\n </button>\r\n }\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.select-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.select-filter__trigger:hover{background:var(--cui-base-200)}.select-filter__trigger:focus{outline:none}.select-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.select-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.select-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.select-filter__dropdown{display:flex;flex-direction:column;gap:0;padding-top:4px;padding-bottom:4px;min-width:165px;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.select-filter__option{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:flex-start;border:0;flex-shrink:0;outline:none;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:400;font-size:13px;line-height:16px;padding:8px 12px;width:100%;text-align:left;color:var(--cui-base-900);cursor:pointer;-webkit-user-select:none;user-select:none}.select-filter__option:hover{background:var(--cui-base-50)}.select-filter__option--selected{background:var(--cui-lavender-bg);font-weight:500}\n"], dependencies: [{ kind: "directive", type: CuiDropdownDirective, selector: "[cuiDropdown]", inputs: ["cuiDropdown", "orientation"], outputs: ["isOpened"], exportAs: ["cuiDropdown"] }, { kind: "component", type: CuiFilterRemoveButtonComponent, selector: "cui-filter-remove-button", inputs: ["label"], outputs: ["removed"] }, { kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i1.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "directive", type: CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
52
52
|
}
|
|
53
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiSelectFilterComponent, decorators: [{
|
|
54
54
|
type: Component,
|
|
@@ -56,8 +56,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
56
56
|
CuiDropdownDirective,
|
|
57
57
|
CuiFilterRemoveButtonComponent,
|
|
58
58
|
CuiSvgModule,
|
|
59
|
-
CuiTooltipDirective
|
|
60
|
-
|
|
61
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\n [label]=\"filter().field.label | transloco\"\n (removed)=\"onRemove()\"\n/>\n\n<button\n type=\"button\"\n class=\"select-filter__trigger\"\n [class.select-filter__trigger--active]=\"hasValue()\"\n [cuiDropdown]=\"dropdownTpl\"\n #dropdown=\"cuiDropdown\"\n>\n @if (hasValue()) {\n <span\n class=\"select-filter__value\"\n [cuiTooltip]=\"currentLabel()\"\n >\n {{ currentLabel() }}\n </span>\n } @else {\n <span class=\"select-filter__placeholder\">{{ 'SELECT_VALUE' | transloco }}</span>\n }\n <cui-svg icon=\"cuiIconChevronDown\" />\n</button>\n\n<ng-template #dropdownTpl>\n <div class=\"select-filter__dropdown\">\n @for (opt of options(); track opt.value) {\n <button\n type=\"button\"\n class=\"select-filter__option\"\n [class.select-filter__option--selected]=\"isOptionSelected(opt.value)\"\n (click)=\"selectOption(opt.value, dropdown)\"\n >\n {{ opt.label }}\n </button>\n }\n </div>\n</ng-template>", styles: [":host{display:inline-flex}.select-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.select-filter__trigger:hover{background:var(--cui-base-200)}.select-filter__trigger:focus{outline:none}.select-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.select-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.select-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.select-filter__dropdown{display:flex;flex-direction:column;gap:0;padding-top:4px;padding-bottom:4px;min-width:165px;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.select-filter__option{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:flex-start;border:0;flex-shrink:0;outline:none;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:400;font-size:13px;line-height:16px;padding:8px 12px;width:100%;text-align:left;color:var(--cui-base-900);cursor:pointer;-webkit-user-select:none;user-select:none}.select-filter__option:hover{background:var(--cui-base-50)}.select-filter__option--selected{background:var(--cui-lavender-bg);font-weight:500}\n"] }]
|
|
59
|
+
CuiTooltipDirective
|
|
60
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"select-filter__trigger\"\r\n [class.select-filter__trigger--active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n #dropdown=\"cuiDropdown\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"select-filter__value\"\r\n [cuiTooltip]=\"currentLabel()\"\r\n >\r\n {{ currentLabel() }}\r\n </span>\r\n } @else {\r\n <span class=\"select-filter__placeholder\">{{ translations().selectValue }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"select-filter__dropdown\">\r\n @for (opt of options(); track opt.value) {\r\n <button\r\n type=\"button\"\r\n class=\"select-filter__option\"\r\n [class.select-filter__option--selected]=\"isOptionSelected(opt.value)\"\r\n (click)=\"selectOption(opt.value, dropdown)\"\r\n >\r\n {{ opt.label }}\r\n </button>\r\n }\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.select-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.select-filter__trigger:hover{background:var(--cui-base-200)}.select-filter__trigger:focus{outline:none}.select-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.select-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.select-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.select-filter__dropdown{display:flex;flex-direction:column;gap:0;padding-top:4px;padding-bottom:4px;min-width:165px;background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.select-filter__option{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:flex-start;border:0;flex-shrink:0;outline:none;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-weight:400;font-size:13px;line-height:16px;padding:8px 12px;width:100%;text-align:left;color:var(--cui-base-900);cursor:pointer;-webkit-user-select:none;user-select:none}.select-filter__option:hover{background:var(--cui-base-50)}.select-filter__option--selected{background:var(--cui-lavender-bg);font-weight:500}\n"] }]
|
|
62
61
|
}] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL3NlbGVjdC1maWx0ZXIvc2VsZWN0LWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL3NlbGVjdC1maWx0ZXIvc2VsZWN0LWZpbHRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDOzs7QUFleEcsTUFBTSxPQUFPLHdCQUF3QjtJQWJyQztRQWNvQixXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBbUIsQ0FBQztRQUMzQyxpQkFBWSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQTRCLENBQUM7UUFDMUQsWUFBTyxHQUFHLE1BQU0sRUFBVSxDQUFDO1FBQzNCLFlBQU8sR0FBRyxNQUFNLEVBQW1CLENBQUM7UUFFakMsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUV4QixPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM1RCxDQUFDLENBQUMsQ0FBQztRQUVnQixpQkFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRXhCLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDOUMsT0FBTyxFQUFFLENBQUM7WUFDZCxDQUFDO1lBRUQsTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDcEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQTZCLENBQUM7WUFFOUMsT0FBTyxLQUFLLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxhQUFhLENBQUMsRUFBRSxLQUFLLElBQUksYUFBYSxDQUFDO1FBQ25HLENBQUMsQ0FBQyxDQUFDO1FBRWdCLGFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRWpELFlBQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3ZDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUE2QixDQUFDO1lBRTFELE9BQU8sS0FBSyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7S0F1Qk47SUFyQmEsUUFBUTtRQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsS0FBYTtRQUNwQyxPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxLQUFLLENBQUM7SUFDekMsQ0FBQztJQUVTLFlBQVksQ0FBQyxLQUFhLEVBQUUsUUFBOEI7UUFDaEUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDNUIsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUNkLEdBQUcsQ0FBQztZQUNKLEtBQUssRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRTtTQUN2RSxDQUFDLENBQUM7UUFDSCxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckIsQ0FBQzsrR0FyRFEsd0JBQXdCO21HQUF4Qix3QkFBd0Isb1pDckJyQyx5c0NBc0NjLHd2REQxQk4sb0JBQW9CLG9KQUNwQiw4QkFBOEIsNkdBQzlCLFlBQVksd0tBQ1osbUJBQW1COzs0RkFNZCx3QkFBd0I7a0JBYnBDLFNBQVM7K0JBQ0ksbUJBQW1CLGNBQ2pCLElBQUksV0FDUDt3QkFDTCxvQkFBb0I7d0JBQ3BCLDhCQUE4Qjt3QkFDOUIsWUFBWTt3QkFDWixtQkFBbUI7cUJBQ3RCLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEN1aURyb3Bkb3duRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9kcm9wZG93bic7XHJcbmltcG9ydCB7IEN1aVN2Z01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvc3ZnJztcclxuaW1wb3J0IHsgQ3VpVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xyXG5pbXBvcnQgdHlwZSB7IEN1aUFjdGl2ZUZpbHRlciwgQ3VpRmlsdGVyQmFyVHJhbnNsYXRpb25zLCBDdWlTZWxlY3RGaWx0ZXJGaWVsZCB9IGZyb20gJy4uLy4uL2ZpbHRlci1iYXIuaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEN1aUZpbHRlclJlbW92ZUJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ZpbHRlci1yZW1vdmUtYnV0dG9uL2ZpbHRlci1yZW1vdmUtYnV0dG9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY3VpLXNlbGVjdC1maWx0ZXInLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDdWlEcm9wZG93bkRpcmVjdGl2ZSxcclxuICAgICAgICBDdWlGaWx0ZXJSZW1vdmVCdXR0b25Db21wb25lbnQsXHJcbiAgICAgICAgQ3VpU3ZnTW9kdWxlLFxyXG4gICAgICAgIEN1aVRvb2x0aXBEaXJlY3RpdmVcclxuICAgIF0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LWZpbHRlci50ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3NlbGVjdC1maWx0ZXIuc3R5bGUuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEN1aVNlbGVjdEZpbHRlckNvbXBvbmVudCB7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZmlsdGVyID0gaW5wdXQucmVxdWlyZWQ8Q3VpQWN0aXZlRmlsdGVyPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IHRyYW5zbGF0aW9ucyA9IGlucHV0LnJlcXVpcmVkPEN1aUZpbHRlckJhclRyYW5zbGF0aW9ucz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSByZW1vdmVkID0gb3V0cHV0PHN0cmluZz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSBjaGFuZ2VkID0gb3V0cHV0PEN1aUFjdGl2ZUZpbHRlcj4oKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY3VycmVudFZhbHVlID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGYgPSB0aGlzLmZpbHRlcigpO1xyXG5cclxuICAgICAgICByZXR1cm4gZi52YWx1ZS50eXBlID09PSAnc2VsZWN0JyA/IGYudmFsdWUudmFsdWUgOiBudWxsO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGN1cnJlbnRMYWJlbCA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcclxuXHJcbiAgICAgICAgaWYgKGYudmFsdWUudHlwZSAhPT0gJ3NlbGVjdCcgfHwgIWYudmFsdWUudmFsdWUpIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZSA9IGYudmFsdWUudmFsdWU7XHJcbiAgICAgICAgY29uc3QgZmllbGQgPSBmLmZpZWxkIGFzIEN1aVNlbGVjdEZpbHRlckZpZWxkO1xyXG5cclxuICAgICAgICByZXR1cm4gZmllbGQuc2VsZWN0T3B0aW9ucz8uZmluZCgob3B0KSA9PiBvcHQudmFsdWUgPT09IHNlbGVjdGVkVmFsdWUpPy5sYWJlbCA/PyBzZWxlY3RlZFZhbHVlO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc1ZhbHVlID0gY29tcHV0ZWQoKCkgPT4gISF0aGlzLmN1cnJlbnRWYWx1ZSgpKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmlsdGVyKCkuZmllbGQgYXMgQ3VpU2VsZWN0RmlsdGVyRmllbGQ7XHJcblxyXG4gICAgICAgIHJldHVybiBmaWVsZC5zZWxlY3RPcHRpb25zID8/IFtdO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uUmVtb3ZlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlZC5lbWl0KHRoaXMuZmlsdGVyKCkuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBpc09wdGlvblNlbGVjdGVkKHZhbHVlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jdXJyZW50VmFsdWUoKSA9PT0gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIHNlbGVjdE9wdGlvbih2YWx1ZTogc3RyaW5nLCBkcm9wZG93bjogQ3VpRHJvcGRvd25EaXJlY3RpdmUpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcclxuXHJcbiAgICAgICAgaWYgKGYudmFsdWUudHlwZSAhPT0gJ3NlbGVjdCcpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoe1xyXG4gICAgICAgICAgICAuLi5mLFxyXG4gICAgICAgICAgICB2YWx1ZTogeyAuLi5mLnZhbHVlLCB2YWx1ZTogZi52YWx1ZS52YWx1ZSA9PT0gdmFsdWUgPyBudWxsIDogdmFsdWUgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGRyb3Bkb3duLmNsb3NlKCk7XHJcbiAgICB9XHJcbn0iLCI8Y3VpLWZpbHRlci1yZW1vdmUtYnV0dG9uXHJcbiAgICBbbGFiZWxdPVwiZmlsdGVyKCkuZmllbGQubGFiZWxcIlxyXG4gICAgKHJlbW92ZWQpPVwib25SZW1vdmUoKVwiXHJcbi8+XHJcblxyXG48YnV0dG9uXHJcbiAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgIGNsYXNzPVwic2VsZWN0LWZpbHRlcl9fdHJpZ2dlclwiXHJcbiAgICBbY2xhc3Muc2VsZWN0LWZpbHRlcl9fdHJpZ2dlci0tYWN0aXZlXT1cImhhc1ZhbHVlKClcIlxyXG4gICAgW2N1aURyb3Bkb3duXT1cImRyb3Bkb3duVHBsXCJcclxuICAgICNkcm9wZG93bj1cImN1aURyb3Bkb3duXCJcclxuPlxyXG4gICAgQGlmIChoYXNWYWx1ZSgpKSB7XHJcbiAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3QtZmlsdGVyX192YWx1ZVwiXHJcbiAgICAgICAgICAgIFtjdWlUb29sdGlwXT1cImN1cnJlbnRMYWJlbCgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGN1cnJlbnRMYWJlbCgpIH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzZWxlY3QtZmlsdGVyX19wbGFjZWhvbGRlclwiPnt7IHRyYW5zbGF0aW9ucygpLnNlbGVjdFZhbHVlIH19PC9zcGFuPlxyXG4gICAgfVxyXG4gICAgPGN1aS1zdmcgaWNvbj1cImN1aUljb25DaGV2cm9uRG93blwiIC8+XHJcbjwvYnV0dG9uPlxyXG5cclxuPG5nLXRlbXBsYXRlICNkcm9wZG93blRwbD5cclxuICAgIDxkaXYgY2xhc3M9XCJzZWxlY3QtZmlsdGVyX19kcm9wZG93blwiPlxyXG4gICAgICAgIEBmb3IgKG9wdCBvZiBvcHRpb25zKCk7IHRyYWNrIG9wdC52YWx1ZSkge1xyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2VsZWN0LWZpbHRlcl9fb3B0aW9uXCJcclxuICAgICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3QtZmlsdGVyX19vcHRpb24tLXNlbGVjdGVkXT1cImlzT3B0aW9uU2VsZWN0ZWQob3B0LnZhbHVlKVwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0T3B0aW9uKG9wdC52YWx1ZSwgZHJvcGRvd24pXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgb3B0LmxhYmVsIH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIH1cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, computed, input, output, signal } from '@angular/core';
|
|
2
2
|
import { FormsModule } from '@angular/forms';
|
|
3
|
-
import { TranslocoPipe } from '@jsverse/transloco';
|
|
4
3
|
import { CuiButtonModule } from '../../../../components/button';
|
|
5
4
|
import { CuiDropdownDirective } from '../../../../components/dropdown';
|
|
6
5
|
import { CuiInputModule } from '../../../../components/input-text';
|
|
@@ -16,6 +15,7 @@ import * as i5 from "@angular/forms";
|
|
|
16
15
|
export class CuiStringFilterComponent {
|
|
17
16
|
constructor() {
|
|
18
17
|
this.filter = input.required();
|
|
18
|
+
this.translations = input.required();
|
|
19
19
|
this.removed = output();
|
|
20
20
|
this.changed = output();
|
|
21
21
|
this.tmpValue = signal('');
|
|
@@ -48,7 +48,7 @@ export class CuiStringFilterComponent {
|
|
|
48
48
|
dropdown.close();
|
|
49
49
|
}
|
|
50
50
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiStringFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
51
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiStringFilterComponent, isStandalone: true, selector: "cui-string-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\n [label]=\"filter().field.label
|
|
51
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiStringFilterComponent, isStandalone: true, selector: "cui-string-filter", inputs: { filter: { classPropertyName: "filter", publicName: "filter", isSignal: true, isRequired: true, transformFunction: null }, translations: { classPropertyName: "translations", publicName: "translations", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { removed: "removed", changed: "changed" }, ngImport: i0, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"string-filter__trigger\"\r\n [class.string-filter__trigger--active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n #dropdown=\"cuiDropdown\"\r\n (isOpened)=\"onDropdownOpened($event)\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"string-filter__value\"\r\n [cuiTooltip]=\"currentValue()\"\r\n >\r\n {{ currentValue() }}\r\n </span>\r\n } @else {\r\n <span class=\"string-filter__placeholder\">{{ translations().enterValue }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"string-filter__dropdown\">\r\n <div class=\"string-filter__label\">\r\n {{ translations().filterBy }} {{ filter().field.label }}\r\n </div>\r\n <cui-input-text\r\n [ngModel]=\"tmpValue()\"\r\n (ngModelChange)=\"onTmpValueChange($event)\"\r\n maxlength=\"25\"\r\n [cuiTextFieldPlaceholder]=\"translations().enterValue\"\r\n />\r\n <div class=\"string-filter__footer\">\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"secondary\"\r\n (click)=\"dropdown.close()\"\r\n >\r\n {{ translations().cancel }}\r\n </button>\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"action-cyan\"\r\n (click)=\"applyValue(dropdown)\"\r\n >\r\n {{ translations().apply }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.string-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.string-filter__trigger:hover{background:var(--cui-base-200)}.string-filter__trigger:focus{outline:none}.string-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.string-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.string-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.string-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.string-filter__dropdown{display:flex;flex-direction:column;gap:12px;padding:8px;width:300px;max-width:calc(100vw - 16px);background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.string-filter__label{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-900)}.string-filter__footer{display:flex;flex-direction:row;gap:8px;justify-content:flex-end}\n"], dependencies: [{ kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "directive", type: CuiDropdownDirective, selector: "[cuiDropdown]", inputs: ["cuiDropdown", "orientation"], outputs: ["isOpened"], exportAs: ["cuiDropdown"] }, { kind: "component", type: CuiFilterRemoveButtonComponent, selector: "cui-filter-remove-button", inputs: ["label"], outputs: ["removed"] }, { kind: "ngmodule", type: CuiInputModule }, { kind: "component", type: i2.CuiInputTextComponent, selector: "cui-input-text" }, { kind: "directive", type: i3.CuiTextFieldPlaceholderDirective, selector: "[cuiTextFieldPlaceholder]", inputs: ["cuiTextFieldPlaceholder"] }, { kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i4.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "directive", type: CuiTooltipDirective, selector: "[cuiTooltip]:not(ng-container):not(ng-template)", inputs: ["cuiTooltipContext", "cuiTooltipAppearance", "cuiTooltip"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
52
52
|
}
|
|
53
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiStringFilterComponent, decorators: [{
|
|
54
54
|
type: Component,
|
|
@@ -59,8 +59,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
59
59
|
CuiInputModule,
|
|
60
60
|
CuiSvgModule,
|
|
61
61
|
CuiTooltipDirective,
|
|
62
|
-
FormsModule
|
|
63
|
-
|
|
64
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\n [label]=\"filter().field.label | transloco\"\n (removed)=\"onRemove()\"\n/>\n\n<button\n type=\"button\"\n class=\"string-filter__trigger\"\n [class.string-filter__trigger--active]=\"hasValue()\"\n [cuiDropdown]=\"dropdownTpl\"\n #dropdown=\"cuiDropdown\"\n (isOpened)=\"onDropdownOpened($event)\"\n>\n @if (hasValue()) {\n <span\n class=\"string-filter__value\"\n [cuiTooltip]=\"currentValue()\"\n >\n {{ currentValue() }}\n </span>\n } @else {\n <span class=\"string-filter__placeholder\">{{ 'ENTER_VALUE' | transloco }}</span>\n }\n <cui-svg icon=\"cuiIconChevronDown\" />\n</button>\n\n<ng-template #dropdownTpl>\n <div class=\"string-filter__dropdown\">\n <div class=\"string-filter__label\">\n {{ 'FILTER_BY' | transloco: { field: filter().field.label | transloco } }}\n </div>\n <cui-input-text\n [ngModel]=\"tmpValue()\"\n (ngModelChange)=\"onTmpValueChange($event)\"\n maxlength=\"25\"\n [cuiTextFieldPlaceholder]=\"'ENTER_VALUE' | transloco\"\n />\n <div class=\"string-filter__footer\">\n <button\n type=\"button\"\n cuiButton\n size=\"xs\"\n appearance=\"secondary\"\n (click)=\"dropdown.close()\"\n >\n {{ 'CANCEL' | transloco }}\n </button>\n <button\n type=\"button\"\n cuiButton\n size=\"xs\"\n appearance=\"action-cyan\"\n (click)=\"applyValue(dropdown)\"\n >\n {{ 'APPLY' | transloco }}\n </button>\n </div>\n </div>\n</ng-template>", styles: [":host{display:inline-flex}.string-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.string-filter__trigger:hover{background:var(--cui-base-200)}.string-filter__trigger:focus{outline:none}.string-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.string-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.string-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.string-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.string-filter__dropdown{display:flex;flex-direction:column;gap:12px;padding:8px;width:300px;max-width:calc(100vw - 16px);background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.string-filter__label{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-900)}.string-filter__footer{display:flex;flex-direction:row;gap:8px;justify-content:flex-end}\n"] }]
|
|
62
|
+
FormsModule
|
|
63
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-filter-remove-button\r\n [label]=\"filter().field.label\"\r\n (removed)=\"onRemove()\"\r\n/>\r\n\r\n<button\r\n type=\"button\"\r\n class=\"string-filter__trigger\"\r\n [class.string-filter__trigger--active]=\"hasValue()\"\r\n [cuiDropdown]=\"dropdownTpl\"\r\n #dropdown=\"cuiDropdown\"\r\n (isOpened)=\"onDropdownOpened($event)\"\r\n>\r\n @if (hasValue()) {\r\n <span\r\n class=\"string-filter__value\"\r\n [cuiTooltip]=\"currentValue()\"\r\n >\r\n {{ currentValue() }}\r\n </span>\r\n } @else {\r\n <span class=\"string-filter__placeholder\">{{ translations().enterValue }}</span>\r\n }\r\n <cui-svg icon=\"cuiIconChevronDown\" />\r\n</button>\r\n\r\n<ng-template #dropdownTpl>\r\n <div class=\"string-filter__dropdown\">\r\n <div class=\"string-filter__label\">\r\n {{ translations().filterBy }} {{ filter().field.label }}\r\n </div>\r\n <cui-input-text\r\n [ngModel]=\"tmpValue()\"\r\n (ngModelChange)=\"onTmpValueChange($event)\"\r\n maxlength=\"25\"\r\n [cuiTextFieldPlaceholder]=\"translations().enterValue\"\r\n />\r\n <div class=\"string-filter__footer\">\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"secondary\"\r\n (click)=\"dropdown.close()\"\r\n >\r\n {{ translations().cancel }}\r\n </button>\r\n <button\r\n type=\"button\"\r\n cuiButton\r\n size=\"xs\"\r\n appearance=\"action-cyan\"\r\n (click)=\"applyValue(dropdown)\"\r\n >\r\n {{ translations().apply }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-flex}.string-filter__trigger{padding:6px;font-weight:500;font-size:12px;line-height:14px;display:inline-flex;align-items:center;gap:8px;height:28px;background:transparent;border:1px solid var(--cui-base-200);border-top-right-radius:8px;border-bottom-right-radius:8px;cursor:pointer}.string-filter__trigger:hover{background:var(--cui-base-200)}.string-filter__trigger:focus{outline:none}.string-filter__trigger--active{background:var(--cui-lavender-bg);border-color:var(--cui-badge-lavender-label)}.string-filter__trigger--active:hover{background:var(--cui-base-200);border-color:var(--cui-base-200)}.string-filter__value{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-900);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.string-filter__placeholder{font-weight:500;font-size:12px;line-height:14px;color:var(--cui-base-500)}.string-filter__dropdown{display:flex;flex-direction:column;gap:12px;padding:8px;width:300px;max-width:calc(100vw - 16px);background:var(--cui-base-0);border:1px solid var(--cui-base-200);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden}.string-filter__label{font-weight:500;font-size:13px;line-height:16px;color:var(--cui-base-900)}.string-filter__footer{display:flex;flex-direction:row;gap:8px;justify-content:flex-end}\n"] }]
|
|
65
64
|
}] });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL3N0cmluZy1maWx0ZXIvc3RyaW5nLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9jb21wb25lbnRzL3N0cmluZy1maWx0ZXIvc3RyaW5nLWZpbHRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7Ozs7OztBQWtCeEcsTUFBTSxPQUFPLHdCQUF3QjtJQWhCckM7UUFpQm9CLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFtQixDQUFDO1FBQzNDLGlCQUFZLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBNEIsQ0FBQztRQUMxRCxZQUFPLEdBQUcsTUFBTSxFQUFVLENBQUM7UUFDM0IsWUFBTyxHQUFHLE1BQU0sRUFBbUIsQ0FBQztRQUVqQyxhQUFRLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXRCLGlCQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM1QyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFFeEIsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDMUQsQ0FBQyxDQUFDLENBQUM7UUFFZ0IsYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7S0E2QnZFO0lBM0JhLFFBQVE7UUFDZCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVTLGdCQUFnQixDQUFDLE1BQWU7UUFDdEMsSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQzNDLENBQUM7SUFDTCxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsS0FBYTtRQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRVMsVUFBVSxDQUFDLFFBQThCO1FBQy9DLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUV4QixJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDZCxHQUFHLENBQUM7WUFDSixLQUFLLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRTtTQUNoRCxDQUFDLENBQUM7UUFDSCxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckIsQ0FBQzsrR0ExQ1Esd0JBQXdCO21HQUF4Qix3QkFBd0Isb1pDM0JyQywwM0RBMERjLDYyQ0QzQ04sZUFBZSxvT0FDZixvQkFBb0Isb0pBQ3BCLDhCQUE4Qiw2R0FDOUIsY0FBYywrUEFDZCxZQUFZLHdLQUNaLG1CQUFtQixnS0FDbkIsV0FBVzs7NEZBTU4sd0JBQXdCO2tCQWhCcEMsU0FBUzsrQkFDSSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQO3dCQUNMLGVBQWU7d0JBQ2Ysb0JBQW9CO3dCQUNwQiw4QkFBOEI7d0JBQzlCLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFdBQVc7cUJBQ2QsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIG91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgQ3VpQnV0dG9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9idXR0b24nO1xyXG5pbXBvcnQgeyBDdWlEcm9wZG93bkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvZHJvcGRvd24nO1xyXG5pbXBvcnQgeyBDdWlJbnB1dE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvaW5wdXQtdGV4dCc7XHJcbmltcG9ydCB7IEN1aVN2Z01vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvc3ZnJztcclxuaW1wb3J0IHsgQ3VpVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xyXG5pbXBvcnQgdHlwZSB7IEN1aUFjdGl2ZUZpbHRlciwgQ3VpRmlsdGVyQmFyVHJhbnNsYXRpb25zIH0gZnJvbSAnLi4vLi4vZmlsdGVyLWJhci5pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQ3VpRmlsdGVyUmVtb3ZlQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vZmlsdGVyLXJlbW92ZS1idXR0b24vZmlsdGVyLXJlbW92ZS1idXR0b24uY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjdWktc3RyaW5nLWZpbHRlcicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBDdWlEcm9wZG93bkRpcmVjdGl2ZSxcclxuICAgICAgICBDdWlGaWx0ZXJSZW1vdmVCdXR0b25Db21wb25lbnQsXHJcbiAgICAgICAgQ3VpSW5wdXRNb2R1bGUsXHJcbiAgICAgICAgQ3VpU3ZnTW9kdWxlLFxyXG4gICAgICAgIEN1aVRvb2x0aXBEaXJlY3RpdmUsXHJcbiAgICAgICAgRm9ybXNNb2R1bGVcclxuICAgIF0sXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc3RyaW5nLWZpbHRlci50ZW1wbGF0ZS5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3N0cmluZy1maWx0ZXIuc3R5bGUuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEN1aVN0cmluZ0ZpbHRlckNvbXBvbmVudCB7XHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgZmlsdGVyID0gaW5wdXQucmVxdWlyZWQ8Q3VpQWN0aXZlRmlsdGVyPigpO1xyXG4gICAgcHVibGljIHJlYWRvbmx5IHRyYW5zbGF0aW9ucyA9IGlucHV0LnJlcXVpcmVkPEN1aUZpbHRlckJhclRyYW5zbGF0aW9ucz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSByZW1vdmVkID0gb3V0cHV0PHN0cmluZz4oKTtcclxuICAgIHB1YmxpYyByZWFkb25seSBjaGFuZ2VkID0gb3V0cHV0PEN1aUFjdGl2ZUZpbHRlcj4oKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdG1wVmFsdWUgPSBzaWduYWwoJycpO1xyXG5cclxuICAgIHByb3RlY3RlZCByZWFkb25seSBjdXJyZW50VmFsdWUgPSBjb21wdXRlZCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgZiA9IHRoaXMuZmlsdGVyKCk7XHJcblxyXG4gICAgICAgIHJldHVybiBmLnZhbHVlLnR5cGUgPT09ICdzdHJpbmcnID8gZi52YWx1ZS52YWx1ZSA6ICcnO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhhc1ZhbHVlID0gY29tcHV0ZWQoKCkgPT4gISF0aGlzLmN1cnJlbnRWYWx1ZSgpKTtcclxuXHJcbiAgICBwcm90ZWN0ZWQgb25SZW1vdmUoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVkLmVtaXQodGhpcy5maWx0ZXIoKS5pZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uRHJvcGRvd25PcGVuZWQob3BlbmVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKG9wZW5lZCkge1xyXG4gICAgICAgICAgICB0aGlzLnRtcFZhbHVlLnNldCh0aGlzLmN1cnJlbnRWYWx1ZSgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvdGVjdGVkIG9uVG1wVmFsdWVDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMudG1wVmFsdWUuc2V0KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgYXBwbHlWYWx1ZShkcm9wZG93bjogQ3VpRHJvcGRvd25EaXJlY3RpdmUpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBmID0gdGhpcy5maWx0ZXIoKTtcclxuXHJcbiAgICAgICAgaWYgKGYudmFsdWUudHlwZSAhPT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoe1xyXG4gICAgICAgICAgICAuLi5mLFxyXG4gICAgICAgICAgICB2YWx1ZTogeyAuLi5mLnZhbHVlLCB2YWx1ZTogdGhpcy50bXBWYWx1ZSgpIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICBkcm9wZG93bi5jbG9zZSgpO1xyXG4gICAgfVxyXG59IiwiPGN1aS1maWx0ZXItcmVtb3ZlLWJ1dHRvblxyXG4gICAgW2xhYmVsXT1cImZpbHRlcigpLmZpZWxkLmxhYmVsXCJcclxuICAgIChyZW1vdmVkKT1cIm9uUmVtb3ZlKClcIlxyXG4vPlxyXG5cclxuPGJ1dHRvblxyXG4gICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICBjbGFzcz1cInN0cmluZy1maWx0ZXJfX3RyaWdnZXJcIlxyXG4gICAgW2NsYXNzLnN0cmluZy1maWx0ZXJfX3RyaWdnZXItLWFjdGl2ZV09XCJoYXNWYWx1ZSgpXCJcclxuICAgIFtjdWlEcm9wZG93bl09XCJkcm9wZG93blRwbFwiXHJcbiAgICAjZHJvcGRvd249XCJjdWlEcm9wZG93blwiXHJcbiAgICAoaXNPcGVuZWQpPVwib25Ecm9wZG93bk9wZW5lZCgkZXZlbnQpXCJcclxuPlxyXG4gICAgQGlmIChoYXNWYWx1ZSgpKSB7XHJcbiAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgY2xhc3M9XCJzdHJpbmctZmlsdGVyX192YWx1ZVwiXHJcbiAgICAgICAgICAgIFtjdWlUb29sdGlwXT1cImN1cnJlbnRWYWx1ZSgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICAgIHt7IGN1cnJlbnRWYWx1ZSgpIH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzdHJpbmctZmlsdGVyX19wbGFjZWhvbGRlclwiPnt7IHRyYW5zbGF0aW9ucygpLmVudGVyVmFsdWUgfX08L3NwYW4+XHJcbiAgICB9XHJcbiAgICA8Y3VpLXN2ZyBpY29uPVwiY3VpSWNvbkNoZXZyb25Eb3duXCIgLz5cclxuPC9idXR0b24+XHJcblxyXG48bmctdGVtcGxhdGUgI2Ryb3Bkb3duVHBsPlxyXG4gICAgPGRpdiBjbGFzcz1cInN0cmluZy1maWx0ZXJfX2Ryb3Bkb3duXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInN0cmluZy1maWx0ZXJfX2xhYmVsXCI+XHJcbiAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9ucygpLmZpbHRlckJ5IH19IHt7IGZpbHRlcigpLmZpZWxkLmxhYmVsIH19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGN1aS1pbnB1dC10ZXh0XHJcbiAgICAgICAgICAgIFtuZ01vZGVsXT1cInRtcFZhbHVlKClcIlxyXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblRtcFZhbHVlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCIyNVwiXHJcbiAgICAgICAgICAgIFtjdWlUZXh0RmllbGRQbGFjZWhvbGRlcl09XCJ0cmFuc2xhdGlvbnMoKS5lbnRlclZhbHVlXCJcclxuICAgICAgICAvPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdHJpbmctZmlsdGVyX19mb290ZXJcIj5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cclxuICAgICAgICAgICAgICAgIHNpemU9XCJ4c1wiXHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwic2Vjb25kYXJ5XCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkcm9wZG93bi5jbG9zZSgpXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAge3sgdHJhbnNsYXRpb25zKCkuY2FuY2VsIH19XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uXHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxyXG4gICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcclxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJhY3Rpb24tY3lhblwiXHJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYXBwbHlWYWx1ZShkcm9wZG93bilcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7eyB0cmFuc2xhdGlvbnMoKS5hcHBseSB9fVxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, computed, input, output, signal } from '@angular/core';
|
|
2
2
|
import { CuiAddFilterButtonComponent, CuiDateFilterComponent, CuiFilterRemoveButtonComponent, CuiMultiSelectFilterComponent, CuiRangeFilterComponent, CuiSelectFilterComponent, CuiStringFilterComponent } from './components';
|
|
3
|
+
import { CUI_FILTER_BAR_DEFAULT_TRANSLATIONS } from './filter-bar.interfaces';
|
|
3
4
|
import { buildDefaultValue, buildOutputObject } from './filter-bar.utils';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export class CuiFilterBarComponent {
|
|
6
7
|
constructor() {
|
|
7
8
|
this.fields = input.required();
|
|
9
|
+
this.translations = input(CUI_FILTER_BAR_DEFAULT_TRANSLATIONS);
|
|
8
10
|
this.filterChange = output();
|
|
9
11
|
this._filters = signal([]);
|
|
10
12
|
this.availableFields = computed(() => {
|
|
@@ -35,7 +37,7 @@ export class CuiFilterBarComponent {
|
|
|
35
37
|
this.filterChange.emit(buildOutputObject(this._filters()));
|
|
36
38
|
}
|
|
37
39
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiFilterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiFilterBarComponent, isStandalone: true, selector: "cui-filter-bar", inputs: { fields: { classPropertyName: "fields", publicName: "fields", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { filterChange: "filterChange" }, ngImport: i0, template: "<div class=\"cui-filter-bar\">\n <div class=\"cui-filter-bar__list\">\n @for (filter of _filters(); track filter.id) {\n @switch (filter.field.type) {\n @case ('string') {\n <cui-string-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('date') {\n <cui-date-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('range') {\n <cui-range-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('select') {\n <cui-select-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('multiselect') {\n <cui-multiselect-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n }\n }\n\n @if (availableFields().length > 0) {\n <cui-add-filter-button\n [availableFields]=\"availableFields()\"\n (fieldSelected)=\"selectField($event)\"\n />\n }\n </div>\n</div>\n", styles: [".cui-filter-bar{display:flex;flex-direction:row;gap:12px}.cui-filter-bar__list{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap}\n"], dependencies: [{ kind: "component", type: CuiAddFilterButtonComponent, selector: "cui-add-filter-button", inputs: ["availableFields"], outputs: ["fieldSelected"] }, { kind: "component", type: CuiDateFilterComponent, selector: "cui-date-filter", inputs: ["filter"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiMultiSelectFilterComponent, selector: "cui-multiselect-filter", inputs: ["filter"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiRangeFilterComponent, selector: "cui-range-filter", inputs: ["filter"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiSelectFilterComponent, selector: "cui-select-filter", inputs: ["filter"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiStringFilterComponent, selector: "cui-string-filter", inputs: ["filter"], outputs: ["removed", "changed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
40
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiFilterBarComponent, isStandalone: true, selector: "cui-filter-bar", inputs: { fields: { classPropertyName: "fields", publicName: "fields", isSignal: true, isRequired: true, transformFunction: null }, translations: { classPropertyName: "translations", publicName: "translations", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { filterChange: "filterChange" }, ngImport: i0, template: "<div class=\"cui-filter-bar\">\r\n <div class=\"cui-filter-bar__list\">\r\n @for (filter of _filters(); track filter.id) {\r\n @switch (filter.field.type) {\r\n @case ('string') {\r\n <cui-string-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('date') {\r\n <cui-date-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('range') {\r\n <cui-range-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('select') {\r\n <cui-select-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('multiselect') {\r\n <cui-multiselect-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n }\r\n }\r\n\r\n @if (availableFields().length > 0) {\r\n <cui-add-filter-button\r\n [availableFields]=\"availableFields()\"\r\n [addFilterLabel]=\"translations().addFilter\"\r\n (fieldSelected)=\"selectField($event)\"\r\n />\r\n }\r\n </div>\r\n</div>\r\n", styles: [".cui-filter-bar{display:flex;flex-direction:row;gap:12px}.cui-filter-bar__list{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap}\n"], dependencies: [{ kind: "component", type: CuiAddFilterButtonComponent, selector: "cui-add-filter-button", inputs: ["availableFields", "addFilterLabel"], outputs: ["fieldSelected"] }, { kind: "component", type: CuiDateFilterComponent, selector: "cui-date-filter", inputs: ["filter", "translations"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiMultiSelectFilterComponent, selector: "cui-multiselect-filter", inputs: ["filter", "translations"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiRangeFilterComponent, selector: "cui-range-filter", inputs: ["filter", "translations"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiSelectFilterComponent, selector: "cui-select-filter", inputs: ["filter", "translations"], outputs: ["removed", "changed"] }, { kind: "component", type: CuiStringFilterComponent, selector: "cui-string-filter", inputs: ["filter", "translations"], outputs: ["removed", "changed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
39
41
|
}
|
|
40
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiFilterBarComponent, decorators: [{
|
|
41
43
|
type: Component,
|
|
@@ -47,6 +49,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
47
49
|
CuiRangeFilterComponent,
|
|
48
50
|
CuiSelectFilterComponent,
|
|
49
51
|
CuiStringFilterComponent
|
|
50
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cui-filter-bar\">\n <div class=\"cui-filter-bar__list\">\n @for (filter of _filters(); track filter.id) {\n @switch (filter.field.type) {\n @case ('string') {\n <cui-string-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('date') {\n <cui-date-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('range') {\n <cui-range-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('select') {\n <cui-select-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n @case ('multiselect') {\n <cui-multiselect-filter\n [filter]=\"filter\"\n (changed)=\"onFilterChanged($event)\"\n (removed)=\"onFilterRemoved($event)\"\n />\n }\n }\n }\n\n @if (availableFields().length > 0) {\n <cui-add-filter-button\n [availableFields]=\"availableFields()\"\n (fieldSelected)=\"selectField($event)\"\n />\n }\n </div>\n</div>\n", styles: [".cui-filter-bar{display:flex;flex-direction:row;gap:12px}.cui-filter-bar__list{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap}\n"] }]
|
|
52
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"cui-filter-bar\">\r\n <div class=\"cui-filter-bar__list\">\r\n @for (filter of _filters(); track filter.id) {\r\n @switch (filter.field.type) {\r\n @case ('string') {\r\n <cui-string-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('date') {\r\n <cui-date-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('range') {\r\n <cui-range-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('select') {\r\n <cui-select-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n @case ('multiselect') {\r\n <cui-multiselect-filter\r\n [filter]=\"filter\"\r\n [translations]=\"translations()\"\r\n (changed)=\"onFilterChanged($event)\"\r\n (removed)=\"onFilterRemoved($event)\"\r\n />\r\n }\r\n }\r\n }\r\n\r\n @if (availableFields().length > 0) {\r\n <cui-add-filter-button\r\n [availableFields]=\"availableFields()\"\r\n [addFilterLabel]=\"translations().addFilter\"\r\n (fieldSelected)=\"selectField($event)\"\r\n />\r\n }\r\n </div>\r\n</div>\r\n", styles: [".cui-filter-bar{display:flex;flex-direction:row;gap:12px}.cui-filter-bar__list{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap}\n"] }]
|
|
51
53
|
}] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZmlsdGVyLWJhci9maWx0ZXItYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9maWx0ZXItYmFyL2ZpbHRlci1iYXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRyxPQUFPLEVBQ0gsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0Qiw4QkFBOEIsRUFDOUIsNkJBQTZCLEVBQzdCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQzNCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQWtCMUUsTUFBTSxPQUFPLHFCQUFxQjtJQWhCbEM7UUFpQmEsV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQW9CLENBQUM7UUFDNUMsaUJBQVksR0FBRyxLQUFLLENBQTJCLG1DQUFtQyxDQUFDLENBQUM7UUFFcEYsaUJBQVksR0FBRyxNQUFNLEVBQTJCLENBQUM7UUFFakQsYUFBUSxHQUFHLE1BQU0sQ0FBb0IsRUFBRSxDQUFDLENBQUM7UUFFekMsb0JBQWUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3JDLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkUsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0tBNEJOO0lBMUJhLFdBQVcsQ0FBQyxLQUFxQjtRQUN2QyxNQUFNLFNBQVMsR0FBb0I7WUFDL0IsRUFBRSxFQUFFLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDdkIsS0FBSztZQUNMLEtBQUssRUFBRSxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7U0FDbEMsQ0FBQztRQUVGLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsZUFBZSxDQUFDLE9BQXdCO1FBQzlDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFUyxlQUFlLENBQUMsRUFBVTtRQUNoQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN0RCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQzsrR0F0Q1EscUJBQXFCO21HQUFyQixxQkFBcUIsd1lDL0JsQyxrMEVBd0RBLGtNRHJDUSwyQkFBMkIsNklBQzNCLHNCQUFzQixpSUFFdEIsNkJBQTZCLHdJQUM3Qix1QkFBdUIsa0lBQ3ZCLHdCQUF3QixtSUFDeEIsd0JBQXdCOzs0RkFNbkIscUJBQXFCO2tCQWhCakMsU0FBUzsrQkFDSSxnQkFBZ0IsY0FDZCxJQUFJLFdBQ1A7d0JBQ0wsMkJBQTJCO3dCQUMzQixzQkFBc0I7d0JBQ3RCLDhCQUE4Qjt3QkFDOUIsNkJBQTZCO3dCQUM3Qix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3FCQUMzQixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgb3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7XHJcbiAgICBDdWlBZGRGaWx0ZXJCdXR0b25Db21wb25lbnQsXHJcbiAgICBDdWlEYXRlRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgQ3VpRmlsdGVyUmVtb3ZlQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgQ3VpTXVsdGlTZWxlY3RGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBDdWlSYW5nZUZpbHRlckNvbXBvbmVudCxcclxuICAgIEN1aVNlbGVjdEZpbHRlckNvbXBvbmVudCxcclxuICAgIEN1aVN0cmluZ0ZpbHRlckNvbXBvbmVudFxyXG59IGZyb20gJy4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB0eXBlIHsgQ3VpQWN0aXZlRmlsdGVyLCBDdWlGaWx0ZXJCYXJUcmFuc2xhdGlvbnMsIEN1aUZpbHRlckZpZWxkIH0gZnJvbSAnLi9maWx0ZXItYmFyLmludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBDVUlfRklMVEVSX0JBUl9ERUZBVUxUX1RSQU5TTEFUSU9OUyB9IGZyb20gJy4vZmlsdGVyLWJhci5pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgYnVpbGREZWZhdWx0VmFsdWUsIGJ1aWxkT3V0cHV0T2JqZWN0IH0gZnJvbSAnLi9maWx0ZXItYmFyLnV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjdWktZmlsdGVyLWJhcicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIEN1aUFkZEZpbHRlckJ1dHRvbkNvbXBvbmVudCxcclxuICAgICAgICBDdWlEYXRlRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgICAgIEN1aUZpbHRlclJlbW92ZUJ1dHRvbkNvbXBvbmVudCxcclxuICAgICAgICBDdWlNdWx0aVNlbGVjdEZpbHRlckNvbXBvbmVudCxcclxuICAgICAgICBDdWlSYW5nZUZpbHRlckNvbXBvbmVudCxcclxuICAgICAgICBDdWlTZWxlY3RGaWx0ZXJDb21wb25lbnQsXHJcbiAgICAgICAgQ3VpU3RyaW5nRmlsdGVyQ29tcG9uZW50XHJcbiAgICBdLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlci1iYXIudGVtcGxhdGUuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9maWx0ZXItYmFyLnN0eWxlLnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDdWlGaWx0ZXJCYXJDb21wb25lbnQge1xyXG4gICAgcmVhZG9ubHkgZmllbGRzID0gaW5wdXQucmVxdWlyZWQ8Q3VpRmlsdGVyRmllbGRbXT4oKTtcclxuICAgIHJlYWRvbmx5IHRyYW5zbGF0aW9ucyA9IGlucHV0PEN1aUZpbHRlckJhclRyYW5zbGF0aW9ucz4oQ1VJX0ZJTFRFUl9CQVJfREVGQVVMVF9UUkFOU0xBVElPTlMpO1xyXG5cclxuICAgIHJlYWRvbmx5IGZpbHRlckNoYW5nZSA9IG91dHB1dDxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oKTtcclxuXHJcbiAgICByZWFkb25seSBfZmlsdGVycyA9IHNpZ25hbDxDdWlBY3RpdmVGaWx0ZXJbXT4oW10pO1xyXG5cclxuICAgIHJlYWRvbmx5IGF2YWlsYWJsZUZpZWxkcyA9IGNvbXB1dGVkKCgpID0+IHtcclxuICAgICAgICBjb25zdCB1c2VkRmllbGRJZHMgPSBuZXcgU2V0KHRoaXMuX2ZpbHRlcnMoKS5tYXAoZiA9PiBmLmZpZWxkLmlkKSk7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZmllbGRzKCkuZmlsdGVyKGYgPT4gIXVzZWRGaWVsZElkcy5oYXMoZi5pZCkpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgcHJvdGVjdGVkIHNlbGVjdEZpZWxkKGZpZWxkOiBDdWlGaWx0ZXJGaWVsZCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IG5ld0ZpbHRlcjogQ3VpQWN0aXZlRmlsdGVyID0ge1xyXG4gICAgICAgICAgICBpZDogY3J5cHRvLnJhbmRvbVVVSUQoKSxcclxuICAgICAgICAgICAgZmllbGQsXHJcbiAgICAgICAgICAgIHZhbHVlOiBidWlsZERlZmF1bHRWYWx1ZShmaWVsZClcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLl9maWx0ZXJzLnNldChbLi4udGhpcy5fZmlsdGVycygpLCBuZXdGaWx0ZXJdKTtcclxuICAgICAgICB0aGlzLmVtaXRGaWx0ZXJDaGFuZ2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25GaWx0ZXJDaGFuZ2VkKHVwZGF0ZWQ6IEN1aUFjdGl2ZUZpbHRlcik6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLl9maWx0ZXJzKCkubWFwKGYgPT4gKGYuaWQgPT09IHVwZGF0ZWQuaWQgPyB1cGRhdGVkIDogZikpO1xyXG4gICAgICAgIHRoaXMuX2ZpbHRlcnMuc2V0KG5leHQpO1xyXG4gICAgICAgIHRoaXMuZW1pdEZpbHRlckNoYW5nZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBvbkZpbHRlclJlbW92ZWQoaWQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IG5leHQgPSB0aGlzLl9maWx0ZXJzKCkuZmlsdGVyKGYgPT4gZi5pZCAhPT0gaWQpO1xyXG4gICAgICAgIHRoaXMuX2ZpbHRlcnMuc2V0KG5leHQpO1xyXG4gICAgICAgIHRoaXMuZW1pdEZpbHRlckNoYW5nZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZW1pdEZpbHRlckNoYW5nZSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZpbHRlckNoYW5nZS5lbWl0KGJ1aWxkT3V0cHV0T2JqZWN0KHRoaXMuX2ZpbHRlcnMoKSkpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjdWktZmlsdGVyLWJhclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImN1aS1maWx0ZXItYmFyX19saXN0XCI+XHJcbiAgICAgICAgQGZvciAoZmlsdGVyIG9mIF9maWx0ZXJzKCk7IHRyYWNrIGZpbHRlci5pZCkge1xyXG4gICAgICAgICAgICBAc3dpdGNoIChmaWx0ZXIuZmllbGQudHlwZSkge1xyXG4gICAgICAgICAgICAgICAgQGNhc2UgKCdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGN1aS1zdHJpbmctZmlsdGVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJdPVwiZmlsdGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zbGF0aW9uc109XCJ0cmFuc2xhdGlvbnMoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2VkKT1cIm9uRmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwib25GaWx0ZXJSZW1vdmVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAY2FzZSAoJ2RhdGUnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGN1aS1kYXRlLWZpbHRlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyXT1cImZpbHRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2xhdGlvbnNdPVwidHJhbnNsYXRpb25zKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlZCk9XCJvbkZpbHRlckNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChyZW1vdmVkKT1cIm9uRmlsdGVyUmVtb3ZlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGNhc2UgKCdyYW5nZScpIHtcclxuICAgICAgICAgICAgICAgICAgICA8Y3VpLXJhbmdlLWZpbHRlclxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZmlsdGVyXT1cImZpbHRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0cmFuc2xhdGlvbnNdPVwidHJhbnNsYXRpb25zKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlZCk9XCJvbkZpbHRlckNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChyZW1vdmVkKT1cIm9uRmlsdGVyUmVtb3ZlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGNhc2UgKCdzZWxlY3QnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGN1aS1zZWxlY3QtZmlsdGVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJdPVwiZmlsdGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zbGF0aW9uc109XCJ0cmFuc2xhdGlvbnMoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2VkKT1cIm9uRmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwib25GaWx0ZXJSZW1vdmVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAY2FzZSAoJ211bHRpc2VsZWN0Jykge1xyXG4gICAgICAgICAgICAgICAgICAgIDxjdWktbXVsdGlzZWxlY3QtZmlsdGVyXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmaWx0ZXJdPVwiZmlsdGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zbGF0aW9uc109XCJ0cmFuc2xhdGlvbnMoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2VkKT1cIm9uRmlsdGVyQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwib25GaWx0ZXJSZW1vdmVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpZiAoYXZhaWxhYmxlRmllbGRzKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICA8Y3VpLWFkZC1maWx0ZXItYnV0dG9uXHJcbiAgICAgICAgICAgICAgICBbYXZhaWxhYmxlRmllbGRzXT1cImF2YWlsYWJsZUZpZWxkcygpXCJcclxuICAgICAgICAgICAgICAgIFthZGRGaWx0ZXJMYWJlbF09XCJ0cmFuc2xhdGlvbnMoKS5hZGRGaWx0ZXJcIlxyXG4gICAgICAgICAgICAgICAgKGZpZWxkU2VsZWN0ZWQpPVwic2VsZWN0RmllbGQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgfVxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|