@koobiq/components 18.31.0 → 18.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion-trigger.component.scss +2 -0
- package/actions-panel/actions-panel-config.d.ts +2 -0
- package/actions-panel/actions-panel.d.ts +3 -57
- package/autocomplete/autocomplete-trigger.directive.d.ts +3 -4
- package/autocomplete/autocomplete.component.d.ts +1 -0
- package/autocomplete/autocomplete.module.d.ts +1 -1
- package/button-toggle/button-toggle.module.d.ts +3 -4
- package/code-block/code-block-highlight.d.ts +1 -2
- package/code-block/code-block.d.ts +57 -10
- package/core/common-behaviors/color.d.ts +3 -0
- package/core/common-behaviors/common-module.d.ts +16 -3
- package/core/form-field/form-field-ref.d.ts +5 -3
- package/core/option/action-container.d.ts +5 -0
- package/core/option/action-container.scss +45 -0
- package/core/option/action.d.ts +1 -4
- package/core/option/action.scss +13 -12
- package/core/option/index.d.ts +1 -0
- package/core/option/option.d.ts +6 -5
- package/core/public-api.d.ts +1 -0
- package/core/styles/common/_select.scss +60 -37
- package/core/styles/common/_tokens.scss +2 -0
- package/core/styles/theming/_theming.scss +0 -4
- package/core/tokens/index.d.ts +1 -0
- package/core/tokens/window.d.ts +5 -0
- package/core/validation/validation.d.ts +23 -2
- package/datepicker/datepicker-input.scss +1 -5
- package/dropdown/dropdown-trigger.directive.d.ts +1 -0
- package/ellipsis-center/ellipsis-center.directive.d.ts +7 -1
- package/esm2022/accordion/accordion-trigger.component.mjs +2 -2
- package/esm2022/accordion/accordion.component.mjs +2 -2
- package/esm2022/actions-panel/actions-panel-config.mjs +1 -1
- package/esm2022/actions-panel/actions-panel.mjs +16 -113
- package/esm2022/alert/alert.component.mjs +2 -2
- package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +9 -13
- package/esm2022/autocomplete/autocomplete.component.mjs +10 -2
- package/esm2022/autocomplete/autocomplete.module.mjs +5 -11
- package/esm2022/badge/badge.component.mjs +2 -2
- package/esm2022/breadcrumbs/breadcrumbs.mjs +3 -6
- package/esm2022/button/button.component.mjs +4 -3
- package/esm2022/button-toggle/button-toggle.component.mjs +2 -2
- package/esm2022/button-toggle/button-toggle.module.mjs +5 -6
- package/esm2022/checkbox/checkbox.mjs +2 -2
- package/esm2022/code-block/code-block-highlight.mjs +8 -12
- package/esm2022/code-block/code-block.mjs +60 -18
- package/esm2022/core/common-behaviors/color.mjs +4 -1
- package/esm2022/core/common-behaviors/common-module.mjs +19 -26
- package/esm2022/core/form-field/form-field-ref.mjs +3 -4
- package/esm2022/core/option/action-container.mjs +23 -0
- package/esm2022/core/option/action.mjs +16 -30
- package/esm2022/core/option/index.mjs +2 -1
- package/esm2022/core/option/optgroup.mjs +2 -2
- package/esm2022/core/option/option.mjs +10 -8
- package/esm2022/core/public-api.mjs +2 -1
- package/esm2022/core/tokens/index.mjs +2 -0
- package/esm2022/core/tokens/window.mjs +19 -0
- package/esm2022/core/utils/utils.mjs +2 -1
- package/esm2022/core/validation/validation.mjs +21 -2
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-body.component.mjs +3 -3
- package/esm2022/datepicker/calendar-header.component.mjs +3 -3
- package/esm2022/datepicker/datepicker-input.directive.mjs +5 -1
- package/esm2022/datepicker/datepicker.component.mjs +3 -3
- package/esm2022/dl/dl.component.mjs +2 -2
- package/esm2022/dropdown/dropdown-trigger.directive.mjs +4 -3
- package/esm2022/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +8 -1
- package/esm2022/empty-state/empty-state.component.mjs +2 -2
- package/esm2022/file-upload/multiple-file-upload.component.mjs +4 -4
- package/esm2022/file-upload/single-file-upload.component.mjs +2 -2
- package/esm2022/filter-bar/filter-bar.mjs +21 -5
- package/esm2022/filter-bar/filter-bar.types.mjs +1 -1
- package/esm2022/filter-bar/filter-reset.mjs +2 -1
- package/esm2022/filter-bar/filter-search.mjs +2 -2
- package/esm2022/filter-bar/filters.mjs +4 -3
- package/esm2022/filter-bar/pipe-add.mjs +2 -2
- package/esm2022/filter-bar/pipes/base-pipe.mjs +7 -2
- package/esm2022/filter-bar/pipes/pipe-date.mjs +6 -12
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +6 -12
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-select.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-text.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +2 -2
- package/esm2022/form-field/cleaner.mjs +11 -6
- package/esm2022/form-field/error.mjs +20 -0
- package/esm2022/form-field/fieldset.mjs +84 -0
- package/esm2022/form-field/form-field-control.mjs +2 -2
- package/esm2022/form-field/form-field.mjs +247 -74
- package/esm2022/form-field/form-field.module.mjs +59 -47
- package/esm2022/form-field/hint.mjs +10 -18
- package/esm2022/form-field/label.mjs +19 -0
- package/esm2022/form-field/password-hint.mjs +7 -6
- package/esm2022/form-field/password-toggle.mjs +52 -27
- package/esm2022/form-field/prefix.mjs +9 -3
- package/esm2022/form-field/public-api.mjs +5 -2
- package/esm2022/form-field/reactive-password-hint.mjs +65 -0
- package/esm2022/form-field/stepper.mjs +34 -16
- package/esm2022/form-field/suffix.mjs +8 -3
- package/esm2022/form-field/validate.directive.mjs +16 -19
- package/esm2022/input/input-number.mjs +7 -2
- package/esm2022/input/input-password.mjs +2 -2
- package/esm2022/input/input.module.mjs +1 -5
- package/esm2022/list/list-selection.component.mjs +5 -5
- package/esm2022/list/list.component.mjs +2 -2
- package/esm2022/list/list.module.mjs +12 -5
- package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
- package/esm2022/modal/modal-util.mjs +2 -1
- package/esm2022/modal/modal.component.mjs +2 -2
- package/esm2022/navbar/navbar-item.component.mjs +12 -13
- package/esm2022/navbar/navbar.component.mjs +2 -2
- package/esm2022/navbar/vertical-navbar.component.mjs +2 -2
- package/esm2022/overflow-items/overflow-items.mjs +27 -10
- package/esm2022/popover/popover-confirm.component.mjs +3 -3
- package/esm2022/popover/popover.component.mjs +3 -3
- package/esm2022/progress-bar/progress-bar.component.mjs +2 -2
- package/esm2022/progress-spinner/progress-spinner.component.mjs +2 -2
- package/esm2022/radio/radio.component.mjs +2 -2
- package/esm2022/radio/radio.module.mjs +4 -5
- package/esm2022/risk-level/risk-level.component.mjs +2 -2
- package/esm2022/scrollbar/scrollbar.component.mjs +14 -11
- package/esm2022/scrollbar/scrollbar.directive.mjs +2 -1
- package/esm2022/select/select.component.mjs +42 -22
- package/esm2022/sidepanel/sidepanel-container.component.mjs +3 -3
- package/esm2022/sidepanel/sidepanel.module.mjs +1 -5
- package/esm2022/splitter/splitter.component.mjs +5 -3
- package/esm2022/table/table.component.mjs +2 -2
- package/esm2022/tabs/paginated-tab-header.mjs +6 -2
- package/esm2022/tabs/tabs.module.mjs +1 -5
- package/esm2022/tags/tag-list.component.mjs +2 -2
- package/esm2022/textarea/textarea.component.mjs +7 -6
- package/esm2022/textarea/textarea.module.mjs +4 -5
- package/esm2022/timezone/timezone-option.component.mjs +2 -2
- package/esm2022/timezone/timezone-select.component.mjs +6 -4
- package/esm2022/toast/toast-animations.mjs +2 -2
- package/esm2022/toast/toast.component.mjs +3 -3
- package/esm2022/toggle/toggle.component.mjs +3 -3
- package/esm2022/toggle/toggle.module.mjs +4 -5
- package/esm2022/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/top-bar/top-bar.mjs +2 -2
- package/esm2022/tree/padding.directive.mjs +8 -6
- package/esm2022/tree/toggle.mjs +2 -2
- package/esm2022/tree/tree-option.component.mjs +3 -3
- package/esm2022/tree/tree-selection.component.mjs +2 -2
- package/esm2022/tree/tree.mjs +2 -2
- package/esm2022/tree/tree.module.mjs +8 -5
- package/esm2022/tree-select/tree-select.component.mjs +50 -31
- package/fesm2022/koobiq-components-accordion.mjs +4 -4
- package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs +16 -112
- package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-alert.mjs +2 -2
- package/fesm2022/koobiq-components-alert.mjs.map +1 -1
- package/fesm2022/koobiq-components-autocomplete.mjs +21 -24
- package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
- package/fesm2022/koobiq-components-badge.mjs +2 -2
- package/fesm2022/koobiq-components-badge.mjs.map +1 -1
- package/fesm2022/koobiq-components-breadcrumbs.mjs +2 -5
- package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs +7 -7
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +3 -2
- package/fesm2022/koobiq-components-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +2 -2
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +65 -28
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +109 -69
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +10 -6
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dl.mjs +2 -2
- package/fesm2022/koobiq-components-dl.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +5 -4
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-ellipsis-center.mjs +7 -0
- package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-empty-state.mjs +2 -2
- package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +5 -5
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +45 -35
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +611 -220
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +8 -6
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +17 -10
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +2 -2
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +3 -2
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +15 -16
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-overflow-items.mjs +26 -9
- package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +4 -4
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-bar.mjs +2 -2
- package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-spinner.mjs +2 -2
- package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
- package/fesm2022/koobiq-components-radio.mjs +6 -6
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-risk-level.mjs +2 -2
- package/fesm2022/koobiq-components-risk-level.mjs.map +1 -1
- package/fesm2022/koobiq-components-scrollbar.mjs +14 -10
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +42 -22
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +3 -6
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter.mjs +4 -2
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-table.mjs +2 -2
- package/fesm2022/koobiq-components-table.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +5 -5
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +2 -2
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +9 -8
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +7 -5
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +3 -3
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +6 -6
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +2 -2
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-top-bar.mjs +2 -2
- package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +50 -31
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +22 -17
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/_file-upload-theme.scss +9 -0
- package/file-upload/multiple-file-upload.component.d.ts +1 -1
- package/filter-bar/filter-bar.d.ts +2 -0
- package/filter-bar/filter-bar.types.d.ts +2 -2
- package/form-field/_fiedset-theme.scss +13 -0
- package/form-field/_form-field-theme.scss +29 -13
- package/form-field/_hint-theme.scss +21 -22
- package/form-field/cleaner.d.ts +5 -1
- package/form-field/cleaner.scss +1 -4
- package/form-field/error.d.ts +8 -0
- package/form-field/fieldset-tokens.scss +5 -0
- package/form-field/fieldset.d.ts +27 -0
- package/form-field/fieldset.scss +93 -0
- package/form-field/form-field-control.d.ts +1 -1
- package/form-field/form-field-tokens.scss +13 -3
- package/form-field/form-field.d.ts +210 -22
- package/form-field/form-field.module.d.ts +14 -12
- package/form-field/form-field.scss +58 -78
- package/form-field/hint.d.ts +5 -1
- package/form-field/hint.scss +3 -5
- package/form-field/label.d.ts +6 -0
- package/form-field/password-hint.d.ts +1 -1
- package/form-field/password-toggle.d.ts +25 -11
- package/form-field/password-toggle.scss +1 -2
- package/form-field/prefix.d.ts +2 -1
- package/form-field/public-api.d.ts +4 -1
- package/form-field/reactive-password-hint.d.ts +19 -0
- package/form-field/stepper.d.ts +20 -8
- package/form-field/stepper.scss +12 -11
- package/form-field/suffix.d.ts +2 -1
- package/form-field/validate.directive.d.ts +10 -12
- package/input/input-tokens.scss +2 -2
- package/input/input.module.d.ts +3 -4
- package/input/input.scss +1 -2
- package/list/_list-theme.scss +4 -1
- package/list/list.module.d.ts +2 -1
- package/list/list.scss +6 -12
- package/navbar/navbar-item.component.d.ts +3 -1
- package/overflow-items/overflow-items.d.ts +12 -5
- package/package.json +4 -4
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/prebuilt-themes/theme.css +1 -1
- package/radio/radio.module.d.ts +1 -2
- package/schematics/ng-add/index.js +3 -3
- package/scrollbar/scrollbar.component.d.ts +1 -0
- package/select/select-tokens.scss +5 -4
- package/select/select.component.d.ts +12 -3
- package/sidepanel/sidepanel.module.d.ts +5 -6
- package/splitter/splitter.component.d.ts +1 -0
- package/tabs/paginated-tab-header.d.ts +1 -0
- package/tabs/tabs.module.d.ts +5 -6
- package/tags/tag-list.scss +8 -4
- package/textarea/textarea.component.d.ts +1 -0
- package/textarea/textarea.module.d.ts +2 -3
- package/timepicker/timepicker.scss +1 -1
- package/toast/toast.component.scss +2 -0
- package/toggle/_toggle-theme.scss +10 -2
- package/toggle/toggle-tokens.scss +7 -1
- package/toggle/toggle.module.d.ts +1 -2
- package/toggle/toggle.scss +6 -6
- package/top-bar/top-bar.scss +48 -32
- package/tree/_tree-theme.scss +13 -2
- package/tree/padding.directive.d.ts +1 -1
- package/tree/tree-option.scss +12 -17
- package/tree/tree.module.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +10 -1
- package/esm2022/form-field/form-field-errors.mjs +0 -7
- package/form-field/form-field-errors.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koobiq-components-autocomplete.mjs","sources":["../../../packages/components/autocomplete/autocomplete-origin.directive.ts","../../../packages/components/autocomplete/autocomplete.component.ts","../../../packages/components/autocomplete/autocomplete.html","../../../packages/components/autocomplete/autocomplete-trigger.directive.ts","../../../packages/components/autocomplete/autocomplete.module.ts","../../../packages/components/autocomplete/koobiq-components-autocomplete.ts"],"sourcesContent":["import { Directive, ElementRef } from '@angular/core';\n\n/**\n * Directive applied to an element to make it usable\n * as a connection point for an autocomplete panel.\n */\n@Directive({\n selector: '[kbqAutocompleteOrigin]',\n exportAs: 'kbqAutocompleteOrigin'\n})\nexport class KbqAutocompleteOrigin {\n constructor(public elementRef: ElementRef<HTMLElement>) {}\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Host,\n Inject,\n InjectionToken,\n Input,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ActiveDescendantKeyManager } from '@koobiq/cdk/a11y';\nimport { KBQ_OPTION_PARENT_COMPONENT, KbqOptgroup, KbqOption } from '@koobiq/components/core';\nimport { KbqFormField } from '@koobiq/components/form-field';\n\n/**\n * Autocomplete IDs need to be unique across components, so this counter exists outside of\n * the component definition.\n */\nlet uniqueAutocompleteIdCounter = 0;\n\nexport class KbqAutocompleteSelectedEvent {\n constructor(\n public source: KbqAutocomplete,\n public option: KbqOption\n ) {}\n}\n\n/** Default `kbq-autocomplete` options that can be overridden. */\nexport interface KbqAutocompleteDefaultOptions {\n /** Whether the first option should be highlighted when an autocomplete panel is opened. */\n autoActiveFirstOption?: boolean;\n}\n\n/** Injection token to be used to override the default options for `kbq-autocomplete`. */\nexport const KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS = new InjectionToken<KbqAutocompleteDefaultOptions>(\n 'kbq-autocomplete-default-options',\n {\n providedIn: 'root',\n factory: KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\n }\n);\n\nexport function KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY(): KbqAutocompleteDefaultOptions {\n return { autoActiveFirstOption: true };\n}\n\n@Component({\n selector: 'kbq-autocomplete',\n exportAs: 'kbqAutocomplete',\n templateUrl: 'autocomplete.html',\n styleUrls: ['autocomplete.scss', 'autocomplete-tokens.scss'],\n host: {\n class: 'kbq-autocomplete'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: KBQ_OPTION_PARENT_COMPONENT,\n useExisting: KbqAutocomplete\n }\n ]\n})\nexport class KbqAutocomplete implements AfterContentInit {\n /** Unique ID to be used by autocomplete trigger's \"aria-owns\" property. */\n id: string = `kbq-autocomplete-${uniqueAutocompleteIdCounter++}`;\n\n /** Manages active item in option list based on key events. */\n keyManager: ActiveDescendantKeyManager<KbqOption>;\n\n /** Whether the autocomplete panel should be visible, depending on option length. */\n showPanel: boolean = false;\n\n @ViewChild(TemplateRef, { static: true }) template: TemplateRef<any>;\n\n @ViewChild('panel', { static: false }) panel: ElementRef;\n\n @ContentChildren(KbqOption, { descendants: true }) options: QueryList<KbqOption>;\n\n @ContentChildren(KbqOptgroup) optionGroups: QueryList<KbqOptgroup>;\n\n /** Function that maps an option's control value to its display value in the trigger. */\n @Input() displayWith: ((value: any) => string) | null = null;\n\n /**\n * Specify the width of the autocomplete panel. Can be any CSS sizing value, otherwise it will\n * match the width of its host.\n */\n @Input() panelWidth: string | number;\n\n /** Event that is emitted whenever an option from the list is selected. */\n @Output() readonly optionSelected: EventEmitter<KbqAutocompleteSelectedEvent> =\n new EventEmitter<KbqAutocompleteSelectedEvent>();\n\n /** Event that is emitted when the autocomplete panel is opened. */\n @Output() readonly opened: EventEmitter<void> = new EventEmitter<void>();\n\n /** Event that is emitted when the autocomplete panel is closed. */\n @Output() readonly closed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Takes classes set on the host kbq-autocomplete element and applies them to the panel\n * inside the overlay container to allow for easy styling.\n */\n @Input('class')\n get classList() {\n return this._classList;\n }\n\n set classList(value: string) {\n if (value && value.length) {\n value.split(' ').forEach((className) => (this._classList[className.trim()] = true));\n\n this.elementRef.nativeElement.className = '';\n }\n }\n\n private _classList: any = {};\n\n /**\n * Whether the first option should be highlighted when the autocomplete panel is opened.\n * Can be configured globally through the `KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS` token.\n */\n @Input()\n get autoActiveFirstOption(): boolean {\n return this._autoActiveFirstOption;\n }\n\n set autoActiveFirstOption(value: boolean) {\n this._autoActiveFirstOption = coerceBooleanProperty(value);\n }\n\n private _autoActiveFirstOption: boolean;\n\n get isOpen(): boolean {\n return this._isOpen && this.showPanel;\n }\n\n set isOpen(value: boolean) {\n this._isOpen = value;\n }\n\n private _isOpen: boolean = false;\n\n @Input()\n get openOnFocus(): boolean {\n return this._openOnFocus;\n }\n\n set openOnFocus(value: boolean) {\n this._openOnFocus = value;\n }\n\n private _openOnFocus: boolean = true;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n private elementRef: ElementRef<HTMLElement>,\n @Inject(KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS) defaults: KbqAutocompleteDefaultOptions,\n @Host() @Optional() private readonly parentFormField: KbqFormField\n ) {\n this._autoActiveFirstOption = !!defaults.autoActiveFirstOption;\n }\n\n ngAfterContentInit() {\n this.keyManager = new ActiveDescendantKeyManager<KbqOption>(this.options);\n this.setVisibility();\n }\n\n setScrollTop(scrollTop: number): void {\n if (this.panel) {\n this.panel.nativeElement.scrollTop = scrollTop;\n }\n }\n\n getScrollTop(): number {\n return this.panel ? this.panel.nativeElement.scrollTop : 0;\n }\n\n setVisibility() {\n this.showPanel = !!this.options.length;\n this._classList['kbq-autocomplete_visible'] = this.showPanel;\n this._classList['kbq-autocomplete_hidden'] = !this.showPanel;\n\n this.updateFocusClass();\n\n this.changeDetectorRef.markForCheck();\n }\n\n emitSelectEvent(option: KbqOption): void {\n const event = new KbqAutocompleteSelectedEvent(this, option);\n\n this.optionSelected.emit(event);\n }\n\n onKeydown(event: KeyboardEvent): any {\n this.keyManager.onKeydown(event);\n\n this.updateFocusClass();\n }\n\n private updateFocusClass() {\n this._classList['cdk-keyboard-focused'] = this.parentFormField?.focusOrigin === 'keyboard';\n }\n}\n","<ng-template>\n <div #panel role=\"listbox\" class=\"kbq-autocomplete-panel kbq-scrollbar\" [id]=\"id\" [ngClass]=\"classList\">\n <ng-content />\n </div>\n</ng-template>\n","import { Directionality } from '@angular/cdk/bidi';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n ConnectedPosition,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayConfig,\n OverlayRef,\n PositionStrategy,\n ScrollStrategy\n} from '@angular/cdk/overlay';\nimport { _getEventTarget } from '@angular/cdk/platform';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n ElementRef,\n Host,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef,\n forwardRef,\n inject\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DOWN_ARROW, ENTER, ESCAPE, TAB, UP_ARROW } from '@koobiq/cdk/keycodes';\nimport {\n KbqOption,\n KbqOptionSelectionChange,\n KeyboardNavigationHandler,\n defaultOffsetY\n} from '@koobiq/components/core';\nimport { KbqFormField } from '@koobiq/components/form-field';\nimport { Observable, Subject, Subscription, defer, fromEvent, merge, of as observableOf } from 'rxjs';\nimport { delay, filter, map, switchMap, take, tap } from 'rxjs/operators';\nimport { KbqAutocompleteOrigin } from './autocomplete-origin.directive';\nimport { KbqAutocomplete } from './autocomplete.component';\n\n/**\n * The following style constants are necessary to save here in order\n * to properly calculate the scrollTop of the panel. Because we are not\n * actually focusing the active item, scroll must be handled manually.\n */\n\n/** The total height of the autocomplete panel. */\nexport const AUTOCOMPLETE_PANEL_HEIGHT = 256;\n\n/** Injection token that determines the scroll handling while the autocomplete panel is open. */\nexport const KBQ_AUTOCOMPLETE_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>(\n 'kbq-autocomplete-scroll-strategy'\n);\n\nexport function KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition();\n}\n\nexport const KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: KBQ_AUTOCOMPLETE_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\n};\n\n/**\n * Provider that allows the autocomplete to register as a ControlValueAccessor.\n * @docs-private\n */\nexport const MAT_AUTOCOMPLETE_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => KbqAutocompleteTrigger),\n multi: true\n};\n\n/**\n * Creates an error to be thrown when attempting to use an autocomplete trigger without a panel.\n * @docs-private\n */\nexport function getKbqAutocompleteMissingPanelError(): Error {\n return Error(\n 'Attempting to open an undefined instance of `kbq-autocomplete`. ' +\n 'Make sure that the id passed to the `kbqAutocomplete` is correct and that ' +\n \"you're attempting to open it after the ngAfterContentInit hook.\"\n );\n}\n\n@Directive({\n selector: `input[kbqAutocomplete], textarea[kbqAutocomplete]`,\n host: {\n class: 'kbq-autocomplete-trigger',\n '[attr.autocomplete]': 'autocompleteAttribute',\n // Note: we use `focusin`, as opposed to `focus`, in order to open the panel\n // a little earlier. This avoids issues where IE delays the focusing of the input.\n '(focusin)': 'handleFocus()',\n '(blur)': 'onTouched()',\n '(input)': 'handleInput($event)',\n '(keydown)': 'handleKeydown($event)',\n '(click)': 'handleClick($event)'\n },\n exportAs: 'kbqAutocompleteTrigger',\n providers: [MAT_AUTOCOMPLETE_VALUE_ACCESSOR]\n})\nexport class KbqAutocompleteTrigger\n implements AfterViewInit, ControlValueAccessor, OnDestroy, KeyboardNavigationHandler\n{\n protected readonly document = inject<Document>(DOCUMENT);\n\n readonly optionSelections: Observable<KbqOptionSelectionChange> = defer(() => {\n if (this.autocomplete && this.autocomplete.options) {\n return merge(...this.autocomplete.options.map((option) => option.onSelectionChange));\n }\n\n // If there are any subscribers before `ngAfterViewInit`, the `autocomplete` will be undefined.\n // Return a stream that we'll replace with the real one once everything is in place.\n return this.zone.onStable.asObservable().pipe(\n take(1),\n switchMap(() => this.optionSelections)\n );\n });\n\n /** The currently active option, coerced to MatOption type. */\n get activeOption(): KbqOption | null {\n return this.autocomplete?.keyManager?.activeItem;\n }\n\n get panelOpen(): boolean {\n return this.overlayAttached && this.autocomplete.showPanel;\n }\n\n /** The autocomplete panel to be attached to this trigger. */\n @Input('kbqAutocomplete') autocomplete: KbqAutocomplete;\n\n /**\n * Reference relative to which to position the autocomplete panel.\n * Defaults to the autocomplete trigger element.\n */\n @Input('kbqAutocompleteConnectedTo') connectedTo: KbqAutocompleteOrigin;\n\n /**\n * `autocomplete` attribute to be set on the input element.\n * @docs-private\n */\n @Input('autocomplete') autocompleteAttribute: string = 'off';\n\n /**\n * Whether the autocomplete is disabled. When disabled, the element will\n * act as a regular input and the user won't be able to open the panel.\n */\n @Input('kbqAutocompleteDisabled')\n get autocompleteDisabled(): boolean {\n return this._autocompleteDisabled;\n }\n\n set autocompleteDisabled(value: boolean) {\n this._autocompleteDisabled = coerceBooleanProperty(value);\n }\n\n /**\n * Event handler for input blur events.\n * Determines whether the blur event is triggered outside the specific target\n * @returns A boolean indicating if the blur event happened outside the target element\n */\n @Input('kbqAutocompleteOnBlur') onInputBlur = (event: FocusEvent): boolean => {\n const target: HTMLElement = event.relatedTarget as HTMLElement;\n\n return !target || target.tagName !== 'KBQ-OPTION';\n };\n\n private _autocompleteDisabled = false;\n\n private overlayAttached: boolean = false;\n\n private overlayRef: OverlayRef | null;\n\n private portal: TemplatePortal;\n\n private componentDestroyed = false;\n\n private scrollStrategy: () => ScrollStrategy;\n\n /** Old value of the native input. Used to work around issues with the `input` event on IE. */\n private previousValue: string | number | null;\n\n /** Strategy that is used to position the panel. */\n private positionStrategy: FlexibleConnectedPositionStrategy;\n\n /** The subscription for closing actions (some are bound to document). */\n private closingActionsSubscription: Subscription;\n\n /** Subscription to viewport size changes. */\n private viewportSubscription = Subscription.EMPTY;\n\n /**\n * Whether the autocomplete can open the next time it is focused. Used to prevent a focused,\n * closed autocomplete from being reopened if the user switches to another browser tab and then\n * comes back.\n */\n private canOpenOnNextFocus = true;\n\n /** Stream of keyboard events that can close the panel. */\n private readonly closeKeyEventStream = new Subject<void>();\n\n constructor(\n private elementRef: ElementRef<HTMLInputElement>,\n private viewContainerRef: ViewContainerRef,\n private changeDetectorRef: ChangeDetectorRef,\n private overlay: Overlay,\n private zone: NgZone,\n @Inject(KBQ_AUTOCOMPLETE_SCROLL_STRATEGY) scrollStrategy: any,\n @Optional() private dir: Directionality,\n @Optional() @Host() private formField: KbqFormField,\n // @breaking-change 8.0.0 Make `_viewportRuler` required.\n private viewportRuler?: ViewportRuler\n ) {\n const window = this.getWindow();\n\n if (window) {\n zone.runOutsideAngular(() => window.addEventListener('blur', this.windowBlurHandler));\n }\n\n this.scrollStrategy = scrollStrategy;\n }\n\n ngAfterViewInit(): void {\n if (this.autocomplete) {\n this.autocomplete.keyManager?.change.subscribe(() => {\n if (this.panelOpen) {\n this.scrollActiveOptionIntoView();\n this.elementRef.nativeElement.focus();\n } else if (!this.panelOpen && this.autocomplete.keyManager.activeItem) {\n this.autocomplete.keyManager.activeItem?.selectViaInteraction();\n }\n });\n }\n }\n\n ngOnDestroy() {\n this.getWindow()?.removeEventListener('blur', this.windowBlurHandler);\n\n this.viewportSubscription.unsubscribe();\n this.componentDestroyed = true;\n this.destroyPanel();\n this.closeKeyEventStream.complete();\n }\n\n /** `View -> model callback called when value changes` */\n onChange: (value: any) => void = () => {};\n\n /** `View -> model callback called when autocomplete has been touched` */\n onTouched: () => void = () => {};\n\n /** Opens the autocomplete suggestion panel. */\n openPanel(): void {\n this.attachOverlay();\n }\n\n closePanel(): void {\n if (!this.overlayAttached) {\n return;\n }\n\n if (this.panelOpen) {\n this.autocomplete.closed.emit();\n }\n\n this.autocomplete.isOpen = this.overlayAttached = false;\n\n if (this.overlayRef && this.overlayRef.hasAttached()) {\n this.overlayRef.detach();\n this.closingActionsSubscription.unsubscribe();\n }\n\n // Note that in some cases this can end up being called after the component is destroyed.\n // Add a check to ensure that we don't try to run change detection on a destroyed view.\n if (!this.componentDestroyed) {\n // We need to trigger change detection manually, because\n // `fromEvent` doesn't seem to do it at the proper time.\n // This ensures that the label is reset when the\n // user clicks outside.\n this.changeDetectorRef.detectChanges();\n }\n }\n\n /**\n * Updates the position of the autocomplete suggestion panel to ensure that it fits all options\n * within the viewport.\n */\n updatePosition(): void {\n if (this.overlayAttached) {\n this.overlayRef!.updatePosition();\n }\n }\n\n /**\n * A stream of actions that should close the autocomplete panel, including\n * when an option is selected, on blur, and when TAB is pressed.\n */\n get panelClosingActions(): Observable<KbqOptionSelectionChange | null> {\n return merge(\n this.optionSelections,\n this.autocomplete.keyManager.tabOut.pipe(filter(() => this.overlayAttached)),\n this.closeKeyEventStream,\n this.getOutsideClickStream(),\n this.overlayRef ? this.overlayRef.detachments().pipe(filter(() => this.overlayAttached)) : observableOf()\n ).pipe(\n // Normalize the output so we return a consistent type.\n map((event) => (event instanceof KbqOptionSelectionChange ? event : null))\n );\n }\n\n // Implemented as part of ControlValueAccessor.\n writeValue(value: any): void {\n Promise.resolve(null).then(() => this.setTriggerValue(value));\n }\n\n // Implemented as part of ControlValueAccessor.\n // eslint-disable-next-line @typescript-eslint/ban-types\n registerOnChange(fn: (value: any) => {}): void {\n this.onChange = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n // eslint-disable-next-line @typescript-eslint/ban-types\n registerOnTouched(fn: () => {}) {\n this.onTouched = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n setDisabledState(isDisabled: boolean) {\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n handleKeydown(event: KeyboardEvent): void {\n const keyCode = event.keyCode;\n\n // Prevent the default action on all escape key presses. This is here primarily to bring IE\n // in line with other browsers. By default, pressing escape on IE will cause it to revert\n // the input value to the one that it had on focus, however it won't dispatch any events\n // which means that the model value will be out of sync with the view.\n if (keyCode === ESCAPE) {\n event.preventDefault();\n }\n\n if (this.activeOption && keyCode === ENTER && this.panelOpen) {\n this.activeOption.selectViaInteraction();\n this.resetActiveItem();\n event.preventDefault();\n } else if (this.autocomplete) {\n const prevActiveItem = this.autocomplete.keyManager.activeItem;\n\n if (this.panelOpen || keyCode === TAB) {\n this.autocomplete.onKeydown(event);\n } else if (!this.panelOpen && keyCode === DOWN_ARROW && this.canOpen()) {\n this.openPanel();\n }\n\n const isArrowKey = keyCode === UP_ARROW || keyCode === DOWN_ARROW;\n\n if (isArrowKey && event.shiftKey && this.autocomplete.keyManager.activeItem !== prevActiveItem) {\n this.autocomplete.keyManager.activeItem?.selectViaInteraction();\n }\n }\n }\n\n handleInput(event: KeyboardEvent): void {\n const target = event.target as HTMLInputElement;\n let value: number | string | null = target.value;\n\n // Based on `NumberValueAccessor` from forms.\n if (target.type === 'number') {\n value = value === '' ? null : parseFloat(value);\n }\n\n // If the input has a placeholder, IE will fire the `input` event on page load,\n // focus and blur, in addition to when the user actually changed the value. To\n // filter out all of the extra events, we save the value on focus and between\n // `input` events, and we check whether it changed.\n // See: https://connect.microsoft.com/IE/feedback/details/885747/\n if (this.previousValue !== value) {\n this.previousValue = value;\n this.onChange(value);\n\n if (this.canOpen() && this.document.activeElement === event.target) {\n this.openPanel();\n }\n }\n }\n\n handleFocus(): void {\n if (!this.canOpenOnNextFocus) {\n this.canOpenOnNextFocus = true;\n } else if (!this.panelOpen && this.canOpen() && this.autocomplete.openOnFocus) {\n this.previousValue = this.elementRef.nativeElement.value;\n this.attachOverlay();\n }\n }\n\n handleClick($event: MouseEvent) {\n if (!this.panelOpen && this.canOpen() && this.document.activeElement === $event.target) {\n this.openPanel();\n }\n }\n\n scrollActiveOptionIntoView(): void {\n this.autocomplete.keyManager.activeItem?.focus();\n }\n\n /** Stream of clicks outside of the autocomplete panel. */\n private getOutsideClickStream(): Observable<any> {\n return merge(\n fromEvent(this.document, 'click') as Observable<MouseEvent>,\n fromEvent(this.document, 'auxclick') as Observable<MouseEvent>,\n fromEvent(this.document, 'touchend') as Observable<TouchEvent>\n ).pipe(\n filter((event) => {\n const clickTarget = _getEventTarget<HTMLElement>(event);\n const formField = this.formField ? this.formField.elementRef.nativeElement : null;\n const customOrigin = this.connectedTo ? this.connectedTo.elementRef.nativeElement : null;\n\n return (\n this.overlayAttached &&\n clickTarget !== this.elementRef.nativeElement &&\n (!formField || !formField.contains(clickTarget)) &&\n (!customOrigin || !customOrigin.contains(clickTarget)) &&\n !!this.overlayRef &&\n !this.overlayRef.overlayElement.contains(clickTarget)\n );\n })\n );\n }\n\n /**\n * Event handler for when the window is blurred. Needs to be an\n * arrow function in order to preserve the context.\n */\n private windowBlurHandler = () => {\n // If the user blurred the window while the autocomplete is focused, it means that it'll be\n // refocused when they come back. In this case we want to skip the first focus event, if the\n // pane was closed, in order to avoid reopening it unintentionally.\n this.canOpenOnNextFocus = this.document.activeElement !== this.elementRef.nativeElement || this.panelOpen;\n };\n\n /**\n * This method listens to a stream of panel closing actions and resets the\n * stream every time the option list changes.\n */\n private subscribeToClosingActions(): Subscription {\n const firstStable = this.zone.onStable.asObservable().pipe(take(1));\n const optionChanges = this.autocomplete.options.changes.pipe(\n tap(() => this.positionStrategy.reapplyLastPosition()),\n // Defer emitting to the stream until the next tick, because changing\n // bindings in here will cause \"changed after checked\" errors.\n delay(0)\n );\n\n // When the zone is stable initially, and when the option list changes...\n return (\n merge(firstStable, optionChanges)\n .pipe(\n // create a new stream of panelClosingActions, replacing any previous streams\n // that were created, and flatten it so our stream only emits closing events...\n switchMap(() => {\n const wasOpen = this.panelOpen;\n\n this.resetActiveItem();\n this.autocomplete.setVisibility();\n\n if (this.panelOpen) {\n this.overlayRef!.updatePosition();\n\n // If the `panelOpen` state changed, we need to make sure to emit the `opened`\n // event, because we may not have emitted it when the panel was attached. This\n // can happen if the users opens the panel and there are no options, but the\n // options come in slightly later or as a result of the value changing.\n if (wasOpen !== this.panelOpen) {\n this.autocomplete.opened.emit();\n }\n }\n\n return this.panelClosingActions;\n }),\n // when the first closing event occurs...\n take(1)\n )\n // set the value, close the panel, and complete.\n .subscribe((event) => this.setValueAndClose(event))\n );\n }\n\n /** Destroys the autocomplete suggestion panel. */\n private destroyPanel(): void {\n if (this.overlayRef) {\n this.closePanel();\n this.overlayRef.dispose();\n this.overlayRef = null;\n }\n }\n\n private setTriggerValue(value: any): void {\n const toDisplay =\n this.autocomplete && this.autocomplete.displayWith ? this.autocomplete.displayWith(value) : value;\n\n // Simply falling back to an empty string if the display value is falsy does not work properly.\n // The display value can also be the number zero and shouldn't fall back to an empty string.\n\n const inputValue = toDisplay != null ? toDisplay : '';\n\n // If it's used within a `MatFormField`, we should set it through the property so it can go\n // through change detection.\n if (this.formField) {\n this.formField.control.value = inputValue;\n } else {\n this.elementRef.nativeElement.value = inputValue;\n }\n\n this.previousValue = inputValue;\n }\n\n /** This method closes the panel, and if a value is specified, also sets the associated\n * control to that value. It will also mark the control as dirty if this interaction\n * stemmed from the user.\n */\n private setValueAndClose(event: KbqOptionSelectionChange | null): void {\n if (event?.source) {\n this.clearPreviousSelectedOption(event.source);\n this.setTriggerValue(event.source.value);\n this.onChange(event.source.value);\n this.elementRef.nativeElement.focus();\n\n this.autocomplete.emitSelectEvent(event.source);\n }\n\n this.closePanel();\n }\n\n /** Clear any previous selected option and emit a selection change event for this option */\n private clearPreviousSelectedOption(skip: KbqOption) {\n this.autocomplete.options.forEach((option) => {\n if (option !== skip && option.selected) {\n option.deselect();\n }\n });\n }\n\n private attachOverlay(): void {\n if (!this.autocomplete) {\n throw getKbqAutocompleteMissingPanelError();\n }\n\n let overlayRef = this.overlayRef;\n\n if (!overlayRef) {\n this.portal = new TemplatePortal(this.autocomplete.template, this.viewContainerRef);\n overlayRef = this.overlay.create(this.getOverlayConfig());\n this.overlayRef = overlayRef;\n\n // Use the `keydownEvents` in order to take advantage of\n // the overlay event targeting provided by the CDK overlay.\n overlayRef.keydownEvents().subscribe((event) => {\n // Close when pressing ESCAPE or ALT + UP_ARROW, based on the a11y guidelines.\n // See: https://www.w3.org/TR/wai-aria-practices-1.1/#textbox-keyboard-interaction\n if (event.keyCode === ESCAPE || (event.keyCode === UP_ARROW && event.altKey)) {\n this.resetActiveItem();\n this.closeKeyEventStream.next();\n }\n });\n\n if (this.viewportRuler) {\n this.viewportSubscription = this.viewportRuler.change().subscribe(() => {\n if (this.panelOpen && overlayRef) {\n overlayRef.updateSize({ width: this.getPanelWidth() });\n }\n });\n }\n } else {\n const position = overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n\n // Update the trigger, panel width and direction, in case anything has changed.\n position.setOrigin(this.getConnectedElement());\n overlayRef.updateSize({ width: this.getPanelWidth() });\n }\n\n if (overlayRef && !overlayRef.hasAttached()) {\n overlayRef.attach(this.portal);\n this.closingActionsSubscription = this.subscribeToClosingActions();\n }\n\n const wasOpen = this.panelOpen;\n\n this.autocomplete.setVisibility();\n this.autocomplete.isOpen = this.overlayAttached = true;\n\n // We need to do an extra `panelOpen` check in here, because the\n // autocomplete won't be shown if there are no options.\n if (this.panelOpen && wasOpen !== this.panelOpen) {\n this.autocomplete.opened.emit();\n }\n\n this.zone.onStable\n .asObservable()\n .pipe(take(1))\n .subscribe(() => this.resetActiveItem());\n }\n\n private getOverlayConfig(): OverlayConfig {\n return new OverlayConfig({\n positionStrategy: this.getOverlayPosition(),\n scrollStrategy: this.scrollStrategy(),\n width: this.getPanelWidth(),\n direction: this.dir\n });\n }\n\n private getOverlayPosition(): PositionStrategy {\n this.positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(this.getConnectedElement())\n .withFlexibleDimensions(false)\n .withPush(false)\n .withPositions([\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: defaultOffsetY\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -defaultOffsetY\n }\n ] as ConnectedPosition[]);\n\n return this.positionStrategy;\n }\n\n private getConnectedElement(): ElementRef<HTMLElement> {\n if (this.connectedTo) {\n return this.connectedTo.elementRef;\n }\n\n return this.formField ? this.formField.getConnectedOverlayOrigin() : this.elementRef;\n }\n\n private getPanelWidth(): number | string {\n return this.autocomplete.panelWidth || this.getHostWidth();\n }\n\n private getHostWidth(): number {\n return this.getConnectedElement().nativeElement.getBoundingClientRect().width;\n }\n\n /**\n * Resets the active item to -1 so arrow events will activate the\n * correct options, or to 0 if the consumer opted into it.\n */\n private resetActiveItem(): void {\n if (this.autocomplete.autoActiveFirstOption) {\n this.autocomplete.keyManager.setFirstItemActive();\n } else {\n this.autocomplete.keyManager.setActiveItem(-1);\n }\n }\n\n private canOpen(): boolean {\n const element = this.elementRef.nativeElement;\n\n return !element.readOnly && !element.disabled && !this._autocompleteDisabled;\n }\n\n /** Use defaultView of injected document if available or fallback to global window reference */\n private getWindow(): Window | null {\n return this.document?.defaultView || window;\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { NgClass } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqCommonModule, KbqOptionModule } from '@koobiq/components/core';\nimport { KbqAutocompleteOrigin } from './autocomplete-origin.directive';\nimport {\n KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER,\n KbqAutocompleteTrigger\n} from './autocomplete-trigger.directive';\nimport { KbqAutocomplete } from './autocomplete.component';\n\n@NgModule({\n imports: [\n KbqOptionModule,\n OverlayModule,\n KbqCommonModule,\n NgClass\n ],\n exports: [\n KbqAutocomplete,\n KbqOptionModule,\n KbqAutocompleteTrigger,\n KbqAutocompleteOrigin,\n KbqCommonModule\n ],\n declarations: [KbqAutocomplete, KbqAutocompleteTrigger, KbqAutocompleteOrigin],\n providers: [KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER]\n})\nexport class KbqAutocompleteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["observableOf","i2","i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"koobiq-components-autocomplete.mjs","sources":["../../../packages/components/autocomplete/autocomplete-origin.directive.ts","../../../packages/components/autocomplete/autocomplete.component.ts","../../../packages/components/autocomplete/autocomplete.html","../../../packages/components/autocomplete/autocomplete-trigger.directive.ts","../../../packages/components/autocomplete/autocomplete.module.ts","../../../packages/components/autocomplete/koobiq-components-autocomplete.ts"],"sourcesContent":["import { Directive, ElementRef } from '@angular/core';\n\n/**\n * Directive applied to an element to make it usable\n * as a connection point for an autocomplete panel.\n */\n@Directive({\n selector: '[kbqAutocompleteOrigin]',\n exportAs: 'kbqAutocompleteOrigin'\n})\nexport class KbqAutocompleteOrigin {\n constructor(public elementRef: ElementRef<HTMLElement>) {}\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Host,\n inject,\n Inject,\n InjectionToken,\n Input,\n Optional,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActiveDescendantKeyManager } from '@koobiq/cdk/a11y';\nimport { KBQ_OPTION_PARENT_COMPONENT, KbqOptgroup, KbqOption } from '@koobiq/components/core';\nimport { KbqFormField } from '@koobiq/components/form-field';\nimport { delay, filter } from 'rxjs/operators';\n\n/**\n * Autocomplete IDs need to be unique across components, so this counter exists outside of\n * the component definition.\n */\nlet uniqueAutocompleteIdCounter = 0;\n\nexport class KbqAutocompleteSelectedEvent {\n constructor(\n public source: KbqAutocomplete,\n public option: KbqOption\n ) {}\n}\n\n/** Default `kbq-autocomplete` options that can be overridden. */\nexport interface KbqAutocompleteDefaultOptions {\n /** Whether the first option should be highlighted when an autocomplete panel is opened. */\n autoActiveFirstOption?: boolean;\n}\n\n/** Injection token to be used to override the default options for `kbq-autocomplete`. */\nexport const KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS = new InjectionToken<KbqAutocompleteDefaultOptions>(\n 'kbq-autocomplete-default-options',\n {\n providedIn: 'root',\n factory: KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY\n }\n);\n\nexport function KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY(): KbqAutocompleteDefaultOptions {\n return { autoActiveFirstOption: true };\n}\n\n@Component({\n selector: 'kbq-autocomplete',\n exportAs: 'kbqAutocomplete',\n templateUrl: 'autocomplete.html',\n styleUrls: ['autocomplete.scss', 'autocomplete-tokens.scss'],\n host: {\n class: 'kbq-autocomplete'\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: KBQ_OPTION_PARENT_COMPONENT,\n useExisting: KbqAutocomplete\n }\n ]\n})\nexport class KbqAutocomplete implements AfterContentInit {\n private readonly destroyRef = inject(DestroyRef);\n /** Unique ID to be used by autocomplete trigger's \"aria-owns\" property. */\n id: string = `kbq-autocomplete-${uniqueAutocompleteIdCounter++}`;\n\n /** Manages active item in option list based on key events. */\n keyManager: ActiveDescendantKeyManager<KbqOption>;\n\n /** Whether the autocomplete panel should be visible, depending on option length. */\n showPanel: boolean = false;\n\n @ViewChild(TemplateRef, { static: true }) template: TemplateRef<any>;\n\n @ViewChild('panel', { static: false }) panel: ElementRef;\n\n @ContentChildren(KbqOption, { descendants: true }) options: QueryList<KbqOption>;\n\n @ContentChildren(KbqOptgroup) optionGroups: QueryList<KbqOptgroup>;\n\n /** Function that maps an option's control value to its display value in the trigger. */\n @Input() displayWith: ((value: any) => string) | null = null;\n\n /**\n * Specify the width of the autocomplete panel. Can be any CSS sizing value, otherwise it will\n * match the width of its host.\n */\n @Input() panelWidth: string | number;\n\n /** Event that is emitted whenever an option from the list is selected. */\n @Output() readonly optionSelected: EventEmitter<KbqAutocompleteSelectedEvent> =\n new EventEmitter<KbqAutocompleteSelectedEvent>();\n\n /** Event that is emitted when the autocomplete panel is opened. */\n @Output() readonly opened: EventEmitter<void> = new EventEmitter<void>();\n\n /** Event that is emitted when the autocomplete panel is closed. */\n @Output() readonly closed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Takes classes set on the host kbq-autocomplete element and applies them to the panel\n * inside the overlay container to allow for easy styling.\n */\n @Input('class')\n get classList() {\n return this._classList;\n }\n\n set classList(value: string) {\n if (value && value.length) {\n value.split(' ').forEach((className) => (this._classList[className.trim()] = true));\n\n this.elementRef.nativeElement.className = '';\n }\n }\n\n private _classList: any = {};\n\n /**\n * Whether the first option should be highlighted when the autocomplete panel is opened.\n * Can be configured globally through the `KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS` token.\n */\n @Input()\n get autoActiveFirstOption(): boolean {\n return this._autoActiveFirstOption;\n }\n\n set autoActiveFirstOption(value: boolean) {\n this._autoActiveFirstOption = coerceBooleanProperty(value);\n }\n\n private _autoActiveFirstOption: boolean;\n\n get isOpen(): boolean {\n return this._isOpen && this.showPanel;\n }\n\n set isOpen(value: boolean) {\n this._isOpen = value;\n }\n\n private _isOpen: boolean = false;\n\n @Input()\n get openOnFocus(): boolean {\n return this._openOnFocus;\n }\n\n set openOnFocus(value: boolean) {\n this._openOnFocus = value;\n }\n\n private _openOnFocus: boolean = true;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n private elementRef: ElementRef<HTMLElement>,\n @Inject(KBQ_AUTOCOMPLETE_DEFAULT_OPTIONS) defaults: KbqAutocompleteDefaultOptions,\n @Host() @Optional() private readonly parentFormField: KbqFormField\n ) {\n this._autoActiveFirstOption = !!defaults.autoActiveFirstOption;\n }\n\n ngAfterContentInit() {\n this.keyManager = new ActiveDescendantKeyManager<KbqOption>(this.options);\n this.setVisibility();\n\n this.parentFormField?.control.ngControl?.valueChanges\n ?.pipe(\n delay(0),\n filter((value) => value === null || value === undefined || value === ''),\n takeUntilDestroyed(this.destroyRef)\n )\n .subscribe(() => {\n this.options.filter(({ selected }) => selected).forEach((option) => option.deselect(false));\n });\n }\n\n setScrollTop(scrollTop: number): void {\n if (this.panel) {\n this.panel.nativeElement.scrollTop = scrollTop;\n }\n }\n\n getScrollTop(): number {\n return this.panel ? this.panel.nativeElement.scrollTop : 0;\n }\n\n setVisibility() {\n this.showPanel = !!this.options.length;\n this._classList['kbq-autocomplete_visible'] = this.showPanel;\n this._classList['kbq-autocomplete_hidden'] = !this.showPanel;\n\n this.updateFocusClass();\n\n this.changeDetectorRef.markForCheck();\n }\n\n emitSelectEvent(option: KbqOption): void {\n const event = new KbqAutocompleteSelectedEvent(this, option);\n\n this.optionSelected.emit(event);\n }\n\n onKeydown(event: KeyboardEvent): any {\n this.keyManager.onKeydown(event);\n\n this.updateFocusClass();\n }\n\n private updateFocusClass() {\n this._classList['cdk-keyboard-focused'] = this.parentFormField?.focusOrigin === 'keyboard';\n }\n}\n","<ng-template>\n <div #panel role=\"listbox\" class=\"kbq-autocomplete-panel kbq-scrollbar\" [id]=\"id\" [ngClass]=\"classList\">\n <ng-content />\n </div>\n</ng-template>\n","import { Directionality } from '@angular/cdk/bidi';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n ConnectedPosition,\n FlexibleConnectedPositionStrategy,\n Overlay,\n OverlayConfig,\n OverlayRef,\n PositionStrategy,\n ScrollStrategy\n} from '@angular/cdk/overlay';\nimport { _getEventTarget } from '@angular/cdk/platform';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { ViewportRuler } from '@angular/cdk/scrolling';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n ElementRef,\n Host,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n Provider,\n ViewContainerRef,\n forwardRef,\n inject\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DOWN_ARROW, ENTER, ESCAPE, TAB, UP_ARROW } from '@koobiq/cdk/keycodes';\nimport {\n KBQ_WINDOW,\n KbqOption,\n KbqOptionSelectionChange,\n KeyboardNavigationHandler,\n defaultOffsetY\n} from '@koobiq/components/core';\nimport { KbqFormField } from '@koobiq/components/form-field';\nimport { Observable, Subject, Subscription, defer, fromEvent, merge, of as observableOf } from 'rxjs';\nimport { delay, filter, map, switchMap, take, tap } from 'rxjs/operators';\nimport { KbqAutocompleteOrigin } from './autocomplete-origin.directive';\nimport { KbqAutocomplete } from './autocomplete.component';\n\n/**\n * The following style constants are necessary to save here in order\n * to properly calculate the scrollTop of the panel. Because we are not\n * actually focusing the active item, scroll must be handled manually.\n */\n\n/** The total height of the autocomplete panel. */\nexport const AUTOCOMPLETE_PANEL_HEIGHT = 256;\n\n/** Injection token that determines the scroll handling while the autocomplete panel is open. */\nexport const KBQ_AUTOCOMPLETE_SCROLL_STRATEGY = new InjectionToken<() => ScrollStrategy>(\n 'kbq-autocomplete-scroll-strategy'\n);\n\nexport function KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.reposition();\n}\n\nexport const KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: KBQ_AUTOCOMPLETE_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY\n};\n\n/**\n * Provider that allows the autocomplete to register as a ControlValueAccessor.\n * @docs-private\n */\nexport const KBQ_AUTOCOMPLETE_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => KbqAutocompleteTrigger),\n multi: true\n};\n\n/**\n * Creates an error to be thrown when attempting to use an autocomplete trigger without a panel.\n * @docs-private\n */\nexport function getKbqAutocompleteMissingPanelError(): Error {\n return Error(\n 'Attempting to open an undefined instance of `kbq-autocomplete`. ' +\n 'Make sure that the id passed to the `kbqAutocomplete` is correct and that ' +\n \"you're attempting to open it after the ngAfterContentInit hook.\"\n );\n}\n\n@Directive({\n selector: `input[kbqAutocomplete], textarea[kbqAutocomplete]`,\n host: {\n class: 'kbq-autocomplete-trigger',\n '[attr.autocomplete]': 'autocompleteAttribute',\n // Note: we use `focusin`, as opposed to `focus`, in order to open the panel\n // a little earlier. This avoids issues where IE delays the focusing of the input.\n '(focusin)': 'handleFocus()',\n '(blur)': 'onTouched()',\n '(input)': 'handleInput($event)',\n '(keydown)': 'handleKeydown($event)',\n '(click)': 'handleClick($event)'\n },\n exportAs: 'kbqAutocompleteTrigger',\n providers: [KBQ_AUTOCOMPLETE_VALUE_ACCESSOR]\n})\nexport class KbqAutocompleteTrigger\n implements AfterViewInit, ControlValueAccessor, OnDestroy, KeyboardNavigationHandler\n{\n protected readonly document = inject<Document>(DOCUMENT);\n\n readonly optionSelections: Observable<KbqOptionSelectionChange> = defer(() => {\n if (this.autocomplete && this.autocomplete.options) {\n return merge(...this.autocomplete.options.map((option) => option.onSelectionChange));\n }\n\n // If there are any subscribers before `ngAfterViewInit`, the `autocomplete` will be undefined.\n // Return a stream that we'll replace with the real one once everything is in place.\n return this.zone.onStable.asObservable().pipe(\n take(1),\n switchMap(() => this.optionSelections)\n );\n });\n\n /** The currently active option, coerced to MatOption type. */\n get activeOption(): KbqOption | null {\n return this.autocomplete?.keyManager?.activeItem;\n }\n\n get panelOpen(): boolean {\n return this.overlayAttached && this.autocomplete.showPanel;\n }\n\n /** The autocomplete panel to be attached to this trigger. */\n @Input('kbqAutocomplete') autocomplete: KbqAutocomplete;\n\n /**\n * Reference relative to which to position the autocomplete panel.\n * Defaults to the autocomplete trigger element.\n */\n @Input('kbqAutocompleteConnectedTo') connectedTo: KbqAutocompleteOrigin;\n\n /**\n * `autocomplete` attribute to be set on the input element.\n * @docs-private\n */\n @Input('autocomplete') autocompleteAttribute: string = 'off';\n\n /**\n * Whether the autocomplete is disabled. When disabled, the element will\n * act as a regular input and the user won't be able to open the panel.\n */\n @Input('kbqAutocompleteDisabled')\n get autocompleteDisabled(): boolean {\n return this._autocompleteDisabled;\n }\n\n set autocompleteDisabled(value: boolean) {\n this._autocompleteDisabled = coerceBooleanProperty(value);\n }\n\n /**\n * Event handler for input blur events.\n * Determines whether the blur event is triggered outside the specific target\n * @returns A boolean indicating if the blur event happened outside the target element\n */\n @Input('kbqAutocompleteOnBlur') onInputBlur = (event: FocusEvent): boolean => {\n const target: HTMLElement = event.relatedTarget as HTMLElement;\n\n return !target || target.tagName !== 'KBQ-OPTION';\n };\n\n private _autocompleteDisabled = false;\n\n private overlayAttached: boolean = false;\n\n private overlayRef: OverlayRef | null;\n\n private portal: TemplatePortal;\n\n private componentDestroyed = false;\n\n private scrollStrategy: () => ScrollStrategy;\n\n /** Old value of the native input. Used to work around issues with the `input` event on IE. */\n private previousValue: string | number | null;\n\n /** Strategy that is used to position the panel. */\n private positionStrategy: FlexibleConnectedPositionStrategy;\n\n /** The subscription for closing actions (some are bound to document). */\n private closingActionsSubscription: Subscription;\n\n /** Subscription to viewport size changes. */\n private viewportSubscription = Subscription.EMPTY;\n\n /**\n * Whether the autocomplete can open the next time it is focused. Used to prevent a focused,\n * closed autocomplete from being reopened if the user switches to another browser tab and then\n * comes back.\n */\n private canOpenOnNextFocus = true;\n\n /** Stream of keyboard events that can close the panel. */\n private readonly closeKeyEventStream = new Subject<void>();\n private readonly window = inject(KBQ_WINDOW);\n\n constructor(\n private elementRef: ElementRef<HTMLInputElement>,\n private viewContainerRef: ViewContainerRef,\n private changeDetectorRef: ChangeDetectorRef,\n private overlay: Overlay,\n private zone: NgZone,\n @Inject(KBQ_AUTOCOMPLETE_SCROLL_STRATEGY) scrollStrategy: any,\n @Optional() private dir: Directionality,\n @Optional() @Host() private formField: KbqFormField,\n // @breaking-change 8.0.0 Make `_viewportRuler` required.\n private viewportRuler?: ViewportRuler\n ) {\n if (this.window) {\n zone.runOutsideAngular(() => this.window.addEventListener('blur', this.windowBlurHandler));\n }\n\n this.scrollStrategy = scrollStrategy;\n }\n\n ngAfterViewInit(): void {\n if (this.autocomplete) {\n this.autocomplete.keyManager?.change.subscribe(() => {\n if (this.panelOpen) {\n this.scrollActiveOptionIntoView();\n this.elementRef.nativeElement.focus();\n } else if (!this.panelOpen && this.autocomplete.keyManager.activeItem) {\n this.autocomplete.keyManager.activeItem?.selectViaInteraction();\n }\n });\n }\n }\n\n ngOnDestroy() {\n this.window.removeEventListener('blur', this.windowBlurHandler);\n\n this.viewportSubscription.unsubscribe();\n this.componentDestroyed = true;\n this.destroyPanel();\n this.closeKeyEventStream.complete();\n }\n\n /** `View -> model callback called when value changes` */\n onChange: (value: any) => void = () => {};\n\n /** `View -> model callback called when autocomplete has been touched` */\n onTouched: () => void = () => {};\n\n /** Opens the autocomplete suggestion panel. */\n openPanel(): void {\n this.attachOverlay();\n }\n\n closePanel(): void {\n if (!this.overlayAttached) {\n return;\n }\n\n if (this.panelOpen) {\n this.autocomplete.closed.emit();\n }\n\n this.autocomplete.isOpen = this.overlayAttached = false;\n\n if (this.overlayRef && this.overlayRef.hasAttached()) {\n this.overlayRef.detach();\n this.closingActionsSubscription.unsubscribe();\n }\n\n // Note that in some cases this can end up being called after the component is destroyed.\n // Add a check to ensure that we don't try to run change detection on a destroyed view.\n if (!this.componentDestroyed) {\n // We need to trigger change detection manually, because\n // `fromEvent` doesn't seem to do it at the proper time.\n // This ensures that the label is reset when the\n // user clicks outside.\n this.changeDetectorRef.detectChanges();\n }\n }\n\n /**\n * Updates the position of the autocomplete suggestion panel to ensure that it fits all options\n * within the viewport.\n */\n updatePosition(): void {\n if (this.overlayAttached) {\n this.overlayRef!.updatePosition();\n }\n }\n\n /**\n * A stream of actions that should close the autocomplete panel, including\n * when an option is selected, on blur, and when TAB is pressed.\n */\n get panelClosingActions(): Observable<KbqOptionSelectionChange | null> {\n return merge(\n this.optionSelections,\n this.autocomplete.keyManager.tabOut.pipe(filter(() => this.overlayAttached)),\n this.closeKeyEventStream,\n this.getOutsideClickStream(),\n this.overlayRef ? this.overlayRef.detachments().pipe(filter(() => this.overlayAttached)) : observableOf()\n ).pipe(\n // Normalize the output so we return a consistent type.\n map((event) => (event instanceof KbqOptionSelectionChange ? event : null))\n );\n }\n\n // Implemented as part of ControlValueAccessor.\n writeValue(value: any): void {\n Promise.resolve(null).then(() => this.setTriggerValue(value));\n }\n\n // Implemented as part of ControlValueAccessor.\n // eslint-disable-next-line @typescript-eslint/ban-types\n registerOnChange(fn: (value: any) => {}): void {\n this.onChange = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n // eslint-disable-next-line @typescript-eslint/ban-types\n registerOnTouched(fn: () => {}) {\n this.onTouched = fn;\n }\n\n // Implemented as part of ControlValueAccessor.\n setDisabledState(isDisabled: boolean) {\n this.elementRef.nativeElement.disabled = isDisabled;\n }\n\n handleKeydown(event: KeyboardEvent): void {\n const keyCode = event.keyCode;\n\n // Prevent the default action on all escape key presses. This is here primarily to bring IE\n // in line with other browsers. By default, pressing escape on IE will cause it to revert\n // the input value to the one that it had on focus, however it won't dispatch any events\n // which means that the model value will be out of sync with the view.\n if (keyCode === ESCAPE) {\n event.preventDefault();\n }\n\n if (this.activeOption && keyCode === ENTER && this.panelOpen) {\n this.activeOption.selectViaInteraction();\n this.resetActiveItem();\n event.preventDefault();\n } else if (this.autocomplete) {\n const prevActiveItem = this.autocomplete.keyManager.activeItem;\n\n if (this.panelOpen || keyCode === TAB) {\n this.autocomplete.onKeydown(event);\n } else if (!this.panelOpen && keyCode === DOWN_ARROW && this.canOpen()) {\n this.openPanel();\n }\n\n const isArrowKey = keyCode === UP_ARROW || keyCode === DOWN_ARROW;\n\n if (isArrowKey && event.shiftKey && this.autocomplete.keyManager.activeItem !== prevActiveItem) {\n this.autocomplete.keyManager.activeItem?.selectViaInteraction();\n }\n }\n }\n\n handleInput(event: KeyboardEvent): void {\n const target = event.target as HTMLInputElement;\n let value: number | string | null = target.value;\n\n // Based on `NumberValueAccessor` from forms.\n if (target.type === 'number') {\n value = value === '' ? null : parseFloat(value);\n }\n\n // If the input has a placeholder, IE will fire the `input` event on page load,\n // focus and blur, in addition to when the user actually changed the value. To\n // filter out all of the extra events, we save the value on focus and between\n // `input` events, and we check whether it changed.\n // See: https://connect.microsoft.com/IE/feedback/details/885747/\n if (this.previousValue !== value) {\n this.previousValue = value;\n this.onChange(value);\n\n if (this.canOpen() && this.document.activeElement === event.target) {\n this.openPanel();\n }\n }\n }\n\n handleFocus(): void {\n if (!this.canOpenOnNextFocus) {\n this.canOpenOnNextFocus = true;\n } else if (!this.panelOpen && this.canOpen() && this.autocomplete.openOnFocus) {\n this.previousValue = this.elementRef.nativeElement.value;\n this.attachOverlay();\n }\n }\n\n handleClick($event: MouseEvent) {\n if (!this.panelOpen && this.canOpen() && this.document.activeElement === $event.target) {\n this.openPanel();\n }\n }\n\n scrollActiveOptionIntoView(): void {\n this.autocomplete.keyManager.activeItem?.focus();\n }\n\n /** Stream of clicks outside of the autocomplete panel. */\n private getOutsideClickStream(): Observable<any> {\n return merge(\n fromEvent(this.document, 'click') as Observable<MouseEvent>,\n fromEvent(this.document, 'auxclick') as Observable<MouseEvent>,\n fromEvent(this.document, 'touchend') as Observable<TouchEvent>\n ).pipe(\n filter((event) => {\n const clickTarget = _getEventTarget<HTMLElement>(event);\n const formField = this.formField ? this.formField.elementRef.nativeElement : null;\n const customOrigin = this.connectedTo ? this.connectedTo.elementRef.nativeElement : null;\n\n return (\n this.overlayAttached &&\n clickTarget !== this.elementRef.nativeElement &&\n (!formField || !formField.contains(clickTarget)) &&\n (!customOrigin || !customOrigin.contains(clickTarget)) &&\n !!this.overlayRef &&\n !this.overlayRef.overlayElement.contains(clickTarget)\n );\n })\n );\n }\n\n /**\n * Event handler for when the window is blurred. Needs to be an\n * arrow function in order to preserve the context.\n */\n private windowBlurHandler = () => {\n // If the user blurred the window while the autocomplete is focused, it means that it'll be\n // refocused when they come back. In this case we want to skip the first focus event, if the\n // pane was closed, in order to avoid reopening it unintentionally.\n this.canOpenOnNextFocus = this.document.activeElement !== this.elementRef.nativeElement || this.panelOpen;\n };\n\n /**\n * This method listens to a stream of panel closing actions and resets the\n * stream every time the option list changes.\n */\n private subscribeToClosingActions(): Subscription {\n const firstStable = this.zone.onStable.asObservable().pipe(take(1));\n const optionChanges = this.autocomplete.options.changes.pipe(\n tap(() => this.positionStrategy.reapplyLastPosition()),\n // Defer emitting to the stream until the next tick, because changing\n // bindings in here will cause \"changed after checked\" errors.\n delay(0)\n );\n\n // When the zone is stable initially, and when the option list changes...\n return (\n merge(firstStable, optionChanges)\n .pipe(\n // create a new stream of panelClosingActions, replacing any previous streams\n // that were created, and flatten it so our stream only emits closing events...\n switchMap(() => {\n const wasOpen = this.panelOpen;\n\n this.resetActiveItem();\n this.autocomplete.setVisibility();\n\n if (this.panelOpen) {\n this.overlayRef!.updatePosition();\n\n // If the `panelOpen` state changed, we need to make sure to emit the `opened`\n // event, because we may not have emitted it when the panel was attached. This\n // can happen if the users opens the panel and there are no options, but the\n // options come in slightly later or as a result of the value changing.\n if (wasOpen !== this.panelOpen) {\n this.autocomplete.opened.emit();\n }\n }\n\n return this.panelClosingActions;\n }),\n // when the first closing event occurs...\n take(1)\n )\n // set the value, close the panel, and complete.\n .subscribe((event) => this.setValueAndClose(event))\n );\n }\n\n /** Destroys the autocomplete suggestion panel. */\n private destroyPanel(): void {\n if (this.overlayRef) {\n this.closePanel();\n this.overlayRef.dispose();\n this.overlayRef = null;\n }\n }\n\n private setTriggerValue(value: any): void {\n const toDisplay =\n this.autocomplete && this.autocomplete.displayWith ? this.autocomplete.displayWith(value) : value;\n\n // Simply falling back to an empty string if the display value is falsy does not work properly.\n // The display value can also be the number zero and shouldn't fall back to an empty string.\n\n const inputValue = toDisplay != null ? toDisplay : '';\n\n // If it's used within a `MatFormField`, we should set it through the property so it can go\n // through change detection.\n if (this.formField) {\n this.formField.control.value = inputValue;\n } else {\n this.elementRef.nativeElement.value = inputValue;\n }\n\n this.previousValue = inputValue;\n }\n\n /** This method closes the panel, and if a value is specified, also sets the associated\n * control to that value. It will also mark the control as dirty if this interaction\n * stemmed from the user.\n */\n private setValueAndClose(event: KbqOptionSelectionChange | null): void {\n if (event?.source) {\n this.clearPreviousSelectedOption(event.source);\n this.setTriggerValue(event.source.value);\n this.onChange(event.source.value);\n this.elementRef.nativeElement.focus();\n\n this.autocomplete.emitSelectEvent(event.source);\n }\n\n this.closePanel();\n }\n\n /** Clear any previous selected option and emit a selection change event for this option */\n private clearPreviousSelectedOption(skip: KbqOption) {\n this.autocomplete.options.forEach((option) => {\n if (option !== skip && option.selected) {\n option.deselect();\n }\n });\n }\n\n private attachOverlay(): void {\n if (!this.autocomplete) {\n throw getKbqAutocompleteMissingPanelError();\n }\n\n let overlayRef = this.overlayRef;\n\n if (!overlayRef) {\n this.portal = new TemplatePortal(this.autocomplete.template, this.viewContainerRef);\n overlayRef = this.overlay.create(this.getOverlayConfig());\n this.overlayRef = overlayRef;\n\n // Use the `keydownEvents` in order to take advantage of\n // the overlay event targeting provided by the CDK overlay.\n overlayRef.keydownEvents().subscribe((event) => {\n // Close when pressing ESCAPE or ALT + UP_ARROW, based on the a11y guidelines.\n // See: https://www.w3.org/TR/wai-aria-practices-1.1/#textbox-keyboard-interaction\n if (event.keyCode === ESCAPE || (event.keyCode === UP_ARROW && event.altKey)) {\n this.resetActiveItem();\n this.closeKeyEventStream.next();\n }\n });\n\n if (this.viewportRuler) {\n this.viewportSubscription = this.viewportRuler.change().subscribe(() => {\n if (this.panelOpen && overlayRef) {\n overlayRef.updateSize({ width: this.getPanelWidth() });\n }\n });\n }\n } else {\n const position = overlayRef.getConfig().positionStrategy as FlexibleConnectedPositionStrategy;\n\n // Update the trigger, panel width and direction, in case anything has changed.\n position.setOrigin(this.getConnectedElement());\n overlayRef.updateSize({ width: this.getPanelWidth() });\n }\n\n if (overlayRef && !overlayRef.hasAttached()) {\n overlayRef.attach(this.portal);\n this.closingActionsSubscription = this.subscribeToClosingActions();\n }\n\n const wasOpen = this.panelOpen;\n\n this.autocomplete.setVisibility();\n this.autocomplete.isOpen = this.overlayAttached = true;\n\n // We need to do an extra `panelOpen` check in here, because the\n // autocomplete won't be shown if there are no options.\n if (this.panelOpen && wasOpen !== this.panelOpen) {\n this.autocomplete.opened.emit();\n }\n\n this.zone.onStable\n .asObservable()\n .pipe(take(1))\n .subscribe(() => this.resetActiveItem());\n }\n\n private getOverlayConfig(): OverlayConfig {\n return new OverlayConfig({\n positionStrategy: this.getOverlayPosition(),\n scrollStrategy: this.scrollStrategy(),\n width: this.getPanelWidth(),\n direction: this.dir\n });\n }\n\n private getOverlayPosition(): PositionStrategy {\n this.positionStrategy = this.overlay\n .position()\n .flexibleConnectedTo(this.getConnectedElement())\n .withFlexibleDimensions(false)\n .withPush(false)\n .withPositions([\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: defaultOffsetY\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -defaultOffsetY\n }\n ] as ConnectedPosition[]);\n\n return this.positionStrategy;\n }\n\n private getConnectedElement(): ElementRef<HTMLElement> {\n if (this.connectedTo) {\n return this.connectedTo.elementRef;\n }\n\n return this.formField ? this.formField.getConnectedOverlayOrigin() : this.elementRef;\n }\n\n private getPanelWidth(): number | string {\n return this.autocomplete.panelWidth || this.getHostWidth();\n }\n\n private getHostWidth(): number {\n return this.getConnectedElement().nativeElement.getBoundingClientRect().width;\n }\n\n /**\n * Resets the active item to -1 so arrow events will activate the\n * correct options, or to 0 if the consumer opted into it.\n */\n private resetActiveItem(): void {\n if (this.autocomplete.autoActiveFirstOption) {\n this.autocomplete.keyManager.setFirstItemActive();\n } else {\n this.autocomplete.keyManager.setActiveItem(-1);\n }\n }\n\n private canOpen(): boolean {\n const element = this.elementRef.nativeElement;\n\n return !element.readOnly && !element.disabled && !this._autocompleteDisabled;\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { NgClass } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { KbqOptionModule } from '@koobiq/components/core';\nimport { KbqAutocompleteOrigin } from './autocomplete-origin.directive';\nimport {\n KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER,\n KbqAutocompleteTrigger\n} from './autocomplete-trigger.directive';\nimport { KbqAutocomplete } from './autocomplete.component';\n\n@NgModule({\n imports: [\n KbqOptionModule,\n OverlayModule,\n NgClass\n ],\n exports: [\n KbqAutocomplete,\n KbqOptionModule,\n KbqAutocompleteTrigger,\n KbqAutocompleteOrigin\n ],\n declarations: [KbqAutocomplete, KbqAutocompleteTrigger, KbqAutocompleteOrigin],\n providers: [KBQ_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER]\n})\nexport class KbqAutocompleteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["observableOf","i2","i3"],"mappings":"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"}
|
|
@@ -103,7 +103,7 @@ class KbqBadge {
|
|
|
103
103
|
this._badgeColor = value || KbqBadgeColors.FadeContrast;
|
|
104
104
|
}
|
|
105
105
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqBadge, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
106
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: KbqBadge, selector: "kbq-badge", inputs: { compact: "compact", outline: "outline", badgeColor: "badgeColor" }, host: { properties: { "class.kbq-badge_compact": "compact", "class.kbq-badge-filled": "!outline", "class.kbq-badge-outline": "outline", "class": "badgeColor" }, classAttribute: "kbq-badge" }, queries: [{ propertyName: "iconItem", first: true, predicate: KbqIconItem, descendants: true }], ngImport: i0, template: '<ng-content />', isInline: true, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-filled.kbq-badge_disabled{color:var(--kbq-badge-filled-fade-off-disabled-color);background:var(--kbq-badge-filled-fade-off-disabled-background);border:transparent}.kbq-badge-filled.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-disabled-caption)}.kbq-badge-filled.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-disabled-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge-outline.kbq-badge_disabled{color:var(--kbq-badge-outline-fade-on-disabled-color);background:var(--kbq-badge-outline-fade-on-disabled-background);border-color:var(--kbq-badge-outline-fade-on-disabled-border)}.kbq-badge-outline.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-disabled-caption)}.kbq-badge-outline.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-disabled-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-off-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-filled-fade-on-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-disabled-background: transparent;--kbq-badge-outline-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-border: var(--kbq-states-line-disabled);--kbq-badge-outline-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-icon: var(--kbq-states-icon-disabled)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
106
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: KbqBadge, selector: "kbq-badge", inputs: { compact: "compact", outline: "outline", badgeColor: "badgeColor" }, host: { properties: { "class.kbq-badge_compact": "compact", "class.kbq-badge-filled": "!outline", "class.kbq-badge-outline": "outline", "class": "badgeColor" }, classAttribute: "kbq-badge" }, queries: [{ propertyName: "iconItem", first: true, predicate: KbqIconItem, descendants: true }], ngImport: i0, template: '<ng-content />', isInline: true, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-filled.kbq-badge_disabled{color:var(--kbq-badge-filled-fade-off-disabled-color);background:var(--kbq-badge-filled-fade-off-disabled-background);border:transparent}.kbq-badge-filled.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-disabled-caption)}.kbq-badge-filled.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-disabled-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge-outline.kbq-badge_disabled{color:var(--kbq-badge-outline-fade-on-disabled-color);background:var(--kbq-badge-outline-fade-on-disabled-background);border-color:var(--kbq-badge-outline-fade-on-disabled-border)}.kbq-badge-outline.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-disabled-caption)}.kbq-badge-outline.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-disabled-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-style:var(--kbq-typography-text-compact-medium-font-style);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-style:var(--kbq-typography-text-compact-font-style);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-off-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-filled-fade-on-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-disabled-background: transparent;--kbq-badge-outline-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-border: var(--kbq-states-line-disabled);--kbq-badge-outline-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-icon: var(--kbq-states-icon-disabled)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
107
107
|
}
|
|
108
108
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqBadge, decorators: [{
|
|
109
109
|
type: Component,
|
|
@@ -113,7 +113,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
113
113
|
'[class.kbq-badge-filled]': '!outline',
|
|
114
114
|
'[class.kbq-badge-outline]': 'outline',
|
|
115
115
|
'[class]': 'badgeColor'
|
|
116
|
-
}, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-filled.kbq-badge_disabled{color:var(--kbq-badge-filled-fade-off-disabled-color);background:var(--kbq-badge-filled-fade-off-disabled-background);border:transparent}.kbq-badge-filled.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-disabled-caption)}.kbq-badge-filled.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-disabled-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge-outline.kbq-badge_disabled{color:var(--kbq-badge-outline-fade-on-disabled-color);background:var(--kbq-badge-outline-fade-on-disabled-background);border-color:var(--kbq-badge-outline-fade-on-disabled-border)}.kbq-badge-outline.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-disabled-caption)}.kbq-badge-outline.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-disabled-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-off-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-filled-fade-on-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-disabled-background: transparent;--kbq-badge-outline-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-border: var(--kbq-states-line-disabled);--kbq-badge-outline-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-icon: var(--kbq-states-icon-disabled)}\n"] }]
|
|
116
|
+
}, styles: [".kbq-badge{display:inline-flex;flex-direction:row;justify-content:flex-start;align-items:center;height:var(--kbq-badge-size-normal-height);text-align:center;white-space:nowrap;border-style:solid;box-sizing:border-box;padding-right:var(--kbq-badge-size-normal-horizontal-padding);padding-left:var(--kbq-badge-size-normal-horizontal-padding);border-width:var(--kbq-badge-size-normal-border-width);border-radius:var(--kbq-badge-size-normal-border-radius)}.kbq-badge .kbq-badge-caption{padding-left:var(--kbq-badge-size-normal-content-padding)}.kbq-badge .kbq-icon_left{margin-right:var(--kbq-badge-size-normal-icon-left-margin-right)}.kbq-badge .kbq-icon_right{margin-left:var(--kbq-badge-size-normal-icon-right-margin-left)}.kbq-badge.kbq-badge_compact{height:var(--kbq-badge-size-compact-height);padding-right:var(--kbq-badge-size-compact-horizontal-padding);padding-left:var(--kbq-badge-size-compact-horizontal-padding);border-width:var(--kbq-badge-size-compact-border-width);border-radius:var(--kbq-badge-size-compact-border-radius)}.kbq-badge.kbq-badge_compact .kbq-badge-caption{padding-left:var(--kbq-badge-size-compact-content-padding)}.kbq-badge.kbq-badge_compact .kbq-icon_left{margin-right:var(--kbq-badge-size-compact-icon-left-margin-right)}.kbq-badge.kbq-badge_compact .kbq-icon_right{margin-left:var(--kbq-badge-size-compact-icon-right-margin-left)}.kbq-badge-filled.kbq-badge_fade-contrast{color:var(--kbq-badge-filled-fade-on-contrast-color);background:var(--kbq-badge-filled-fade-on-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-contrast-caption)}.kbq-badge-filled.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-contrast-icon)}.kbq-badge-filled.kbq-badge_fade-theme{color:var(--kbq-badge-filled-fade-on-theme-color);background:var(--kbq-badge-filled-fade-on-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-theme-caption)}.kbq-badge-filled.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-theme-icon)}.kbq-badge-filled.kbq-badge_fade-success{color:var(--kbq-badge-filled-fade-on-success-color);background:var(--kbq-badge-filled-fade-on-success-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-success-caption)}.kbq-badge-filled.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-success-icon)}.kbq-badge-filled.kbq-badge_fade-warning{color:var(--kbq-badge-filled-fade-on-warning-color);background:var(--kbq-badge-filled-fade-on-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-warning-caption)}.kbq-badge-filled.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-warning-icon)}.kbq-badge-filled.kbq-badge_fade-error{color:var(--kbq-badge-filled-fade-on-error-color);background:var(--kbq-badge-filled-fade-on-error-background);border:transparent}.kbq-badge-filled.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-on-error-caption)}.kbq-badge-filled.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-on-error-icon)}.kbq-badge-filled.kbq-badge_contrast{color:var(--kbq-badge-filled-fade-off-contrast-color);background:var(--kbq-badge-filled-fade-off-contrast-background);border:transparent}.kbq-badge-filled.kbq-badge_contrast .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-contrast-caption)}.kbq-badge-filled.kbq-badge_contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-contrast-icon)}.kbq-badge-filled.kbq-badge_theme{color:var(--kbq-badge-filled-fade-off-theme-color);background:var(--kbq-badge-filled-fade-off-theme-background);border:transparent}.kbq-badge-filled.kbq-badge_theme .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-theme-caption)}.kbq-badge-filled.kbq-badge_theme .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-theme-icon)}.kbq-badge-filled.kbq-badge_success{color:var(--kbq-badge-filled-fade-off-success-color);background:var(--kbq-badge-filled-fade-off-success-background);border:transparent}.kbq-badge-filled.kbq-badge_success .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-success-caption)}.kbq-badge-filled.kbq-badge_success .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-success-icon)}.kbq-badge-filled.kbq-badge_warning{color:var(--kbq-badge-filled-fade-off-warning-color);background:var(--kbq-badge-filled-fade-off-warning-background);border:transparent}.kbq-badge-filled.kbq-badge_warning .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-warning-caption)}.kbq-badge-filled.kbq-badge_warning .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-warning-icon)}.kbq-badge-filled.kbq-badge_error{color:var(--kbq-badge-filled-fade-off-error-color);background:var(--kbq-badge-filled-fade-off-error-background);border:transparent}.kbq-badge-filled.kbq-badge_error .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-error-caption)}.kbq-badge-filled.kbq-badge_error .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-error-icon)}.kbq-badge-filled.kbq-badge_disabled{color:var(--kbq-badge-filled-fade-off-disabled-color);background:var(--kbq-badge-filled-fade-off-disabled-background);border:transparent}.kbq-badge-filled.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-filled-fade-off-disabled-caption)}.kbq-badge-filled.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-filled-fade-off-disabled-icon)}.kbq-badge-outline.kbq-badge_fade-contrast{color:var(--kbq-badge-outline-fade-on-contrast-color);background:var(--kbq-badge-outline-fade-on-contrast-background);border-color:var(--kbq-badge-outline-fade-on-contrast-border)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-contrast-caption)}.kbq-badge-outline.kbq-badge_fade-contrast .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-contrast-icon)}.kbq-badge-outline.kbq-badge_fade-theme{color:var(--kbq-badge-outline-fade-on-theme-color);background:var(--kbq-badge-outline-fade-on-theme-background);border-color:var(--kbq-badge-outline-fade-on-theme-border)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-theme-caption)}.kbq-badge-outline.kbq-badge_fade-theme .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-theme-icon)}.kbq-badge-outline.kbq-badge_fade-success{color:var(--kbq-badge-outline-fade-on-success-color);background:var(--kbq-badge-outline-fade-on-success-background);border-color:var(--kbq-badge-outline-fade-on-success-border)}.kbq-badge-outline.kbq-badge_fade-success .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-success-caption)}.kbq-badge-outline.kbq-badge_fade-success .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-success-icon)}.kbq-badge-outline.kbq-badge_fade-warning{color:var(--kbq-badge-outline-fade-on-warning-color);background:var(--kbq-badge-outline-fade-on-warning-background);border-color:var(--kbq-badge-outline-fade-on-warning-border)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-warning-caption)}.kbq-badge-outline.kbq-badge_fade-warning .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-warning-icon)}.kbq-badge-outline.kbq-badge_fade-error{color:var(--kbq-badge-outline-fade-on-error-color);background:var(--kbq-badge-outline-fade-on-error-background);border-color:var(--kbq-badge-outline-fade-on-error-border)}.kbq-badge-outline.kbq-badge_fade-error .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-error-caption)}.kbq-badge-outline.kbq-badge_fade-error .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-error-icon)}.kbq-badge-outline.kbq-badge_disabled{color:var(--kbq-badge-outline-fade-on-disabled-color);background:var(--kbq-badge-outline-fade-on-disabled-background);border-color:var(--kbq-badge-outline-fade-on-disabled-border)}.kbq-badge-outline.kbq-badge_disabled .kbq-badge-caption{color:var(--kbq-badge-outline-fade-on-disabled-caption)}.kbq-badge-outline.kbq-badge_disabled .kbq-icon.kbq-empty{color:var(--kbq-badge-outline-fade-on-disabled-icon)}.kbq-badge{font-size:var(--kbq-typography-text-normal-medium-font-size);font-style:var(--kbq-typography-text-normal-medium-font-style);font-weight:var(--kbq-typography-text-normal-medium-font-weight);line-height:var(--kbq-typography-text-normal-medium-line-height);font-family:var(--kbq-typography-text-normal-medium-font-family);text-transform:var(--kbq-typography-text-normal-medium-text-transform);font-feature-settings:var(--kbq-typography-text-normal-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-medium-letter-spacing)}.kbq-badge .kbq-badge-caption{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-badge_compact{font-size:var(--kbq-typography-text-compact-medium-font-size);font-style:var(--kbq-typography-text-compact-medium-font-style);font-weight:var(--kbq-typography-text-compact-medium-font-weight);line-height:var(--kbq-typography-text-compact-medium-line-height);font-family:var(--kbq-typography-text-compact-medium-font-family);text-transform:var(--kbq-typography-text-compact-medium-text-transform);font-feature-settings:var(--kbq-typography-text-compact-medium-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-medium-letter-spacing)}.kbq-badge_compact .kbq-badge-caption{font-size:var(--kbq-typography-text-compact-font-size);font-style:var(--kbq-typography-text-compact-font-style);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-badge{--kbq-badge-size-normal-height: var(--kbq-size-xxl);--kbq-badge-size-normal-icon-left-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-left-margin-right: var(--kbq-size-xxs);--kbq-badge-size-normal-icon-right-width: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-height: var(--kbq-size-l);--kbq-badge-size-normal-icon-right-margin-left: var(--kbq-size-xxs);--kbq-badge-size-normal-horizontal-padding: var(--kbq-size-s);--kbq-badge-size-normal-content-padding: var(--kbq-size-xxs);--kbq-badge-size-normal-border-width: var(--kbq-size-border-width);--kbq-badge-size-normal-border-radius: var(--kbq-size-xxs);--kbq-badge-size-compact-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-left-margin-right: var(--kbq-size-3xs);--kbq-badge-size-compact-icon-right-width: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-height: var(--kbq-size-l);--kbq-badge-size-compact-icon-right-margin-left: var(--kbq-size-3xs);--kbq-badge-size-compact-vertical-padding: 0;--kbq-badge-size-compact-horizontal-padding: var(--kbq-size-xxs);--kbq-badge-size-compact-content-padding: var(--kbq-size-3xs);--kbq-badge-size-compact-border-width: var(--kbq-size-border-width);--kbq-badge-size-compact-border-radius: var(--kbq-size-xxs);--kbq-badge-filled-fade-off-contrast-background: var(--kbq-background-contrast);--kbq-badge-filled-fade-off-contrast-color: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-caption: var(--kbq-foreground-on-contrast);--kbq-badge-filled-fade-off-contrast-icon: var(--kbq-icon-on-contrast);--kbq-badge-filled-fade-off-theme-background: var(--kbq-background-theme);--kbq-badge-filled-fade-off-theme-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-theme-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-success-background: var(--kbq-background-success);--kbq-badge-filled-fade-off-success-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-success-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-warning-background: var(--kbq-background-warning);--kbq-badge-filled-fade-off-warning-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-warning-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-error-background: var(--kbq-background-error);--kbq-badge-filled-fade-off-error-color: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-caption: var(--kbq-foreground-white);--kbq-badge-filled-fade-off-error-icon: var(--kbq-icon-white);--kbq-badge-filled-fade-off-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-off-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-off-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-filled-fade-on-theme-background: var(--kbq-background-theme-fade);--kbq-badge-filled-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-filled-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-filled-fade-on-contrast-background: var(--kbq-background-contrast-fade);--kbq-badge-filled-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-filled-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-filled-fade-on-success-background: var(--kbq-background-success-fade);--kbq-badge-filled-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-filled-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-filled-fade-on-warning-background: var(--kbq-background-warning-fade);--kbq-badge-filled-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-filled-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-filled-fade-on-error-background: var(--kbq-background-error-fade);--kbq-badge-filled-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-filled-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-filled-fade-on-disabled-background: var(--kbq-states-background-disabled);--kbq-badge-filled-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-filled-fade-on-disabled-icon: var(--kbq-states-icon-disabled);--kbq-badge-outline-fade-on-theme-background: transparent;--kbq-badge-outline-fade-on-theme-color: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-border: var(--kbq-line-theme-fade);--kbq-badge-outline-fade-on-theme-caption: var(--kbq-foreground-theme);--kbq-badge-outline-fade-on-theme-icon: var(--kbq-icon-theme);--kbq-badge-outline-fade-on-contrast-background: transparent;--kbq-badge-outline-fade-on-contrast-color: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-border: var(--kbq-line-contrast-fade);--kbq-badge-outline-fade-on-contrast-caption: var(--kbq-foreground-contrast);--kbq-badge-outline-fade-on-contrast-icon: var(--kbq-icon-contrast);--kbq-badge-outline-fade-on-success-background: transparent;--kbq-badge-outline-fade-on-success-color: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-border: var(--kbq-line-success-fade);--kbq-badge-outline-fade-on-success-caption: var(--kbq-foreground-success);--kbq-badge-outline-fade-on-success-icon: var(--kbq-icon-success);--kbq-badge-outline-fade-on-warning-background: transparent;--kbq-badge-outline-fade-on-warning-color: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-border: var(--kbq-line-warning-fade);--kbq-badge-outline-fade-on-warning-caption: var(--kbq-foreground-warning);--kbq-badge-outline-fade-on-warning-icon: var(--kbq-icon-warning);--kbq-badge-outline-fade-on-error-background: transparent;--kbq-badge-outline-fade-on-error-color: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-border: var(--kbq-line-error-fade);--kbq-badge-outline-fade-on-error-caption: var(--kbq-foreground-error);--kbq-badge-outline-fade-on-error-icon: var(--kbq-icon-error);--kbq-badge-outline-fade-on-disabled-background: transparent;--kbq-badge-outline-fade-on-disabled-color: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-border: var(--kbq-states-line-disabled);--kbq-badge-outline-fade-on-disabled-caption: var(--kbq-states-foreground-disabled);--kbq-badge-outline-fade-on-disabled-icon: var(--kbq-states-icon-disabled)}\n"] }]
|
|
117
117
|
}], propDecorators: { iconItem: [{
|
|
118
118
|
type: ContentChild,
|
|
119
119
|
args: [KbqIconItem]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koobiq-components-badge.mjs","sources":["../../../packages/components/badge/badge.component.ts","../../../packages/components/badge/badge.module.ts","../../../packages/components/badge/koobiq-components-badge.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n Renderer2,\n SkipSelf,\n ViewEncapsulation\n} from '@angular/core';\nimport { getNodesWithoutComments } from '@koobiq/components/core';\nimport { KbqIcon, KbqIconItem } from '@koobiq/components/icon';\n\nexport enum KbqBadgeColors {\n FadeContrast = 'fade-contrast',\n FadeTheme = 'fade-theme',\n FadeSuccess = 'fade-success',\n FadeWarning = 'fade-warning',\n FadeError = 'fade-error',\n\n Contrast = 'contrast',\n Theme = 'theme',\n Success = 'success',\n Warning = 'warning',\n Error = 'error',\n Disabled = 'disabled'\n}\n\n@Directive({\n selector: '[kbq-badge-caption]',\n host: {\n class: 'kbq-badge-caption'\n }\n})\nexport class KbqBadgeCaption {}\n\nexport const leftIconClassName = 'kbq-icon_left';\nexport const rightIconClassName = 'kbq-icon_right';\n\nexport const badgeLeftIconClassName = 'kbq-badge-icon_left';\nexport const badgeRightIconClassName = 'kbq-badge-icon_right';\n\n@Directive({\n selector: 'kbq-badge'\n})\nexport class KbqBadgeCssStyler implements AfterContentInit {\n @ContentChildren(forwardRef(() => KbqIcon)) icons: QueryList<KbqIcon>;\n\n nativeElement: HTMLElement;\n\n isIconButton: boolean = false;\n\n constructor(\n elementRef: ElementRef,\n private renderer: Renderer2,\n @SkipSelf() private cdr: ChangeDetectorRef\n ) {\n this.nativeElement = elementRef.nativeElement;\n }\n\n ngAfterContentInit() {\n this.updateClassModifierForIcons();\n }\n\n updateClassModifierForIcons() {\n this.renderer.removeClass(this.nativeElement, badgeLeftIconClassName);\n this.renderer.removeClass(this.nativeElement, badgeRightIconClassName);\n\n const twoIcons = 2;\n const filteredNodesWithoutComments = getNodesWithoutComments(this.nativeElement.childNodes as NodeList);\n\n const currentIsIconButtonValue =\n !!this.icons.length &&\n this.icons.length === filteredNodesWithoutComments.length &&\n this.icons.length <= twoIcons;\n\n if (currentIsIconButtonValue !== this.isIconButton) {\n this.isIconButton = currentIsIconButtonValue;\n this.cdr.detectChanges();\n }\n\n if (this.icons.length && filteredNodesWithoutComments.length > 1) {\n this.icons\n .map((item) => item.getHostElement())\n .forEach((iconHostElement) => {\n this.renderer.removeClass(iconHostElement, leftIconClassName);\n this.renderer.removeClass(iconHostElement, rightIconClassName);\n\n const iconIndex = filteredNodesWithoutComments.findIndex((node) => node === iconHostElement);\n\n if (iconIndex === 0) {\n this.renderer.addClass(iconHostElement, leftIconClassName);\n this.renderer.addClass(this.nativeElement, badgeLeftIconClassName);\n }\n\n if (iconIndex === filteredNodesWithoutComments.length - 1) {\n this.renderer.addClass(iconHostElement, rightIconClassName);\n this.renderer.addClass(this.nativeElement, badgeRightIconClassName);\n }\n });\n }\n }\n}\n\n@Component({\n selector: 'kbq-badge',\n template: '<ng-content />',\n styleUrls: ['badge.component.scss', 'badge-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-badge',\n '[class.kbq-badge_compact]': 'compact',\n '[class.kbq-badge-filled]': '!outline',\n '[class.kbq-badge-outline]': 'outline',\n '[class]': 'badgeColor'\n }\n})\nexport class KbqBadge {\n @ContentChild(KbqIconItem) iconItem: KbqIconItem;\n\n @Input() compact: boolean = false;\n @Input() outline: boolean = false;\n\n @Input()\n get badgeColor(): string {\n return `kbq-badge_${this._badgeColor}`;\n }\n\n set badgeColor(value: string | KbqBadgeColors) {\n this._badgeColor = value || KbqBadgeColors.FadeContrast;\n }\n\n private _badgeColor: string | KbqBadgeColors = KbqBadgeColors.FadeContrast;\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { NgModule } from '@angular/core';\nimport { KbqBadge, KbqBadgeCaption, KbqBadgeCssStyler } from './badge.component';\n\n@NgModule({\n imports: [\n A11yModule,\n PlatformModule\n ],\n declarations: [\n KbqBadge,\n KbqBadgeCaption,\n KbqBadgeCssStyler\n ],\n exports: [\n KbqBadge,\n KbqBadgeCaption,\n KbqBadgeCssStyler\n ]\n})\nexport class KbqBadgeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"koobiq-components-badge.mjs","sources":["../../../packages/components/badge/badge.component.ts","../../../packages/components/badge/badge.module.ts","../../../packages/components/badge/koobiq-components-badge.ts"],"sourcesContent":["import {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n Input,\n QueryList,\n Renderer2,\n SkipSelf,\n ViewEncapsulation\n} from '@angular/core';\nimport { getNodesWithoutComments } from '@koobiq/components/core';\nimport { KbqIcon, KbqIconItem } from '@koobiq/components/icon';\n\nexport enum KbqBadgeColors {\n FadeContrast = 'fade-contrast',\n FadeTheme = 'fade-theme',\n FadeSuccess = 'fade-success',\n FadeWarning = 'fade-warning',\n FadeError = 'fade-error',\n\n Contrast = 'contrast',\n Theme = 'theme',\n Success = 'success',\n Warning = 'warning',\n Error = 'error',\n Disabled = 'disabled'\n}\n\n@Directive({\n selector: '[kbq-badge-caption]',\n host: {\n class: 'kbq-badge-caption'\n }\n})\nexport class KbqBadgeCaption {}\n\nexport const leftIconClassName = 'kbq-icon_left';\nexport const rightIconClassName = 'kbq-icon_right';\n\nexport const badgeLeftIconClassName = 'kbq-badge-icon_left';\nexport const badgeRightIconClassName = 'kbq-badge-icon_right';\n\n@Directive({\n selector: 'kbq-badge'\n})\nexport class KbqBadgeCssStyler implements AfterContentInit {\n @ContentChildren(forwardRef(() => KbqIcon)) icons: QueryList<KbqIcon>;\n\n nativeElement: HTMLElement;\n\n isIconButton: boolean = false;\n\n constructor(\n elementRef: ElementRef,\n private renderer: Renderer2,\n @SkipSelf() private cdr: ChangeDetectorRef\n ) {\n this.nativeElement = elementRef.nativeElement;\n }\n\n ngAfterContentInit() {\n this.updateClassModifierForIcons();\n }\n\n updateClassModifierForIcons() {\n this.renderer.removeClass(this.nativeElement, badgeLeftIconClassName);\n this.renderer.removeClass(this.nativeElement, badgeRightIconClassName);\n\n const twoIcons = 2;\n const filteredNodesWithoutComments = getNodesWithoutComments(this.nativeElement.childNodes as NodeList);\n\n const currentIsIconButtonValue =\n !!this.icons.length &&\n this.icons.length === filteredNodesWithoutComments.length &&\n this.icons.length <= twoIcons;\n\n if (currentIsIconButtonValue !== this.isIconButton) {\n this.isIconButton = currentIsIconButtonValue;\n this.cdr.detectChanges();\n }\n\n if (this.icons.length && filteredNodesWithoutComments.length > 1) {\n this.icons\n .map((item) => item.getHostElement())\n .forEach((iconHostElement) => {\n this.renderer.removeClass(iconHostElement, leftIconClassName);\n this.renderer.removeClass(iconHostElement, rightIconClassName);\n\n const iconIndex = filteredNodesWithoutComments.findIndex((node) => node === iconHostElement);\n\n if (iconIndex === 0) {\n this.renderer.addClass(iconHostElement, leftIconClassName);\n this.renderer.addClass(this.nativeElement, badgeLeftIconClassName);\n }\n\n if (iconIndex === filteredNodesWithoutComments.length - 1) {\n this.renderer.addClass(iconHostElement, rightIconClassName);\n this.renderer.addClass(this.nativeElement, badgeRightIconClassName);\n }\n });\n }\n }\n}\n\n@Component({\n selector: 'kbq-badge',\n template: '<ng-content />',\n styleUrls: ['badge.component.scss', 'badge-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-badge',\n '[class.kbq-badge_compact]': 'compact',\n '[class.kbq-badge-filled]': '!outline',\n '[class.kbq-badge-outline]': 'outline',\n '[class]': 'badgeColor'\n }\n})\nexport class KbqBadge {\n @ContentChild(KbqIconItem) iconItem: KbqIconItem;\n\n @Input() compact: boolean = false;\n @Input() outline: boolean = false;\n\n @Input()\n get badgeColor(): string {\n return `kbq-badge_${this._badgeColor}`;\n }\n\n set badgeColor(value: string | KbqBadgeColors) {\n this._badgeColor = value || KbqBadgeColors.FadeContrast;\n }\n\n private _badgeColor: string | KbqBadgeColors = KbqBadgeColors.FadeContrast;\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { NgModule } from '@angular/core';\nimport { KbqBadge, KbqBadgeCaption, KbqBadgeCssStyler } from './badge.component';\n\n@NgModule({\n imports: [\n A11yModule,\n PlatformModule\n ],\n declarations: [\n KbqBadge,\n KbqBadgeCaption,\n KbqBadgeCssStyler\n ],\n exports: [\n KbqBadge,\n KbqBadgeCaption,\n KbqBadgeCssStyler\n ]\n})\nexport class KbqBadgeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|