@koobiq/components 20.4.2 → 21.0.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.scss +3 -10
- package/accordion/accordion.scss +4 -6
- package/actions-panel/actions-panel-container.scss +45 -1
- package/alert/alert.component.scss +3 -2
- package/app-switcher/_app-switcher-theme.scss +0 -4
- package/app-switcher/app-switcher-dropdown-app.scss +3 -2
- package/app-switcher/app-switcher-dropdown-site.scss +2 -1
- package/app-switcher/{kbq-app-switcher-list-item.scss → app-switcher-list-item.scss} +18 -4
- package/app-switcher/app-switcher-tokens.scss +15 -0
- package/app-switcher/app-switcher.scss +14 -4
- package/autocomplete/autocomplete.scss +7 -6
- package/badge/badge.component.scss +5 -8
- package/breadcrumbs/breadcrumbs.scss +25 -10
- package/button/_button-base.scss +30 -7
- package/button/_button-theme.scss +16 -0
- package/button/button-group.scss +7 -0
- package/button/button-tokens.scss +0 -2
- package/button/button.scss +34 -2
- package/button-toggle/_button-toggle-theme.scss +7 -2
- package/button-toggle/button-toggle.scss +65 -15
- package/checkbox/_checkbox-theme.scss +4 -3
- package/checkbox/checkbox.scss +3 -6
- package/clamped-text/clamped-text.scss +6 -2
- package/code-block/code-block-tokens.scss +0 -224
- package/code-block/code-block.scss +20 -9
- package/content-panel/content-panel-aside.scss +3 -2
- package/content-panel/content-panel-container.scss +37 -0
- package/content-panel/content-panel.scss +4 -3
- package/core/highlight/_highlight-theme.scss +3 -1
- package/core/option/action-container.scss +2 -2
- package/core/option/action.scss +2 -1
- package/core/option/option.scss +2 -1
- package/core/pop-up/_pop-up.scss +0 -37
- package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +5 -10
- package/core/styles/_core.scss +3 -0
- package/core/styles/_koobiq-theme.scss +5 -6
- package/core/styles/common/_animation.scss +44 -16
- package/core/styles/common/_groups-mixins.scss +21 -19
- package/core/styles/common/_groups.scss +4 -32
- package/core/styles/common/_index.scss +0 -2
- package/core/styles/common/_link.scss +117 -0
- package/core/styles/common/_list.scss +0 -26
- package/core/styles/common/_overlay.scss +8 -10
- package/core/styles/common/_rtl.scss +0 -14
- package/core/styles/common/_select.scss +33 -15
- package/core/styles/common/_squircle.scss +63 -0
- package/core/styles/common/_tokens.scss +0 -11
- package/core/styles/common/_vendor-prefixes.scss +0 -20
- package/core/styles/functions/_timing.scss +0 -22
- package/core/styles/theming/_scrollbar-theme.scss +6 -1
- package/core/styles/theming/_theming.scss +13 -65
- package/core/styles/typography/_index.scss +0 -1
- package/core/styles/typography/_typography.scss +0 -143
- package/core/styles/visual/_body.scss +1 -6
- package/core/styles/visual/_layout.scss +0 -12
- package/datepicker/calendar-body.scss +3 -1
- package/datepicker/calendar-header.scss +0 -1
- package/datepicker/datepicker-content.scss +33 -1
- package/datepicker/datepicker-toggle.scss +0 -38
- package/dl/dl-tokens.scss +10 -0
- package/dl/dl.scss +113 -13
- package/dropdown/_dropdown-theme.scss +4 -16
- package/dropdown/dropdown-item.scss +4 -10
- package/dropdown/dropdown.scss +2 -1
- package/empty-state/_empty-state-theme.scss +10 -4
- package/empty-state/empty-state-tokens.scss +4 -4
- package/empty-state/empty-state.scss +4 -0
- package/fesm2022/koobiq-components-accordion.mjs +347 -229
- package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
- package/fesm2022/koobiq-components-actions-panel.mjs +302 -187
- package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-alert.mjs +39 -39
- package/fesm2022/koobiq-components-alert.mjs.map +1 -1
- package/fesm2022/koobiq-components-app-switcher.mjs +677 -367
- package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -1
- package/fesm2022/koobiq-components-autocomplete.mjs +620 -253
- package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
- package/fesm2022/koobiq-components-badge.mjs +46 -48
- package/fesm2022/koobiq-components-badge.mjs.map +1 -1
- package/fesm2022/koobiq-components-breadcrumbs.mjs +221 -169
- package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs +565 -196
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +332 -116
- package/fesm2022/koobiq-components-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-checkbox.mjs +172 -132
- package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
- package/fesm2022/koobiq-components-clamped-text.mjs +165 -158
- package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -1
- package/fesm2022/koobiq-components-code-block.mjs +755 -601
- package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
- package/fesm2022/koobiq-components-content-panel.mjs +260 -143
- package/fesm2022/koobiq-components-content-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-core.mjs +4342 -1595
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +1713 -1606
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-divider.mjs +73 -36
- package/fesm2022/koobiq-components-divider.mjs.map +1 -1
- package/fesm2022/koobiq-components-dl.mjs +447 -89
- package/fesm2022/koobiq-components-dl.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +703 -599
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-dynamic-translation.mjs +20 -20
- package/fesm2022/koobiq-components-dynamic-translation.mjs.map +1 -1
- package/fesm2022/koobiq-components-ellipsis-center.mjs +46 -31
- package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-empty-state.mjs +116 -60
- package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
- package/fesm2022/koobiq-components-file-upload.mjs +550 -290
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +2810 -2538
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-flag.mjs +79 -24
- package/fesm2022/koobiq-components-flag.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +389 -525
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +366 -136
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-inline-edit.mjs +429 -212
- package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +601 -459
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-link-deprecated.mjs +196 -0
- package/fesm2022/koobiq-components-link-deprecated.mjs.map +1 -0
- package/fesm2022/koobiq-components-link.mjs +328 -125
- package/fesm2022/koobiq-components-link.mjs.map +1 -1
- package/fesm2022/koobiq-components-list.mjs +583 -433
- package/fesm2022/koobiq-components-list.mjs.map +1 -1
- package/fesm2022/koobiq-components-loader-overlay.mjs +167 -68
- package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
- package/fesm2022/koobiq-components-markdown.mjs +55 -78
- package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +853 -475
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar.mjs +895 -556
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-notification-center.mjs +680 -310
- package/fesm2022/koobiq-components-notification-center.mjs.map +1 -1
- package/fesm2022/koobiq-components-overflow-items.mjs +46 -64
- package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +684 -285
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-bar.mjs +87 -33
- package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-progress-spinner.mjs +52 -43
- package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
- package/fesm2022/koobiq-components-radio.mjs +450 -231
- package/fesm2022/koobiq-components-radio.mjs.map +1 -1
- package/fesm2022/koobiq-components-resizer.mjs +127 -21
- package/fesm2022/koobiq-components-resizer.mjs.map +1 -1
- package/fesm2022/koobiq-components-scrollbar-deprecated.mjs +299 -0
- package/fesm2022/koobiq-components-scrollbar-deprecated.mjs.map +1 -0
- package/fesm2022/koobiq-components-scrollbar.mjs +745 -222
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-search-expandable.mjs +288 -126
- package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +883 -693
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidebar.mjs +207 -88
- package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +689 -296
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-skeleton.mjs +815 -41
- package/fesm2022/koobiq-components-skeleton.mjs.map +1 -1
- package/fesm2022/koobiq-components-split-button.mjs +109 -88
- package/fesm2022/koobiq-components-split-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter-deprecated.mjs +591 -0
- package/fesm2022/koobiq-components-splitter-deprecated.mjs.map +1 -0
- package/fesm2022/koobiq-components-splitter.mjs +890 -501
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-table.mjs +63 -49
- package/fesm2022/koobiq-components-table.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +1062 -603
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +886 -733
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +213 -185
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-time-range.mjs +299 -147
- package/fesm2022/koobiq-components-time-range.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs +233 -245
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +344 -142
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-title.mjs +229 -145
- package/fesm2022/koobiq-components-title.mjs.map +1 -1
- package/fesm2022/koobiq-components-toast.mjs +463 -143
- package/fesm2022/koobiq-components-toast.mjs.map +1 -1
- package/fesm2022/koobiq-components-toggle.mjs +177 -130
- package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +657 -214
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-top-bar.mjs +61 -32
- package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +719 -488
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +1506 -558
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/fesm2022/koobiq-components-username.mjs +290 -135
- package/fesm2022/koobiq-components-username.mjs.map +1 -1
- package/file-upload/dropzone.scss +31 -3
- package/file-upload/file-upload-tokens.scss +2 -22
- package/file-upload/file-upload.scss +6 -0
- package/file-upload/multiple-file-upload.component.scss +14 -12
- package/file-upload/single-file-upload.component.scss +3 -2
- package/filter-bar/filters.scss +7 -0
- package/filter-bar/pipes/base-pipe.scss +3 -3
- package/filter-bar/pipes/pipe-date.scss +8 -1
- package/flag/flag-tokens.scss +22 -0
- package/flag/flag.scss +34 -21
- package/form-field/{_fiedset-theme.scss → _fieldset-theme.scss} +1 -5
- package/form-field/_form-field-theme.scss +4 -9
- package/form-field/cleaner.scss +3 -1
- package/form-field/fieldset.scss +3 -4
- package/form-field/form-field.scss +26 -21
- package/form-field/password-toggle.scss +3 -1
- package/icon/_icon-button-theme.scss +7 -0
- package/icon/_icon-theme.scss +10 -7
- package/icon/icon-button.scss +0 -2
- package/icon/icon-tokens.scss +12 -9
- package/inline-edit/inline-edit.scss +40 -54
- package/input/input.scss +4 -0
- package/link/{_link-theme.scss → deprecated/_link-theme.scss} +11 -6
- package/link/deprecated/link-tokens.scss +27 -0
- package/link/link-tokens.scss +6 -25
- package/link/link.scss +137 -0
- package/list/list.scss +3 -2
- package/loader-overlay/_loader-overlay-theme.scss +19 -10
- package/loader-overlay/loader-overlay-tokens.scss +0 -2
- package/loader-overlay/loader-overlay.scss +7 -1
- package/markdown/_markdown-theme.scss +16 -0
- package/markdown/markdown-tokens.scss +5 -0
- package/markdown/markdown.scss +2 -1
- package/modal/_modal-animation.scss +23 -14
- package/modal/modal-tokens.scss +2 -1
- package/modal/modal.scss +35 -31
- package/navbar/_navbar-item_horizontal.scss +8 -6
- package/navbar/_navbar-item_vertical.scss +18 -6
- package/navbar/_navbar-theme.scss +9 -1
- package/navbar/navbar-brand.scss +8 -6
- package/navbar/navbar-divider.scss +1 -1
- package/navbar/navbar-item.scss +8 -9
- package/navbar/navbar-toggle.scss +3 -3
- package/navbar/navbar-tokens.scss +14 -0
- package/navbar/navbar.scss +1 -2
- package/navbar/vertical-navbar.scss +2 -2
- package/notification-center/_notification-center-theme.scss +11 -6
- package/notification-center/notification-center-tokens.scss +33 -0
- package/notification-center/notification-center.scss +58 -20
- package/notification-center/notification-item.scss +15 -6
- package/package.json +112 -81
- package/popover/popover-tokens.scss +0 -2
- package/popover/popover.scss +41 -19
- package/prebuilt-themes/theme.css +1 -1
- package/progress-bar/_progress-bar-theme.scss +20 -3
- package/progress-bar/progress-bar-tokens.scss +3 -0
- package/progress-bar/progress-bar.scss +36 -8
- package/progress-spinner/progress-spinner.scss +4 -3
- package/radio/_radio-theme.scss +21 -4
- package/radio/radio-tokens.scss +7 -3
- package/radio/radio.scss +55 -8
- package/schematics/collection.json +399 -7
- package/schematics/migrations/accordion-state-saving-default/README.md +60 -0
- package/schematics/migrations/accordion-state-saving-default/data.js +75 -0
- package/schematics/migrations/accordion-state-saving-default/index.js +60 -0
- package/schematics/migrations/accordion-state-saving-default/schema.json +15 -0
- package/schematics/migrations/actions-panel-overlay-container/README.md +35 -0
- package/schematics/migrations/actions-panel-overlay-container/data.js +47 -0
- package/schematics/migrations/actions-panel-overlay-container/index.js +54 -0
- package/schematics/migrations/actions-panel-overlay-container/schema.json +15 -0
- package/schematics/migrations/alert-signals/README.md +13 -7
- package/schematics/migrations/alert-signals/data.js +3 -0
- package/schematics/migrations/alert-signals/index.js +70 -203
- package/schematics/migrations/angular-animations-removal/README.md +46 -0
- package/schematics/migrations/angular-animations-removal/data.js +150 -0
- package/schematics/migrations/angular-animations-removal/index.js +20 -0
- package/schematics/migrations/angular-animations-removal/schema.json +15 -0
- package/schematics/migrations/app-switcher-signals/README.md +88 -0
- package/schematics/migrations/app-switcher-signals/data.js +136 -0
- package/schematics/migrations/app-switcher-signals/index.js +365 -0
- package/schematics/migrations/app-switcher-signals/schema.json +20 -0
- package/schematics/migrations/autocomplete-panel-width-auto/README.md +2 -2
- package/schematics/migrations/autocomplete-panel-width-auto/index.js +1 -1
- package/schematics/migrations/autocomplete-signals/README.md +92 -0
- package/schematics/migrations/autocomplete-signals/data.js +149 -0
- package/schematics/migrations/autocomplete-signals/index.js +706 -0
- package/schematics/migrations/autocomplete-signals/schema.json +20 -0
- package/schematics/migrations/badge-signals/README.md +77 -0
- package/schematics/migrations/badge-signals/data.js +109 -0
- package/schematics/migrations/badge-signals/index.js +693 -0
- package/schematics/migrations/badge-signals/schema.json +20 -0
- package/schematics/migrations/button-state-and-styles/README.md +129 -0
- package/schematics/migrations/button-state-and-styles/data.js +136 -0
- package/schematics/migrations/button-state-and-styles/index.js +220 -0
- package/schematics/migrations/button-state-and-styles/schema.json +20 -0
- package/schematics/migrations/button-supported-colors/README.md +73 -0
- package/schematics/migrations/button-supported-colors/data.js +106 -0
- package/schematics/migrations/button-supported-colors/index.js +260 -0
- package/schematics/migrations/button-supported-colors/schema.json +20 -0
- package/schematics/migrations/button-toggle-signals-and-aria/README.md +137 -0
- package/schematics/migrations/button-toggle-signals-and-aria/data.js +200 -0
- package/schematics/migrations/button-toggle-signals-and-aria/index.js +496 -0
- package/schematics/migrations/button-toggle-signals-and-aria/schema.json +20 -0
- package/schematics/migrations/button-truncation/README.md +110 -0
- package/schematics/migrations/button-truncation/data.js +88 -0
- package/schematics/migrations/button-truncation/index.js +269 -0
- package/schematics/migrations/button-truncation/schema.json +20 -0
- package/schematics/migrations/checkbox-signals/README.md +76 -0
- package/schematics/migrations/checkbox-signals/data.js +114 -0
- package/schematics/migrations/checkbox-signals/index.js +634 -0
- package/schematics/migrations/checkbox-signals/schema.json +20 -0
- package/schematics/migrations/clamped-text-disclosure/README.md +62 -0
- package/schematics/migrations/clamped-text-disclosure/data.js +101 -0
- package/schematics/migrations/clamped-text-disclosure/index.js +59 -0
- package/schematics/migrations/clamped-text-disclosure/schema.json +15 -0
- package/schematics/migrations/code-block-signals/README.md +84 -0
- package/schematics/migrations/code-block-signals/data.js +121 -0
- package/schematics/migrations/code-block-signals/index.js +700 -0
- package/schematics/migrations/code-block-signals/schema.json +20 -0
- package/schematics/migrations/color-signals/README.md +46 -0
- package/schematics/migrations/color-signals/data.js +131 -0
- package/schematics/migrations/color-signals/index.js +19 -0
- package/schematics/migrations/color-signals/schema.json +20 -0
- package/schematics/migrations/core-mixins-removal/README.md +20 -0
- package/schematics/migrations/core-mixins-removal/data.js +27 -0
- package/schematics/migrations/core-mixins-removal/index.js +17 -0
- package/schematics/migrations/core-mixins-removal/schema.json +15 -0
- package/schematics/migrations/css-selectors/README.md +2 -2
- package/schematics/migrations/css-selectors/index.js +1 -1
- package/schematics/migrations/datepicker-signals/README.md +24 -0
- package/schematics/migrations/datepicker-signals/data.js +49 -0
- package/schematics/migrations/datepicker-signals/index.js +17 -0
- package/schematics/migrations/datepicker-signals/schema.json +15 -0
- package/schematics/migrations/deprecated-icons/README.md +2 -2
- package/schematics/migrations/deprecated-icons/index.js +1 -1
- package/schematics/migrations/design-tokens-v4/README.md +75 -0
- package/schematics/migrations/design-tokens-v4/index.js +59 -0
- package/schematics/migrations/design-tokens-v4/schema.json +15 -0
- package/schematics/migrations/divider-signals-and-aria/README.md +47 -0
- package/schematics/migrations/divider-signals-and-aria/data.js +62 -0
- package/schematics/migrations/divider-signals-and-aria/index.js +211 -0
- package/schematics/migrations/divider-signals-and-aria/schema.json +15 -0
- package/schematics/migrations/dl-attribute-coercion/README.md +59 -0
- package/schematics/migrations/dl-attribute-coercion/data.js +85 -0
- package/schematics/migrations/dl-attribute-coercion/index.js +161 -0
- package/schematics/migrations/dl-attribute-coercion/schema.json +15 -0
- package/schematics/migrations/dl-standalone-names/README.md +49 -0
- package/schematics/migrations/dl-standalone-names/data.js +44 -0
- package/schematics/migrations/dl-standalone-names/index.js +321 -0
- package/schematics/migrations/dl-standalone-names/schema.json +20 -0
- package/schematics/migrations/dropdown-demote-overlay/README.md +137 -0
- package/schematics/migrations/dropdown-demote-overlay/data.js +84 -0
- package/schematics/migrations/dropdown-demote-overlay/index.js +288 -0
- package/schematics/migrations/dropdown-demote-overlay/schema.json +20 -0
- package/schematics/migrations/dropdown-signals/README.md +83 -0
- package/schematics/migrations/dropdown-signals/data.js +152 -0
- package/schematics/migrations/dropdown-signals/index.js +19 -0
- package/schematics/migrations/dropdown-signals/schema.json +20 -0
- package/schematics/migrations/empty-state-error-color/README.md +84 -0
- package/schematics/migrations/empty-state-error-color/data.js +85 -0
- package/schematics/migrations/empty-state-error-color/index.js +71 -0
- package/schematics/migrations/empty-state-error-color/schema.json +15 -0
- package/schematics/migrations/empty-state-size-attr/README.md +2 -2
- package/schematics/migrations/empty-state-size-attr/index.js +1 -1
- package/schematics/migrations/file-upload-cva-and-primitives/README.md +70 -0
- package/schematics/migrations/file-upload-cva-and-primitives/data.js +97 -0
- package/schematics/migrations/file-upload-cva-and-primitives/index.js +60 -0
- package/schematics/migrations/file-upload-cva-and-primitives/schema.json +15 -0
- package/schematics/migrations/file-upload-deprecated-outputs/README.md +90 -0
- package/schematics/migrations/file-upload-deprecated-outputs/data.js +20 -0
- package/schematics/migrations/file-upload-deprecated-outputs/index.js +70 -0
- package/schematics/migrations/file-upload-deprecated-outputs/schema.json +20 -0
- package/schematics/migrations/filter-bar-rename-action/README.md +183 -0
- package/schematics/migrations/filter-bar-rename-action/data.js +151 -0
- package/schematics/migrations/filter-bar-rename-action/index.js +177 -0
- package/schematics/migrations/filter-bar-rename-action/schema.json +20 -0
- package/schematics/migrations/filter-bar-signals/README.md +27 -16
- package/schematics/migrations/filter-bar-signals/data.js +1 -2
- package/schematics/migrations/filter-bar-signals/index.js +100 -195
- package/schematics/migrations/filter-bar-state-saving-default/README.md +53 -0
- package/schematics/migrations/filter-bar-state-saving-default/data.js +87 -0
- package/schematics/migrations/filter-bar-state-saving-default/index.js +61 -0
- package/schematics/migrations/filter-bar-state-saving-default/schema.json +15 -0
- package/schematics/migrations/flag-inner-html/README.md +67 -0
- package/schematics/migrations/flag-inner-html/data.js +58 -0
- package/schematics/migrations/flag-inner-html/index.js +61 -0
- package/schematics/migrations/flag-inner-html/schema.json +15 -0
- package/schematics/migrations/form-field-signals/README.md +125 -0
- package/schematics/migrations/form-field-signals/data.js +288 -0
- package/schematics/migrations/form-field-signals/index.js +382 -0
- package/schematics/migrations/form-field-signals/schema.json +20 -0
- package/schematics/migrations/icon-semantics-and-api/README.md +65 -0
- package/schematics/migrations/icon-semantics-and-api/data.js +97 -0
- package/schematics/migrations/icon-semantics-and-api/index.js +64 -0
- package/schematics/migrations/icon-semantics-and-api/schema.json +15 -0
- package/schematics/migrations/icons-replacement/README.md +5 -5
- package/schematics/migrations/icons-replacement/index.js +1 -1
- package/schematics/migrations/inline-edit-a11y-and-types/README.md +82 -0
- package/schematics/migrations/inline-edit-a11y-and-types/data.js +117 -0
- package/schematics/migrations/inline-edit-a11y-and-types/index.js +97 -0
- package/schematics/migrations/inline-edit-a11y-and-types/schema.json +20 -0
- package/schematics/migrations/input-number-surface/README.md +140 -0
- package/schematics/migrations/input-number-surface/data.js +135 -0
- package/schematics/migrations/input-number-surface/index.js +292 -0
- package/schematics/migrations/input-number-surface/schema.json +20 -0
- package/schematics/migrations/input-signals/README.md +20 -0
- package/schematics/migrations/input-signals/data.js +30 -0
- package/schematics/migrations/input-signals/index.js +17 -0
- package/schematics/migrations/input-signals/schema.json +15 -0
- package/schematics/migrations/link-deprecated-path/README.md +144 -0
- package/schematics/migrations/link-deprecated-path/index.js +19 -0
- package/schematics/migrations/link-deprecated-path/schema.json +20 -0
- package/schematics/migrations/link-signals/README.md +71 -0
- package/schematics/migrations/link-signals/data.js +116 -0
- package/schematics/migrations/link-signals/index.js +415 -0
- package/schematics/migrations/link-signals/schema.json +20 -0
- package/schematics/migrations/list-signals/README.md +22 -0
- package/schematics/migrations/list-signals/data.js +35 -0
- package/schematics/migrations/list-signals/index.js +17 -0
- package/schematics/migrations/list-signals/schema.json +15 -0
- package/schematics/migrations/list-tree-multiple-input/README.md +105 -0
- package/schematics/migrations/list-tree-multiple-input/data.js +74 -0
- package/schematics/migrations/list-tree-multiple-input/index.js +221 -0
- package/schematics/migrations/list-tree-multiple-input/schema.json +20 -0
- package/schematics/migrations/loader-overlay-signals/README.md +62 -0
- package/schematics/migrations/loader-overlay-signals/data.js +101 -0
- package/schematics/migrations/loader-overlay-signals/index.js +697 -0
- package/schematics/migrations/loader-overlay-signals/schema.json +20 -0
- package/schematics/migrations/loader-overlay-size-attr/README.md +2 -2
- package/schematics/migrations/loader-overlay-size-attr/index.js +1 -1
- package/schematics/migrations/locale-configuration-providers/README.md +163 -0
- package/schematics/migrations/locale-configuration-providers/data.js +257 -0
- package/schematics/migrations/locale-configuration-providers/index.js +294 -0
- package/schematics/migrations/locale-configuration-providers/schema.json +20 -0
- package/schematics/migrations/mandatory-peer-dependencies/README.md +70 -0
- package/schematics/migrations/mandatory-peer-dependencies/index.js +42 -0
- package/schematics/migrations/mandatory-peer-dependencies/schema.json +15 -0
- package/schematics/migrations/markdown-signals/README.md +58 -0
- package/schematics/migrations/markdown-signals/data.js +79 -0
- package/schematics/migrations/markdown-signals/index.js +639 -0
- package/schematics/migrations/markdown-signals/schema.json +20 -0
- package/schematics/migrations/modal-dialog-semantics/README.md +106 -0
- package/schematics/migrations/modal-dialog-semantics/data.js +110 -0
- package/schematics/migrations/modal-dialog-semantics/index.js +58 -0
- package/schematics/migrations/modal-dialog-semantics/schema.json +15 -0
- package/schematics/migrations/modal-signals/README.md +88 -0
- package/schematics/migrations/modal-signals/data.js +132 -0
- package/schematics/migrations/modal-signals/index.js +19 -0
- package/schematics/migrations/modal-signals/schema.json +20 -0
- package/schematics/migrations/navbar-signals-and-aria/README.md +111 -0
- package/schematics/migrations/navbar-signals-and-aria/data.js +198 -0
- package/schematics/migrations/navbar-signals-and-aria/index.js +568 -0
- package/schematics/migrations/navbar-signals-and-aria/schema.json +20 -0
- package/schematics/migrations/new-icons-pack/README.md +10 -10
- package/schematics/migrations/new-icons-pack/index.js +1 -1
- package/schematics/migrations/notification-center-signals/README.md +67 -0
- package/schematics/migrations/notification-center-signals/data.js +66 -0
- package/schematics/migrations/notification-center-signals/index.js +61 -0
- package/schematics/migrations/notification-center-signals/schema.json +15 -0
- package/schematics/migrations/option-signals/README.md +37 -0
- package/schematics/migrations/option-signals/data.js +86 -0
- package/schematics/migrations/option-signals/index.js +19 -0
- package/schematics/migrations/option-signals/schema.json +20 -0
- package/schematics/migrations/popover-leave-delay/README.md +51 -0
- package/schematics/migrations/popover-leave-delay/data.js +61 -0
- package/schematics/migrations/popover-leave-delay/index.js +54 -0
- package/schematics/migrations/popover-leave-delay/schema.json +15 -0
- package/schematics/migrations/progress-bar-percentage-and-aria/README.md +54 -0
- package/schematics/migrations/progress-bar-percentage-and-aria/data.js +76 -0
- package/schematics/migrations/progress-bar-percentage-and-aria/index.js +58 -0
- package/schematics/migrations/progress-bar-percentage-and-aria/schema.json +15 -0
- package/schematics/migrations/progress-spinner-signals/README.md +72 -0
- package/schematics/migrations/progress-spinner-signals/data.js +83 -0
- package/schematics/migrations/progress-spinner-signals/index.js +694 -0
- package/schematics/migrations/progress-spinner-signals/schema.json +20 -0
- package/schematics/migrations/query-list-signals/README.md +32 -0
- package/schematics/migrations/query-list-signals/data.js +70 -0
- package/schematics/migrations/query-list-signals/index.js +17 -0
- package/schematics/migrations/query-list-signals/schema.json +15 -0
- package/schematics/migrations/radio-signals-and-aria/README.md +82 -0
- package/schematics/migrations/radio-signals-and-aria/data.js +163 -0
- package/schematics/migrations/radio-signals-and-aria/index.js +39 -0
- package/schematics/migrations/radio-signals-and-aria/schema.json +20 -0
- package/schematics/migrations/read-state-dwell-handlers/README.md +125 -0
- package/schematics/migrations/read-state-dwell-handlers/data.js +45 -0
- package/schematics/migrations/read-state-dwell-handlers/index.js +215 -0
- package/schematics/migrations/read-state-dwell-handlers/schema.json +20 -0
- package/schematics/migrations/scrollbar-deprecated-path/README.md +128 -0
- package/schematics/migrations/scrollbar-deprecated-path/index.js +20 -0
- package/schematics/migrations/scrollbar-deprecated-path/schema.json +20 -0
- package/schematics/migrations/select-signal-inputs/README.md +61 -0
- package/schematics/migrations/select-signal-inputs/data.js +99 -0
- package/schematics/migrations/select-signal-inputs/index.js +57 -0
- package/schematics/migrations/select-signal-inputs/schema.json +15 -0
- package/schematics/migrations/sidepanel-non-modal-behavior/README.md +57 -0
- package/schematics/migrations/sidepanel-non-modal-behavior/data.js +111 -0
- package/schematics/migrations/sidepanel-non-modal-behavior/index.js +57 -0
- package/schematics/migrations/sidepanel-non-modal-behavior/schema.json +15 -0
- package/schematics/migrations/signal-inputs-subclasses/README.md +28 -0
- package/schematics/migrations/signal-inputs-subclasses/data.js +69 -0
- package/schematics/migrations/signal-inputs-subclasses/index.js +17 -0
- package/schematics/migrations/signal-inputs-subclasses/schema.json +15 -0
- package/schematics/migrations/split-button-optional-disabled/README.md +47 -0
- package/schematics/migrations/split-button-optional-disabled/data.js +53 -0
- package/schematics/migrations/split-button-optional-disabled/index.js +57 -0
- package/schematics/migrations/split-button-optional-disabled/schema.json +15 -0
- package/schematics/migrations/splitter-deprecated-path/README.md +136 -0
- package/schematics/migrations/splitter-deprecated-path/index.js +20 -0
- package/schematics/migrations/splitter-deprecated-path/schema.json +20 -0
- package/schematics/migrations/state-saving-default/README.md +67 -0
- package/schematics/migrations/state-saving-default/data.js +88 -0
- package/schematics/migrations/state-saving-default/index.js +62 -0
- package/schematics/migrations/state-saving-default/schema.json +15 -0
- package/schematics/migrations/table-cell-content/README.md +55 -0
- package/schematics/migrations/table-cell-content/data.js +66 -0
- package/schematics/migrations/table-cell-content/index.js +66 -0
- package/schematics/migrations/table-cell-content/schema.json +15 -0
- package/schematics/migrations/tabs-signals-and-aria/README.md +93 -0
- package/schematics/migrations/tabs-signals-and-aria/data.js +139 -0
- package/schematics/migrations/tabs-signals-and-aria/index.js +65 -0
- package/schematics/migrations/tabs-signals-and-aria/schema.json +15 -0
- package/schematics/migrations/tag-list-cleaner/README.md +58 -0
- package/schematics/migrations/tag-list-cleaner/data.js +42 -0
- package/schematics/migrations/tag-list-cleaner/index.js +196 -0
- package/schematics/migrations/tag-list-cleaner/schema.json +20 -0
- package/schematics/migrations/tag-slots/README.md +41 -0
- package/schematics/migrations/tag-slots/index.js +190 -0
- package/schematics/migrations/tag-slots/schema.json +20 -0
- package/schematics/migrations/tags-signals/README.md +85 -0
- package/schematics/migrations/tags-signals/data.js +103 -0
- package/schematics/migrations/tags-signals/index.js +673 -0
- package/schematics/migrations/tags-signals/schema.json +20 -0
- package/schematics/migrations/textarea-signals/README.md +72 -0
- package/schematics/migrations/textarea-signals/data.js +121 -0
- package/schematics/migrations/textarea-signals/index.js +379 -0
- package/schematics/migrations/textarea-signals/schema.json +20 -0
- package/schematics/migrations/time-range-title-for/README.md +164 -0
- package/schematics/migrations/time-range-title-for/data.js +139 -0
- package/schematics/migrations/time-range-title-for/index.js +163 -0
- package/schematics/migrations/time-range-title-for/schema.json +20 -0
- package/schematics/migrations/timepicker-signals/README.md +78 -0
- package/schematics/migrations/timepicker-signals/data.js +82 -0
- package/schematics/migrations/timepicker-signals/index.js +709 -0
- package/schematics/migrations/timepicker-signals/schema.json +20 -0
- package/schematics/migrations/timezone-grouping-utils/README.md +73 -0
- package/schematics/migrations/timezone-grouping-utils/data.js +101 -0
- package/schematics/migrations/timezone-grouping-utils/index.js +64 -0
- package/schematics/migrations/timezone-grouping-utils/schema.json +15 -0
- package/schematics/migrations/title-encapsulation/README.md +49 -0
- package/schematics/migrations/title-encapsulation/data.js +69 -0
- package/schematics/migrations/title-encapsulation/index.js +57 -0
- package/schematics/migrations/title-encapsulation/schema.json +15 -0
- package/schematics/migrations/toast-stack-and-defaults/README.md +102 -0
- package/schematics/migrations/toast-stack-and-defaults/data.js +79 -0
- package/schematics/migrations/toast-stack-and-defaults/index.js +53 -0
- package/schematics/migrations/toast-stack-and-defaults/schema.json +15 -0
- package/schematics/migrations/tooltip-pointer-events-and-types/README.md +53 -0
- package/schematics/migrations/tooltip-pointer-events-and-types/data.js +89 -0
- package/schematics/migrations/tooltip-pointer-events-and-types/index.js +60 -0
- package/schematics/migrations/tooltip-pointer-events-and-types/schema.json +15 -0
- package/schematics/migrations/top-bar-container-selectors/README.md +111 -0
- package/schematics/migrations/top-bar-container-selectors/data.js +56 -0
- package/schematics/migrations/top-bar-container-selectors/index.js +84 -0
- package/schematics/migrations/top-bar-container-selectors/schema.json +20 -0
- package/schematics/migrations/tree-select-signals/README.md +61 -0
- package/schematics/migrations/tree-select-signals/data.js +106 -0
- package/schematics/migrations/tree-select-signals/index.js +58 -0
- package/schematics/migrations/tree-select-signals/schema.json +15 -0
- package/schematics/migrations/tree-signals/README.md +82 -0
- package/schematics/migrations/tree-signals/data.js +123 -0
- package/schematics/migrations/tree-signals/index.js +54 -0
- package/schematics/migrations/tree-signals/schema.json +15 -0
- package/schematics/migrations/tree-state-saving-default/README.md +66 -0
- package/schematics/migrations/tree-state-saving-default/data.js +78 -0
- package/schematics/migrations/tree-state-saving-default/index.js +60 -0
- package/schematics/migrations/tree-state-saving-default/schema.json +15 -0
- package/schematics/migrations/username-pipe-injection/README.md +59 -0
- package/schematics/migrations/username-pipe-injection/data.js +78 -0
- package/schematics/migrations/username-pipe-injection/index.js +58 -0
- package/schematics/migrations/username-pipe-injection/schema.json +15 -0
- package/schematics/migrations/v20-upgrade/README.md +36 -16
- package/schematics/migrations/v20-upgrade/data.js +124 -77
- package/schematics/migrations/v20-upgrade/index.js +6 -213
- package/schematics/migrations/v21-upgrade/README.md +271 -0
- package/schematics/migrations/v21-upgrade/data.js +1371 -0
- package/schematics/migrations/v21-upgrade/index.js +94 -0
- package/schematics/migrations/v21-upgrade/schema.json +20 -0
- package/schematics/migrations/zoneless-change-detection/README.md +30 -0
- package/schematics/migrations/zoneless-change-detection/data.js +29 -0
- package/schematics/migrations/zoneless-change-detection/index.js +20 -0
- package/schematics/migrations/zoneless-change-detection/schema.json +15 -0
- package/schematics/migrations.json +392 -2
- package/schematics/ng-add/index.js +515 -14
- package/schematics/ng-add/schema.json +15 -0
- package/schematics/utils/deprecated-path-migration.js +61 -0
- package/schematics/utils/package-config.js +9 -105
- package/scrollbar/{_scrollbar-component-theme.scss → deprecated/_scrollbar-component-theme.scss} +1 -1
- package/scrollbar/{scrollbar.component.scss → deprecated/scrollbar.component.scss} +1 -1
- package/scrollbar/native-scrollbar.scss +68 -0
- package/scrollbar/scrollbar-tokens.scss +13 -22
- package/scrollbar/scrollbar-track.scss +94 -0
- package/scrollbar/scrollbar-viewport.scss +33 -0
- package/scrollbar/scrollbar.scss +24 -0
- package/search-expandable/search-expandable-tokens.scss +4 -0
- package/search-expandable/search-expandable.scss +4 -2
- package/select/_select-theme.scss +3 -16
- package/select/select.scss +0 -6
- package/sidebar/sidebar.scss +20 -0
- package/sidepanel/_sidepanel-theme.scss +1 -1
- package/sidepanel/sidepanel-tokens.scss +7 -1
- package/sidepanel/sidepanel.scss +41 -5
- package/skeleton/skeleton-presets.scss +350 -0
- package/skeleton/skeleton-tokens.scss +127 -0
- package/skeleton/skeleton.scss +53 -45
- package/split-button/_split-button-theme.scss +4 -4
- package/split-button/split-button.scss +2 -6
- package/splitter/{_splitter-theme.scss → deprecated/_splitter-theme.scss} +1 -1
- package/splitter/deprecated/splitter.scss +51 -0
- package/splitter/splitter-tokens.scss +19 -0
- package/splitter/splitter.scss +148 -28
- package/table/_table-theme.scss +13 -12
- package/table/table-tokens.scss +8 -0
- package/table/table.scss +47 -22
- package/tabs/_tabs-common.scss +14 -14
- package/tabs/_tabs-theme.scss +4 -5
- package/tabs/tab-body.scss +49 -1
- package/tabs/tab-header.scss +2 -1
- package/tags/tag-list.scss +4 -0
- package/tags/tag.scss +19 -1
- package/time-range/time-range.scss +9 -0
- package/timezone/timezone-option.component.scss +4 -7
- package/timezone/timezone-select.component.scss +3 -0
- package/toast/_toast-theme.scss +1 -4
- package/toast/toast-container.component.scss +19 -13
- package/toast/toast-tokens.scss +12 -6
- package/toast/toast.component.scss +42 -19
- package/toggle/_toggle-theme.scss +4 -10
- package/toggle/toggle.scss +67 -26
- package/tooltip/_tooltip-theme.scss +7 -1
- package/tooltip/tooltip-tokens.scss +1 -2
- package/tooltip/tooltip.scss +55 -9
- package/top-bar/top-bar-tokens.scss +13 -2
- package/top-bar/top-bar.scss +24 -19
- package/tree/_tree-theme.scss +0 -1
- package/tree/toggle.scss +5 -9
- package/tree/tree-option.scss +2 -4
- package/tree/tree-tokens.scss +2 -1
- package/tree/tree.scss +3 -5
- package/tree-select/_tree-select-theme.scss +4 -15
- package/tree-select/tree-select-tokens.scss +16 -0
- package/tree-select/tree-select.scss +0 -6
- package/{accordion/index.d.ts → types/koobiq-components-accordion.d.ts} +102 -84
- package/{actions-panel/index.d.ts → types/koobiq-components-actions-panel.d.ts} +44 -59
- package/{alert/index.d.ts → types/koobiq-components-alert.d.ts} +8 -3
- package/types/koobiq-components-app-switcher.d.ts +406 -0
- package/types/koobiq-components-autocomplete.d.ts +443 -0
- package/{badge/index.d.ts → types/koobiq-components-badge.d.ts} +25 -20
- package/{breadcrumbs/index.d.ts → types/koobiq-components-breadcrumbs.d.ts} +97 -46
- package/types/koobiq-components-button-toggle.d.ts +340 -0
- package/types/koobiq-components-button.d.ts +296 -0
- package/types/koobiq-components-checkbox.d.ts +172 -0
- package/types/koobiq-components-clamped-text.d.ts +184 -0
- package/{code-block/index.d.ts → types/koobiq-components-code-block.d.ts} +114 -79
- package/{content-panel/index.d.ts → types/koobiq-components-content-panel.d.ts} +81 -25
- package/{core/index.d.ts → types/koobiq-components-core.d.ts} +2827 -865
- package/{datepicker/index.d.ts → types/koobiq-components-datepicker.d.ts} +161 -116
- package/types/koobiq-components-divider.d.ts +43 -0
- package/types/koobiq-components-dl.d.ts +235 -0
- package/{dropdown/index.d.ts → types/koobiq-components-dropdown.d.ts} +245 -239
- package/types/koobiq-components-ellipsis-center.d.ts +85 -0
- package/types/koobiq-components-empty-state.d.ts +106 -0
- package/{file-upload/index.d.ts → types/koobiq-components-file-upload.d.ts} +214 -107
- package/{filter-bar/index.d.ts → types/koobiq-components-filter-bar.d.ts} +410 -495
- package/types/koobiq-components-flag.d.ts +68 -0
- package/{form-field/index.d.ts → types/koobiq-components-form-field.d.ts} +167 -191
- package/types/koobiq-components-icon.d.ts +333 -0
- package/{inline-edit/index.d.ts → types/koobiq-components-inline-edit.d.ts} +109 -46
- package/types/koobiq-components-input.d.ts +477 -0
- package/types/koobiq-components-link-deprecated.d.ts +101 -0
- package/types/koobiq-components-link.d.ts +176 -0
- package/{list/index.d.ts → types/koobiq-components-list.d.ts} +162 -99
- package/types/koobiq-components-loader-overlay.d.ts +101 -0
- package/{markdown/index.d.ts → types/koobiq-components-markdown.d.ts} +16 -24
- package/types/koobiq-components-modal.d.ts +666 -0
- package/types/koobiq-components-navbar.d.ts +569 -0
- package/types/koobiq-components-notification-center.d.ts +500 -0
- package/{overflow-items/index.d.ts → types/koobiq-components-overflow-items.d.ts} +8 -22
- package/types/koobiq-components-popover.d.ts +468 -0
- package/types/koobiq-components-progress-bar.d.ts +67 -0
- package/{progress-spinner/index.d.ts → types/koobiq-components-progress-spinner.d.ts} +33 -10
- package/types/koobiq-components-radio.d.ts +294 -0
- package/{resizer/index.d.ts → types/koobiq-components-resizer.d.ts} +37 -2
- package/{scrollbar/index.d.ts → types/koobiq-components-scrollbar-deprecated.d.ts} +18 -1
- package/types/koobiq-components-scrollbar.d.ts +154 -0
- package/types/koobiq-components-search-expandable.d.ts +164 -0
- package/{select/index.d.ts → types/koobiq-components-select.d.ts} +360 -167
- package/types/koobiq-components-sidebar.d.ts +152 -0
- package/types/koobiq-components-sidepanel.d.ts +436 -0
- package/types/koobiq-components-skeleton.d.ts +234 -0
- package/types/koobiq-components-split-button.d.ts +65 -0
- package/{splitter/index.d.ts → types/koobiq-components-splitter-deprecated.d.ts} +44 -1
- package/types/koobiq-components-splitter.d.ts +406 -0
- package/types/koobiq-components-table.d.ts +44 -0
- package/types/koobiq-components-tabs.d.ts +888 -0
- package/{tags/index.d.ts → types/koobiq-components-tags.d.ts} +249 -133
- package/types/koobiq-components-textarea.d.ts +178 -0
- package/{time-range/index.d.ts → types/koobiq-components-time-range.d.ts} +135 -62
- package/types/koobiq-components-timepicker.d.ts +223 -0
- package/types/koobiq-components-timezone.d.ts +266 -0
- package/types/koobiq-components-title.d.ts +184 -0
- package/types/koobiq-components-toast.d.ts +289 -0
- package/types/koobiq-components-toggle.d.ts +121 -0
- package/types/koobiq-components-tooltip.d.ts +610 -0
- package/types/koobiq-components-top-bar.d.ts +61 -0
- package/types/koobiq-components-tree-select.d.ts +667 -0
- package/types/koobiq-components-tree.d.ts +1290 -0
- package/types/koobiq-components-username.d.ts +340 -0
- package/username/_username-theme.scss +35 -0
- package/username/username.scss +10 -34
- package/app-switcher/index.d.ts +0 -276
- package/autocomplete/index.d.ts +0 -286
- package/button/index.d.ts +0 -153
- package/button-toggle/index.d.ts +0 -162
- package/checkbox/index.d.ts +0 -163
- package/clamped-text/index.d.ts +0 -146
- package/core/styles/_tokens.scss +0 -7
- package/core/styles/common/_clearfix.scss +0 -13
- package/core/styles/common/_popup.scss +0 -6
- package/core/styles/functions/_index.scss +0 -3
- package/core/styles/functions/_number.scss +0 -60
- package/core/styles/functions/_string.scss +0 -18
- package/core/styles/theming/scrollbar-tokens.scss +0 -25
- package/core/styles/typography/_typography-utils.scss +0 -84
- package/divider/index.d.ts +0 -20
- package/dl/index.d.ts +0 -45
- package/ellipsis-center/index.d.ts +0 -71
- package/empty-state/index.d.ts +0 -45
- package/flag/index.d.ts +0 -44
- package/icon/index.d.ts +0 -200
- package/input/index.d.ts +0 -354
- package/link/index.d.ts +0 -56
- package/loader-overlay/index.d.ts +0 -57
- package/modal/index.d.ts +0 -339
- package/navbar/index.d.ts +0 -372
- package/notification-center/index.d.ts +0 -323
- package/popover/index.d.ts +0 -182
- package/prebuilt-themes/dark-theme.css +0 -1
- package/prebuilt-themes/light-theme.css +0 -1
- package/progress-bar/index.d.ts +0 -31
- package/radio/index.d.ts +0 -203
- package/search-expandable/index.d.ts +0 -101
- package/sidebar/index.d.ts +0 -94
- package/sidepanel/index.d.ts +0 -272
- package/skeleton/index.d.ts +0 -26
- package/split-button/index.d.ts +0 -46
- package/table/index.d.ts +0 -25
- package/tabs/index.d.ts +0 -677
- package/textarea/index.d.ts +0 -138
- package/timepicker/index.d.ts +0 -197
- package/timezone/index.d.ts +0 -125
- package/title/index.d.ts +0 -139
- package/toast/index.d.ts +0 -178
- package/toggle/index.d.ts +0 -104
- package/tooltip/index.d.ts +0 -335
- package/top-bar/index.d.ts +0 -33
- package/tree/index.d.ts +0 -802
- package/tree-select/index.d.ts +0 -475
- package/username/index.d.ts +0 -194
- /package/{dynamic-translation/index.d.ts → types/koobiq-components-dynamic-translation.d.ts} +0 -0
- /package/{index.d.ts → types/koobiq-components.d.ts} +0 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# splitter-deprecated-path
|
|
2
|
+
|
|
3
|
+
Migration schematic invoked automatically by `ng update @koobiq/components@20`
|
|
4
|
+
(registered for `20.3.0-0`). Rewrites `@koobiq/components/splitter` imports to
|
|
5
|
+
`@koobiq/components/splitter/deprecated`.
|
|
6
|
+
|
|
7
|
+
## Background
|
|
8
|
+
|
|
9
|
+
`@koobiq/components/splitter` now resolves to a rewritten splitter that lays its panels out with
|
|
10
|
+
CSS grid and adds per-panel size constraints, collapsing and hiding, snap points, full keyboard
|
|
11
|
+
support and the WAI-ARIA `separator` pattern. The previous implementation — `KbqSplitterComponent`
|
|
12
|
+
with `KbqSplitterAreaDirective`, `KbqGutterDirective`, `KbqGutterGhostDirective`,
|
|
13
|
+
`KbqSplitterModule` and the `Direction` enum — moved to `@koobiq/components/splitter/deprecated`
|
|
14
|
+
and will be removed in 22.0.0.
|
|
15
|
+
|
|
16
|
+
Nothing about that implementation changed: `direction`, `disabled`, `useGhost`, `hideGutters`,
|
|
17
|
+
`gutterSize`, `gutterPositionChange`, the `[kbq-splitter-area]` attribute selector and the
|
|
18
|
+
`min-width` / `min-height` driven constraints all behave exactly as before at the new path.
|
|
19
|
+
Rewriting the import is the whole migration — adopting the new splitter is a separate, manual step.
|
|
20
|
+
|
|
21
|
+
## Behaviour change
|
|
22
|
+
|
|
23
|
+
Most unmigrated imports break loudly: `KbqSplitterComponent`, `KbqSplitterAreaDirective`,
|
|
24
|
+
`KbqGutterDirective`, `KbqGutterGhostDirective` and `Direction` live at the `/deprecated` path
|
|
25
|
+
only, so the build stops with `TS2305: … has no exported member`.
|
|
26
|
+
|
|
27
|
+
`KbqSplitterModule` is the silent one — both entry points export a class under that name, and so
|
|
28
|
+
does the `kbq-splitter` element selector exist on both sides. An unmigrated
|
|
29
|
+
`import { KbqSplitterModule } from '@koobiq/components/splitter'` therefore keeps compiling, but
|
|
30
|
+
now pulls in the rewritten splitter, which projects `kbq-splitter-panel` children instead of
|
|
31
|
+
`[kbq-splitter-area]` hosts and takes `orientation` rather than `direction`. Such a group renders
|
|
32
|
+
its content with no panels and no separators. This is the case the migration exists for.
|
|
33
|
+
|
|
34
|
+
Templates need no changes of their own: once the import points at `/deprecated`, `<kbq-splitter>`
|
|
35
|
+
with `[kbq-splitter-area]` hosts, `direction`, `useGhost`, `hideGutters` and `gutterSize` keeps
|
|
36
|
+
working exactly as before.
|
|
37
|
+
|
|
38
|
+
## What it does
|
|
39
|
+
|
|
40
|
+
The schematic walks every `.ts` file under the project root — the whole workspace when `--project`
|
|
41
|
+
is omitted, which is how `ng update` invokes it — skipping `node_modules` and `dist`, and rewrites
|
|
42
|
+
the module specifier `@koobiq/components/splitter` to `@koobiq/components/splitter/deprecated`.
|
|
43
|
+
|
|
44
|
+
The match is quote-anchored (`(['"])@koobiq/components/splitter\1`), so only the exact, bare
|
|
45
|
+
specifier is taken, in the quote style it was written in:
|
|
46
|
+
|
|
47
|
+
| Specifier | Result |
|
|
48
|
+
| ------------------------------------------------ | -------------------------------------------------------------------------------------- |
|
|
49
|
+
| `'@koobiq/components/splitter'` | rewritten, still single-quoted |
|
|
50
|
+
| `"@koobiq/components/splitter"` | rewritten, still double-quoted |
|
|
51
|
+
| `'@koobiq/components/splitter/deprecated'` | untouched — the migration is idempotent |
|
|
52
|
+
| `'@koobiq/components/splitter-x'` (hypothetical) | untouched — the closing quote is required, so a longer specifier is not a prefix match |
|
|
53
|
+
|
|
54
|
+
It is a textual replacement rather than an AST rewrite, so an `import`, an `export … from`, a
|
|
55
|
+
dynamic `import()` and a specifier handed to something like `jest.mock()` are all covered by the
|
|
56
|
+
same pass.
|
|
57
|
+
|
|
58
|
+
## What it does _not_ do (manual)
|
|
59
|
+
|
|
60
|
+
| Pattern | Manual migration |
|
|
61
|
+
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
62
|
+
| A specifier outside a `.ts` file | Only `.ts` files are visited — the same string in a JSON config or a documentation snippet stays as written |
|
|
63
|
+
| Templates | `[kbq-splitter-area]` hosts, `direction`, `useGhost`, `hideGutters` and `gutterSize` bindings are left as written; they keep working against the deprecated component at its new path |
|
|
64
|
+
| Moving off `/deprecated` | Nothing is migrated _to_ the new splitter: areas become `kbq-splitter-panel`, `direction` becomes `orientation`, sizes move from `min-width` / CSS `flex` onto `size` / `minSize` inputs |
|
|
65
|
+
|
|
66
|
+
`fix` defaults to `true`. `ng update` invokes migrations with no options at all, and
|
|
67
|
+
`migrations.json` declares no schema, so the rule applies that default itself. With `--fix false`
|
|
68
|
+
every file that would change is logged instead of written, followed by the same count either way.
|
|
69
|
+
|
|
70
|
+
[Params](schema.ts)
|
|
71
|
+
|
|
72
|
+
Usage for Angular Cli:
|
|
73
|
+
|
|
74
|
+
```shell
|
|
75
|
+
ng g @koobiq/components:splitter-deprecated-path --project "<your project>"
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Usage for Nx:
|
|
79
|
+
|
|
80
|
+
```shell
|
|
81
|
+
nx g @koobiq/components:splitter-deprecated-path --project "<your project>"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Run locally
|
|
85
|
+
|
|
86
|
+
Build package
|
|
87
|
+
|
|
88
|
+
```shell
|
|
89
|
+
yarn run build:schematics
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Run command (for example, for `koobiq-docs` project)
|
|
93
|
+
|
|
94
|
+
```shell
|
|
95
|
+
ng g ./dist/components/schematics/collection.json:splitter-deprecated-path --project koobiq-docs
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Result
|
|
99
|
+
|
|
100
|
+
#### Before
|
|
101
|
+
|
|
102
|
+
```ts
|
|
103
|
+
import { Component } from '@angular/core';
|
|
104
|
+
import { KbqSplitterModule } from '@koobiq/components/splitter';
|
|
105
|
+
|
|
106
|
+
@Component({
|
|
107
|
+
selector: 'my-page',
|
|
108
|
+
imports: [KbqSplitterModule],
|
|
109
|
+
template: `
|
|
110
|
+
<kbq-splitter [useGhost]="true">
|
|
111
|
+
<div kbq-splitter-area>...</div>
|
|
112
|
+
<div kbq-splitter-area>...</div>
|
|
113
|
+
</kbq-splitter>
|
|
114
|
+
`
|
|
115
|
+
})
|
|
116
|
+
export class MyPage {}
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
#### After
|
|
120
|
+
|
|
121
|
+
```ts
|
|
122
|
+
import { Component } from '@angular/core';
|
|
123
|
+
import { KbqSplitterModule } from '@koobiq/components/splitter/deprecated';
|
|
124
|
+
|
|
125
|
+
@Component({
|
|
126
|
+
selector: 'my-page',
|
|
127
|
+
imports: [KbqSplitterModule],
|
|
128
|
+
template: `
|
|
129
|
+
<kbq-splitter [useGhost]="true">
|
|
130
|
+
<div kbq-splitter-area>...</div>
|
|
131
|
+
<div kbq-splitter-area>...</div>
|
|
132
|
+
</kbq-splitter>
|
|
133
|
+
`
|
|
134
|
+
})
|
|
135
|
+
export class MyPage {}
|
|
136
|
+
```
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var utils_deprecatedPathMigration = require('../../utils/deprecated-path-migration.js');
|
|
6
|
+
require('../../utils/messages.js');
|
|
7
|
+
require('../../package-config-BhU2TfC8.js');
|
|
8
|
+
require('@angular-devkit/schematics');
|
|
9
|
+
require('@schematics/angular/utility');
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* `@koobiq/components/splitter` now resolves to the rewritten splitter — the `flex-basis` based
|
|
13
|
+
* component it used to export (`KbqSplitterComponent`, `KbqSplitterAreaDirective`,
|
|
14
|
+
* `KbqGutterDirective`, `KbqGutterGhostDirective`, `KbqSplitterModule`, `Direction`) moved to
|
|
15
|
+
* `@koobiq/components/splitter/deprecated`. This rewrites the import specifier only; the API itself
|
|
16
|
+
* is unchanged at its new path.
|
|
17
|
+
*/
|
|
18
|
+
var index = utils_deprecatedPathMigration.deprecatedPathMigration('splitter');
|
|
19
|
+
|
|
20
|
+
exports.default = index;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "koobiq-components-splitter-deprecated-path",
|
|
4
|
+
"title": "Koobiq components splitter deprecated-path rewrite",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Name of the project to migrate. If omitted, the migration runs over the whole tree.",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "projectName"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"fix": {
|
|
15
|
+
"type": "boolean",
|
|
16
|
+
"default": true,
|
|
17
|
+
"description": "When true, applies all auto-fix replacements. When false, prints what would change without writing."
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# state-saving-default
|
|
2
|
+
|
|
3
|
+
Migration schematic invoked automatically by `ng update @koobiq/components@20`
|
|
4
|
+
(registered for `21.0.0-0`). Reports the consequences of `kbq-tab-group`, `kbq-sidebar` and
|
|
5
|
+
`kbq-content-panel-container` persisting the state a user changes, with `useStateSaving` defaulting to
|
|
6
|
+
`true` on all three. It never writes to the tree.
|
|
7
|
+
|
|
8
|
+
## Background
|
|
9
|
+
|
|
10
|
+
All three gained the same state saving the accordion and the tree already have, applied through the
|
|
11
|
+
`KbqStateSaving` host directive, and it is on by default. With no `stateSavingKey` the key is derived from
|
|
12
|
+
where the component sits in the document — the chain of tag names up to `<body>`, cut short by the first
|
|
13
|
+
author-written `id`, which becomes the anchor.
|
|
14
|
+
|
|
15
|
+
Each of them keeps out of the store while the application drives the state, so the change only reaches
|
|
16
|
+
markup that says nothing about it:
|
|
17
|
+
|
|
18
|
+
| Component | Persists | Stays out of it while |
|
|
19
|
+
| ----------------------------- | -------------------------------------------------------- | ------------------------------------------------ |
|
|
20
|
+
| `kbq-tab-group` | the selected tab, by `tabId` and by position | `selectedIndex` or `activeTab` is bound |
|
|
21
|
+
| `kbq-sidebar` | whether it was open, and the width it was last closed at | `opened` is bound |
|
|
22
|
+
| `kbq-content-panel-container` | whether it was open, and the dragged width | `opened` is bound — the width is restored anyway |
|
|
23
|
+
|
|
24
|
+
## What it reports
|
|
25
|
+
|
|
26
|
+
- **The default flip**, once per component, for a file that renders one and neither opts out nor binds
|
|
27
|
+
the state the application would own.
|
|
28
|
+
- **Tabs with no `tabId`.** The selection then falls back to the position, which survives a reload but
|
|
29
|
+
not a reordering; a dev-mode warning says so at runtime too.
|
|
30
|
+
- **`KbqContentPanelContainer.opened` read programmatically.** It is `openedInput` now and reads
|
|
31
|
+
`undefined` while nothing binds it, which is how the panel tells a bound `opened` from an unbound one.
|
|
32
|
+
Templates are unaffected; `isOpened()` is the public read.
|
|
33
|
+
|
|
34
|
+
Each check is evaluated against the whole file, matching the other warn-only migrations in this
|
|
35
|
+
collection. A file holding two tab groups where only one opts out is not reported — inspect it by hand.
|
|
36
|
+
|
|
37
|
+
## What it does _not_ do
|
|
38
|
+
|
|
39
|
+
It does not insert `[useStateSaving]="false"`. The markup whose behaviour changed is exactly the markup
|
|
40
|
+
that says nothing about the input, so opting every component out would be a rewrite of every consumer
|
|
41
|
+
template that also withholds the feature this release is shipping.
|
|
42
|
+
|
|
43
|
+
It also says nothing about `kbq-tab-nav-bar`, which deliberately never persists: it is the navigation
|
|
44
|
+
variant, where the router decides which link is active and the URL is the state worth restoring.
|
|
45
|
+
|
|
46
|
+
## Behaviour worth knowing without a report
|
|
47
|
+
|
|
48
|
+
- **A component rendered inside an overlay does not persist.** It is not in the document when it
|
|
49
|
+
initializes and so has no stable key.
|
|
50
|
+
- **The content panel's width is restored even when `[opened]` is bound.** There is no `widthChange`
|
|
51
|
+
output, so a drag never reached the application; `[width]` is the width the panel starts at. A
|
|
52
|
+
double-click on the resizer restores that declared width, and the reset is persisted too.
|
|
53
|
+
- **The sidebar's width is the one it had when last closed** — the same width it already reuses when
|
|
54
|
+
reopening. Dragging it wider and reloading without closing keeps the previous width.
|
|
55
|
+
|
|
56
|
+
## Storage format
|
|
57
|
+
|
|
58
|
+
Entries are written under a `kbq.state.` prefix and carry a `savedAt` timestamp, so an entry stranded by a
|
|
59
|
+
markup change is collected once it outlives `KBQ_STATE_SAVING_TTL` (90 days by default). Reading an entry
|
|
60
|
+
refreshes it, so state that is visited but never changed does not expire under an active user.
|
|
61
|
+
|
|
62
|
+
## Related tokens
|
|
63
|
+
|
|
64
|
+
- `KBQ_STATE_STORE` — where state is persisted. `KbqSessionStorageStateStore` is bundled for state that
|
|
65
|
+
should live no longer than the tab session.
|
|
66
|
+
- `KBQ_STATE_SAVING_KEY_RESOLVER` — how the key is derived when no `stateSavingKey` is given.
|
|
67
|
+
- `KBQ_STATE_SAVING_TTL` — how long an entry survives without being written or read.
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Data for the `state-saving-default` migration.
|
|
5
|
+
*
|
|
6
|
+
* `KbqTabGroup`, `KbqSidebar` and `KbqContentPanelContainer` persist the state a user changes now, and
|
|
7
|
+
* `useStateSaving` defaults to `true` on all three. Each of them keeps the state out of the store while
|
|
8
|
+
* the application drives it — a bound `selectedIndex`/`activeTab`, `opened` on the sidebar, `opened` on
|
|
9
|
+
* the content panel — so only the markup that says nothing about those is reached by the change.
|
|
10
|
+
*
|
|
11
|
+
* Warn-only. The markup whose behaviour changed is exactly the markup that says nothing about the input,
|
|
12
|
+
* so there is no expression to rewrite — and rewriting it to `[useStateSaving]="false"` would withhold
|
|
13
|
+
* the feature this release is shipping.
|
|
14
|
+
*/
|
|
15
|
+
/** Import specifiers that mark a file as a consumer of one of the three components. */
|
|
16
|
+
const PACKAGES = [
|
|
17
|
+
'@koobiq/components/tabs',
|
|
18
|
+
'@koobiq/components/sidebar',
|
|
19
|
+
'@koobiq/components/content-panel'
|
|
20
|
+
];
|
|
21
|
+
/** Identifier and element shapes that mark a consumer without an import. */
|
|
22
|
+
const CONSUMER_TYPE = '\\bKbqTabGroup\\b|\\bKbqSidebar\\b|\\bKbqContentPanelContainer\\b|' +
|
|
23
|
+
'\\bkbq-tab-group\\b|\\bkbq-sidebar\\b|\\bkbq-content-panel-container\\b';
|
|
24
|
+
const TAB_GROUP = '<kbq-tab-group\\b';
|
|
25
|
+
const SIDEBAR = '<kbq-sidebar\\b';
|
|
26
|
+
const CONTENT_PANEL = '<kbq-content-panel-container\\b';
|
|
27
|
+
const warnPatterns = [
|
|
28
|
+
{
|
|
29
|
+
anchor: TAB_GROUP,
|
|
30
|
+
pattern: TAB_GROUP,
|
|
31
|
+
// A bound selection stays with the application, so those groups are unaffected.
|
|
32
|
+
unless: '\\buseStateSaving\\b|\\[\\(?selectedIndex\\)?\\]|\\[\\(?activeTab\\)?\\]',
|
|
33
|
+
message: 'Tab groups remember the selected tab by default now: useStateSaving defaults to true. Pass ' +
|
|
34
|
+
'[useStateSaving]="false" to keep the previous behaviour. Nothing is persisted while ' +
|
|
35
|
+
'selectedIndex or activeTab is bound, and kbq-tab-nav-bar never persists — the router owns ' +
|
|
36
|
+
'which link is active there.'
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
anchor: TAB_GROUP,
|
|
40
|
+
pattern: '<kbq-tab\\b',
|
|
41
|
+
unless: '\\btabId\\b|\\buseStateSaving\\b|\\[\\(?selectedIndex\\)?\\]|\\[\\(?activeTab\\)?\\]',
|
|
42
|
+
message: 'These tabs carry no tabId, so the selection is persisted by position. A position survives a ' +
|
|
43
|
+
'reload but not a reordering, and then restores the wrong tab — a dev-mode warning says so. ' +
|
|
44
|
+
'Give the tabs a tabId.'
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
anchor: SIDEBAR,
|
|
48
|
+
pattern: SIDEBAR,
|
|
49
|
+
// `[opened]` means the application decides, and the sidebar then persists nothing.
|
|
50
|
+
unless: '\\buseStateSaving\\b|\\[opened\\]',
|
|
51
|
+
message: 'Sidebars remember whether they were open, and the width they were last closed at, by default ' +
|
|
52
|
+
'now: useStateSaving defaults to true. Pass [useStateSaving]="false" to keep the previous ' +
|
|
53
|
+
'behaviour. Nothing is persisted while opened is bound.'
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
anchor: CONTENT_PANEL,
|
|
57
|
+
pattern: CONTENT_PANEL,
|
|
58
|
+
unless: '\\buseStateSaving\\b',
|
|
59
|
+
message: 'Content panels remember their width, and whether they were open, by default now: ' +
|
|
60
|
+
'useStateSaving defaults to true. Pass [useStateSaving]="false" to keep the previous ' +
|
|
61
|
+
'behaviour. The opened state is left alone while [opened] is bound, but the width is restored ' +
|
|
62
|
+
'either way — there is no widthChange output, so a drag never reached the application anyway.'
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
// Programmatic access names the class, which the markup-only anchor does not cover.
|
|
66
|
+
anchor: '\\bKbqContentPanelContainer\\b',
|
|
67
|
+
pattern: '\\.\\s*opened\\s*\\(',
|
|
68
|
+
message: 'KbqContentPanelContainer.opened is now openedInput, and reads undefined rather than false ' +
|
|
69
|
+
'while nothing binds it — which is how the panel tells a bound opened from an unbound one. ' +
|
|
70
|
+
'The markup is unchanged; read isOpened() for the state itself.'
|
|
71
|
+
}
|
|
72
|
+
];
|
|
73
|
+
/** Printed once, after the per-file reports. */
|
|
74
|
+
const SUMMARY = [
|
|
75
|
+
' A component rendered inside an overlay does not persist: it is not in the document when it',
|
|
76
|
+
' initializes and so has no stable key. The key otherwise comes from stateSavingKey, or is derived',
|
|
77
|
+
' from the position in the document when none is given.',
|
|
78
|
+
' Storage format: entries are written under a "kbq.state." prefix and carry a timestamp, so an',
|
|
79
|
+
' entry stranded by a markup change is collected once it outlives KBQ_STATE_SAVING_TTL (90 days by',
|
|
80
|
+
' default).',
|
|
81
|
+
' Provide KBQ_STATE_STORE to persist somewhere else (KbqSessionStorageStateStore is bundled), and',
|
|
82
|
+
' KBQ_STATE_SAVING_KEY_RESOLVER to derive the key from something other than the document position.'
|
|
83
|
+
];
|
|
84
|
+
|
|
85
|
+
exports.CONSUMER_TYPE = CONSUMER_TYPE;
|
|
86
|
+
exports.PACKAGES = PACKAGES;
|
|
87
|
+
exports.SUMMARY = SUMMARY;
|
|
88
|
+
exports.warnPatterns = warnPatterns;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var utils_messages = require('../../utils/messages.js');
|
|
6
|
+
var utils_packageConfig = require('../../package-config-BhU2TfC8.js');
|
|
7
|
+
var migrations_stateSavingDefault_data = require('./data.js');
|
|
8
|
+
require('@angular-devkit/schematics');
|
|
9
|
+
require('@schematics/angular/utility');
|
|
10
|
+
|
|
11
|
+
const LABEL = '[state-saving-default]';
|
|
12
|
+
const EXTENSIONS = ['.ts', '.html'];
|
|
13
|
+
/** A file is a consumer if it imports one of the packages, names a component, or renders one. */
|
|
14
|
+
function referencesConsumer(content) {
|
|
15
|
+
return migrations_stateSavingDefault_data.PACKAGES.some((name) => content.includes(name)) || new RegExp(migrations_stateSavingDefault_data.CONSUMER_TYPE).test(content);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Reports the consequences of the tab group, the sidebar and the content panel persisting the state a
|
|
19
|
+
* user changes, with `useStateSaving` defaulting to `true`. Never writes: the markup whose behaviour
|
|
20
|
+
* changed is exactly the markup that does not mention the input, and rewriting it to opt out would
|
|
21
|
+
* withhold the feature the release is shipping.
|
|
22
|
+
*
|
|
23
|
+
* `.html` is visited as well as `.ts`, because most reports key off the rendered element rather than off
|
|
24
|
+
* an import.
|
|
25
|
+
*/
|
|
26
|
+
function stateSavingDefault(options) {
|
|
27
|
+
return async (tree, context) => {
|
|
28
|
+
const { project } = options;
|
|
29
|
+
const projectDefinition = await utils_packageConfig.setupOptions(project, tree);
|
|
30
|
+
const root = projectDefinition?.root ?? '';
|
|
31
|
+
const rootDir = root ? tree.getDir(root) : tree.root;
|
|
32
|
+
let consumers = 0;
|
|
33
|
+
let reported = 0;
|
|
34
|
+
utils_packageConfig.visitProjectFiles(rootDir, (filePath, entry) => {
|
|
35
|
+
if (!EXTENSIONS.some((extension) => filePath.endsWith(extension)))
|
|
36
|
+
return;
|
|
37
|
+
const content = entry?.content.toString();
|
|
38
|
+
if (!content || !referencesConsumer(content))
|
|
39
|
+
return;
|
|
40
|
+
consumers++;
|
|
41
|
+
for (const { anchor, pattern, unless, message } of migrations_stateSavingDefault_data.warnPatterns) {
|
|
42
|
+
if (!new RegExp(anchor).test(content) || !new RegExp(pattern).test(content))
|
|
43
|
+
continue;
|
|
44
|
+
if (unless && new RegExp(unless).test(content))
|
|
45
|
+
continue;
|
|
46
|
+
reported++;
|
|
47
|
+
utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${message}`]);
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
// Nothing here renders one of the three, so the summary would only be noise.
|
|
51
|
+
if (consumers === 0)
|
|
52
|
+
return;
|
|
53
|
+
utils_messages.logMessage(context.logger, [
|
|
54
|
+
`${LABEL} processed kbq-tab-group, kbq-sidebar and kbq-content-panel-container under ` +
|
|
55
|
+
`"${root || '<workspace root>'}", ${consumers} file(s) reference them, ` +
|
|
56
|
+
`${reported} report(s) raised.`,
|
|
57
|
+
...migrations_stateSavingDefault_data.SUMMARY
|
|
58
|
+
]);
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
exports.default = stateSavingDefault;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "koobiq-components-state-saving-default",
|
|
4
|
+
"title": "Koobiq components state saving default migration",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Name of the project to inspect. If omitted, the migration runs over the whole tree.",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "projectName"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# table-cell-content
|
|
2
|
+
|
|
3
|
+
Migration schematic invoked automatically by `ng update @koobiq/components@21`
|
|
4
|
+
(registered for `21.0.0-0`). Reports the removal of `KbqTableCellContent` and the style-surface changes
|
|
5
|
+
the table review made. It never writes to the tree.
|
|
6
|
+
|
|
7
|
+
## Background
|
|
8
|
+
|
|
9
|
+
`KbqTableCellContent` was declared `selector: 'kbq-table td'`. Angular's directive selector grammar has
|
|
10
|
+
element names, attributes, classes and `:not(…)` — and no combinators. Its parser calls `setElement()`
|
|
11
|
+
for every bare tag it meets, so the second tag overwrote the first and the effective selector was `td`.
|
|
12
|
+
Two things followed. Every template that imported `KbqTableModule` got a directive instance plus a live
|
|
13
|
+
content query on **every** cell it rendered, whether or not the table was a `kbq-table`. And the
|
|
14
|
+
`kbq-table` element the selector named has never existed: the component is an attribute on a native
|
|
15
|
+
`<table>`.
|
|
16
|
+
|
|
17
|
+
The one rule the directive fed — a cell holding a button keeps the row at the button's own height — is
|
|
18
|
+
CSS now:
|
|
19
|
+
|
|
20
|
+
```scss
|
|
21
|
+
.kbq-table > :is(tbody, tfoot) > tr > :is(td, th):has(.kbq-button, .kbq-button-icon) {
|
|
22
|
+
padding-block: var(--kbq-size-xxs);
|
|
23
|
+
}
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
That also drops the `@koobiq/components/button` dependency from the table entry point.
|
|
27
|
+
|
|
28
|
+
| Pattern | Manual migration |
|
|
29
|
+
| --------------------------- | ----------------------------------------------------------------- |
|
|
30
|
+
| `KbqTableCellContent` | Delete it from the `imports` array; nothing replaces it |
|
|
31
|
+
| `kbq-table-cell_has-button` | Select the cell: `:is(td, th):has(.kbq-button, .kbq-button-icon)` |
|
|
32
|
+
|
|
33
|
+
## What else changed
|
|
34
|
+
|
|
35
|
+
- Row hover and the pill corner radii cover `<th>` inside `<tbody>` as well as `<td>`, so a row led by a
|
|
36
|
+
row header is highlighted and rounded as a unit. A consumer rule that switched the highlight off per
|
|
37
|
+
row (`tr:hover { background: none }`) used to be a no-op against the cell-level color — bind
|
|
38
|
+
`[disableHover]` or set `--kbq-table-states-hover-background: transparent`.
|
|
39
|
+
- Every color is behind a `--kbq-table-*` token: `--kbq-table-header-text`, `--kbq-table-body-text`,
|
|
40
|
+
`--kbq-table-border-color`, `--kbq-table-states-hover-background` and
|
|
41
|
+
`--kbq-table-sticky-header-background`, whose value is unchanged — the pinned header still takes
|
|
42
|
+
`--kbq-background-bg`, now through a token a consumer can point at another surface. The row radius
|
|
43
|
+
is `--kbq-table-size-row-border-radius`.
|
|
44
|
+
- Cell padding and the corner radii are logical properties, and alignment goes through
|
|
45
|
+
`--kbq-table-cell-text-align` (default `start`), so a table under `dir="rtl"` mirrors.
|
|
46
|
+
- `<tfoot>` gets the library color and typography it was already being padded for.
|
|
47
|
+
- A pinned header publishes its measured height as `--kbq-table-size-sticky-header-height`, used as
|
|
48
|
+
`scroll-margin-block-start` on the cells and their focusable content so a control scrolled to the top
|
|
49
|
+
edge does not land under the header (WCAG 2.2 SC 2.4.11).
|
|
50
|
+
|
|
51
|
+
## Running it manually
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
ng generate @koobiq/components:table-cell-content --project my-app
|
|
55
|
+
```
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Data for the `table-cell-content` migration.
|
|
5
|
+
*
|
|
6
|
+
* `KbqTableCellContent` is removed. It was declared `selector: 'kbq-table td'`, and Angular's directive
|
|
7
|
+
* selector grammar has no descendant combinator: the parser calls `setElement()` for every bare tag it
|
|
8
|
+
* meets, so the second one overwrote the first and the effective selector was `td`. Every template that
|
|
9
|
+
* imported `KbqTableModule` therefore got a directive instance plus a live content query on every cell
|
|
10
|
+
* it rendered, `kbq-table` scoping included nothing, and the `kbq-table` element the selector named has
|
|
11
|
+
* never existed — the component is an attribute on a native `<table>`.
|
|
12
|
+
*
|
|
13
|
+
* The single rule the directive fed is CSS now
|
|
14
|
+
* (`.kbq-table > :is(tbody, tfoot) > tr > :is(td, th):has(.kbq-button, .kbq-button-icon)`), which also drops the
|
|
15
|
+
* `@koobiq/components/button` dependency from the table entry point.
|
|
16
|
+
*
|
|
17
|
+
* Warn-only: an entry in an `imports` array is deleted rather than replaced, and a stylesheet keyed on
|
|
18
|
+
* the modifier class has to be re-pointed at the cell, which no rewrite can decide.
|
|
19
|
+
*/
|
|
20
|
+
/** Import specifier that marks a file as a table consumer. */
|
|
21
|
+
const TABLE_PACKAGE = '@koobiq/components/table';
|
|
22
|
+
/** Identifier and attribute shapes that mark a consumer without an import. */
|
|
23
|
+
const TABLE_TYPE = '\\bKbqTable\\w*\\b|\\bkbq-table[\\w-]*';
|
|
24
|
+
const warnPatterns = [
|
|
25
|
+
{
|
|
26
|
+
anchor: TABLE_TYPE,
|
|
27
|
+
pattern: '\\bKbqTableCellContent\\b',
|
|
28
|
+
message: 'KbqTableCellContent was removed. Its selector was `kbq-table td`, which Angular parses as ' +
|
|
29
|
+
'plain `td` — it matched every cell in every template importing KbqTableModule, and the ' +
|
|
30
|
+
'`kbq-table` element it named has never existed. Delete it from the imports array; the reduced ' +
|
|
31
|
+
'padding of a cell holding a button is plain CSS now and needs no directive.'
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
anchor: TABLE_TYPE,
|
|
35
|
+
pattern: 'kbq-table-cell_has-button',
|
|
36
|
+
message: 'The kbq-table-cell_has-button class is no longer applied — nothing binds it. A stylesheet ' +
|
|
37
|
+
'keyed on it should select the cell instead: ' +
|
|
38
|
+
'`.kbq-table > :is(tbody, tfoot) > tr > :is(td, th):has(.kbq-button, .kbq-button-icon)`.'
|
|
39
|
+
}
|
|
40
|
+
];
|
|
41
|
+
/** Printed once per project, after the per-file reports. */
|
|
42
|
+
const SUMMARY = [
|
|
43
|
+
' Row hover and the pill corner radii cover `<th>` inside `<tbody>` as well as `<td>`, so a row led ' +
|
|
44
|
+
'by a row header is highlighted and rounded as a unit instead of from its second cell on. A ' +
|
|
45
|
+
'consumer rule that switched the highlight off per row (`tr:hover { background: none }`) used to ' +
|
|
46
|
+
'be a no-op against the cell-level color; bind [disableHover] or set ' +
|
|
47
|
+
'--kbq-table-states-hover-background: transparent instead.',
|
|
48
|
+
' Every color is behind a --kbq-table-* token now (--kbq-table-header-text, --kbq-table-body-text, ' +
|
|
49
|
+
'--kbq-table-border-color, --kbq-table-states-hover-background, --kbq-table-sticky-header-background), ' +
|
|
50
|
+
'and the row radius is --kbq-table-size-row-border-radius. Overriding the global tokens the theme ' +
|
|
51
|
+
'used to read directly no longer reaches the table alone.',
|
|
52
|
+
' Cell padding and the corner radii are logical properties, and alignment goes through ' +
|
|
53
|
+
'--kbq-table-cell-text-align (default `start`), so a table under dir="rtl" mirrors instead of ' +
|
|
54
|
+
'staying left-aligned, and a column can be re-aligned with a custom property instead of ' +
|
|
55
|
+
'out-specifying `.kbq-table > thead > tr > th`.',
|
|
56
|
+
' `<tfoot>` gets the library color and typography it was already being padded for.',
|
|
57
|
+
' A pinned header publishes its measured height as --kbq-table-size-sticky-header-height and the ' +
|
|
58
|
+
'table uses it as scroll-margin-block-start on its cells and their focusable content, so a control ' +
|
|
59
|
+
'scrolled to the top edge does not land under the header (WCAG 2.2 SC 2.4.11). Add ' +
|
|
60
|
+
'scroll-padding-block-start to your own scroll container if it holds more than the table.'
|
|
61
|
+
];
|
|
62
|
+
|
|
63
|
+
exports.SUMMARY = SUMMARY;
|
|
64
|
+
exports.TABLE_PACKAGE = TABLE_PACKAGE;
|
|
65
|
+
exports.TABLE_TYPE = TABLE_TYPE;
|
|
66
|
+
exports.warnPatterns = warnPatterns;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var utils_messages = require('../../utils/messages.js');
|
|
6
|
+
var utils_packageConfig = require('../../package-config-BhU2TfC8.js');
|
|
7
|
+
var migrations_tableCellContent_data = require('./data.js');
|
|
8
|
+
require('@angular-devkit/schematics');
|
|
9
|
+
require('@schematics/angular/utility');
|
|
10
|
+
|
|
11
|
+
const LABEL = '[table-cell-content]';
|
|
12
|
+
const EXTENSIONS = ['.ts', '.html', '.scss', '.css'];
|
|
13
|
+
// Compiled once rather than per visited file: the walk below can run over every file in the
|
|
14
|
+
// project, and these patterns never change between files.
|
|
15
|
+
const TABLE_TYPE_PATTERN = new RegExp(migrations_tableCellContent_data.TABLE_TYPE);
|
|
16
|
+
const compiledWarnPatterns = migrations_tableCellContent_data.warnPatterns.map(({ anchor, pattern, message }) => ({
|
|
17
|
+
anchor: new RegExp(anchor),
|
|
18
|
+
pattern: new RegExp(pattern),
|
|
19
|
+
message
|
|
20
|
+
}));
|
|
21
|
+
/** A file is a table consumer if it imports the package, names the component, or renders one. */
|
|
22
|
+
function referencesTable(content) {
|
|
23
|
+
return content.includes(migrations_tableCellContent_data.TABLE_PACKAGE) || TABLE_TYPE_PATTERN.test(content);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Reports the removal of `KbqTableCellContent` and the style-surface changes the table review made.
|
|
27
|
+
* Never writes: an entry in an `imports` array is deleted rather than replaced, and a stylesheet keyed
|
|
28
|
+
* on the removed modifier class has to be re-pointed at the cell.
|
|
29
|
+
*
|
|
30
|
+
* Stylesheets are visited as well as `.ts` and `.html`, because the modifier class only ever appears in
|
|
31
|
+
* CSS.
|
|
32
|
+
*/
|
|
33
|
+
function tableCellContent(options) {
|
|
34
|
+
return async (tree, context) => {
|
|
35
|
+
const { project } = options;
|
|
36
|
+
const projectDefinition = await utils_packageConfig.setupOptions(project, tree);
|
|
37
|
+
const root = projectDefinition?.root ?? '';
|
|
38
|
+
const rootDir = root ? tree.getDir(root) : tree.root;
|
|
39
|
+
let consumers = 0;
|
|
40
|
+
let reported = 0;
|
|
41
|
+
utils_packageConfig.visitProjectFiles(rootDir, (filePath, entry) => {
|
|
42
|
+
if (!EXTENSIONS.some((extension) => filePath.endsWith(extension)))
|
|
43
|
+
return;
|
|
44
|
+
const content = entry?.content.toString();
|
|
45
|
+
if (!content || !referencesTable(content))
|
|
46
|
+
return;
|
|
47
|
+
consumers++;
|
|
48
|
+
for (const { anchor, pattern, message } of compiledWarnPatterns) {
|
|
49
|
+
if (!anchor.test(content) || !pattern.test(content))
|
|
50
|
+
continue;
|
|
51
|
+
reported++;
|
|
52
|
+
utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${message}`]);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
// Nothing here renders a table, so the summary would only be noise.
|
|
56
|
+
if (consumers === 0)
|
|
57
|
+
return;
|
|
58
|
+
utils_messages.logMessage(context.logger, [
|
|
59
|
+
`${LABEL} processed kbq-table under "${root || '<workspace root>'}", ` +
|
|
60
|
+
`${consumers} file(s) reference the component, ${reported} call site(s) reported.`,
|
|
61
|
+
...migrations_tableCellContent_data.SUMMARY
|
|
62
|
+
]);
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
exports.default = tableCellContent;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "koobiq-components-table-cell-content",
|
|
4
|
+
"title": "Koobiq components table review migration",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "Name of the project to inspect. If omitted, the migration runs over the whole tree.",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "projectName"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|