@koobiq/components 17.0.0-beta.2 → 17.0.0-rc.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -2
- package/alert/_alert-theme.scss +48 -24
- package/alert/alert.component.d.ts +23 -3
- package/alert/alert.component.scss +91 -59
- package/autocomplete/_autocomplete-theme.scss +3 -3
- package/autocomplete/autocomplete.scss +8 -18
- package/badge/_badge-theme.scss +30 -45
- package/badge/badge.component.scss +18 -39
- package/button/_button-base.scss +7 -14
- package/button/_button-theme.scss +30 -86
- package/button/button.component.d.ts +3 -2
- package/button/button.scss +7 -17
- package/button-toggle/_button-toggle-theme.scss +19 -20
- package/button-toggle/button-toggle.scss +17 -44
- package/card/_card-theme.scss +18 -17
- package/card/card.component.scss +3 -6
- package/checkbox/_checkbox-theme.scss +50 -50
- package/checkbox/checkbox.scss +31 -35
- package/code-block/README.md +18 -14
- package/code-block/_code-block-theme.scss +53 -23
- package/code-block/actionbar.component.scss +11 -25
- package/code-block/code-block.component.d.ts +12 -4
- package/code-block/code-block.scss +62 -77
- package/core/form-field/form-field-ref.d.ts +2 -0
- package/core/forms/_forms-theme.scss +4 -8
- package/core/forms/_forms.scss +13 -43
- package/core/locales/formatters.d.ts +96 -0
- package/core/locales/locale-service.d.ts +97 -0
- package/core/option/_optgroup-theme.scss +4 -6
- package/core/option/_option-action-theme.scss +8 -11
- package/core/option/_option-theme.scss +15 -20
- package/core/option/optgroup.scss +0 -1
- package/core/option/option.scss +0 -1
- package/core/pop-up/_pop-up.scss +0 -1
- package/core/pop-up/pop-up-trigger.d.ts +3 -1
- package/core/select/common.d.ts +35 -0
- package/core/select/index.d.ts +1 -0
- package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +15 -19
- package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +9 -9
- package/core/services/theme.service.d.ts +3 -2
- package/core/styles/_core.scss +0 -1
- package/core/styles/_koobiq-theme.scss +5 -3
- package/core/styles/common/_animation.scss +9 -8
- package/core/styles/common/_button.scss +0 -2
- package/core/styles/common/_clearfix.scss +1 -1
- package/core/styles/common/_groups.scss +3 -9
- package/core/styles/common/_list.scss +28 -31
- package/core/styles/common/_overlay.scss +4 -3
- package/core/styles/common/_popup.scss +5 -5
- package/core/styles/common/_rtl.scss +4 -4
- package/core/styles/common/_select.scss +48 -42
- package/core/styles/common/_tokens.scss +47 -0
- package/core/styles/functions/_number.scss +14 -19
- package/core/styles/functions/_string.scss +18 -19
- package/core/styles/functions/_timing.scss +24 -24
- package/core/styles/theming/_components-theming.scss +1380 -1384
- package/core/styles/theming/_scrollbar-theme.scss +8 -5
- package/core/styles/theming/_theming.scss +26 -29
- package/core/styles/typography/_typography-utils.scss +1 -2
- package/core/styles/typography/_typography.scss +138 -85
- package/core/styles/visual/_body.scss +0 -2
- package/core/styles/visual/_layout.scss +44 -38
- package/core/utils/data-size/config.d.ts +20 -2
- package/core/utils/data-size/data-size.pipe.d.ts +10 -9
- package/core/utils/data-size/size.d.ts +3 -4
- package/datepicker/_datepicker-theme.scss +38 -40
- package/datepicker/calendar-body.scss +3 -11
- package/datepicker/calendar-header.scss +4 -10
- package/datepicker/calendar.scss +5 -17
- package/datepicker/datepicker-content.scss +5 -15
- package/datepicker/datepicker-input.scss +0 -5
- package/datepicker/datepicker-toggle.scss +3 -3
- package/divider/_divider-theme.scss +2 -1
- package/divider/divider.scss +9 -26
- package/dl/_dl-theme.scss +5 -8
- package/dl/dl.scss +5 -20
- package/dropdown/_dropdown-theme.scss +27 -22
- package/dropdown/dropdown-item.scss +5 -12
- package/dropdown/dropdown-trigger.directive.d.ts +2 -2
- package/dropdown/dropdown.scss +6 -15
- package/ellipsis-center/ellipsis-center.directive.d.ts +3 -2
- package/empty-state/README.md +0 -0
- package/empty-state/_empty-state-theme.scss +56 -0
- package/empty-state/empty-state.component.d.ts +31 -0
- package/empty-state/empty-state.module.d.ts +10 -0
- package/empty-state/empty-state.scss +81 -0
- package/empty-state/index.d.ts +1 -0
- package/empty-state/public-api.d.ts +2 -0
- package/esm2022/alert/alert.component.mjs +52 -5
- package/esm2022/badge/badge.component.mjs +2 -2
- package/esm2022/button/button.component.mjs +13 -6
- package/esm2022/button-toggle/button-toggle.component.mjs +2 -2
- package/esm2022/checkbox/checkbox.mjs +2 -2
- package/esm2022/code-block/actionbar.component.mjs +2 -2
- package/esm2022/code-block/code-block.component.mjs +58 -14
- package/esm2022/core/animation/select-animations.mjs +4 -4
- package/esm2022/core/form-field/form-field-ref.mjs +1 -1
- package/esm2022/core/locales/formatters.mjs +97 -1
- package/esm2022/core/locales/locale-service.mjs +5 -2
- package/esm2022/core/option/option.mjs +2 -2
- package/esm2022/core/pop-up/pop-up-trigger.mjs +18 -11
- package/esm2022/core/select/common.mjs +120 -0
- package/esm2022/core/select/index.mjs +2 -1
- package/esm2022/core/services/theme.service.mjs +4 -1
- package/esm2022/core/utils/data-size/config.mjs +5 -17
- package/esm2022/core/utils/data-size/data-size.pipe.mjs +36 -22
- package/esm2022/core/utils/data-size/size.mjs +10 -14
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +1 -1
- package/esm2022/datepicker/datepicker-animations.mjs +2 -2
- package/esm2022/dropdown/dropdown-animations.mjs +4 -4
- package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
- package/esm2022/dropdown/dropdown-trigger.directive.mjs +4 -4
- package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +7 -5
- package/esm2022/empty-state/empty-state.component.mjs +104 -0
- package/esm2022/empty-state/empty-state.module.mjs +50 -0
- package/esm2022/empty-state/index.mjs +2 -0
- package/esm2022/empty-state/koobiq-components-empty-state.mjs +5 -0
- package/esm2022/empty-state/public-api.mjs +3 -0
- package/esm2022/file-upload/file-upload.mjs +15 -1
- package/esm2022/file-upload/file-upload.module.mjs +15 -5
- package/esm2022/file-upload/multiple-file-upload.component.mjs +98 -49
- package/esm2022/file-upload/single-file-upload.component.mjs +110 -54
- package/esm2022/form-field/form-field.mjs +2 -2
- package/esm2022/form-field/hint.mjs +2 -2
- package/esm2022/form-field/password-hint.mjs +2 -2
- package/esm2022/form-field/password-toggle.mjs +11 -9
- package/esm2022/icon/icon-item.component.mjs +16 -6
- package/esm2022/input/input-number.mjs +2 -2
- package/esm2022/list/list-selection.component.mjs +2 -2
- package/esm2022/list/list.component.mjs +2 -2
- package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
- package/esm2022/markdown/markdown.component.mjs +2 -2
- package/esm2022/modal/modal.component.mjs +8 -9
- package/esm2022/navbar/navbar-item.component.mjs +11 -11
- 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/radio/radio.component.mjs +2 -2
- package/esm2022/scrollbar/scrollbar.component.mjs +2 -2
- package/esm2022/select/select-option.directive.mjs +7 -5
- package/esm2022/select/select.component.mjs +71 -125
- package/esm2022/select/select.module.mjs +28 -28
- package/esm2022/splitter/splitter.component.mjs +37 -17
- package/esm2022/table/table.component.mjs +29 -6
- package/esm2022/table/table.module.mjs +14 -6
- package/esm2022/tabs/tab-body.component.mjs +1 -1
- package/esm2022/tabs/tab-group.component.mjs +55 -13
- package/esm2022/tabs/tab-header.component.mjs +2 -2
- package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +2 -2
- package/esm2022/tags/tag-default-options.mjs +1 -1
- package/esm2022/tags/tag-input.mjs +17 -3
- package/esm2022/tags/tag-list.component.mjs +2 -2
- package/esm2022/tags/tag.component.mjs +4 -4
- package/esm2022/textarea/textarea.component.mjs +12 -10
- package/esm2022/timepicker/timepicker.directive.mjs +11 -3
- package/esm2022/timezone/timezone-option.component.mjs +2 -2
- package/esm2022/timezone/timezone-option.directive.mjs +7 -5
- package/esm2022/timezone/timezone-select.component.mjs +5 -5
- package/esm2022/title/title.directive.mjs +3 -4
- package/esm2022/toast/toast-container.component.mjs +2 -2
- package/esm2022/toast/toast.component.mjs +4 -4
- package/esm2022/toast/toast.service.mjs +18 -13
- package/esm2022/toast/toast.type.mjs +3 -1
- package/esm2022/tooltip/tooltip.component.mjs +28 -14
- package/esm2022/tree/padding.directive.mjs +2 -2
- package/esm2022/tree/tree-base.mjs +2 -2
- package/esm2022/tree/tree-option.component.mjs +2 -2
- package/esm2022/tree/tree-selection.component.mjs +6 -1
- package/esm2022/tree-select/tree-select.component.mjs +29 -44
- package/esm2022/tree-select/tree-select.module.mjs +31 -11
- package/fesm2022/koobiq-components-alert.mjs +52 -5
- 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-button-toggle.mjs +2 -2
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +12 -5
- 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 +57 -14
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +285 -67
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +2 -2
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +8 -8
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-ellipsis-center.mjs +5 -4
- package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-empty-state.mjs +157 -0
- package/fesm2022/koobiq-components-empty-state.mjs.map +1 -0
- package/fesm2022/koobiq-components-file-upload.mjs +225 -97
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +21 -21
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +14 -4
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +1 -1
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +4 -4
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-markdown.mjs +2 -2
- package/fesm2022/koobiq-components-modal.mjs +7 -8
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +14 -14
- 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-radio.mjs +2 -2
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-scrollbar.mjs +2 -2
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +102 -155
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter.mjs +36 -16
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-table.mjs +41 -10
- package/fesm2022/koobiq-components-table.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +57 -15
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +21 -8
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +11 -9
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs +10 -2
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +11 -10
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-title.mjs +2 -3
- package/fesm2022/koobiq-components-title.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +25 -17
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +26 -13
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +57 -51
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +9 -4
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/file-upload/_file-upload-theme.scss +124 -73
- package/file-upload/file-upload.d.ts +1 -1
- package/file-upload/file-upload.module.d.ts +11 -9
- package/file-upload/file-upload.scss +0 -6
- package/file-upload/multiple-file-upload.component.d.ts +38 -10
- package/file-upload/multiple-file-upload.component.scss +50 -120
- package/file-upload/single-file-upload.component.d.ts +40 -13
- package/file-upload/single-file-upload.component.scss +12 -33
- package/form-field/_form-field-theme.scss +46 -36
- package/form-field/_hint-theme.scss +15 -20
- package/form-field/cleaner.scss +3 -9
- package/form-field/form-field.scss +23 -26
- package/form-field/hint.scss +5 -8
- package/form-field/password-toggle.d.ts +3 -2
- package/form-field/password-toggle.scss +3 -10
- package/form-field/stepper.scss +4 -11
- package/icon/_icon-button-theme.scss +47 -36
- package/icon/_icon-item-theme.scss +47 -26
- package/icon/_icon-theme.scss +12 -14
- package/icon/icon-button.scss +5 -20
- package/icon/icon-item.component.d.ts +3 -1
- package/icon/icon-item.scss +10 -8
- package/icon/icon.scss +0 -6
- package/input/_input-theme.scss +6 -4
- package/input/input.scss +11 -10
- package/link/_link-theme.scss +30 -49
- package/list/_list-theme.scss +21 -19
- package/list/list.scss +2 -6
- package/loader-overlay/_loader-overlay-theme.scss +17 -18
- package/loader-overlay/loader-overlay.scss +9 -33
- package/markdown/_markdown-theme.scss +47 -47
- package/markdown/markdown.scss +41 -91
- package/modal/README.md +5 -4
- package/modal/_modal-animation.scss +0 -1
- package/modal/_modal-confirm.scss +2 -7
- package/modal/_modal-theme.scss +11 -13
- package/modal/modal.component.d.ts +1 -1
- package/modal/modal.scss +15 -31
- package/navbar/README.md +21 -20
- package/navbar/_navbar-item_horizontal.scss +28 -29
- package/navbar/_navbar-item_vertical.scss +31 -31
- package/navbar/_navbar-theme.scss +20 -24
- package/navbar/navbar-brand.scss +24 -27
- package/navbar/navbar-divider.scss +4 -8
- package/navbar/navbar-item.component.d.ts +4 -4
- package/navbar/navbar-item.scss +13 -15
- package/navbar/navbar.scss +2 -6
- package/navbar/vertical-navbar.scss +4 -6
- package/package.json +23 -16
- package/popover/README.md +18 -14
- package/popover/_popover-theme.scss +9 -17
- package/popover/popover.scss +15 -29
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/progress-bar/_progress-bar-theme.scss +7 -11
- package/progress-bar/progress-bar.scss +6 -19
- package/progress-spinner/_progress-spinner-theme.scss +6 -8
- package/progress-spinner/progress-spinner.scss +8 -18
- package/radio/_radio-theme.scss +36 -37
- package/radio/radio.scss +25 -40
- package/risk-level/_risk-level-theme.scss +25 -31
- package/risk-level/risk-level.component.scss +4 -10
- package/schematics/collection.json +11 -0
- package/schematics/ng-add/index.js +70 -0
- package/schematics/ng-add/schema.json +15 -0
- package/scrollbar/_scrollbar-component-theme.scss +15 -19
- package/scrollbar/scrollbar.component.scss +68 -63
- package/scrollbar/scrollbar.directive.d.ts +1 -0
- package/scrollbar/scrollbar.types.d.ts +1 -0
- package/select/_select-theme.scss +14 -16
- package/select/select-option.directive.d.ts +3 -2
- package/select/select.component.d.ts +12 -33
- package/select/select.module.d.ts +1 -1
- package/select/select.scss +3 -11
- package/sidepanel/_sidepanel-theme.scss +8 -10
- package/sidepanel/sidepanel.scss +20 -37
- package/splitter/_splitter-theme.scss +5 -6
- package/splitter/splitter.component.d.ts +10 -5
- package/splitter/splitter.scss +0 -1
- package/table/_table-theme.scss +16 -15
- package/table/table.component.d.ts +8 -1
- package/table/table.module.d.ts +1 -1
- package/table/table.scss +41 -42
- package/tabs/_tabs-common.scss +13 -15
- package/tabs/_tabs-theme.scss +76 -44
- package/tabs/tab-body.component.d.ts +1 -1
- package/tabs/tab-group.component.d.ts +9 -3
- package/tabs/tab-group.scss +2 -8
- package/tabs/tab-header.scss +0 -10
- package/tabs/tab-nav-bar/tab-nav-bar.scss +2 -9
- package/tags/_tag-theme.scss +22 -27
- package/tags/tag-default-options.d.ts +1 -0
- package/tags/tag-input.d.ts +7 -1
- package/tags/tag-list.scss +15 -12
- package/tags/tag.component.d.ts +1 -1
- package/tags/tag.scss +5 -11
- package/textarea/_textarea-theme.scss +2 -5
- package/textarea/textarea.scss +5 -10
- package/timepicker/timepicker.directive.d.ts +1 -1
- package/timepicker/timepicker.scss +2 -8
- package/timezone/_timezone-option-theme.scss +8 -10
- package/timezone/timezone-option.component.scss +5 -8
- package/timezone/timezone-option.directive.d.ts +3 -2
- package/timezone/timezone-select.component.d.ts +2 -1
- package/timezone/timezone-select.component.scss +2 -4
- package/title/title.directive.d.ts +0 -1
- package/toast/_toast-theme.scss +20 -16
- package/toast/toast-container.component.scss +5 -6
- package/toast/toast.component.scss +28 -29
- package/toast/toast.service.d.ts +8 -4
- package/toast/toast.type.d.ts +2 -0
- package/toggle/_toggle-theme.scss +49 -42
- package/toggle/toggle.scss +9 -22
- package/tooltip/_tooltip-theme.scss +12 -16
- package/tooltip/tooltip.component.d.ts +12 -8
- package/tooltip/tooltip.scss +7 -13
- package/tree/_tree-theme.scss +20 -23
- package/tree/toggle.scss +3 -6
- package/tree/tree-base.d.ts +1 -1
- package/tree/tree-option.scss +17 -14
- package/tree/tree-selection.component.d.ts +1 -0
- package/tree-select/_tree-select-theme.scss +12 -15
- package/tree-select/tree-select.component.d.ts +8 -17
- package/tree-select/tree-select.module.d.ts +1 -2
- package/tree-select/tree-select.scss +1 -6
- package/core/styles/_variables.scss +0 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var schematics = require('@angular-devkit/schematics');
|
|
6
|
+
var utility = require('@schematics/angular/utility');
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Sorts the keys of the given object.
|
|
10
|
+
* @returns A new object instance with sorted keys
|
|
11
|
+
*/
|
|
12
|
+
function sortObjectByKeys(obj) {
|
|
13
|
+
return Object.keys(obj)
|
|
14
|
+
.sort()
|
|
15
|
+
.reduce((result, key) => (result[key] = obj[key]) && result, {});
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Adds a package to the package.json in the given tree
|
|
19
|
+
*/
|
|
20
|
+
function addPackageToPackageJson(tree, pkg, version, devDependency = false) {
|
|
21
|
+
if (tree.exists('package.json')) {
|
|
22
|
+
const sourceText = tree.read('package.json').toString('utf-8');
|
|
23
|
+
const json = JSON.parse(sourceText);
|
|
24
|
+
const dependenciesType = devDependency ? 'devDependencies' : 'dependencies';
|
|
25
|
+
const dependencies = json[dependenciesType] || {};
|
|
26
|
+
if (!dependencies[pkg]) {
|
|
27
|
+
dependencies[pkg] = version;
|
|
28
|
+
json[dependenciesType] = sortObjectByKeys(dependencies);
|
|
29
|
+
}
|
|
30
|
+
tree.overwrite('package.json', JSON.stringify(json, null, 2));
|
|
31
|
+
}
|
|
32
|
+
return tree;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function noProject(project) {
|
|
36
|
+
return `Unable to find project '${project}' in the workspace`;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* This is executed when `ng add @koobiq/components` is run.
|
|
41
|
+
* It installs all dependencies in the 'package.json' and runs 'ng-add-setup-project' schematic.
|
|
42
|
+
*/
|
|
43
|
+
function ngAdd(options) {
|
|
44
|
+
return async (tree) => {
|
|
45
|
+
const { project } = options;
|
|
46
|
+
if (project) {
|
|
47
|
+
const workspace = await utility.readWorkspace(tree);
|
|
48
|
+
const projectWorkspace = workspace.projects.get(project);
|
|
49
|
+
if (!projectWorkspace) {
|
|
50
|
+
throw new schematics.SchematicsException(noProject(project));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
// Installing dependencies
|
|
54
|
+
addPackageToPackageJson(tree, '@angular/cdk', "^17.2.0");
|
|
55
|
+
addPackageToPackageJson(tree, '@koobiq/cdk', "^17.0.0-rc.10");
|
|
56
|
+
addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^17.0.0-rc.10");
|
|
57
|
+
addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.1.2");
|
|
58
|
+
addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.1.2");
|
|
59
|
+
addPackageToPackageJson(tree, '@koobiq/icons', "^7.1.1");
|
|
60
|
+
addPackageToPackageJson(tree, '@koobiq/tokens-builder', "^3.0.0-rc.12");
|
|
61
|
+
addPackageToPackageJson(tree, '@koobiq/design-tokens', "^3.0.0-rc.12");
|
|
62
|
+
addPackageToPackageJson(tree, '@messageformat/core', "^3.0.1");
|
|
63
|
+
addPackageToPackageJson(tree, 'luxon', "^3.4.4");
|
|
64
|
+
addPackageToPackageJson(tree, 'marked', "^9.0.0");
|
|
65
|
+
addPackageToPackageJson(tree, 'overlayscrollbars', "^2.7.3");
|
|
66
|
+
addPackageToPackageJson(tree, 'ngx-highlightjs', "^10.0.0");
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
exports.default = ngAdd;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "koobiq-components-ng-add",
|
|
4
|
+
"title": "koobiq-components ng-add schematic",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Name of the project",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "projectName"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
@use 'sass:map';
|
|
2
|
+
@use '../core/styles/common/tokens' as *;
|
|
2
3
|
|
|
3
4
|
@mixin kbq-scrollbar-component-theme($theme) {
|
|
4
5
|
$scrollbar: map.get(map.get($theme, components), scrollbar);
|
|
@@ -7,44 +8,39 @@
|
|
|
7
8
|
.os-scrollbar {
|
|
8
9
|
.os-scrollbar-handle {
|
|
9
10
|
&::before {
|
|
10
|
-
border-color: map.get($scrollbar, default);
|
|
11
|
-
background-color: map.get($scrollbar, default);
|
|
11
|
+
border-color: kbq-css-variable(scrollbar-default, map.get($scrollbar, default));
|
|
12
|
+
background-color: kbq-css-variable(scrollbar-default, map.get($scrollbar, default));
|
|
12
13
|
}
|
|
13
14
|
|
|
14
15
|
&:hover {
|
|
15
16
|
&::before {
|
|
16
|
-
border-color: map.get($scrollbar, hover);
|
|
17
|
-
background-color: map.get($scrollbar, hover);
|
|
17
|
+
border-color: kbq-css-variable(scrollbar-hover, map.get($scrollbar, hover));
|
|
18
|
+
background-color: kbq-css-variable(scrollbar-hover, map.get($scrollbar, hover));
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
|
|
21
22
|
&:active {
|
|
22
23
|
&::before {
|
|
23
|
-
border-color: map.get($scrollbar, active);
|
|
24
|
-
background-color: map.get($scrollbar, active);
|
|
24
|
+
border-color: kbq-css-variable(scrollbar-active, map.get($scrollbar, active));
|
|
25
|
+
background-color: kbq-css-variable(scrollbar-active, map.get($scrollbar, active));
|
|
25
26
|
}
|
|
26
27
|
}
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
.os-scrollbar-
|
|
31
|
-
$track: map.get($scrollbar, track);
|
|
32
|
-
$default: map.get($track, default);
|
|
33
|
-
|
|
30
|
+
.os-scrollbar-track,
|
|
31
|
+
.os-scrollbar-handle {
|
|
34
32
|
border-style: solid;
|
|
35
|
-
border-color: $default !important;
|
|
36
|
-
background-color: $default;
|
|
33
|
+
border-color: kbq-css-variable(scrollbar-track-default, map.get($scrollbar, track, default)) !important;
|
|
34
|
+
background-color: kbq-css-variable(scrollbar-track-default, map.get($scrollbar, track, default));
|
|
37
35
|
|
|
38
36
|
&:hover {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
background: $hover;
|
|
37
|
+
border-color: kbq-css-variable(scrollbar-track-hover, map.get($scrollbar, track, hover));
|
|
38
|
+
background: kbq-css-variable(scrollbar-track-hover, map.get($scrollbar, track, hover));
|
|
42
39
|
}
|
|
43
40
|
|
|
44
41
|
&:active {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
background: $active;
|
|
42
|
+
border-color: kbq-css-variable(scrollbar-track-active, map.get($scrollbar, track, active));
|
|
43
|
+
background: kbq-css-variable(scrollbar-track-active, map.get($scrollbar, track, active));
|
|
48
44
|
}
|
|
49
45
|
}
|
|
50
46
|
}
|
|
@@ -1,26 +1,14 @@
|
|
|
1
1
|
@use 'sass:meta';
|
|
2
2
|
@use 'sass:map';
|
|
3
3
|
|
|
4
|
-
@use '../core/styles/tokens'
|
|
4
|
+
@use '../core/styles/common/tokens' as *;
|
|
5
5
|
|
|
6
|
-
$tokens: meta.module-variables(tokens) !default;
|
|
7
|
-
|
|
8
|
-
/* stylelint-disable no-descending-specificity */
|
|
9
6
|
.kbq-scrollbar-component {
|
|
10
|
-
$scrollbar-size-thumb-width:
|
|
11
|
-
$padding-vertical:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
);
|
|
15
|
-
$padding-horizontal: var(
|
|
16
|
-
--kbq-scrollbar-size-track-padding-horizontal,
|
|
17
|
-
map.get($tokens, scrollbar-size-track-padding-horizontal)
|
|
18
|
-
);
|
|
19
|
-
$kbq-scrollbar-track-width: var(
|
|
20
|
-
--kbq-scrollbar-size-track-dimension,
|
|
21
|
-
map.get($tokens, scrollbar-size-track-dimension)
|
|
22
|
-
);
|
|
23
|
-
$thumb-min-height: var(--kbq-scrollbar-size-thumb-min-size, map.get($tokens, scrollbar-size-thumb-min-size));
|
|
7
|
+
$scrollbar-size-thumb-width: kbq-css-variable(scrollbar-size-thumb-width);
|
|
8
|
+
$padding-vertical: kbq-css-variable(scrollbar-size-track-padding-vertical);
|
|
9
|
+
$padding-horizontal: kbq-css-variable(scrollbar-size-track-padding-horizontal);
|
|
10
|
+
$kbq-scrollbar-track-width: kbq-css-variable(scrollbar-size-track-dimension);
|
|
11
|
+
$thumb-min-height: kbq-css-variable(scrollbar-size-thumb-min-size);
|
|
24
12
|
$border-width: calc(($kbq-scrollbar-track-width - $scrollbar-size-thumb-width) / 4);
|
|
25
13
|
|
|
26
14
|
.os-scrollbar-vertical {
|
|
@@ -29,7 +17,11 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
29
17
|
width: $kbq-scrollbar-track-width;
|
|
30
18
|
|
|
31
19
|
.os-scrollbar-handle {
|
|
32
|
-
transition:
|
|
20
|
+
transition:
|
|
21
|
+
opacity 0.15s,
|
|
22
|
+
background-color 0.15s,
|
|
23
|
+
border-color 0.15s,
|
|
24
|
+
width 0.15s;
|
|
33
25
|
border: $padding-horizontal solid;
|
|
34
26
|
width: 100%;
|
|
35
27
|
min-height: $thumb-min-height;
|
|
@@ -47,7 +39,11 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
47
39
|
height: $kbq-scrollbar-track-width;
|
|
48
40
|
|
|
49
41
|
.os-scrollbar-handle {
|
|
50
|
-
transition:
|
|
42
|
+
transition:
|
|
43
|
+
opacity 0.15s,
|
|
44
|
+
background-color 0.15s,
|
|
45
|
+
border-color 0.15s,
|
|
46
|
+
height 0.15s;
|
|
51
47
|
border: $padding-horizontal solid;
|
|
52
48
|
height: 100%;
|
|
53
49
|
min-width: $thumb-min-height;
|
|
@@ -60,21 +56,28 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
60
56
|
}
|
|
61
57
|
|
|
62
58
|
.os-scrollbar {
|
|
63
|
-
.os-scrollbar-handle,
|
|
59
|
+
.os-scrollbar-handle,
|
|
60
|
+
.os-scrollbar-handle::before,
|
|
61
|
+
.os-scrollbar-track {
|
|
64
62
|
box-sizing: border-box;
|
|
65
|
-
border-radius:
|
|
66
|
-
--kbq-scrollbar-size-thumb-inset-border-radius,
|
|
67
|
-
map.get($tokens, scrollbar-size-thumb-border-radius)
|
|
68
|
-
);
|
|
63
|
+
border-radius: kbq-css-variable(scrollbar-size-thumb-border-radius);
|
|
69
64
|
}
|
|
70
65
|
|
|
71
66
|
.os-scrollbar-track {
|
|
72
67
|
border-width: $border-width !important;
|
|
73
|
-
transition:
|
|
68
|
+
transition:
|
|
69
|
+
opacity 0.15s,
|
|
70
|
+
background-color 0.15s,
|
|
71
|
+
border-color 0.15s;
|
|
74
72
|
}
|
|
75
73
|
}
|
|
76
74
|
}
|
|
77
75
|
|
|
76
|
+
[data-overlayscrollbars-contents] {
|
|
77
|
+
&:focus-visible {
|
|
78
|
+
outline: none;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
78
81
|
|
|
79
82
|
// core
|
|
80
83
|
.os-size-observer,
|
|
@@ -115,7 +118,7 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
115
118
|
}
|
|
116
119
|
|
|
117
120
|
.os-size-observer::before {
|
|
118
|
-
content:
|
|
121
|
+
content: '';
|
|
119
122
|
flex: none;
|
|
120
123
|
box-sizing: inherit;
|
|
121
124
|
padding: 10px;
|
|
@@ -148,12 +151,13 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
148
151
|
}
|
|
149
152
|
|
|
150
153
|
.os-size-observer-listener:empty::before {
|
|
151
|
-
content:
|
|
154
|
+
content: '';
|
|
152
155
|
width: 100%;
|
|
153
156
|
height: 100%;
|
|
154
157
|
}
|
|
155
158
|
|
|
156
|
-
.os-size-observer-listener:empty::before,
|
|
159
|
+
.os-size-observer-listener:empty::before,
|
|
160
|
+
.os-size-observer-listener > .os-size-observer-listener-item {
|
|
157
161
|
display: block;
|
|
158
162
|
position: relative;
|
|
159
163
|
padding: inherit;
|
|
@@ -265,7 +269,7 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
265
269
|
}
|
|
266
270
|
|
|
267
271
|
.os-environment.os-environment-flexbox-glue-max div::before {
|
|
268
|
-
content:
|
|
272
|
+
content: '';
|
|
269
273
|
display: block;
|
|
270
274
|
height: 999px;
|
|
271
275
|
width: 999px;
|
|
@@ -280,18 +284,18 @@ $tokens: meta.module-variables(tokens) !default;
|
|
|
280
284
|
}
|
|
281
285
|
|
|
282
286
|
[data-overlayscrollbars-initialize],
|
|
283
|
-
[data-overlayscrollbars~=scrollbarHidden],
|
|
284
|
-
[data-overlayscrollbars-viewport~=scrollbarHidden],
|
|
287
|
+
[data-overlayscrollbars~='scrollbarHidden'],
|
|
288
|
+
[data-overlayscrollbars-viewport~='scrollbarHidden'],
|
|
285
289
|
.os-environment-scrollbar-hidden {
|
|
286
290
|
scrollbar-width: none !important;
|
|
287
291
|
}
|
|
288
292
|
|
|
289
293
|
[data-overlayscrollbars-initialize]::-webkit-scrollbar,
|
|
290
294
|
[data-overlayscrollbars-initialize]::-webkit-scrollbar-corner,
|
|
291
|
-
[data-overlayscrollbars~=scrollbarHidden]::-webkit-scrollbar,
|
|
292
|
-
[data-overlayscrollbars~=scrollbarHidden]::-webkit-scrollbar-corner,
|
|
293
|
-
[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar,
|
|
294
|
-
[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner,
|
|
295
|
+
[data-overlayscrollbars~='scrollbarHidden']::-webkit-scrollbar,
|
|
296
|
+
[data-overlayscrollbars~='scrollbarHidden']::-webkit-scrollbar-corner,
|
|
297
|
+
[data-overlayscrollbars-viewport~='scrollbarHidden']::-webkit-scrollbar,
|
|
298
|
+
[data-overlayscrollbars-viewport~='scrollbarHidden']::-webkit-scrollbar-corner,
|
|
295
299
|
.os-environment-scrollbar-hidden::-webkit-scrollbar,
|
|
296
300
|
.os-environment-scrollbar-hidden::-webkit-scrollbar-corner {
|
|
297
301
|
-webkit-appearance: none !important;
|
|
@@ -316,20 +320,20 @@ html[data-overlayscrollbars] {
|
|
|
316
320
|
margin: 0;
|
|
317
321
|
}
|
|
318
322
|
|
|
319
|
-
html[data-overlayscrollbars~=body],
|
|
320
|
-
html[data-overlayscrollbars~=body] > body {
|
|
323
|
+
html[data-overlayscrollbars~='body'],
|
|
324
|
+
html[data-overlayscrollbars~='body'] > body {
|
|
321
325
|
width: 100%;
|
|
322
326
|
height: 100%;
|
|
323
327
|
}
|
|
324
328
|
|
|
325
|
-
html[data-overlayscrollbars~=viewport] > body {
|
|
329
|
+
html[data-overlayscrollbars~='viewport'] > body {
|
|
326
330
|
overflow: visible;
|
|
327
331
|
}
|
|
328
332
|
|
|
329
333
|
/**
|
|
330
334
|
* structure setup
|
|
331
335
|
*/
|
|
332
|
-
[data-overlayscrollbars~=host],
|
|
336
|
+
[data-overlayscrollbars~='host'],
|
|
333
337
|
[data-overlayscrollbars-padding] {
|
|
334
338
|
display: flex;
|
|
335
339
|
align-items: stretch !important;
|
|
@@ -337,8 +341,8 @@ html[data-overlayscrollbars~=viewport] > body {
|
|
|
337
341
|
flex-wrap: nowrap !important;
|
|
338
342
|
}
|
|
339
343
|
|
|
340
|
-
[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]::before {
|
|
341
|
-
content:
|
|
344
|
+
[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~='arrange']::before {
|
|
345
|
+
content: '';
|
|
342
346
|
position: absolute;
|
|
343
347
|
pointer-events: none;
|
|
344
348
|
z-index: -1;
|
|
@@ -363,33 +367,33 @@ html[data-overlayscrollbars~=viewport] > body {
|
|
|
363
367
|
overflow: hidden;
|
|
364
368
|
}
|
|
365
369
|
|
|
366
|
-
[data-overlayscrollbars~=host],
|
|
367
|
-
[data-overlayscrollbars~=viewport] {
|
|
370
|
+
[data-overlayscrollbars~='host'],
|
|
371
|
+
[data-overlayscrollbars~='viewport'] {
|
|
368
372
|
position: relative;
|
|
369
373
|
overflow: hidden;
|
|
370
374
|
}
|
|
371
375
|
|
|
372
|
-
[data-overlayscrollbars~=overflowVisible],
|
|
373
|
-
[data-overlayscrollbars-padding~=overflowVisible],
|
|
374
|
-
[data-overlayscrollbars-viewport~=overflowVisible] {
|
|
376
|
+
[data-overlayscrollbars~='overflowVisible'],
|
|
377
|
+
[data-overlayscrollbars-padding~='overflowVisible'],
|
|
378
|
+
[data-overlayscrollbars-viewport~='overflowVisible'] {
|
|
375
379
|
overflow: visible;
|
|
376
380
|
}
|
|
377
381
|
|
|
378
|
-
[data-overlayscrollbars-overflow-x=hidden] {
|
|
382
|
+
[data-overlayscrollbars-overflow-x='hidden'] {
|
|
379
383
|
overflow-x: hidden;
|
|
380
384
|
overflow-y: hidden;
|
|
381
385
|
}
|
|
382
386
|
|
|
383
|
-
[data-overlayscrollbars-overflow-x=scroll] {
|
|
387
|
+
[data-overlayscrollbars-overflow-x='scroll'] {
|
|
384
388
|
overflow-x: scroll;
|
|
385
389
|
}
|
|
386
390
|
|
|
387
|
-
[data-overlayscrollbars-overflow-y=scroll] {
|
|
391
|
+
[data-overlayscrollbars-overflow-y='scroll'] {
|
|
388
392
|
overflow-y: scroll;
|
|
389
393
|
}
|
|
390
394
|
|
|
391
|
-
[data-overlayscrollbars~=scrollbarPressed],
|
|
392
|
-
[data-overlayscrollbars~=scrollbarPressed] [data-overlayscrollbars-viewport] {
|
|
395
|
+
[data-overlayscrollbars~='scrollbarPressed'],
|
|
396
|
+
[data-overlayscrollbars~='scrollbarPressed'] [data-overlayscrollbars-viewport] {
|
|
393
397
|
scroll-behavior: auto !important;
|
|
394
398
|
}
|
|
395
399
|
|
|
@@ -400,13 +404,9 @@ html[data-overlayscrollbars~=viewport] > body {
|
|
|
400
404
|
/**
|
|
401
405
|
* Display contents to bridge any flickering during deferred initialization.
|
|
402
406
|
*/
|
|
403
|
-
[data-overlayscrollbars-contents]:not(
|
|
404
|
-
[data-overlayscrollbars-
|
|
405
|
-
)
|
|
406
|
-
[data-overlayscrollbars-viewport]
|
|
407
|
-
):not(
|
|
408
|
-
[data-overlayscrollbars-content]
|
|
409
|
-
) {
|
|
407
|
+
[data-overlayscrollbars-contents]:not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not(
|
|
408
|
+
[data-overlayscrollbars-content]
|
|
409
|
+
) {
|
|
410
410
|
display: contents;
|
|
411
411
|
}
|
|
412
412
|
|
|
@@ -430,7 +430,13 @@ html[data-overlayscrollbars~=viewport] > body {
|
|
|
430
430
|
box-sizing: border-box;
|
|
431
431
|
contain: size layout;
|
|
432
432
|
contain: size layout style;
|
|
433
|
-
transition:
|
|
433
|
+
transition:
|
|
434
|
+
opacity 0.15s,
|
|
435
|
+
visibility 0.15s,
|
|
436
|
+
top 0.15s,
|
|
437
|
+
right 0.15s,
|
|
438
|
+
bottom 0.15s,
|
|
439
|
+
left 0.15s;
|
|
434
440
|
pointer-events: none;
|
|
435
441
|
position: absolute;
|
|
436
442
|
opacity: 0;
|
|
@@ -542,7 +548,7 @@ body > .os-scrollbar {
|
|
|
542
548
|
}
|
|
543
549
|
|
|
544
550
|
.os-scrollbar .os-scrollbar-handle:before {
|
|
545
|
-
content:
|
|
551
|
+
content: '';
|
|
546
552
|
position: absolute;
|
|
547
553
|
left: 0;
|
|
548
554
|
right: 0;
|
|
@@ -552,8 +558,7 @@ body > .os-scrollbar {
|
|
|
552
558
|
}
|
|
553
559
|
|
|
554
560
|
/* NONE THEME: */
|
|
555
|
-
[data-overlayscrollbars~=updating] > .os-scrollbar,
|
|
561
|
+
[data-overlayscrollbars~='updating'] > .os-scrollbar,
|
|
556
562
|
.os-theme-none.os-scrollbar {
|
|
557
563
|
display: none !important;
|
|
558
564
|
}
|
|
559
|
-
|
|
@@ -35,6 +35,7 @@ export declare class KbqScrollbarDirective implements OnDestroy {
|
|
|
35
35
|
visibility?: import("overlayscrollbars").ScrollbarsVisibilityBehavior | undefined;
|
|
36
36
|
autoHide?: import("overlayscrollbars").ScrollbarsAutoHideBehavior | undefined;
|
|
37
37
|
autoHideDelay?: number | undefined;
|
|
38
|
+
autoHideSuspend?: boolean | undefined;
|
|
38
39
|
dragScroll?: boolean | undefined;
|
|
39
40
|
clickScroll?: boolean | undefined;
|
|
40
41
|
pointers?: string[] | null | undefined;
|
|
@@ -23,6 +23,7 @@ export declare const KBQ_SCROLLBAR_CONFIG: InjectionToken<{
|
|
|
23
23
|
visibility?: import("overlayscrollbars").ScrollbarsVisibilityBehavior | undefined;
|
|
24
24
|
autoHide?: import("overlayscrollbars").ScrollbarsAutoHideBehavior | undefined;
|
|
25
25
|
autoHideDelay?: number | undefined;
|
|
26
|
+
autoHideSuspend?: boolean | undefined;
|
|
26
27
|
dragScroll?: boolean | undefined;
|
|
27
28
|
clickScroll?: boolean | undefined;
|
|
28
29
|
pointers?: string[] | null | undefined;
|
|
@@ -4,60 +4,58 @@
|
|
|
4
4
|
@use '../core/styles/common/popup' as *;
|
|
5
5
|
@use '../core/styles/theming/theming' as *;
|
|
6
6
|
@use '../core/styles/typography/typography-utils' as *;
|
|
7
|
-
|
|
7
|
+
@use '../core/styles/common/tokens' as *;
|
|
8
8
|
|
|
9
9
|
@mixin kbq-select-theme($theme) {
|
|
10
10
|
$foreground: map.get($theme, foreground);
|
|
11
11
|
|
|
12
12
|
$error: map.get($theme, error);
|
|
13
13
|
|
|
14
|
-
$select-panel: map.get(
|
|
15
|
-
$divider: map.get(
|
|
14
|
+
$select-panel: map.get($theme, components, select-panel);
|
|
15
|
+
$divider: map.get($theme, components, divider);
|
|
16
16
|
|
|
17
17
|
.kbq-select {
|
|
18
|
-
color: map.get($foreground, contrast);
|
|
18
|
+
color: kbq-css-variable(foreground-contrast, map.get($foreground, contrast));
|
|
19
19
|
|
|
20
20
|
&.ng-invalid {
|
|
21
|
-
color: kbq-color($error);
|
|
21
|
+
color: kbq-css-variable(error-default, kbq-color($error));
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
&.kbq-disabled {
|
|
25
|
-
color: map.get($foreground, text-disabled);
|
|
25
|
+
color: kbq-css-variable(foreground-text-disabled, map.get($foreground, text-disabled));
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
.kbq-select__placeholder {
|
|
30
30
|
text-overflow: ellipsis;
|
|
31
31
|
|
|
32
|
-
color: map.get($foreground, text-disabled);
|
|
32
|
+
color: kbq-css-variable(foreground-text-disabled, map.get($foreground, text-disabled));
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
.kbq-select__panel {
|
|
36
|
-
box-shadow: map.get($select-panel, shadow);
|
|
37
|
-
background: map.get($select-panel, background);
|
|
36
|
+
box-shadow: kbq-css-variable(select-panel-shadow, map.get($select-panel, shadow));
|
|
37
|
+
background: kbq-css-variable(select-panel-background, map.get($select-panel, background));
|
|
38
38
|
|
|
39
39
|
& .kbq-select__footer {
|
|
40
|
-
border-color: map.get($divider, color);
|
|
40
|
+
border-color: kbq-css-variable(divider-color, map.get($divider, color));
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
.kbq-select__search-container {
|
|
45
|
-
border-bottom-color: map.get($divider, color);
|
|
45
|
+
border-bottom-color: kbq-css-variable(divider-color, map.get($divider, color));
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
.kbq-select__no-options-message {
|
|
49
|
-
color: map.get($foreground, text-less-contrast);
|
|
49
|
+
color: kbq-css-variable(foreground-text-less-contrast, map.get($foreground, text-less-contrast));
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
@mixin kbq-select-typography($config) {
|
|
54
|
-
$tokens: map.get($config, tokens);
|
|
55
|
-
|
|
56
54
|
.kbq-select {
|
|
57
|
-
@include kbq-typography-
|
|
55
|
+
@include kbq-typography-css-variables(select, default);
|
|
58
56
|
}
|
|
59
57
|
|
|
60
58
|
.kbq-select__panel {
|
|
61
|
-
@include kbq-typography-
|
|
59
|
+
@include kbq-typography-css-variables(select-panel, default);
|
|
62
60
|
}
|
|
63
61
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
1
2
|
import { Directionality } from '@angular/cdk/bidi';
|
|
2
3
|
import { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';
|
|
3
4
|
import { AfterViewInit, ElementRef, NgZone, OnDestroy, ViewContainerRef } from '@angular/core';
|
|
@@ -10,13 +11,13 @@ export declare class KbqOptionTooltip extends KbqTooltipTrigger implements After
|
|
|
10
11
|
private mutationObserver;
|
|
11
12
|
get textElement(): HTMLElement;
|
|
12
13
|
get isOverflown(): boolean;
|
|
13
|
-
constructor(option: KbqOption, overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality);
|
|
14
|
+
constructor(option: KbqOption, overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality, focusMonitor: FocusMonitor);
|
|
14
15
|
ngAfterViewInit(): void;
|
|
15
16
|
ngOnDestroy(): void;
|
|
16
17
|
onMouseEnter(): void;
|
|
17
18
|
onMouseLeave(): void;
|
|
18
19
|
onFocus(): void;
|
|
19
20
|
onBlur(): void;
|
|
20
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KbqOptionTooltip, [null, null, null, null, null, null, null, { optional: true; }]>;
|
|
21
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<KbqOptionTooltip, [null, null, null, null, null, null, null, { optional: true; }, null]>;
|
|
21
22
|
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqOptionTooltip, "kbq-option", never, {}, {}, never, never, false, never>;
|
|
22
23
|
}
|
|
@@ -5,11 +5,10 @@ import { CdkVirtualForOf } from '@angular/cdk/scrolling';
|
|
|
5
5
|
import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
|
|
6
6
|
import { ControlValueAccessor, FormGroupDirective, NgControl, NgForm } from '@angular/forms';
|
|
7
7
|
import { ActiveDescendantKeyManager } from '@koobiq/cdk/a11y';
|
|
8
|
-
import { CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, ErrorStateMatcher, HasTabIndex, HasTabIndexCtor, KbqOptgroup, KbqOption, KbqOptionSelectionChange, KbqLocaleService, KbqOptionBase } from '@koobiq/components/core';
|
|
8
|
+
import { CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, ErrorStateMatcher, HasTabIndex, HasTabIndexCtor, KbqOptgroup, KbqOption, KbqOptionSelectionChange, KbqLocaleService, KbqOptionBase, KbqSelectTrigger, KbqSelectMatcher, KbqSelectSearch } from '@koobiq/components/core';
|
|
9
9
|
import { KbqCleaner, KbqFormField, KbqFormFieldControl } from '@koobiq/components/form-field';
|
|
10
|
-
import { KbqInput } from '@koobiq/components/input';
|
|
11
10
|
import { KbqTag } from '@koobiq/components/tags';
|
|
12
|
-
import { Observable, Subject
|
|
11
|
+
import { Observable, Subject } from 'rxjs';
|
|
13
12
|
import * as i0 from "@angular/core";
|
|
14
13
|
/** Change event object that is emitted when the select value has changed. */
|
|
15
14
|
export declare class KbqSelectChange {
|
|
@@ -17,35 +16,6 @@ export declare class KbqSelectChange {
|
|
|
17
16
|
value: any;
|
|
18
17
|
constructor(source: KbqSelect, value: any);
|
|
19
18
|
}
|
|
20
|
-
export declare class KbqSelectFooter {
|
|
21
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectFooter, never>;
|
|
22
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectFooter, "kbq-select-footer, [kbq-select-footer]", never, {}, {}, never, never, false, never>;
|
|
23
|
-
}
|
|
24
|
-
export declare class KbqSelectSearch implements AfterContentInit, OnDestroy {
|
|
25
|
-
input: KbqInput;
|
|
26
|
-
searchChangesSubscription: Subscription;
|
|
27
|
-
isSearchChanged: boolean;
|
|
28
|
-
constructor(formField: KbqFormField);
|
|
29
|
-
focus(): void;
|
|
30
|
-
reset(): void;
|
|
31
|
-
ngAfterContentInit(): void;
|
|
32
|
-
ngOnDestroy(): void;
|
|
33
|
-
handleKeydown(event: KeyboardEvent): void;
|
|
34
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectSearch, never>;
|
|
35
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectSearch, "[kbqSelectSearch]", ["kbqSelectSearch"], {}, {}, ["input"], never, false, never>;
|
|
36
|
-
}
|
|
37
|
-
export declare class KbqSelectSearchEmptyResult {
|
|
38
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectSearchEmptyResult, never>;
|
|
39
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectSearchEmptyResult, "[kbq-select-search-empty-result]", ["kbqSelectSearchEmptyResult"], {}, {}, never, never, false, never>;
|
|
40
|
-
}
|
|
41
|
-
export declare class KbqSelectTrigger {
|
|
42
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectTrigger, never>;
|
|
43
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectTrigger, "kbq-select-trigger, [kbq-select-trigger]", never, {}, {}, never, never, false, never>;
|
|
44
|
-
}
|
|
45
|
-
export declare class KbqSelectMatcher {
|
|
46
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectMatcher, never>;
|
|
47
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectMatcher, "kbq-select-matcher, [kbq-select-matcher]", never, {}, {}, never, never, false, never>;
|
|
48
|
-
}
|
|
49
19
|
/** @docs-private */
|
|
50
20
|
export declare class KbqSelectBase {
|
|
51
21
|
elementRef: ElementRef;
|
|
@@ -103,10 +73,14 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
|
|
|
103
73
|
* will fall back to a position above the trigger.
|
|
104
74
|
*/
|
|
105
75
|
positions: ConnectedPosition[];
|
|
76
|
+
/**
|
|
77
|
+
* Trigger - is a clickable field to open select dropdown panel
|
|
78
|
+
*/
|
|
106
79
|
trigger: ElementRef;
|
|
107
80
|
panel: ElementRef;
|
|
108
81
|
optionsContainer: ElementRef;
|
|
109
82
|
overlayDir: CdkConnectedOverlay;
|
|
83
|
+
footer?: ElementRef;
|
|
110
84
|
cdkVirtualForOf?: CdkVirtualForOf<any>;
|
|
111
85
|
tags: QueryList<KbqTag>;
|
|
112
86
|
/** User-supplied override of the trigger element. */
|
|
@@ -189,6 +163,8 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
|
|
|
189
163
|
get triggerValue(): string;
|
|
190
164
|
get triggerValues(): KbqOptionBase[];
|
|
191
165
|
get empty(): boolean;
|
|
166
|
+
get firstSelected(): KbqOptionBase | null;
|
|
167
|
+
get firstFiltered(): boolean;
|
|
192
168
|
private closeSubscription;
|
|
193
169
|
/** The scroll position of the overlay panel, calculated to center the selected option. */
|
|
194
170
|
private scrollTop;
|
|
@@ -272,8 +248,11 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
|
|
|
272
248
|
onRemoveMatcherItem(option: KbqOptionBase, $event: any): void;
|
|
273
249
|
calculateHiddenItems(): void;
|
|
274
250
|
getItemHeight(): number;
|
|
251
|
+
handleClick($event: MouseEvent): void;
|
|
275
252
|
private updateLocaleParams;
|
|
276
253
|
private isVisible;
|
|
254
|
+
private currentOverlayPosition;
|
|
255
|
+
private modalOverlayPosition;
|
|
277
256
|
private closingActions;
|
|
278
257
|
private getHeightOfOptionsContainer;
|
|
279
258
|
private updateScrollSize;
|
|
@@ -329,6 +308,6 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
|
|
|
329
308
|
private getTotalVisibleItems;
|
|
330
309
|
private buildTriggerClone;
|
|
331
310
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelect, [null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; self: true; }, null, { optional: true; }]>;
|
|
332
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "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; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cdkVirtualForOf", "customTrigger", "customMatcher", "customTagTemplateRef", "cleaner", "search", "options", "optionGroups"], ["kbq-select-trigger, [kbq-select-trigger]", "kbq-cleaner", "kbq-select-matcher, [kbq-select-matcher]", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "*", "kbq-select-footer,[kbq-select-footer]"], false, never>;
|
|
311
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<KbqSelect, "kbq-select", ["kbqSelect"], { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "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; }; "value": { "alias": "value"; "required": false; }; "id": { "alias": "id"; "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-trigger, [kbq-select-trigger]", "kbq-cleaner", "kbq-select-matcher, [kbq-select-matcher]", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "*", "kbq-select-footer,[kbq-select-footer]"], false, never>;
|
|
333
312
|
}
|
|
334
313
|
export {};
|
|
@@ -10,6 +10,6 @@ import * as i8 from "@koobiq/components/tooltip";
|
|
|
10
10
|
import * as i9 from "@koobiq/components/form-field";
|
|
11
11
|
export declare class KbqSelectModule {
|
|
12
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectModule, never>;
|
|
13
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqSelectModule, [typeof i1.KbqSelect, typeof
|
|
13
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<KbqSelectModule, [typeof i1.KbqSelect, typeof i2.KbqOptionTooltip], [typeof i3.CommonModule, typeof i4.OverlayModule, typeof i5.KbqOptionModule, typeof i6.KbqIconModule, typeof i7.KbqTagsModule, typeof i8.KbqToolTipModule, typeof i5.KbqSelectSearch, typeof i5.KbqSelectFooter, typeof i5.KbqSelectMatcher, typeof i5.KbqSelectTrigger, typeof i5.KbqSelectSearchEmptyResult], [typeof i9.KbqFormFieldModule, typeof i1.KbqSelect, typeof i2.KbqOptionTooltip, typeof i5.KbqOptionModule, typeof i3.CommonModule, typeof i5.KbqSelectSearch, typeof i5.KbqSelectFooter, typeof i5.KbqSelectMatcher, typeof i5.KbqSelectTrigger, typeof i5.KbqSelectSearchEmptyResult]>;
|
|
14
14
|
static ɵinj: i0.ɵɵInjectorDeclaration<KbqSelectModule>;
|
|
15
15
|
}
|