@koobiq/components 20.4.2 → 21.0.1
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 +791 -609
- 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 +2871 -2595
- 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 +400 -149
- 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 +734 -488
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +1700 -617
- 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 +415 -18
- package/schematics/migrations/accordion-state-saving-default/README.md +60 -0
- package/schematics/migrations/accordion-state-saving-default/data.cjs +75 -0
- package/schematics/migrations/accordion-state-saving-default/index.cjs +61 -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.cjs +47 -0
- package/schematics/migrations/actions-panel-overlay-container/index.cjs +55 -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 → data.cjs} +3 -0
- package/schematics/migrations/alert-signals/index.cjs +221 -0
- package/schematics/migrations/angular-animations-removal/README.md +46 -0
- package/schematics/migrations/angular-animations-removal/data.cjs +150 -0
- package/schematics/migrations/angular-animations-removal/index.cjs +21 -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.cjs +136 -0
- package/schematics/migrations/app-switcher-signals/index.cjs +366 -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 → index.cjs} +6 -5
- package/schematics/migrations/autocomplete-signals/README.md +92 -0
- package/schematics/migrations/autocomplete-signals/data.cjs +149 -0
- package/schematics/migrations/autocomplete-signals/index.cjs +707 -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.cjs +109 -0
- package/schematics/migrations/badge-signals/index.cjs +694 -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.cjs +136 -0
- package/schematics/migrations/button-state-and-styles/index.cjs +221 -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.cjs +106 -0
- package/schematics/migrations/button-supported-colors/index.cjs +261 -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.cjs +200 -0
- package/schematics/migrations/button-toggle-signals-and-aria/index.cjs +497 -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.cjs +88 -0
- package/schematics/migrations/button-truncation/index.cjs +270 -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.cjs +114 -0
- package/schematics/migrations/checkbox-signals/index.cjs +635 -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.cjs +101 -0
- package/schematics/migrations/clamped-text-disclosure/index.cjs +60 -0
- package/schematics/migrations/clamped-text-disclosure/schema.json +15 -0
- package/schematics/migrations/code-block-highlight-js-core/README.md +53 -0
- package/schematics/migrations/code-block-highlight-js-core/data.cjs +64 -0
- package/schematics/migrations/code-block-highlight-js-core/index.cjs +319 -0
- package/schematics/migrations/code-block-highlight-js-core/schema.json +20 -0
- package/schematics/migrations/code-block-signals/README.md +84 -0
- package/schematics/migrations/code-block-signals/data.cjs +121 -0
- package/schematics/migrations/code-block-signals/index.cjs +701 -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.cjs +131 -0
- package/schematics/migrations/color-signals/index.cjs +20 -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.cjs +27 -0
- package/schematics/migrations/core-mixins-removal/index.cjs +18 -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 → index.cjs} +4 -3
- package/schematics/migrations/datepicker-signals/README.md +24 -0
- package/schematics/migrations/datepicker-signals/data.cjs +49 -0
- package/schematics/migrations/datepicker-signals/index.cjs +18 -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 → index.cjs} +8 -7
- package/schematics/migrations/design-tokens-v4/README.md +75 -0
- package/schematics/migrations/design-tokens-v4/index.cjs +60 -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.cjs +62 -0
- package/schematics/migrations/divider-signals-and-aria/index.cjs +212 -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.cjs +85 -0
- package/schematics/migrations/dl-attribute-coercion/index.cjs +162 -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.cjs +44 -0
- package/schematics/migrations/dl-standalone-names/index.cjs +322 -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.cjs +84 -0
- package/schematics/migrations/dropdown-demote-overlay/index.cjs +289 -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.cjs +152 -0
- package/schematics/migrations/dropdown-signals/index.cjs +20 -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.cjs +85 -0
- package/schematics/migrations/empty-state-error-color/index.cjs +72 -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 → index.cjs} +6 -5
- package/schematics/migrations/file-upload-cva-and-primitives/README.md +70 -0
- package/schematics/migrations/file-upload-cva-and-primitives/data.cjs +97 -0
- package/schematics/migrations/file-upload-cva-and-primitives/index.cjs +61 -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.cjs +20 -0
- package/schematics/migrations/file-upload-deprecated-outputs/index.cjs +71 -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.cjs +151 -0
- package/schematics/migrations/filter-bar-rename-action/index.cjs +178 -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 → data.cjs} +1 -2
- package/schematics/migrations/filter-bar-signals/index.cjs +225 -0
- package/schematics/migrations/filter-bar-state-saving-default/README.md +53 -0
- package/schematics/migrations/filter-bar-state-saving-default/data.cjs +87 -0
- package/schematics/migrations/filter-bar-state-saving-default/index.cjs +62 -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.cjs +58 -0
- package/schematics/migrations/flag-inner-html/index.cjs +62 -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.cjs +288 -0
- package/schematics/migrations/form-field-signals/index.cjs +383 -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.cjs +97 -0
- package/schematics/migrations/icon-semantics-and-api/index.cjs +65 -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 → index.cjs} +4 -3
- package/schematics/migrations/inline-edit-a11y-and-types/README.md +82 -0
- package/schematics/migrations/inline-edit-a11y-and-types/data.cjs +117 -0
- package/schematics/migrations/inline-edit-a11y-and-types/index.cjs +98 -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.cjs +135 -0
- package/schematics/migrations/input-number-surface/index.cjs +293 -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.cjs +30 -0
- package/schematics/migrations/input-signals/index.cjs +18 -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.cjs +20 -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.cjs +116 -0
- package/schematics/migrations/link-signals/index.cjs +416 -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.cjs +35 -0
- package/schematics/migrations/list-signals/index.cjs +18 -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.cjs +74 -0
- package/schematics/migrations/list-tree-multiple-input/index.cjs +222 -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.cjs +101 -0
- package/schematics/migrations/loader-overlay-signals/index.cjs +698 -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 → index.cjs} +6 -5
- package/schematics/migrations/locale-configuration-providers/README.md +163 -0
- package/schematics/migrations/locale-configuration-providers/data.cjs +257 -0
- package/schematics/migrations/locale-configuration-providers/index.cjs +295 -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.cjs +43 -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.cjs +79 -0
- package/schematics/migrations/markdown-signals/index.cjs +640 -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.cjs +110 -0
- package/schematics/migrations/modal-dialog-semantics/index.cjs +59 -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.cjs +132 -0
- package/schematics/migrations/modal-signals/index.cjs +20 -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.cjs +198 -0
- package/schematics/migrations/navbar-signals-and-aria/index.cjs +569 -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 → index.cjs} +8 -7
- package/schematics/migrations/notification-center-signals/README.md +67 -0
- package/schematics/migrations/notification-center-signals/data.cjs +66 -0
- package/schematics/migrations/notification-center-signals/index.cjs +62 -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.cjs +86 -0
- package/schematics/migrations/option-signals/index.cjs +20 -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.cjs +61 -0
- package/schematics/migrations/popover-leave-delay/index.cjs +55 -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.cjs +76 -0
- package/schematics/migrations/progress-bar-percentage-and-aria/index.cjs +59 -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.cjs +83 -0
- package/schematics/migrations/progress-spinner-signals/index.cjs +695 -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.cjs +70 -0
- package/schematics/migrations/query-list-signals/index.cjs +18 -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.cjs +163 -0
- package/schematics/migrations/radio-signals-and-aria/index.cjs +40 -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.cjs +45 -0
- package/schematics/migrations/read-state-dwell-handlers/index.cjs +216 -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.cjs +21 -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.cjs +99 -0
- package/schematics/migrations/select-signal-inputs/index.cjs +58 -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.cjs +111 -0
- package/schematics/migrations/sidepanel-non-modal-behavior/index.cjs +58 -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.cjs +69 -0
- package/schematics/migrations/signal-inputs-subclasses/index.cjs +18 -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.cjs +53 -0
- package/schematics/migrations/split-button-optional-disabled/index.cjs +58 -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.cjs +21 -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.cjs +88 -0
- package/schematics/migrations/state-saving-default/index.cjs +63 -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.cjs +66 -0
- package/schematics/migrations/table-cell-content/index.cjs +67 -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.cjs +139 -0
- package/schematics/migrations/tabs-signals-and-aria/index.cjs +66 -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.cjs +42 -0
- package/schematics/migrations/tag-list-cleaner/index.cjs +197 -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.cjs +191 -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.cjs +103 -0
- package/schematics/migrations/tags-signals/index.cjs +674 -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.cjs +121 -0
- package/schematics/migrations/textarea-signals/index.cjs +380 -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.cjs +139 -0
- package/schematics/migrations/time-range-title-for/index.cjs +164 -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.cjs +82 -0
- package/schematics/migrations/timepicker-signals/index.cjs +710 -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.cjs +101 -0
- package/schematics/migrations/timezone-grouping-utils/index.cjs +65 -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.cjs +69 -0
- package/schematics/migrations/title-encapsulation/index.cjs +58 -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.cjs +79 -0
- package/schematics/migrations/toast-stack-and-defaults/index.cjs +54 -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.cjs +89 -0
- package/schematics/migrations/tooltip-pointer-events-and-types/index.cjs +61 -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.cjs +56 -0
- package/schematics/migrations/top-bar-container-selectors/index.cjs +85 -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.cjs +106 -0
- package/schematics/migrations/tree-select-signals/index.cjs +59 -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.cjs +123 -0
- package/schematics/migrations/tree-signals/index.cjs +55 -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.cjs +78 -0
- package/schematics/migrations/tree-state-saving-default/index.cjs +61 -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.cjs +78 -0
- package/schematics/migrations/username-pipe-injection/index.cjs +59 -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 → data.cjs} +124 -77
- package/schematics/migrations/v20-upgrade/index.cjs +19 -0
- package/schematics/migrations/v21-upgrade/README.md +271 -0
- package/schematics/migrations/v21-upgrade/data.cjs +1371 -0
- package/schematics/migrations/v21-upgrade/index.cjs +95 -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.cjs +29 -0
- package/schematics/migrations/zoneless-change-detection/index.cjs +21 -0
- package/schematics/migrations/zoneless-change-detection/schema.json +15 -0
- package/schematics/migrations.json +401 -6
- package/schematics/ng-add/index.cjs +266 -0
- package/schematics/ng-add/schema.json +15 -0
- package/schematics/utils/{angular-parsing.js → angular-parsing.cjs} +2 -2
- package/schematics/utils/deprecated-path-migration.cjs +62 -0
- package/schematics/utils/html-config.cjs +148 -0
- package/schematics/utils/{icon-migration.js → icon-migration.cjs} +2 -2
- package/schematics/utils/list-item-pattern.cjs +16 -0
- package/schematics/utils/{package-config.js → package-config.cjs} +3 -32
- package/schematics/utils/project-files.cjs +25 -0
- package/schematics/utils/replacement-driver.cjs +337 -0
- package/schematics/utils/safe-rule.cjs +23 -0
- package/schematics/utils/signal-members-migration.cjs +779 -0
- package/schematics/utils/tag-patterns.cjs +21 -0
- package/schematics/utils/template-ref-access.cjs +155 -0
- package/schematics/utils/{typescript.js → typescript.cjs} +1 -1
- package/schematics/utils/warn-only-migration.cjs +52 -0
- package/schematics/utils/workspace-styles.cjs +123 -0
- 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} +150 -88
- 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 +670 -0
- package/types/koobiq-components-tree.d.ts +1339 -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/schematics/migrations/alert-signals/index.js +0 -353
- package/schematics/migrations/filter-bar-signals/index.js +0 -319
- package/schematics/migrations/v20-upgrade/index.js +0 -225
- package/schematics/ng-add/index.js +0 -39
- 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/schematics/migrations/css-selectors/{data.js → data.cjs} +0 -0
- /package/schematics/migrations/deprecated-icons/{data.js → data.cjs} +0 -0
- /package/schematics/migrations/icons-replacement/{data.js → data.cjs} +0 -0
- /package/schematics/migrations/new-icons-pack/{data.js → data.cjs} +0 -0
- /package/schematics/utils/{ast.js → ast.cjs} +0 -0
- /package/schematics/utils/{messages.js → messages.cjs} +0 -0
- /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,319 @@
|
|
|
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
|
+
var ts$1 = require('typescript');
|
|
8
|
+
var utils_messages = require('../../utils/messages.cjs');
|
|
9
|
+
var utils_packageConfig = require('../../utils/package-config.cjs');
|
|
10
|
+
var utils_projectFiles = require('../../utils/project-files.cjs');
|
|
11
|
+
var utils_safeRule = require('../../utils/safe-rule.cjs');
|
|
12
|
+
var migrations_codeBlockHighlightJsCore_data = require('./data.cjs');
|
|
13
|
+
var ts = require('@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript');
|
|
14
|
+
var astUtils = require('@schematics/angular/utility/ast-utils');
|
|
15
|
+
var ngAstUtils = require('@schematics/angular/utility/ng-ast-utils');
|
|
16
|
+
var app_config = require('@schematics/angular/utility/standalone/app_config');
|
|
17
|
+
var util = require('@schematics/angular/utility/standalone/util');
|
|
18
|
+
require('rxjs');
|
|
19
|
+
|
|
20
|
+
// `@schematics/angular`'s own bundled copy of the TypeScript compiler, not the `typescript` package: the nodes its
|
|
21
|
+
// utilities return were created by it, and `SyntaxKind` values differ between versions.
|
|
22
|
+
const nameOf$1 = (node) => {
|
|
23
|
+
if (ts.isIdentifier(node))
|
|
24
|
+
return node.text;
|
|
25
|
+
if (ts.isPropertyAccessExpression(node))
|
|
26
|
+
return node.name.text;
|
|
27
|
+
return undefined;
|
|
28
|
+
};
|
|
29
|
+
const isNamed = (property, name) => !!property.name &&
|
|
30
|
+
(ts.isIdentifier(property.name) || ts.isStringLiteral(property.name)) &&
|
|
31
|
+
property.name.text === name;
|
|
32
|
+
/**
|
|
33
|
+
* The elements of the `providers` of a configuration or `@NgModule`, none when it declares no providers, or `null` when
|
|
34
|
+
* `addRootProvider` cannot add one to them safely: it would declare `providers` a second time next to a value that is
|
|
35
|
+
* not an array literal, leave an `@NgModule` alone, or override the providers of a spread.
|
|
36
|
+
*/
|
|
37
|
+
function providersOf(literal) {
|
|
38
|
+
if (literal.properties.some(ts.isSpreadAssignment))
|
|
39
|
+
return null;
|
|
40
|
+
const providers = literal.properties.find((property) => isNamed(property, 'providers'));
|
|
41
|
+
if (!providers)
|
|
42
|
+
return [];
|
|
43
|
+
return ts.isPropertyAssignment(providers) && ts.isArrayLiteralExpression(providers.initializer)
|
|
44
|
+
? providers.initializer.elements
|
|
45
|
+
: null;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The root providers of an application, where `addRootProvider` adds one: `null` when it cannot add one there safely,
|
|
49
|
+
* since it throws on a bootstrap it cannot analyze only after adding the import, and breaks the configuration or does
|
|
50
|
+
* nothing on providers it cannot extend.
|
|
51
|
+
*/
|
|
52
|
+
async function findRootProviders(tree, project) {
|
|
53
|
+
try {
|
|
54
|
+
const mainFilePath = await util.getMainFilePath(tree, project);
|
|
55
|
+
if (ngAstUtils.isStandaloneApp(tree, mainFilePath)) {
|
|
56
|
+
const bootstrapCall = util.findBootstrapApplicationCall(tree, mainFilePath);
|
|
57
|
+
const appConfig = app_config.findAppConfig(bootstrapCall, tree, mainFilePath);
|
|
58
|
+
// Without a configuration it can read, `addRootProvider` adds one to `bootstrapApplication(App)` only.
|
|
59
|
+
if (!appConfig)
|
|
60
|
+
return bootstrapCall.arguments.length === 1 ? [] : null;
|
|
61
|
+
return providersOf(appConfig.node);
|
|
62
|
+
}
|
|
63
|
+
const modulePath = ngAstUtils.getAppModulePath(tree, mainFilePath);
|
|
64
|
+
const [metadata] = astUtils.getDecoratorMetadata(util.getSourceFile(tree, modulePath), 'NgModule', '@angular/core');
|
|
65
|
+
return metadata && ts.isObjectLiteralExpression(metadata) ? providersOf(metadata) : null;
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/** Whether a root provider is a highlight.js configuration of the code block. */
|
|
72
|
+
function isHighlightJsConfig(provider) {
|
|
73
|
+
if (ts.isCallExpression(provider))
|
|
74
|
+
return nameOf$1(provider.expression) === migrations_codeBlockHighlightJsCore_data.CONFIG_PROVIDER;
|
|
75
|
+
return (ts.isObjectLiteralExpression(provider) &&
|
|
76
|
+
provider.properties.some((property) => isNamed(property, 'provide') &&
|
|
77
|
+
ts.isPropertyAssignment(property) &&
|
|
78
|
+
nameOf$1(property.initializer) === migrations_codeBlockHighlightJsCore_data.CONFIG_TOKEN));
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
const LABEL = '[code-block-highlight-js-core]';
|
|
82
|
+
const TS_EXT = '.ts';
|
|
83
|
+
/** Files that render code blocks outside the application, with providers of their own. */
|
|
84
|
+
const TEST_FILE = /\.(spec|test|stories|cy)\.ts$/;
|
|
85
|
+
/** The name of a callee or of a referenced token: `x` for `x` and `ns.x`. */
|
|
86
|
+
const nameOf = (node) => {
|
|
87
|
+
if (ts$1.isIdentifier(node))
|
|
88
|
+
return node.text;
|
|
89
|
+
if (ts$1.isPropertyAccessExpression(node))
|
|
90
|
+
return node.name.text;
|
|
91
|
+
return undefined;
|
|
92
|
+
};
|
|
93
|
+
/** The name of a property, `undefined` for a computed one other than a string literal. */
|
|
94
|
+
const propertyName = (property) => {
|
|
95
|
+
const name = property.name;
|
|
96
|
+
if (!name)
|
|
97
|
+
return undefined;
|
|
98
|
+
if (ts$1.isIdentifier(name) || ts$1.isStringLiteral(name))
|
|
99
|
+
return name.text;
|
|
100
|
+
if (ts$1.isComputedPropertyName(name) && ts$1.isStringLiteralLike(name.expression))
|
|
101
|
+
return name.expression.text;
|
|
102
|
+
return undefined;
|
|
103
|
+
};
|
|
104
|
+
const findProperty = (literal, name) => literal.properties.find((property) => propertyName(property) === name);
|
|
105
|
+
/** The names a file gives to an export of the code block: its own, and those of `import { name as alias }`. */
|
|
106
|
+
function localNames(sourceFile, exported) {
|
|
107
|
+
const names = new Set([exported]);
|
|
108
|
+
for (const statement of sourceFile.statements) {
|
|
109
|
+
if (!ts$1.isImportDeclaration(statement) || !ts$1.isStringLiteral(statement.moduleSpecifier))
|
|
110
|
+
continue;
|
|
111
|
+
if (statement.moduleSpecifier.text !== migrations_codeBlockHighlightJsCore_data.CODE_BLOCK_PACKAGE)
|
|
112
|
+
continue;
|
|
113
|
+
const bindings = statement.importClause?.namedBindings;
|
|
114
|
+
if (!bindings || !ts$1.isNamedImports(bindings))
|
|
115
|
+
continue;
|
|
116
|
+
for (const element of bindings.elements) {
|
|
117
|
+
if ((element.propertyName ?? element.name).text === exported)
|
|
118
|
+
names.add(element.name.text);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return names;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Adds `core: () => import('highlight.js')` to every highlight.js configuration written as an object literal without
|
|
125
|
+
* `core` - the argument of `kbqCodeBlockHighlightJsConfigProvider` and the `useValue` of a provider of
|
|
126
|
+
* `KBQ_CODE_BLOCK_HIGHLIGHT_JS_CONFIG` - since the code block loaded the full bundle for it. A configuration it
|
|
127
|
+
* cannot read, such as a variable, a spread or a factory, is reported rather than guessed at.
|
|
128
|
+
*/
|
|
129
|
+
function migrateSource(content, fileName) {
|
|
130
|
+
const sourceFile = ts$1.createSourceFile(fileName, content, ts$1.ScriptTarget.Latest, true, ts$1.ScriptKind.TS);
|
|
131
|
+
const newline = content.includes('\r\n') ? '\r\n' : '\n';
|
|
132
|
+
const providerNames = localNames(sourceFile, migrations_codeBlockHighlightJsCore_data.CONFIG_PROVIDER);
|
|
133
|
+
const tokenNames = localNames(sourceFile, migrations_codeBlockHighlightJsCore_data.CONFIG_TOKEN);
|
|
134
|
+
const edits = [];
|
|
135
|
+
const unreadLines = [];
|
|
136
|
+
let configs = 0;
|
|
137
|
+
const report = (node) => {
|
|
138
|
+
unreadLines.push(sourceFile.getLineAndCharacterOfPosition(node.getStart()).line + 1);
|
|
139
|
+
};
|
|
140
|
+
const isToken = (node) => !!node && tokenNames.has(nameOf(node) ?? '');
|
|
141
|
+
const addCore = (config, site) => {
|
|
142
|
+
configs++;
|
|
143
|
+
if (!config || !ts$1.isObjectLiteralExpression(config))
|
|
144
|
+
return report(config ?? site);
|
|
145
|
+
if (findProperty(config, 'core'))
|
|
146
|
+
return;
|
|
147
|
+
// A spread or a computed name may hold `core`.
|
|
148
|
+
if (config.properties.some((property) => ts$1.isSpreadAssignment(property) || !propertyName(property))) {
|
|
149
|
+
return report(config);
|
|
150
|
+
}
|
|
151
|
+
const [first] = config.properties;
|
|
152
|
+
const open = config.getStart() + 1;
|
|
153
|
+
if (!first) {
|
|
154
|
+
const inner = content.slice(open, config.getEnd() - 1);
|
|
155
|
+
if (!inner.trim()) {
|
|
156
|
+
edits.push({ start: config.getStart(), end: config.getEnd(), text: `{ ${migrations_codeBlockHighlightJsCore_data.FULL_BUNDLE_CORE} }` });
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
// A comment is all the literal holds: `core` goes above it.
|
|
160
|
+
const indent = /\n([ \t]*)\S/.exec(inner)?.[1];
|
|
161
|
+
edits.push({
|
|
162
|
+
start: open,
|
|
163
|
+
end: open,
|
|
164
|
+
text: indent === undefined ? ` ${migrations_codeBlockHighlightJsCore_data.FULL_BUNDLE_CORE}` : `${newline}${indent}${migrations_codeBlockHighlightJsCore_data.FULL_BUNDLE_CORE}`
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
// Above the comments of the first property, which describe it.
|
|
170
|
+
const [comment] = ts$1.getLeadingCommentRanges(content, first.getFullStart()) ?? [];
|
|
171
|
+
const start = comment?.pos ?? first.getStart();
|
|
172
|
+
const indent = content.slice(content.lastIndexOf('\n', start - 1) + 1, start);
|
|
173
|
+
const separator = /^[ \t]*$/.test(indent) ? `,${newline}${indent}` : ', ';
|
|
174
|
+
edits.push({ start, end: start, text: migrations_codeBlockHighlightJsCore_data.FULL_BUNDLE_CORE + separator });
|
|
175
|
+
};
|
|
176
|
+
// The `useValue` of a provider object; `TestBed.overrideProvider` takes one without `provide`.
|
|
177
|
+
const addCoreToProvider = (provider, site) => {
|
|
178
|
+
const useValue = provider && ts$1.isObjectLiteralExpression(provider) && findProperty(provider, 'useValue');
|
|
179
|
+
addCore(useValue && ts$1.isPropertyAssignment(useValue) ? useValue.initializer : undefined, site);
|
|
180
|
+
};
|
|
181
|
+
const visit = (node) => {
|
|
182
|
+
if (ts$1.isCallExpression(node)) {
|
|
183
|
+
const callee = nameOf(node.expression);
|
|
184
|
+
if (callee && providerNames.has(callee)) {
|
|
185
|
+
addCore(node.arguments[0], node);
|
|
186
|
+
}
|
|
187
|
+
else if (callee === 'overrideProvider' && isToken(node.arguments[0])) {
|
|
188
|
+
addCoreToProvider(node.arguments[1], node);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
else if (ts$1.isObjectLiteralExpression(node)) {
|
|
192
|
+
const provide = findProperty(node, 'provide');
|
|
193
|
+
if (provide && ts$1.isPropertyAssignment(provide) && isToken(provide.initializer)) {
|
|
194
|
+
addCoreToProvider(node, node);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
ts$1.forEachChild(node, visit);
|
|
198
|
+
};
|
|
199
|
+
visit(sourceFile);
|
|
200
|
+
let result = content;
|
|
201
|
+
for (const { start, end, text } of edits.sort((a, b) => b.start - a.start)) {
|
|
202
|
+
result = result.slice(0, start) + text + result.slice(end);
|
|
203
|
+
}
|
|
204
|
+
return { content: result, changed: result !== content, unreadLines, configs };
|
|
205
|
+
}
|
|
206
|
+
/** The directory of a project's sources, as the paths `visitProjectFiles` passes start: `/src`, or `/` for the root. */
|
|
207
|
+
const sourceDir = (project) => `/${(project.sourceRoot ?? project.root).replace(/^\/+|\/+$/g, '')}`;
|
|
208
|
+
const isInside = (path, dir) => dir === '/' || path.startsWith(`${dir}/`);
|
|
209
|
+
const fullBundleProviderRule = (project) => utility.addRootProvider(project, ({ code, external }) => {
|
|
210
|
+
const provider = external(migrations_codeBlockHighlightJsCore_data.CONFIG_PROVIDER, migrations_codeBlockHighlightJsCore_data.CODE_BLOCK_PACKAGE);
|
|
211
|
+
return code `${provider}({ ${migrations_codeBlockHighlightJsCore_data.FULL_BUNDLE_CORE} })`;
|
|
212
|
+
});
|
|
213
|
+
/**
|
|
214
|
+
* Keeps the full highlight.js bundle where the code block loaded it by default: in the root providers of an
|
|
215
|
+
* application that renders code blocks with no configuration there, and in every configuration without `core`.
|
|
216
|
+
*/
|
|
217
|
+
function codeBlockHighlightJsCore(options) {
|
|
218
|
+
return async (tree, context) => {
|
|
219
|
+
// `ng update` invokes migrations with no options at all, and migrations.json declares no schema, so the
|
|
220
|
+
// schema default never reaches us - applying the fix is the intended behaviour there.
|
|
221
|
+
const fix = options.fix ?? true;
|
|
222
|
+
const projectDefinition = await utils_packageConfig.setupOptions(options.project, tree);
|
|
223
|
+
// The source root rather than the root: the root of the first application can be the workspace root.
|
|
224
|
+
const rootDir = projectDefinition ? tree.getDir(sourceDir(projectDefinition)) : tree.root;
|
|
225
|
+
const providerRules = [];
|
|
226
|
+
let projects = [];
|
|
227
|
+
let consumers = 0;
|
|
228
|
+
let touched = 0;
|
|
229
|
+
try {
|
|
230
|
+
const workspace = await utility.readWorkspace(tree);
|
|
231
|
+
projects = [...workspace.projects].map(([name, definition]) => ({
|
|
232
|
+
name,
|
|
233
|
+
definition,
|
|
234
|
+
dir: sourceDir(definition)
|
|
235
|
+
}));
|
|
236
|
+
}
|
|
237
|
+
catch {
|
|
238
|
+
// The configurations are migrated all the same.
|
|
239
|
+
utils_messages.logMessage(context.logger, [LABEL, ...migrations_codeBlockHighlightJsCore_data.noWorkspaceMessage()]);
|
|
240
|
+
}
|
|
241
|
+
const usingCodeBlock = new Set();
|
|
242
|
+
const configured = new Set();
|
|
243
|
+
utils_projectFiles.visitProjectFiles(rootDir, (filePath, entry) => {
|
|
244
|
+
if (!filePath.endsWith(TS_EXT))
|
|
245
|
+
return;
|
|
246
|
+
// The innermost project: one whose sources sit at the workspace root holds the others too.
|
|
247
|
+
const containing = projects.filter(({ dir }) => isInside(filePath, dir));
|
|
248
|
+
const depth = Math.max(...containing.map(({ dir }) => dir.length));
|
|
249
|
+
const owners = containing.filter(({ dir }) => dir.length === depth).map(({ name }) => name);
|
|
250
|
+
if (options.project && !owners.includes(options.project))
|
|
251
|
+
return;
|
|
252
|
+
const original = entry.content.toString();
|
|
253
|
+
const isTest = TEST_FILE.test(filePath);
|
|
254
|
+
if (!isTest && original.includes(migrations_codeBlockHighlightJsCore_data.CODE_BLOCK_PACKAGE))
|
|
255
|
+
owners.forEach((name) => usingCodeBlock.add(name));
|
|
256
|
+
if (!original.includes(migrations_codeBlockHighlightJsCore_data.CONFIG_PROVIDER) && !original.includes(migrations_codeBlockHighlightJsCore_data.CONFIG_TOKEN))
|
|
257
|
+
return;
|
|
258
|
+
const { content, changed, unreadLines, configs } = migrateSource(original, filePath);
|
|
259
|
+
if (!isTest && configs)
|
|
260
|
+
owners.forEach((name) => configured.add(name));
|
|
261
|
+
for (const line of unreadLines) {
|
|
262
|
+
utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${migrations_codeBlockHighlightJsCore_data.unreadConfigMessage(line)}`]);
|
|
263
|
+
}
|
|
264
|
+
if (!changed)
|
|
265
|
+
return;
|
|
266
|
+
touched++;
|
|
267
|
+
if (fix) {
|
|
268
|
+
tree.overwrite(filePath, content);
|
|
269
|
+
}
|
|
270
|
+
else {
|
|
271
|
+
utils_messages.logMessage(context.logger, [`${LABEL} would update ${filePath} (run with --fix to apply)`]);
|
|
272
|
+
}
|
|
273
|
+
});
|
|
274
|
+
for (const { name, definition } of projects) {
|
|
275
|
+
if (!usingCodeBlock.has(name) || (options.project && name !== options.project))
|
|
276
|
+
continue;
|
|
277
|
+
consumers++;
|
|
278
|
+
if (definition.extensions['projectType'] !== 'application') {
|
|
279
|
+
if (!configured.has(name))
|
|
280
|
+
utils_messages.logMessage(context.logger, [LABEL, ...migrations_codeBlockHighlightJsCore_data.libraryMessage(name)]);
|
|
281
|
+
continue;
|
|
282
|
+
}
|
|
283
|
+
const rootProviders = await findRootProviders(tree, name);
|
|
284
|
+
if (!rootProviders) {
|
|
285
|
+
utils_messages.logMessage(context.logger, [LABEL, ...migrations_codeBlockHighlightJsCore_data.rootProviderFallback(name)]);
|
|
286
|
+
continue;
|
|
287
|
+
}
|
|
288
|
+
// A configuration in the root providers reaches every code block, and has its `core` by now.
|
|
289
|
+
if (rootProviders.some(isHighlightJsConfig))
|
|
290
|
+
continue;
|
|
291
|
+
const messages = [
|
|
292
|
+
...migrations_codeBlockHighlightJsCore_data.addedRootProviderMessage(name, fix),
|
|
293
|
+
...(configured.has(name) ? migrations_codeBlockHighlightJsCore_data.otherConfigsMessage(name) : [])
|
|
294
|
+
];
|
|
295
|
+
if (!fix) {
|
|
296
|
+
utils_messages.logMessage(context.logger, [LABEL, ...messages]);
|
|
297
|
+
continue;
|
|
298
|
+
}
|
|
299
|
+
providerRules.push(utils_safeRule.safeRule(schematics.chain([
|
|
300
|
+
fullBundleProviderRule(name),
|
|
301
|
+
(_, ruleContext) => utils_messages.logMessage(ruleContext.logger, [LABEL, ...messages])
|
|
302
|
+
]), migrations_codeBlockHighlightJsCore_data.rootProviderFallback(name)));
|
|
303
|
+
}
|
|
304
|
+
// Nothing here renders code blocks, so the summary would only be noise.
|
|
305
|
+
if (!consumers && !touched)
|
|
306
|
+
return;
|
|
307
|
+
// After the root providers, which say what they added only once it is there.
|
|
308
|
+
return schematics.chain([
|
|
309
|
+
...providerRules,
|
|
310
|
+
(_, ruleContext) => utils_messages.logMessage(ruleContext.logger, [
|
|
311
|
+
`${LABEL} ${fix ? 'updated' : 'would update'} ${touched} highlight.js configuration file(s).`,
|
|
312
|
+
...migrations_codeBlockHighlightJsCore_data.SUMMARY
|
|
313
|
+
])
|
|
314
|
+
]);
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
exports.default = codeBlockHighlightJsCore;
|
|
319
|
+
exports.migrateSource = migrateSource;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "koobiq-components-code-block-highlight-js-core",
|
|
4
|
+
"title": "Koobiq components code block highlight.js core migration",
|
|
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 the rewrites. When false, prints what would change without writing."
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# code-block-signals
|
|
2
|
+
|
|
3
|
+
Migration schematic invoked automatically by `ng update @koobiq/components@21` (registered for
|
|
4
|
+
`21.0.0-0`). Moves `KbqCodeBlock` consumers onto its finished signal-based API and reports what has no
|
|
5
|
+
mechanical translation.
|
|
6
|
+
|
|
7
|
+
## Background
|
|
8
|
+
|
|
9
|
+
`maxHeight` was published as `InputSignal<number>` over an `undefined!` default, so a code block with
|
|
10
|
+
no `[maxHeight]` binding reported `undefined` from a non-nullable type:
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
const height: number = codeBlock.maxHeight(); // held undefined
|
|
14
|
+
if (codeBlock.maxHeight() > 0) { … } // NaN comparison, never true
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
It reports `number | undefined` now, and a value that is not cleanly numeric — a valueless
|
|
18
|
+
`maxHeight` attribute, `'200px'` — reports `undefined` rather than `NaN`. `[maxHeight]="undefined"`
|
|
19
|
+
used to hand back `NaN`; that is the one runtime change. The call sites that were quietly wrong now
|
|
20
|
+
fail to compile.
|
|
21
|
+
|
|
22
|
+
`KbqCodeBlockHighlight.file` was a write-only required input: a setter with no getter that kicked off
|
|
23
|
+
highlighting as a side effect. It is `input.required()` driven by an effect now, so it can finally be
|
|
24
|
+
read — and a programmatic write no longer compiles.
|
|
25
|
+
|
|
26
|
+
## What it rewrites
|
|
27
|
+
|
|
28
|
+
`KbqCodeBlock` has no decorator inputs left. `softWrap`, `viewAll`, `canDownload`, `files`,
|
|
29
|
+
`activeFileIndex` and `hideTabs` are `WritableSignal`s over a backing `input()`, so both directions
|
|
30
|
+
are mechanical:
|
|
31
|
+
|
|
32
|
+
| Before | After |
|
|
33
|
+
| --------------------------- | ------------------------------ |
|
|
34
|
+
| `block.softWrap` | `block.softWrap()` |
|
|
35
|
+
| `block.activeFileIndex = 2` | `block.activeFileIndex.set(2)` |
|
|
36
|
+
|
|
37
|
+
On receivers explicitly typed `KbqCodeBlock`, on the `inject()` / `viewChild()` initializer forms, and
|
|
38
|
+
through template reference variables on `<kbq-code-block>` in external and inline templates. Reads that
|
|
39
|
+
are already calls are left alone, so the schematic is idempotent.
|
|
40
|
+
|
|
41
|
+
A `model()` would have been the obvious shape for the six, but `ModelOptions` carries no `transform`,
|
|
42
|
+
and every one of them needs `booleanAttribute` or `numberAttribute` to keep a valueless attribute such
|
|
43
|
+
as `<kbq-code-block softWrap>` working.
|
|
44
|
+
|
|
45
|
+
## What it does _not_ do
|
|
46
|
+
|
|
47
|
+
Narrowing `number | undefined` back to `number` is a decision — `?? 0`, a non-null assertion, or
|
|
48
|
+
handling the unset state — and turning a `file` write into a `[file]` binding is a template edit. A
|
|
49
|
+
compound assignment (`||=`, `+=`) or an increment would need the receiver spelled twice, so it is
|
|
50
|
+
reported rather than rewritten, and the backing inputs — `softWrapInput` and friends — cannot be
|
|
51
|
+
written at all any more. The removed `canLoad` and `codeFiles` aliases are migrated by `v21-upgrade`.
|
|
52
|
+
|
|
53
|
+
| Pattern | Manual migration |
|
|
54
|
+
| ---------------------------------------- | ------------------------------------------------------------------- |
|
|
55
|
+
| `.maxHeight()` on a `KbqCodeBlock` | `?? 0` for the common reading, or handle the unset state explicitly |
|
|
56
|
+
| `.file = …` on a `KbqCodeBlockHighlight` | Bind `[file]`; the value is readable as `file()` now |
|
|
57
|
+
|
|
58
|
+
## Notes with no call site to point at
|
|
59
|
+
|
|
60
|
+
- The `max-height` the code block applies while `viewAll` is off is a `computed`. It was a getter read
|
|
61
|
+
from a `[style.max-height.px]` binding, so it only re-evaluated when something else marked the view
|
|
62
|
+
dirty; it follows `maxHeight` and `viewAll` directly now.
|
|
63
|
+
- `softWrap`, `viewAll`, `canDownload`, `activeFileIndex` and `files` are backed by signals. They are
|
|
64
|
+
accessor inputs with the same types and the same two-way outputs — they are written by the component
|
|
65
|
+
as well as by the binding, and a `model()` cannot carry the `booleanAttribute` /
|
|
66
|
+
`numberAttribute` transform they need. Four of the five were plain public fields before, so they are
|
|
67
|
+
no longer own properties: they do not appear in `Object.keys`, a spread or `JSON.stringify`, and a
|
|
68
|
+
subclass field of the same name shadows the accessor under `useDefineForClassFields`.
|
|
69
|
+
- **`hideTabs` is derived rather than written.** A single file with no filename still hides the tab
|
|
70
|
+
bar, but the component no longer writes `true` into its own input to do it: the write latched the
|
|
71
|
+
bar off for good and re-emitted `hideTabsChange` on every `files` assignment. `[hideTabs]="false"`
|
|
72
|
+
no longer shows the bar for a lone unnamed file.
|
|
73
|
+
- **An `activeFileIndex` outside `files` renders the first file, and an empty `files` renders no code
|
|
74
|
+
at all.** Both used to reach `files[activeFileIndex]` and throw on the undefined result. The index
|
|
75
|
+
itself is left as bound: resetting it wrote back into a `[(activeFileIndex)]` while the parent was
|
|
76
|
+
still updating.
|
|
77
|
+
- A failed `highlight.js` load no longer latches `pending` on, and the line-numbers plugin installs
|
|
78
|
+
its `<style>` and its `copy` listener once instead of once per code block.
|
|
79
|
+
|
|
80
|
+
## Running it manually
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
ng generate @koobiq/components:code-block-signals --project my-app
|
|
84
|
+
```
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Data for the `code-block-signals` migration.
|
|
5
|
+
*
|
|
6
|
+
* `KbqCodeBlock` finished its move to signals: nothing on it is a decorator input any more.
|
|
7
|
+
*
|
|
8
|
+
* - `softWrap`, `viewAll`, `canDownload`, `files`, `activeFileIndex`, `hideTabs` → `WritableSignal`s over
|
|
9
|
+
* a backing `input()`, so a read becomes a call and a plain write becomes `.set(…)` (auto-fixed)
|
|
10
|
+
* - `maxHeight` was already a signal input; only its type changed (warn)
|
|
11
|
+
*
|
|
12
|
+
* A `model()` would have been the obvious shape for the six, but `ModelOptions` carries no `transform`,
|
|
13
|
+
* and every one of them needs `booleanAttribute` or `numberAttribute` to keep a valueless attribute
|
|
14
|
+
* (`<kbq-code-block softWrap>`) working. Hence the backing input plus a `linkedSignal` over it.
|
|
15
|
+
*/
|
|
16
|
+
/** Members whose value is unchanged; a read must become a call, a write must become `.set(…)`. */
|
|
17
|
+
const SIGNAL_MEMBERS = [
|
|
18
|
+
'softWrap',
|
|
19
|
+
'viewAll',
|
|
20
|
+
'canDownload',
|
|
21
|
+
'files',
|
|
22
|
+
'activeFileIndex',
|
|
23
|
+
'hideTabs'
|
|
24
|
+
];
|
|
25
|
+
/**
|
|
26
|
+
* Members the migration reports rather than rewrites: `maxHeight` was already a signal input and only
|
|
27
|
+
* changed its type, and `KbqCodeBlockHighlight.file` turned from a write-only setter into a required
|
|
28
|
+
* input. Both are reported per file, because a summary line names no call site.
|
|
29
|
+
*/
|
|
30
|
+
const REPORTED_MEMBERS = ['maxHeight', 'file'];
|
|
31
|
+
/** Signal-API methods reachable on a signal; a read followed by one is already migrated. */
|
|
32
|
+
const SIGNAL_API_METHODS = new Set(['set', 'update', 'asReadonly', 'subscribe']);
|
|
33
|
+
/** `exportAs` name a template reference has to carry to be the code block rather than some other directive. */
|
|
34
|
+
const CODE_BLOCK_EXPORT_AS = 'kbqCodeBlock';
|
|
35
|
+
/** TypeScript type annotation that marks a receiver as a code block. */
|
|
36
|
+
const CODE_BLOCK_TYPE = 'KbqCodeBlock';
|
|
37
|
+
/** Type annotation that marks a receiver as the highlight directive, whose `file` input also changed. */
|
|
38
|
+
const HIGHLIGHT_TYPE = 'KbqCodeBlockHighlight';
|
|
39
|
+
/** Element selector whose template reference variables (`#ref`) point at a code block. */
|
|
40
|
+
const CODE_BLOCK_ELEMENT = 'kbq-code-block';
|
|
41
|
+
/** Import specifier that marks a file as a code block consumer. */
|
|
42
|
+
const CODE_BLOCK_PACKAGE = '@koobiq/components/code-block';
|
|
43
|
+
/**
|
|
44
|
+
* The backing inputs behind the six signals. Public, because a `protected` input cannot be bound from a
|
|
45
|
+
* consumer's template, but they are `@docs-private` plumbing: read the signal that carries the attribute's
|
|
46
|
+
* own name instead. The removed `canLoadInput` and `codeFilesInput` are reported by `v21-upgrade`.
|
|
47
|
+
*/
|
|
48
|
+
const PLUMBING_MEMBERS = [
|
|
49
|
+
'softWrapInput',
|
|
50
|
+
'viewAllInput',
|
|
51
|
+
'canDownloadInput',
|
|
52
|
+
'filesInput',
|
|
53
|
+
'activeFileIndexInput',
|
|
54
|
+
'hideTabsInput'
|
|
55
|
+
];
|
|
56
|
+
/** Reported for a write the rewrite cannot translate on its own. */
|
|
57
|
+
const writeMessage = (members) => `These writes were left untouched: ${[...members].join(', ')}. A plain \`x.softWrap = value\` is ` +
|
|
58
|
+
'rewritten to `x.softWrap.set(value)`, but a compound assignment (`||=`, `+=`) or an increment would ' +
|
|
59
|
+
'need the receiver spelled twice.';
|
|
60
|
+
const reportedMessage = (members) => `These KbqCodeBlock members changed shape without changing name: ${[...members].join(', ')}. ` +
|
|
61
|
+
'`maxHeight` reports `number | undefined` instead of `number` and never NaN, so decide per call site ' +
|
|
62
|
+
'between `?? 0` and handling the unset state. `KbqCodeBlockHighlight.file` was a write-only setter ' +
|
|
63
|
+
'and is a required input now: bind `[file]`, and read it as `file()`.';
|
|
64
|
+
const plumbingMessage = (members) => `These KbqCodeBlock members are backing inputs: ${[...members].join(', ')}. They exist to carry the ` +
|
|
65
|
+
'attribute and its transform, they are read-only, and they report what was bound rather than what the ' +
|
|
66
|
+
'component currently holds. Bind the attribute they alias - `softWrap`, `viewAll`, `canDownload`, ' +
|
|
67
|
+
"`files`, `activeFileIndex`, `hideTabs` - and read the signal that carries the attribute's own name.";
|
|
68
|
+
/**
|
|
69
|
+
* Reported for a read through a signal query, which is a signal holding the component: the read needs two
|
|
70
|
+
* calls rather than one. Emitted from the AST pass rather than a regex, so it follows the same receiver
|
|
71
|
+
* resolution as the rewrite.
|
|
72
|
+
*/
|
|
73
|
+
const signalQueryMessage = (member, required) => `A signal query holds the component behind a call of its own, so reading \`${member}\` through it ` +
|
|
74
|
+
`needs two calls: \`this.codeBlock()${required ? '' : '?'}.${member}()\`.` +
|
|
75
|
+
(required ? '' : ' The query is optional, so keep the `?.`.') +
|
|
76
|
+
' Those reads are left untouched - migrate them by hand.';
|
|
77
|
+
/** Reported when a template renders the code block but cannot be parsed, so nothing in it was inspected. */
|
|
78
|
+
const UNPARSEABLE_TEMPLATE_MESSAGE = 'This template renders <kbq-code-block> but could not be parsed, so it was left untouched. Migrate ' +
|
|
79
|
+
'reads through its template reference variables by hand. If every template is reported this way, ' +
|
|
80
|
+
'`@angular/compiler` could not be loaded from this install.';
|
|
81
|
+
/**
|
|
82
|
+
* Reported when a file names `KbqCodeBlock` in a type position the receiver pass cannot scope to a single
|
|
83
|
+
* identifier - a union, an array, a `QueryList<…>`, a cast, a return type - or reads a member in a shape
|
|
84
|
+
* the access pass cannot reach.
|
|
85
|
+
*/
|
|
86
|
+
const UNRESOLVED_RECEIVER_MESSAGE = 'KbqCodeBlock is used here in a way this migration cannot resolve to a single receiver, so any signal ' +
|
|
87
|
+
'read through it was left untouched. Check these lines by hand:';
|
|
88
|
+
/** Printed once per project, after the per-file reports. */
|
|
89
|
+
const SUMMARY = [
|
|
90
|
+
' `maxHeight` reports `number | undefined` instead of `number`, and a value that is not cleanly ' +
|
|
91
|
+
"numeric - a valueless `maxHeight` attribute, `'200px'` - reports `undefined` rather than NaN. " +
|
|
92
|
+
'It was declared non-nullable over an `undefined!` default, so a block with no binding always ' +
|
|
93
|
+
'handed back `undefined` behind a `number` type.',
|
|
94
|
+
' `KbqCodeBlockHighlight.file` was a write-only required input that started highlighting as a side ' +
|
|
95
|
+
'effect. It is a required signal input driven by an effect now, so it can finally be read - and a ' +
|
|
96
|
+
'programmatic write no longer compiles.',
|
|
97
|
+
' Reading `hideTabs` reports what was bound. What the header actually does is `tabsHidden()`, which ' +
|
|
98
|
+
'adds the rule that a single file with no filename hides the bar; the component used to write that ' +
|
|
99
|
+
'rule into `hideTabs` itself, which latched the bar off for good.',
|
|
100
|
+
' An `activeFileIndex` outside `files` renders the first file instead of the indexed one, and an ' +
|
|
101
|
+
'empty `files` renders no code at all. Both used to reach `files[activeFileIndex]` and throw on ' +
|
|
102
|
+
'the undefined result. The index itself is left alone: resetting it wrote back into ' +
|
|
103
|
+
'`[(activeFileIndex)]` while the parent was still updating.'
|
|
104
|
+
];
|
|
105
|
+
|
|
106
|
+
exports.CODE_BLOCK_ELEMENT = CODE_BLOCK_ELEMENT;
|
|
107
|
+
exports.CODE_BLOCK_EXPORT_AS = CODE_BLOCK_EXPORT_AS;
|
|
108
|
+
exports.CODE_BLOCK_PACKAGE = CODE_BLOCK_PACKAGE;
|
|
109
|
+
exports.CODE_BLOCK_TYPE = CODE_BLOCK_TYPE;
|
|
110
|
+
exports.HIGHLIGHT_TYPE = HIGHLIGHT_TYPE;
|
|
111
|
+
exports.PLUMBING_MEMBERS = PLUMBING_MEMBERS;
|
|
112
|
+
exports.REPORTED_MEMBERS = REPORTED_MEMBERS;
|
|
113
|
+
exports.SIGNAL_API_METHODS = SIGNAL_API_METHODS;
|
|
114
|
+
exports.SIGNAL_MEMBERS = SIGNAL_MEMBERS;
|
|
115
|
+
exports.SUMMARY = SUMMARY;
|
|
116
|
+
exports.UNPARSEABLE_TEMPLATE_MESSAGE = UNPARSEABLE_TEMPLATE_MESSAGE;
|
|
117
|
+
exports.UNRESOLVED_RECEIVER_MESSAGE = UNRESOLVED_RECEIVER_MESSAGE;
|
|
118
|
+
exports.plumbingMessage = plumbingMessage;
|
|
119
|
+
exports.reportedMessage = reportedMessage;
|
|
120
|
+
exports.signalQueryMessage = signalQueryMessage;
|
|
121
|
+
exports.writeMessage = writeMessage;
|