@koobiq/components 18.32.0 → 18.34.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 +4 -3
- package/actions-panel/actions-panel-container.scss +0 -6
- package/actions-panel/actions-panel-ref.d.ts +13 -0
- package/actions-panel/actions-panel.d.ts +1 -7
- package/clamped-text/clamped-text.d.ts +61 -0
- package/clamped-text/clamped-text.scss +17 -0
- package/clamped-text/constants.d.ts +14 -0
- package/clamped-text/index.d.ts +3 -0
- package/clamped-text/module.d.ts +7 -0
- package/content-panel/content-panel-aside.scss +9 -0
- package/content-panel/content-panel-body.scss +9 -0
- package/content-panel/content-panel-container.scss +32 -0
- package/content-panel/content-panel-footer.scss +5 -0
- package/content-panel/content-panel-header.scss +30 -0
- package/content-panel/content-panel-tokens.scss +9 -0
- package/content-panel/content-panel.d.ts +149 -0
- package/content-panel/content-panel.scss +25 -0
- package/content-panel/index.d.ts +3 -0
- package/content-panel/module.d.ts +7 -0
- package/content-panel/resizable.d.ts +70 -0
- package/core/locales/en-US.d.ts +4 -0
- package/core/locales/es-LA.d.ts +4 -0
- package/core/locales/fa-IR.d.ts +4 -0
- package/core/locales/locale-service.d.ts +28 -0
- package/core/locales/pt-BR.d.ts +4 -0
- package/core/locales/ru-RU.d.ts +4 -0
- package/core/locales/tk-TM.d.ts +4 -0
- package/core/locales/types.d.ts +5 -0
- package/core/locales/zh-CN.d.ts +4 -0
- 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 +4 -3
- package/core/styles/common/_select.scss +55 -15
- package/core/styles/common/_tokens.scss +2 -0
- package/datepicker/calendar.component.d.ts +1 -1
- package/datepicker/datepicker-input.directive.d.ts +1 -1
- package/datepicker/datepicker-toggle.component.d.ts +1 -1
- package/datepicker/datepicker.component.d.ts +2 -2
- package/dynamic-translation/dynamic-translation.d.ts +72 -0
- package/dynamic-translation/index.d.ts +2 -0
- package/dynamic-translation/module.d.ts +7 -0
- 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-container.mjs +7 -7
- package/esm2022/actions-panel/actions-panel-ref.mjs +17 -1
- package/esm2022/actions-panel/actions-panel.mjs +34 -24
- package/esm2022/alert/alert.component.mjs +2 -2
- 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 +11 -11
- package/esm2022/checkbox/checkbox.mjs +2 -2
- package/esm2022/clamped-text/clamped-text.mjs +202 -0
- package/esm2022/clamped-text/constants.mjs +20 -0
- package/esm2022/clamped-text/index.mjs +4 -0
- package/esm2022/clamped-text/koobiq-components-clamped-text.mjs +5 -0
- package/esm2022/clamped-text/module.mjs +19 -0
- package/esm2022/code-block/code-block.mjs +3 -3
- package/esm2022/content-panel/content-panel.mjs +432 -0
- package/esm2022/content-panel/index.mjs +4 -0
- package/esm2022/content-panel/koobiq-components-content-panel.mjs +5 -0
- package/esm2022/content-panel/module.mjs +42 -0
- package/esm2022/content-panel/resizable.mjs +138 -0
- package/esm2022/core/locales/en-US.mjs +5 -1
- package/esm2022/core/locales/es-LA.mjs +5 -1
- package/esm2022/core/locales/fa-IR.mjs +5 -1
- package/esm2022/core/locales/pt-BR.mjs +5 -1
- package/esm2022/core/locales/ru-RU.mjs +5 -1
- package/esm2022/core/locales/tk-TM.mjs +5 -1
- package/esm2022/core/locales/types.mjs +1 -1
- package/esm2022/core/locales/zh-CN.mjs +5 -1
- 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 +4 -4
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +6 -3
- package/esm2022/datepicker/calendar.component.mjs +9 -9
- package/esm2022/datepicker/datepicker-input.directive.mjs +5 -1
- package/esm2022/datepicker/datepicker-toggle.component.mjs +8 -8
- package/esm2022/datepicker/datepicker.component.mjs +3 -3
- package/esm2022/dl/dl.component.mjs +2 -2
- package/esm2022/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/dynamic-translation/dynamic-translation.mjs +175 -0
- package/esm2022/dynamic-translation/index.mjs +3 -0
- package/esm2022/dynamic-translation/koobiq-components-dynamic-translation.mjs +5 -0
- package/esm2022/dynamic-translation/module.mjs +25 -0
- package/esm2022/empty-state/empty-state.component.mjs +2 -2
- package/esm2022/file-upload/file-drop.mjs +1 -1
- package/esm2022/file-upload/multiple-file-upload.component.mjs +11 -11
- package/esm2022/file-upload/single-file-upload.component.mjs +11 -11
- package/esm2022/filter-bar/filter-bar.mjs +5 -3
- package/esm2022/filter-bar/filter-bar.types.mjs +1 -1
- package/esm2022/filter-bar/filter-refresher.mjs +5 -5
- package/esm2022/filter-bar/filter-reset.mjs +4 -3
- package/esm2022/filter-bar/filter-search.mjs +11 -11
- package/esm2022/filter-bar/filters.mjs +4 -3
- package/esm2022/filter-bar/pipe-add.mjs +6 -6
- package/esm2022/filter-bar/pipes/base-pipe.mjs +8 -3
- package/esm2022/filter-bar/pipes/pipe-button.mjs +7 -7
- package/esm2022/filter-bar/pipes/pipe-date.mjs +11 -3
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +11 -3
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +4 -10
- package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +10 -9
- package/esm2022/filter-bar/pipes/pipe-readonly.mjs +7 -7
- package/esm2022/filter-bar/pipes/pipe-select.mjs +3 -4
- package/esm2022/filter-bar/pipes/pipe-text.mjs +8 -2
- package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +9 -3
- package/esm2022/form-field/cleaner.mjs +16 -11
- package/esm2022/form-field/error.mjs +2 -2
- package/esm2022/form-field/fieldset.mjs +2 -2
- package/esm2022/form-field/form-field.mjs +5 -5
- package/esm2022/form-field/hint.mjs +2 -2
- package/esm2022/form-field/password-hint.mjs +16 -5
- package/esm2022/form-field/password-toggle.mjs +45 -10
- package/esm2022/form-field/reactive-password-hint.mjs +20 -19
- package/esm2022/form-field/stepper.mjs +9 -9
- package/esm2022/icon/icon-button.component.mjs +2 -2
- package/esm2022/input/input-number.mjs +15 -10
- package/esm2022/input/input-password.mjs +2 -2
- 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/markdown/markdown.component.mjs +3 -3
- package/esm2022/modal/modal.component.mjs +14 -14
- package/esm2022/modal/modal.directive.mjs +7 -5
- package/esm2022/navbar/navbar-item.component.mjs +5 -5
- package/esm2022/navbar/navbar.component.mjs +2 -2
- package/esm2022/navbar/vertical-navbar.component.mjs +2 -2
- 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/risk-level/risk-level.component.mjs +2 -2
- package/esm2022/scrollbar/scrollbar.component.mjs +5 -5
- package/esm2022/select/select.component.mjs +56 -26
- package/esm2022/sidebar/sidebar.component.mjs +46 -27
- package/esm2022/sidepanel/sidepanel-container.component.mjs +15 -4
- package/esm2022/sidepanel/sidepanel-directives.mjs +5 -5
- package/esm2022/sidepanel/sidepanel-ref.mjs +8 -6
- package/esm2022/splitter/splitter.component.mjs +1 -1
- package/esm2022/table/table.component.mjs +2 -2
- package/esm2022/tabs/tab-body.component.mjs +3 -3
- package/esm2022/tabs/tab-group.component.mjs +27 -27
- package/esm2022/tabs/tab.component.mjs +4 -4
- package/esm2022/tags/tag-input.mjs +2 -2
- package/esm2022/tags/tag-list.component.mjs +13 -13
- package/esm2022/textarea/textarea.component.mjs +6 -4
- package/esm2022/timepicker/timepicker.directive.mjs +1 -1
- package/esm2022/timezone/timezone-option.component.mjs +2 -2
- package/esm2022/timezone/timezone-select.component.mjs +3 -3
- package/esm2022/toast/toast.component.mjs +3 -3
- package/esm2022/toggle/toggle.component.mjs +3 -3
- package/esm2022/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/top-bar/top-bar.mjs +2 -2
- package/esm2022/tree/toggle.mjs +2 -2
- package/esm2022/tree/tree-option.component.mjs +3 -3
- package/esm2022/tree/tree-selection.component.mjs +6 -6
- package/esm2022/tree/tree.mjs +2 -2
- package/esm2022/tree/tree.module.mjs +8 -5
- package/esm2022/tree-select/tree-select.component.mjs +44 -28
- package/esm2022/username/constants.mjs +25 -0
- package/esm2022/username/index.mjs +6 -0
- package/esm2022/username/koobiq-components-username.mjs +5 -0
- package/esm2022/username/module.mjs +35 -0
- package/esm2022/username/types.mjs +32 -0
- package/esm2022/username/username.mjs +129 -0
- package/esm2022/username/username.pipe.mjs +92 -0
- package/fesm2022/koobiq-components-accordion.mjs +4 -4
- package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs +56 -31
- 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-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 +10 -10
- 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-clamped-text.mjs +242 -0
- package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -0
- package/fesm2022/koobiq-components-code-block.mjs +2 -2
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-content-panel.mjs +612 -0
- package/fesm2022/koobiq-components-content-panel.mjs.map +1 -0
- package/fesm2022/koobiq-components-core.mjs +71 -36
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +26 -19
- 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 +2 -2
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-dynamic-translation.mjs +204 -0
- package/fesm2022/koobiq-components-dynamic-translation.mjs.map +1 -0
- 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 +20 -20
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +92 -66
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +108 -57
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +2 -2
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +15 -10
- 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-markdown.mjs +2 -2
- package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +19 -17
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +8 -8
- package/fesm2022/koobiq-components-navbar.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 +2 -2
- 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 +4 -4
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +55 -25
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidebar.mjs +45 -26
- package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +24 -12
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- 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 +31 -31
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +13 -13
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +5 -3
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +4 -4
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +2 -2
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +2 -2
- 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 +43 -27
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +18 -15
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/fesm2022/koobiq-components-username.mjs +308 -0
- package/fesm2022/koobiq-components-username.mjs.map +1 -0
- package/file-upload/_file-upload-theme.scss +10 -1
- package/file-upload/file-drop.d.ts +1 -1
- package/file-upload/multiple-file-upload.component.d.ts +1 -1
- package/file-upload/single-file-upload.component.d.ts +2 -2
- package/filter-bar/filter-bar.d.ts +2 -0
- package/filter-bar/filter-bar.types.d.ts +2 -2
- package/filter-bar/pipes/pipe-date.d.ts +3 -1
- package/filter-bar/pipes/pipe-datetime.d.ts +3 -1
- package/filter-bar/pipes/pipe-multi-select.d.ts +0 -1
- package/filter-bar/pipes/pipe-multi-tree-select.d.ts +3 -2
- package/filter-bar/pipes/pipe-select.d.ts +0 -1
- package/filter-bar/pipes/pipe-tree-select.d.ts +3 -2
- package/form-field/_form-field-theme.scss +27 -18
- package/form-field/cleaner.d.ts +4 -2
- package/form-field/cleaner.scss +6 -2
- package/form-field/form-field.scss +6 -2
- package/form-field/password-hint.d.ts +7 -0
- package/form-field/password-toggle.d.ts +23 -3
- package/form-field/password-toggle.scss +4 -8
- package/form-field/reactive-password-hint.d.ts +1 -0
- package/icon/_icon-button-theme.scss +8 -2
- package/list/_list-theme.scss +4 -1
- package/list/list.module.d.ts +2 -1
- package/list/list.scss +6 -12
- package/modal/modal.component.d.ts +6 -6
- package/package.json +28 -4
- package/popover/popover-confirm.component.d.ts +1 -1
- package/popover/popover.component.d.ts +2 -2
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/prebuilt-themes/theme.css +1 -1
- package/schematics/ng-add/index.js +3 -3
- package/scrollbar/scrollbar.component.d.ts +4 -4
- package/select/select.component.d.ts +22 -3
- package/sidebar/sidebar.component.d.ts +31 -5
- package/sidepanel/sidepanel-container.component.d.ts +9 -0
- package/sidepanel/sidepanel-ref.d.ts +3 -3
- package/splitter/splitter.component.d.ts +2 -2
- package/tabs/tab-group.component.d.ts +1 -1
- package/tabs/tab.component.d.ts +1 -1
- package/tags/tag-input.d.ts +1 -1
- package/tags/tag-list.component.d.ts +1 -1
- package/timepicker/timepicker.directive.d.ts +1 -1
- package/tooltip/tooltip.component.d.ts +2 -2
- package/tree/_tree-theme.scss +13 -2
- package/tree/tree-option.scss +12 -17
- package/tree/tree-selection.component.d.ts +1 -1
- package/tree/tree.module.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +9 -2
- package/username/constants.d.ts +15 -0
- package/username/index.d.ts +5 -0
- package/username/module.d.ts +8 -0
- package/username/types.d.ts +62 -0
- package/username/username-tokens.scss +6 -0
- package/username/username.d.ts +68 -0
- package/username/username.pipe.d.ts +23 -0
- package/username/username.scss +107 -0
|
@@ -25,6 +25,10 @@ export type KbqSelectOptions = Partial<{
|
|
|
25
25
|
* If set to null or an empty string, the panel will grow to match the longest option's text.
|
|
26
26
|
*/
|
|
27
27
|
panelWidth: KbqSelectPanelWidth;
|
|
28
|
+
/**
|
|
29
|
+
* Minimum width of the panel. If minWidth is larger than window width or property set to null, it will be ignored.
|
|
30
|
+
*/
|
|
31
|
+
panelMinWidth: Exclude<KbqSelectPanelWidth, 'auto'>;
|
|
28
32
|
}>;
|
|
29
33
|
/** Injection token that can be used to provide the default options for the `kbq-select`. */
|
|
30
34
|
export declare const KBQ_SELECT_OPTIONS: InjectionToken<Partial<{
|
|
@@ -33,6 +37,10 @@ export declare const KBQ_SELECT_OPTIONS: InjectionToken<Partial<{
|
|
|
33
37
|
* If set to null or an empty string, the panel will grow to match the longest option's text.
|
|
34
38
|
*/
|
|
35
39
|
panelWidth: KbqSelectPanelWidth;
|
|
40
|
+
/**
|
|
41
|
+
* Minimum width of the panel. If minWidth is larger than window width or property set to null, it will be ignored.
|
|
42
|
+
*/
|
|
43
|
+
panelMinWidth: Exclude<KbqSelectPanelWidth, "auto">;
|
|
36
44
|
}>>;
|
|
37
45
|
/** Utility provider for `KBQ_SELECT_OPTIONS`. */
|
|
38
46
|
export declare const kbqSelectOptionsProvider: (options: KbqSelectOptions) => Provider;
|
|
@@ -59,6 +67,10 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
59
67
|
* If set to null or an empty string, the panel will grow to match the longest option's text.
|
|
60
68
|
*/
|
|
61
69
|
panelWidth: KbqSelectPanelWidth;
|
|
70
|
+
/**
|
|
71
|
+
* Minimum width of the panel. If minWidth is larger than window width or property set to null, it will be ignored.
|
|
72
|
+
*/
|
|
73
|
+
panelMinWidth: Exclude<KbqSelectPanelWidth, "auto">;
|
|
62
74
|
}> | null;
|
|
63
75
|
private readonly window;
|
|
64
76
|
/** Whether the component is in an error state. */
|
|
@@ -133,6 +145,10 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
133
145
|
* Follows the same logic as `Array.prototype.sort`.
|
|
134
146
|
*/
|
|
135
147
|
sortComparator: (a: KbqOptionBase, b: KbqOptionBase, options: KbqOptionBase[]) => number;
|
|
148
|
+
/**
|
|
149
|
+
* Whether to use a multiline matcher or not. Default is false
|
|
150
|
+
*/
|
|
151
|
+
multiline: boolean;
|
|
136
152
|
/** Combined stream of all of the child options' change events. */
|
|
137
153
|
readonly optionSelectionChanges: Observable<KbqOptionSelectionChange>;
|
|
138
154
|
/** Event emitted when the select panel has been toggled. */
|
|
@@ -182,7 +198,7 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
182
198
|
* Minimum width of the panel.
|
|
183
199
|
* If minWidth is larger than window width, it will be ignored.
|
|
184
200
|
*/
|
|
185
|
-
panelMinWidth:
|
|
201
|
+
panelMinWidth: Exclude<KbqSelectPanelWidth, 'auto'>;
|
|
186
202
|
/** Value of the select control. */
|
|
187
203
|
get value(): any;
|
|
188
204
|
set value(newValue: any);
|
|
@@ -212,6 +228,8 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
212
228
|
get firstFiltered(): boolean;
|
|
213
229
|
/** @docs-private */
|
|
214
230
|
get colorForState(): KbqComponentColors;
|
|
231
|
+
/** Whether multiple choice is enabled or not. True if multiple or multiline */
|
|
232
|
+
get multiSelection(): boolean;
|
|
215
233
|
private closeSubscription;
|
|
216
234
|
/** The scroll position of the overlay panel, calculated to center the selected option. */
|
|
217
235
|
private scrollTop;
|
|
@@ -226,9 +244,9 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
226
244
|
protected overlayOrigin?: CdkOverlayOrigin | ElementRef;
|
|
227
245
|
constructor(_changeDetectorRef: ChangeDetectorRef, _ngZone: NgZone, _renderer: Renderer2, defaultErrorStateMatcher: ErrorStateMatcher, elementRef: ElementRef, overlayContainer: OverlayContainer, _dir: Directionality, parentForm: NgForm, parentFormGroup: FormGroupDirective, parentFormField: KbqFormField, ngControl: NgControl, scrollStrategyFactory: any, localeService?: KbqLocaleService | undefined);
|
|
228
246
|
ngOnInit(): void;
|
|
247
|
+
ngDoCheck(): void;
|
|
229
248
|
ngAfterContentInit(): void;
|
|
230
249
|
ngAfterViewInit(): void;
|
|
231
|
-
ngDoCheck(): void;
|
|
232
250
|
ngOnDestroy(): void;
|
|
233
251
|
updateErrorState(): void;
|
|
234
252
|
hiddenItemsTextFormatter(hiddenItemsText: string, hiddenItems: number): string;
|
|
@@ -351,7 +369,8 @@ export declare class KbqSelect extends KbqAbstractSelect implements AfterContent
|
|
|
351
369
|
private getTotalVisibleItems;
|
|
352
370
|
private buildTriggerClone;
|
|
353
371
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelect, [null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; host: true; }, { optional: true; self: true; }, null, { optional: true; }]>;
|
|
354
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "selectAllHandler": { "alias": "selectAllHandler"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "panelMinWidth": { "alias": "panelMinWidth"; "required": false; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["footer", "cdkVirtualForOf", "customTrigger", "customMatcher", "customTagTemplateRef", "cleaner", "search", "options", "optionGroups"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "*", "kbq-select-footer,[kbq-select-footer]"], false, never>;
|
|
372
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "multiline": { "alias": "multiline"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "selectAllHandler": { "alias": "selectAllHandler"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "panelMinWidth": { "alias": "panelMinWidth"; "required": false; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["footer", "cdkVirtualForOf", "customTrigger", "customMatcher", "customTagTemplateRef", "cleaner", "search", "options", "optionGroups"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "*", "kbq-select-footer,[kbq-select-footer]"], false, never>;
|
|
373
|
+
static ngAcceptInputType_multiline: unknown;
|
|
355
374
|
static ngAcceptInputType_multiple: unknown;
|
|
356
375
|
static ngAcceptInputType_panelMinWidth: unknown;
|
|
357
376
|
static ngAcceptInputType_tabIndex: unknown;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AfterContentInit, ElementRef, EventEmitter, NgZone, OnDestroy
|
|
1
|
+
import { AfterContentInit, ElementRef, EventEmitter, NgZone, OnDestroy } from '@angular/core';
|
|
2
2
|
import { KbqSidebarAnimationState } from './sidebar-animations';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare enum SidebarPositions {
|
|
@@ -23,30 +23,56 @@ export declare class KbqSidebarClosed {
|
|
|
23
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSidebarClosed, never>;
|
|
24
24
|
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSidebarClosed, "[kbq-sidebar-closed]", ["kbqSidebarClosed"], { "width": { "alias": "width"; "required": false; }; }, {}, never, never, false, never>;
|
|
25
25
|
}
|
|
26
|
-
export declare class KbqSidebar implements OnDestroy,
|
|
26
|
+
export declare class KbqSidebar implements OnDestroy, AfterContentInit {
|
|
27
27
|
private ngZone;
|
|
28
28
|
private elementRef;
|
|
29
|
+
/**
|
|
30
|
+
* @docs-private
|
|
31
|
+
*/
|
|
29
32
|
protected readonly document: Document;
|
|
33
|
+
private readonly renderer;
|
|
34
|
+
private readonly changeDetectorRef;
|
|
30
35
|
get opened(): boolean;
|
|
31
36
|
set opened(value: boolean);
|
|
32
37
|
private _opened;
|
|
33
38
|
position: SidebarPositions;
|
|
39
|
+
/**
|
|
40
|
+
* @docs-private
|
|
41
|
+
*/
|
|
34
42
|
params: KbqSidebarParams;
|
|
35
43
|
readonly stateChanged: EventEmitter<boolean>;
|
|
44
|
+
/**
|
|
45
|
+
* @docs-private
|
|
46
|
+
*/
|
|
36
47
|
openedContent: KbqSidebarOpened;
|
|
48
|
+
/**
|
|
49
|
+
* @docs-private
|
|
50
|
+
*/
|
|
37
51
|
closedContent: KbqSidebarClosed;
|
|
52
|
+
/**
|
|
53
|
+
* @docs-private
|
|
54
|
+
*/
|
|
38
55
|
get animationState(): KbqSidebarAnimationState;
|
|
56
|
+
/**
|
|
57
|
+
* @docs-private
|
|
58
|
+
*/
|
|
39
59
|
internalState: boolean;
|
|
40
|
-
private
|
|
60
|
+
private unbindKeydownListener;
|
|
41
61
|
constructor(ngZone: NgZone, elementRef: ElementRef);
|
|
42
|
-
|
|
62
|
+
ngAfterContentInit(): void;
|
|
43
63
|
ngOnDestroy(): void;
|
|
44
64
|
toggle(): void;
|
|
65
|
+
/**
|
|
66
|
+
* @docs-private
|
|
67
|
+
*/
|
|
45
68
|
onAnimationStart(): void;
|
|
69
|
+
/**
|
|
70
|
+
* @docs-private
|
|
71
|
+
*/
|
|
46
72
|
onAnimationDone(): void;
|
|
47
|
-
ngAfterContentInit(): void;
|
|
48
73
|
private registerKeydownListener;
|
|
49
74
|
private unRegisterKeydownListener;
|
|
75
|
+
private handleKeydown;
|
|
50
76
|
private saveWidth;
|
|
51
77
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSidebar, never>;
|
|
52
78
|
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSidebar, "kbq-sidebar", ["kbqSidebar"], { "opened": { "alias": "opened"; "required": false; }; "position": { "alias": "position"; "required": false; }; }, { "stateChanged": "stateChanged"; }, ["openedContent", "closedContent"], ["[kbq-sidebar-opened]", "[kbq-sidebar-closed]"], false, never>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AnimationEvent } from '@angular/animations';
|
|
2
2
|
import { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
|
|
3
3
|
import { ChangeDetectorRef, ComponentRef, ElementRef, EmbeddedViewRef, EventEmitter, InjectionToken, OnDestroy } from '@angular/core';
|
|
4
|
+
import { Observable, Subject } from 'rxjs';
|
|
4
5
|
import { KbqSidepanelAnimationState } from './sidepanel-animations';
|
|
5
6
|
import { KbqSidepanelConfig } from './sidepanel-config';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -27,10 +28,18 @@ export declare class KbqSidepanelContainerComponent extends BasePortalOutlet imp
|
|
|
27
28
|
get size(): string;
|
|
28
29
|
get trapFocusAutoCapture(): boolean;
|
|
29
30
|
get trapFocus(): boolean;
|
|
31
|
+
/** @docs-private */
|
|
32
|
+
protected readonly indentClickEmitter: Subject<MouseEvent>;
|
|
30
33
|
/** Whether the component has been destroyed. */
|
|
31
34
|
private destroyed;
|
|
32
35
|
constructor(elementRef: ElementRef<HTMLElement>, changeDetectorRef: ChangeDetectorRef, sidepanelConfig: KbqSidepanelConfig, withIndent: boolean, withShadow: boolean);
|
|
33
36
|
ngOnDestroy(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Gets an observable that emits when the indent has been clicked.
|
|
39
|
+
*
|
|
40
|
+
* @docs-private
|
|
41
|
+
*/
|
|
42
|
+
indentClick(): Observable<MouseEvent>;
|
|
34
43
|
/** Attach a component portal as content to this sidepanel container. */
|
|
35
44
|
attachComponentPortal<T>(portal: ComponentPortal<T>): ComponentRef<T>;
|
|
36
45
|
/** Attach a template portal as content to this sidepanel container. */
|
|
@@ -3,9 +3,9 @@ import { Observable } from 'rxjs';
|
|
|
3
3
|
import { KbqSidepanelConfig } from './sidepanel-config';
|
|
4
4
|
import { KbqSidepanelContainerComponent } from './sidepanel-container.component';
|
|
5
5
|
export declare class KbqSidepanelRef<T = any, R = any> {
|
|
6
|
-
containerInstance: KbqSidepanelContainerComponent;
|
|
7
|
-
|
|
8
|
-
config: KbqSidepanelConfig;
|
|
6
|
+
readonly containerInstance: KbqSidepanelContainerComponent;
|
|
7
|
+
readonly overlayRef: OverlayRef;
|
|
8
|
+
readonly config: KbqSidepanelConfig;
|
|
9
9
|
readonly id: string;
|
|
10
10
|
/** Instance of the component making up the content of the sidepanel. */
|
|
11
11
|
instance: T;
|
|
@@ -63,7 +63,7 @@ export declare class KbqSplitterComponent implements OnInit, AfterContentInit, O
|
|
|
63
63
|
changeDetectorRef: ChangeDetectorRef;
|
|
64
64
|
private ngZone;
|
|
65
65
|
private renderer;
|
|
66
|
-
gutterPositionChange: EventEmitter<void>;
|
|
66
|
+
readonly gutterPositionChange: EventEmitter<void>;
|
|
67
67
|
areas: IArea[];
|
|
68
68
|
gutters: QueryList<KbqGutterDirective>;
|
|
69
69
|
ghost: KbqGutterGhostDirective;
|
|
@@ -111,7 +111,7 @@ export declare class KbqSplitterAreaDirective implements AfterViewInit, OnDestro
|
|
|
111
111
|
private elementRef;
|
|
112
112
|
private renderer;
|
|
113
113
|
private splitter;
|
|
114
|
-
sizeChange: EventEmitter<number>;
|
|
114
|
+
readonly sizeChange: EventEmitter<number>;
|
|
115
115
|
private readonly window;
|
|
116
116
|
constructor(elementRef: ElementRef, renderer: Renderer2, splitter: KbqSplitterComponent);
|
|
117
117
|
isResizing(): boolean;
|
|
@@ -85,6 +85,7 @@ export declare class KbqTabGroup implements AfterContentInit, AfterViewInit, Aft
|
|
|
85
85
|
private readonly groupId;
|
|
86
86
|
private readonly resizeDebounceInterval;
|
|
87
87
|
constructor(changeDetectorRef: ChangeDetectorRef, defaultConfig?: KbqTabsConfig);
|
|
88
|
+
ngAfterContentInit(): void;
|
|
88
89
|
/**
|
|
89
90
|
* After the content is checked, this component knows what tabs have been defined
|
|
90
91
|
* and what the selected index should be. This is where we can know exactly what position
|
|
@@ -92,7 +93,6 @@ export declare class KbqTabGroup implements AfterContentInit, AfterViewInit, Aft
|
|
|
92
93
|
* a new selected tab should transition in (from the left or right).
|
|
93
94
|
*/
|
|
94
95
|
ngAfterContentChecked(): void;
|
|
95
|
-
ngAfterContentInit(): void;
|
|
96
96
|
ngAfterViewInit(): void;
|
|
97
97
|
ngOnDestroy(): void;
|
|
98
98
|
focusChanged(index: number): void;
|
package/tabs/tab.component.d.ts
CHANGED
|
@@ -52,8 +52,8 @@ export declare class KbqTab implements OnInit, OnChanges, OnDestroy {
|
|
|
52
52
|
private contentPortal;
|
|
53
53
|
constructor(viewContainerRef: ViewContainerRef);
|
|
54
54
|
ngOnChanges(changes: SimpleChanges): void;
|
|
55
|
-
ngOnDestroy(): void;
|
|
56
55
|
ngOnInit(): void;
|
|
56
|
+
ngOnDestroy(): void;
|
|
57
57
|
/**
|
|
58
58
|
* This has been extracted to a util because of TS 4 and VE.
|
|
59
59
|
* View Engine doesn't support property rename inheritance.
|
package/tags/tag-input.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export declare class KbqTagInput implements KbqTagTextControl, OnChanges {
|
|
|
40
40
|
get separators(): KbqTagSeparator[];
|
|
41
41
|
private _separators;
|
|
42
42
|
/** Emitted when a tag is to be added. */
|
|
43
|
-
tagEnd: EventEmitter<KbqTagInputEvent>;
|
|
43
|
+
readonly tagEnd: EventEmitter<KbqTagInputEvent>;
|
|
44
44
|
/** A value indicating whether allow/prevent tags duplication */
|
|
45
45
|
distinct: boolean;
|
|
46
46
|
/** The input's placeholder text. */
|
|
@@ -151,9 +151,9 @@ export declare class KbqTagList implements KbqFormFieldControl<any>, ControlValu
|
|
|
151
151
|
private tagRemoveSubscription;
|
|
152
152
|
private readonly destroyRef;
|
|
153
153
|
constructor(elementRef: ElementRef<HTMLElement>, changeDetectorRef: ChangeDetectorRef, defaultErrorStateMatcher: ErrorStateMatcher, dir: Directionality, parentForm: NgForm, parentFormGroup: FormGroupDirective, ngControl: NgControl);
|
|
154
|
-
ngAfterContentInit(): void;
|
|
155
154
|
ngOnInit(): void;
|
|
156
155
|
ngDoCheck(): void;
|
|
156
|
+
ngAfterContentInit(): void;
|
|
157
157
|
ngOnDestroy(): void;
|
|
158
158
|
updateErrorState(): void;
|
|
159
159
|
onTouched: () => void;
|
|
@@ -64,7 +64,7 @@ export declare class KbqTimepicker<D> implements KbqFormFieldControl<D>, Control
|
|
|
64
64
|
set value(value: D | null);
|
|
65
65
|
private _value;
|
|
66
66
|
set kbqValidationTooltip(tooltip: KbqWarningTooltipTrigger);
|
|
67
|
-
incorrectInput: EventEmitter<void>;
|
|
67
|
+
readonly incorrectInput: EventEmitter<void>;
|
|
68
68
|
get hasSelection(): boolean;
|
|
69
69
|
get isFullFormat(): boolean;
|
|
70
70
|
get isShortFormat(): boolean;
|
|
@@ -78,8 +78,8 @@ export declare class KbqTooltipTrigger extends KbqPopUpTrigger<KbqTooltipCompone
|
|
|
78
78
|
private _color;
|
|
79
79
|
arrow: boolean;
|
|
80
80
|
offset: number | null;
|
|
81
|
-
placementChange: EventEmitter<any>;
|
|
82
|
-
visibleChange: EventEmitter<boolean>;
|
|
81
|
+
readonly placementChange: EventEmitter<any>;
|
|
82
|
+
readonly visibleChange: EventEmitter<boolean>;
|
|
83
83
|
private get hasClickInTrigger();
|
|
84
84
|
protected originSelector: string;
|
|
85
85
|
protected overlayConfig: OverlayConfig;
|
package/tree/_tree-theme.scss
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
@use '../core/styles/common/tokens' as *;
|
|
4
4
|
|
|
5
5
|
@mixin kbq-tree-option($state-name) {
|
|
6
|
+
--kbq-option-background: var(--kbq-tree-#{$state-name}-container-background);
|
|
7
|
+
|
|
6
8
|
background: var(--kbq-tree-#{$state-name}-container-background);
|
|
7
9
|
|
|
8
10
|
.kbq-option-text {
|
|
@@ -34,11 +36,14 @@
|
|
|
34
36
|
@include kbq-tree-option(default);
|
|
35
37
|
|
|
36
38
|
&:not(.kbq-disabled) {
|
|
37
|
-
&:hover
|
|
39
|
+
&:hover,
|
|
40
|
+
&.kbq-action-button-focused {
|
|
38
41
|
@include kbq-tree-option(states-hover);
|
|
39
42
|
}
|
|
40
43
|
|
|
41
44
|
&:active {
|
|
45
|
+
--kbq-option-background: var(--kbq-tree-states-active-container-background);
|
|
46
|
+
|
|
42
47
|
background: var(--kbq-tree-states-active-container-background);
|
|
43
48
|
}
|
|
44
49
|
|
|
@@ -50,6 +55,8 @@
|
|
|
50
55
|
}
|
|
51
56
|
|
|
52
57
|
&:active {
|
|
58
|
+
--kbq-option-background: var(--kbq-tree-states-selected-active-container-background);
|
|
59
|
+
|
|
53
60
|
background: var(--kbq-tree-states-selected-active-container-background);
|
|
54
61
|
}
|
|
55
62
|
}
|
|
@@ -78,8 +85,12 @@
|
|
|
78
85
|
}
|
|
79
86
|
|
|
80
87
|
.cdk-keyboard-focused {
|
|
81
|
-
& .kbq-tree-option.kbq-focused {
|
|
88
|
+
& .kbq-tree-option.kbq-focused:not(.kbq-action-button-focused) {
|
|
82
89
|
border-color: var(--kbq-tree-states-focused-focus-outline-color);
|
|
90
|
+
|
|
91
|
+
& .kbq-action-container {
|
|
92
|
+
display: flex;
|
|
93
|
+
}
|
|
83
94
|
}
|
|
84
95
|
}
|
|
85
96
|
}
|
package/tree/tree-option.scss
CHANGED
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
.kbq-tree-option {
|
|
6
6
|
@include vendor-prefixes.user-select(none);
|
|
7
7
|
|
|
8
|
+
position: relative;
|
|
9
|
+
|
|
8
10
|
box-sizing: border-box;
|
|
9
11
|
|
|
10
12
|
display: flex;
|
|
@@ -20,15 +22,15 @@
|
|
|
20
22
|
border-radius: var(--kbq-tree-option-border-radius);
|
|
21
23
|
|
|
22
24
|
padding-top: kbq-difference-series-css-variables(
|
|
23
|
-
[
|
|
25
|
+
[tree-size-container-padding-vertical,
|
|
24
26
|
tree-size-container-focus-outline-width]
|
|
25
27
|
);
|
|
26
28
|
padding-right: kbq-difference-series-css-variables(
|
|
27
|
-
[
|
|
29
|
+
[tree-size-container-padding-right,
|
|
28
30
|
tree-size-container-focus-outline-width]
|
|
29
31
|
);
|
|
30
32
|
padding-bottom: kbq-difference-series-css-variables(
|
|
31
|
-
[
|
|
33
|
+
[tree-size-container-padding-vertical,
|
|
32
34
|
tree-size-container-focus-outline-width]
|
|
33
35
|
);
|
|
34
36
|
|
|
@@ -48,25 +50,18 @@
|
|
|
48
50
|
outline: none;
|
|
49
51
|
}
|
|
50
52
|
|
|
51
|
-
&.kbq-disabled {
|
|
52
|
-
|
|
53
|
-
cursor: default;
|
|
54
|
-
}
|
|
53
|
+
&.kbq-disabled .kbq-icon {
|
|
54
|
+
cursor: default;
|
|
55
55
|
}
|
|
56
56
|
|
|
57
57
|
&:not(.kbq-disabled) {
|
|
58
58
|
cursor: pointer;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
& .kbq-option-action {
|
|
62
|
-
display: none;
|
|
63
|
-
}
|
|
64
59
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
60
|
+
&:hover,
|
|
61
|
+
&.kbq-action-button-focused {
|
|
62
|
+
& .kbq-action-container {
|
|
63
|
+
display: flex;
|
|
64
|
+
}
|
|
70
65
|
}
|
|
71
66
|
}
|
|
72
67
|
|
|
@@ -77,8 +77,8 @@ export declare class KbqTreeSelection extends KbqTreeBase<any> implements Contro
|
|
|
77
77
|
private optionFocusSubscription;
|
|
78
78
|
private optionBlurSubscription;
|
|
79
79
|
constructor(elementRef: ElementRef, scheduler: AsyncScheduler, differs: IterableDiffers, changeDetectorRef: ChangeDetectorRef, multiple: MultipleMode, clipboard: Clipboard);
|
|
80
|
-
ngAfterViewInit(): void;
|
|
81
80
|
ngAfterContentInit(): void;
|
|
81
|
+
ngAfterViewInit(): void;
|
|
82
82
|
ngOnDestroy(): void;
|
|
83
83
|
focus($event: any): void;
|
|
84
84
|
highlightSelectedOption(): void;
|
package/tree/tree.module.d.ts
CHANGED
|
@@ -11,6 +11,6 @@ import * as i9 from "@koobiq/components/core";
|
|
|
11
11
|
import * as i10 from "@koobiq/components/icon";
|
|
12
12
|
export declare class KbqTreeModule {
|
|
13
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeModule, never>;
|
|
14
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqTreeModule, [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective], [typeof i9.KbqPseudoCheckboxModule, typeof i10.KbqIconModule], [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective]>;
|
|
14
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqTreeModule, [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective], [typeof i9.KbqPseudoCheckboxModule, typeof i10.KbqIconModule, typeof i9.KbqActionContainer], [typeof i1.KbqTreeNodeOutlet, typeof i2.KbqTreeNodeDef, typeof i3.KbqTreeNode, typeof i4.KbqTreeNodePadding, typeof i5.KbqTree, typeof i6.KbqTreeSelection, typeof i7.KbqTreeOption, typeof i8.KbqTreeNodeToggleComponent, typeof i8.KbqTreeNodeToggleDirective]>;
|
|
15
15
|
static ɵinj: i0.ɵɵInjectorDeclaration<KbqTreeModule>;
|
|
16
16
|
}
|
|
@@ -135,6 +135,10 @@ export declare class KbqTreeSelect extends KbqAbstractSelect implements AfterCon
|
|
|
135
135
|
* Follows the same logic as `Array.prototype.sort`.
|
|
136
136
|
*/
|
|
137
137
|
sortComparator: (a: KbqTreeOption, b: KbqTreeOption, options: KbqTreeOption[]) => number;
|
|
138
|
+
/**
|
|
139
|
+
* Whether to use a multiline matcher or not. Default is false
|
|
140
|
+
*/
|
|
141
|
+
multiline: boolean;
|
|
138
142
|
/** Combined stream of all of the child options' change events. */
|
|
139
143
|
readonly optionSelectionChanges: Observable<KbqTreeSelectChange>;
|
|
140
144
|
/** Combined stream of all of the child options userInteraction events. */
|
|
@@ -174,6 +178,8 @@ export declare class KbqTreeSelect extends KbqAbstractSelect implements AfterCon
|
|
|
174
178
|
/** Whether the select is focused. */
|
|
175
179
|
get focused(): boolean;
|
|
176
180
|
set focused(value: boolean);
|
|
181
|
+
/** Whether multiple choice is enabled or not. True if multiple or multiline */
|
|
182
|
+
get multiSelection(): boolean;
|
|
177
183
|
private _focused;
|
|
178
184
|
/** Width of the overlay panel. */
|
|
179
185
|
protected overlayWidth: string | number;
|
|
@@ -204,9 +210,9 @@ export declare class KbqTreeSelect extends KbqAbstractSelect implements AfterCon
|
|
|
204
210
|
private readonly window;
|
|
205
211
|
constructor(elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef, ngZone: NgZone, renderer: Renderer2, defaultErrorStateMatcher: ErrorStateMatcher, scrollStrategyFactory: any, dir: Directionality, parentForm: NgForm, parentFormGroup: FormGroupDirective, parentFormField: KbqFormField, ngControl: NgControl, localeService?: KbqLocaleService | undefined);
|
|
206
212
|
ngOnInit(): void;
|
|
213
|
+
ngDoCheck(): void;
|
|
207
214
|
ngAfterContentInit(): void;
|
|
208
215
|
ngAfterViewInit(): void;
|
|
209
|
-
ngDoCheck(): void;
|
|
210
216
|
ngOnDestroy(): void;
|
|
211
217
|
updateErrorState(): void;
|
|
212
218
|
hiddenItemsTextFormatter(hiddenItemsText: string, hiddenItems: number): string;
|
|
@@ -303,7 +309,8 @@ export declare class KbqTreeSelect extends KbqAbstractSelect implements AfterCon
|
|
|
303
309
|
private scrollActiveOptionIntoView;
|
|
304
310
|
private subscribeOnSearchChanges;
|
|
305
311
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeSelect, [null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; host: true; }, { optional: true; self: true; }, { optional: true; }]>;
|
|
306
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["kbqTreeSelect"], { "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "autoSelect": { "alias": "autoSelect"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "selectAllHandler": { "alias": "selectAllHandler"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-select-footer,[kbq-tree-select-footer]"], false, never>;
|
|
312
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["kbqTreeSelect"], { "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "multiline": { "alias": "multiline"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "autoSelect": { "alias": "autoSelect"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "selectAllHandler": { "alias": "selectAllHandler"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-select-footer,[kbq-tree-select-footer]"], false, never>;
|
|
313
|
+
static ngAcceptInputType_multiline: unknown;
|
|
307
314
|
static ngAcceptInputType_multiple: unknown;
|
|
308
315
|
static ngAcceptInputType_tabIndex: unknown;
|
|
309
316
|
static ngAcceptInputType_disabled: unknown;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import { KbqFormatKeyToProfileMapping, KbqFormatKeyToProfileMappingExtended } from './types';
|
|
3
|
+
/** Default name format: Last name full, first and middle as initials. */
|
|
4
|
+
export declare const kbqDefaultFullNameFormatCustom = "L f. m.";
|
|
5
|
+
/** Default name format: Last name full, first and middle as initials. */
|
|
6
|
+
export declare const kbqDefaultFullNameFormat = "lf.m.";
|
|
7
|
+
/**
|
|
8
|
+
* Throws an error when no profile field mapping is provided to the username pipe.
|
|
9
|
+
* @docs-private
|
|
10
|
+
*/
|
|
11
|
+
export declare function KbqMappingMissingError(): Error;
|
|
12
|
+
/**
|
|
13
|
+
* Injection token for providing a global username format-to-profile mapping.
|
|
14
|
+
*/
|
|
15
|
+
export declare const KBQ_PROFILE_MAPPING: InjectionToken<KbqFormatKeyToProfileMapping | KbqFormatKeyToProfileMappingExtended>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "./username";
|
|
3
|
+
import * as i2 from "./username.pipe";
|
|
4
|
+
export declare class KbqUsernameModule {
|
|
5
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqUsernameModule, never>;
|
|
6
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqUsernameModule, never, [typeof i1.KbqUsername, typeof i1.KbqUsernameCustomView, typeof i1.KbqUsernamePrimary, typeof i1.KbqUsernameSecondary, typeof i2.KbqUsernameCustomPipe, typeof i2.KbqUsernamePipe], [typeof i1.KbqUsername, typeof i1.KbqUsernameCustomView, typeof i1.KbqUsernamePrimary, typeof i1.KbqUsernameSecondary, typeof i2.KbqUsernameCustomPipe, typeof i2.KbqUsernamePipe]>;
|
|
7
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<KbqUsernameModule>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keys for formatting username parts in short (initial) or full form.
|
|
3
|
+
*/
|
|
4
|
+
export declare enum KbqUsernameFormatKey {
|
|
5
|
+
/**
|
|
6
|
+
* Short form of the first name (e.g., "John" → "J")
|
|
7
|
+
*/
|
|
8
|
+
FirstNameShort = "f",
|
|
9
|
+
/**
|
|
10
|
+
* Full form of the first name (e.g., "John")
|
|
11
|
+
*/
|
|
12
|
+
FirstNameFull = "F",
|
|
13
|
+
/**
|
|
14
|
+
* Short form of the middle name (e.g., "Henry" → "H")
|
|
15
|
+
*/
|
|
16
|
+
MiddleNameShort = "m",
|
|
17
|
+
/**
|
|
18
|
+
* Full form of the middle name (e.g., "Henry")
|
|
19
|
+
*/
|
|
20
|
+
MiddleNameFull = "M",
|
|
21
|
+
/**
|
|
22
|
+
* Short form of the last name (e.g., "Doe" → "D")
|
|
23
|
+
*/
|
|
24
|
+
LastNameShort = "l",
|
|
25
|
+
/**
|
|
26
|
+
* Full form of the last name (e.g., "Doe")
|
|
27
|
+
*/
|
|
28
|
+
LastNameFull = "L",
|
|
29
|
+
Dot = "."
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Maps each format key to a property name in the user profile object.
|
|
33
|
+
* Allows flexible formatting regardless of profile field names.
|
|
34
|
+
*/
|
|
35
|
+
export type KbqFormatKeyToProfileMapping<T = any> = {
|
|
36
|
+
[key in Exclude<KbqUsernameFormatKey, KbqUsernameFormatKey.FirstNameFull | KbqUsernameFormatKey.MiddleNameFull | KbqUsernameFormatKey.LastNameFull>]: keyof T | undefined;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Maps each format key to a property name in the user profile object.
|
|
40
|
+
* Allows flexible formatting regardless of profile field names.
|
|
41
|
+
* @see KbqUsernameCustomPipe
|
|
42
|
+
*/
|
|
43
|
+
export type KbqFormatKeyToProfileMappingExtended<T = any> = {
|
|
44
|
+
[key in KbqUsernameFormatKey]: keyof T | undefined;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Layout mode for displaying a username and applying text-ellipsis.
|
|
48
|
+
*
|
|
49
|
+
* - `stacked`: Elements shown vertically.
|
|
50
|
+
* - `inline`: Elements shown in one line. Text ellipsis is applied to both parts.
|
|
51
|
+
* - `text`: Plain text, no layout styling. No text-ellipsis.
|
|
52
|
+
*/
|
|
53
|
+
export type KbqUsernameMode = 'stacked' | 'inline' | 'text';
|
|
54
|
+
/**
|
|
55
|
+
* Visual style of the username.
|
|
56
|
+
*
|
|
57
|
+
* - `default`: standard styling with primary and secondary colors.
|
|
58
|
+
* - `error`: error colors (e.g., red).
|
|
59
|
+
* - `accented`: no color theming; emphasizes via typography only.
|
|
60
|
+
* - `inherit`: inherits parent styles, no theming. For example, useful when using inside links.
|
|
61
|
+
*/
|
|
62
|
+
export type KbqUsernameStyle = 'default' | 'error' | 'accented' | 'inherit';
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { KbqUsernameMode, KbqUsernameStyle } from './types';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Basic user info
|
|
5
|
+
* @docs-private
|
|
6
|
+
*/
|
|
7
|
+
export type KbqUserInfo = {
|
|
8
|
+
firstName?: string;
|
|
9
|
+
lastName?: string;
|
|
10
|
+
middleName?: string;
|
|
11
|
+
login?: string;
|
|
12
|
+
site?: string;
|
|
13
|
+
};
|
|
14
|
+
/** Styles the primary part of the username (e.g. full name). */
|
|
15
|
+
export declare class KbqUsernamePrimary {
|
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqUsernamePrimary, never>;
|
|
17
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqUsernamePrimary, "[kbqUsernamePrimary]", ["kbqUsernamePrimary"], {}, {}, never, never, true, never>;
|
|
18
|
+
}
|
|
19
|
+
/** Styles the secondary part. */
|
|
20
|
+
export declare class KbqUsernameSecondary {
|
|
21
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqUsernameSecondary, never>;
|
|
22
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqUsernameSecondary, "[kbqUsernameSecondary]", ["kbqUsernameSecondary"], {}, {}, never, never, true, never>;
|
|
23
|
+
}
|
|
24
|
+
/** Styles a secondary hint. */
|
|
25
|
+
export declare class KbqUsernameSecondaryHint {
|
|
26
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqUsernameSecondaryHint, never>;
|
|
27
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqUsernameSecondaryHint, "[kbqUsernameSecondaryHint]", ["kbqUsernameSecondaryHint"], {}, {}, never, never, true, never>;
|
|
28
|
+
}
|
|
29
|
+
/** Custom content for `KbqUsername`, overrides default view. */
|
|
30
|
+
export declare class KbqUsernameCustomView {
|
|
31
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqUsernameCustomView, never>;
|
|
32
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqUsernameCustomView, "kbq-username-custom-view, [kbq-username-custom-view]", ["kbqUsernameCustomView"], {}, {}, never, never, true, never>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Displays a user's name based on profile data.
|
|
36
|
+
* Supports different display modes and visual styles.
|
|
37
|
+
* A custom view can be provided via `<kbq-username-custom-view>` for full control over the output.
|
|
38
|
+
* Accepts input profile data and optional formatting options.
|
|
39
|
+
*/
|
|
40
|
+
export declare class KbqUsername {
|
|
41
|
+
/** User profile data used for display. */
|
|
42
|
+
readonly userInfo: import("@angular/core").InputSignal<KbqUserInfo | undefined>;
|
|
43
|
+
/** Enables compact display mode */
|
|
44
|
+
readonly isCompact: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
45
|
+
/** Format string for rendering the user's full name. */
|
|
46
|
+
readonly fullNameFormat: import("@angular/core").InputSignal<string>;
|
|
47
|
+
/**
|
|
48
|
+
* Display mode of the username.
|
|
49
|
+
* @default inline
|
|
50
|
+
*/
|
|
51
|
+
readonly mode: import("@angular/core").InputSignal<KbqUsernameMode>;
|
|
52
|
+
/**
|
|
53
|
+
* Visual style of the username.
|
|
54
|
+
* @default default
|
|
55
|
+
*/
|
|
56
|
+
readonly type: import("@angular/core").InputSignal<KbqUsernameStyle>;
|
|
57
|
+
/**
|
|
58
|
+
* Custom projected view for username rendering.
|
|
59
|
+
* @docs-private
|
|
60
|
+
*/
|
|
61
|
+
protected readonly customView: import("@angular/core").Signal<KbqUsernameCustomView | undefined>;
|
|
62
|
+
/** @docs-private */
|
|
63
|
+
protected readonly hasFullName: import("@angular/core").Signal<string | false | undefined>;
|
|
64
|
+
/** @docs-private */
|
|
65
|
+
protected readonly class: import("@angular/core").Signal<string>;
|
|
66
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqUsername, never>;
|
|
67
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqUsername, "kbq-username", ["kbqUsername"], { "userInfo": { "alias": "userInfo"; "required": false; "isSignal": true; }; "isCompact": { "alias": "isCompact"; "required": false; "isSignal": true; }; "fullNameFormat": { "alias": "fullNameFormat"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; }, {}, ["customView"], ["kbq-username-custom-view,[kbq-username-custom-view]"], true, never>;
|
|
68
|
+
}
|