@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.
Files changed (771) hide show
  1. package/accordion/accordion-trigger.scss +3 -10
  2. package/accordion/accordion.scss +4 -6
  3. package/actions-panel/actions-panel-container.scss +45 -1
  4. package/alert/alert.component.scss +3 -2
  5. package/app-switcher/_app-switcher-theme.scss +0 -4
  6. package/app-switcher/app-switcher-dropdown-app.scss +3 -2
  7. package/app-switcher/app-switcher-dropdown-site.scss +2 -1
  8. package/app-switcher/{kbq-app-switcher-list-item.scss → app-switcher-list-item.scss} +18 -4
  9. package/app-switcher/app-switcher-tokens.scss +15 -0
  10. package/app-switcher/app-switcher.scss +14 -4
  11. package/autocomplete/autocomplete.scss +7 -6
  12. package/badge/badge.component.scss +5 -8
  13. package/breadcrumbs/breadcrumbs.scss +25 -10
  14. package/button/_button-base.scss +30 -7
  15. package/button/_button-theme.scss +16 -0
  16. package/button/button-group.scss +7 -0
  17. package/button/button-tokens.scss +0 -2
  18. package/button/button.scss +34 -2
  19. package/button-toggle/_button-toggle-theme.scss +7 -2
  20. package/button-toggle/button-toggle.scss +65 -15
  21. package/checkbox/_checkbox-theme.scss +4 -3
  22. package/checkbox/checkbox.scss +3 -6
  23. package/clamped-text/clamped-text.scss +6 -2
  24. package/code-block/code-block-tokens.scss +0 -224
  25. package/code-block/code-block.scss +20 -9
  26. package/content-panel/content-panel-aside.scss +3 -2
  27. package/content-panel/content-panel-container.scss +37 -0
  28. package/content-panel/content-panel.scss +4 -3
  29. package/core/highlight/_highlight-theme.scss +3 -1
  30. package/core/option/action-container.scss +2 -2
  31. package/core/option/action.scss +2 -1
  32. package/core/option/option.scss +2 -1
  33. package/core/pop-up/_pop-up.scss +0 -37
  34. package/core/selection/pseudo-checkbox/pseudo-checkbox.scss +5 -10
  35. package/core/styles/_core.scss +3 -0
  36. package/core/styles/_koobiq-theme.scss +5 -6
  37. package/core/styles/common/_animation.scss +44 -16
  38. package/core/styles/common/_groups-mixins.scss +21 -19
  39. package/core/styles/common/_groups.scss +4 -32
  40. package/core/styles/common/_index.scss +0 -2
  41. package/core/styles/common/_link.scss +117 -0
  42. package/core/styles/common/_list.scss +0 -26
  43. package/core/styles/common/_overlay.scss +8 -10
  44. package/core/styles/common/_rtl.scss +0 -14
  45. package/core/styles/common/_select.scss +33 -15
  46. package/core/styles/common/_squircle.scss +63 -0
  47. package/core/styles/common/_tokens.scss +0 -11
  48. package/core/styles/common/_vendor-prefixes.scss +0 -20
  49. package/core/styles/functions/_timing.scss +0 -22
  50. package/core/styles/theming/_scrollbar-theme.scss +6 -1
  51. package/core/styles/theming/_theming.scss +13 -65
  52. package/core/styles/typography/_index.scss +0 -1
  53. package/core/styles/typography/_typography.scss +0 -143
  54. package/core/styles/visual/_body.scss +1 -6
  55. package/core/styles/visual/_layout.scss +0 -12
  56. package/datepicker/calendar-body.scss +3 -1
  57. package/datepicker/calendar-header.scss +0 -1
  58. package/datepicker/datepicker-content.scss +33 -1
  59. package/datepicker/datepicker-toggle.scss +0 -38
  60. package/dl/dl-tokens.scss +10 -0
  61. package/dl/dl.scss +113 -13
  62. package/dropdown/_dropdown-theme.scss +4 -16
  63. package/dropdown/dropdown-item.scss +4 -10
  64. package/dropdown/dropdown.scss +2 -1
  65. package/empty-state/_empty-state-theme.scss +10 -4
  66. package/empty-state/empty-state-tokens.scss +4 -4
  67. package/empty-state/empty-state.scss +4 -0
  68. package/fesm2022/koobiq-components-accordion.mjs +347 -229
  69. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  70. package/fesm2022/koobiq-components-actions-panel.mjs +302 -187
  71. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  72. package/fesm2022/koobiq-components-alert.mjs +39 -39
  73. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  74. package/fesm2022/koobiq-components-app-switcher.mjs +677 -367
  75. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -1
  76. package/fesm2022/koobiq-components-autocomplete.mjs +620 -253
  77. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  78. package/fesm2022/koobiq-components-badge.mjs +46 -48
  79. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  80. package/fesm2022/koobiq-components-breadcrumbs.mjs +221 -169
  81. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  82. package/fesm2022/koobiq-components-button-toggle.mjs +565 -196
  83. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  84. package/fesm2022/koobiq-components-button.mjs +332 -116
  85. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  86. package/fesm2022/koobiq-components-checkbox.mjs +172 -132
  87. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  88. package/fesm2022/koobiq-components-clamped-text.mjs +165 -158
  89. package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -1
  90. package/fesm2022/koobiq-components-code-block.mjs +755 -601
  91. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  92. package/fesm2022/koobiq-components-content-panel.mjs +260 -143
  93. package/fesm2022/koobiq-components-content-panel.mjs.map +1 -1
  94. package/fesm2022/koobiq-components-core.mjs +4342 -1595
  95. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  96. package/fesm2022/koobiq-components-datepicker.mjs +1713 -1606
  97. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  98. package/fesm2022/koobiq-components-divider.mjs +73 -36
  99. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  100. package/fesm2022/koobiq-components-dl.mjs +447 -89
  101. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  102. package/fesm2022/koobiq-components-dropdown.mjs +703 -599
  103. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-dynamic-translation.mjs +20 -20
  105. package/fesm2022/koobiq-components-dynamic-translation.mjs.map +1 -1
  106. package/fesm2022/koobiq-components-ellipsis-center.mjs +46 -31
  107. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  108. package/fesm2022/koobiq-components-empty-state.mjs +116 -60
  109. package/fesm2022/koobiq-components-empty-state.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-file-upload.mjs +550 -290
  111. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  112. package/fesm2022/koobiq-components-filter-bar.mjs +2810 -2538
  113. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-flag.mjs +79 -24
  115. package/fesm2022/koobiq-components-flag.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-form-field.mjs +389 -525
  117. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-icon.mjs +366 -136
  119. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  120. package/fesm2022/koobiq-components-inline-edit.mjs +429 -212
  121. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
  122. package/fesm2022/koobiq-components-input.mjs +601 -459
  123. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  124. package/fesm2022/koobiq-components-link-deprecated.mjs +196 -0
  125. package/fesm2022/koobiq-components-link-deprecated.mjs.map +1 -0
  126. package/fesm2022/koobiq-components-link.mjs +328 -125
  127. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  128. package/fesm2022/koobiq-components-list.mjs +583 -433
  129. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  130. package/fesm2022/koobiq-components-loader-overlay.mjs +167 -68
  131. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  132. package/fesm2022/koobiq-components-markdown.mjs +55 -78
  133. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  134. package/fesm2022/koobiq-components-modal.mjs +853 -475
  135. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  136. package/fesm2022/koobiq-components-navbar.mjs +895 -556
  137. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  138. package/fesm2022/koobiq-components-notification-center.mjs +680 -310
  139. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -1
  140. package/fesm2022/koobiq-components-overflow-items.mjs +46 -64
  141. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  142. package/fesm2022/koobiq-components-popover.mjs +684 -285
  143. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  144. package/fesm2022/koobiq-components-progress-bar.mjs +87 -33
  145. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  146. package/fesm2022/koobiq-components-progress-spinner.mjs +52 -43
  147. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  148. package/fesm2022/koobiq-components-radio.mjs +450 -231
  149. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  150. package/fesm2022/koobiq-components-resizer.mjs +127 -21
  151. package/fesm2022/koobiq-components-resizer.mjs.map +1 -1
  152. package/fesm2022/koobiq-components-scrollbar-deprecated.mjs +299 -0
  153. package/fesm2022/koobiq-components-scrollbar-deprecated.mjs.map +1 -0
  154. package/fesm2022/koobiq-components-scrollbar.mjs +745 -222
  155. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  156. package/fesm2022/koobiq-components-search-expandable.mjs +288 -126
  157. package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -1
  158. package/fesm2022/koobiq-components-select.mjs +883 -693
  159. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  160. package/fesm2022/koobiq-components-sidebar.mjs +207 -88
  161. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  162. package/fesm2022/koobiq-components-sidepanel.mjs +689 -296
  163. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  164. package/fesm2022/koobiq-components-skeleton.mjs +815 -41
  165. package/fesm2022/koobiq-components-skeleton.mjs.map +1 -1
  166. package/fesm2022/koobiq-components-split-button.mjs +109 -88
  167. package/fesm2022/koobiq-components-split-button.mjs.map +1 -1
  168. package/fesm2022/koobiq-components-splitter-deprecated.mjs +591 -0
  169. package/fesm2022/koobiq-components-splitter-deprecated.mjs.map +1 -0
  170. package/fesm2022/koobiq-components-splitter.mjs +890 -501
  171. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  172. package/fesm2022/koobiq-components-table.mjs +63 -49
  173. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  174. package/fesm2022/koobiq-components-tabs.mjs +1062 -603
  175. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  176. package/fesm2022/koobiq-components-tags.mjs +886 -733
  177. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  178. package/fesm2022/koobiq-components-textarea.mjs +213 -185
  179. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  180. package/fesm2022/koobiq-components-time-range.mjs +299 -147
  181. package/fesm2022/koobiq-components-time-range.mjs.map +1 -1
  182. package/fesm2022/koobiq-components-timepicker.mjs +233 -245
  183. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  184. package/fesm2022/koobiq-components-timezone.mjs +344 -142
  185. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  186. package/fesm2022/koobiq-components-title.mjs +229 -145
  187. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  188. package/fesm2022/koobiq-components-toast.mjs +463 -143
  189. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  190. package/fesm2022/koobiq-components-toggle.mjs +177 -130
  191. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  192. package/fesm2022/koobiq-components-tooltip.mjs +657 -214
  193. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  194. package/fesm2022/koobiq-components-top-bar.mjs +61 -32
  195. package/fesm2022/koobiq-components-top-bar.mjs.map +1 -1
  196. package/fesm2022/koobiq-components-tree-select.mjs +719 -488
  197. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  198. package/fesm2022/koobiq-components-tree.mjs +1506 -558
  199. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  200. package/fesm2022/koobiq-components-username.mjs +290 -135
  201. package/fesm2022/koobiq-components-username.mjs.map +1 -1
  202. package/file-upload/dropzone.scss +31 -3
  203. package/file-upload/file-upload-tokens.scss +2 -22
  204. package/file-upload/file-upload.scss +6 -0
  205. package/file-upload/multiple-file-upload.component.scss +14 -12
  206. package/file-upload/single-file-upload.component.scss +3 -2
  207. package/filter-bar/filters.scss +7 -0
  208. package/filter-bar/pipes/base-pipe.scss +3 -3
  209. package/filter-bar/pipes/pipe-date.scss +8 -1
  210. package/flag/flag-tokens.scss +22 -0
  211. package/flag/flag.scss +34 -21
  212. package/form-field/{_fiedset-theme.scss → _fieldset-theme.scss} +1 -5
  213. package/form-field/_form-field-theme.scss +4 -9
  214. package/form-field/cleaner.scss +3 -1
  215. package/form-field/fieldset.scss +3 -4
  216. package/form-field/form-field.scss +26 -21
  217. package/form-field/password-toggle.scss +3 -1
  218. package/icon/_icon-button-theme.scss +7 -0
  219. package/icon/_icon-theme.scss +10 -7
  220. package/icon/icon-button.scss +0 -2
  221. package/icon/icon-tokens.scss +12 -9
  222. package/inline-edit/inline-edit.scss +40 -54
  223. package/input/input.scss +4 -0
  224. package/link/{_link-theme.scss → deprecated/_link-theme.scss} +11 -6
  225. package/link/deprecated/link-tokens.scss +27 -0
  226. package/link/link-tokens.scss +6 -25
  227. package/link/link.scss +137 -0
  228. package/list/list.scss +3 -2
  229. package/loader-overlay/_loader-overlay-theme.scss +19 -10
  230. package/loader-overlay/loader-overlay-tokens.scss +0 -2
  231. package/loader-overlay/loader-overlay.scss +7 -1
  232. package/markdown/_markdown-theme.scss +16 -0
  233. package/markdown/markdown-tokens.scss +5 -0
  234. package/markdown/markdown.scss +2 -1
  235. package/modal/_modal-animation.scss +23 -14
  236. package/modal/modal-tokens.scss +2 -1
  237. package/modal/modal.scss +35 -31
  238. package/navbar/_navbar-item_horizontal.scss +8 -6
  239. package/navbar/_navbar-item_vertical.scss +18 -6
  240. package/navbar/_navbar-theme.scss +9 -1
  241. package/navbar/navbar-brand.scss +8 -6
  242. package/navbar/navbar-divider.scss +1 -1
  243. package/navbar/navbar-item.scss +8 -9
  244. package/navbar/navbar-toggle.scss +3 -3
  245. package/navbar/navbar-tokens.scss +14 -0
  246. package/navbar/navbar.scss +1 -2
  247. package/navbar/vertical-navbar.scss +2 -2
  248. package/notification-center/_notification-center-theme.scss +11 -6
  249. package/notification-center/notification-center-tokens.scss +33 -0
  250. package/notification-center/notification-center.scss +58 -20
  251. package/notification-center/notification-item.scss +15 -6
  252. package/package.json +112 -81
  253. package/popover/popover-tokens.scss +0 -2
  254. package/popover/popover.scss +41 -19
  255. package/prebuilt-themes/theme.css +1 -1
  256. package/progress-bar/_progress-bar-theme.scss +20 -3
  257. package/progress-bar/progress-bar-tokens.scss +3 -0
  258. package/progress-bar/progress-bar.scss +36 -8
  259. package/progress-spinner/progress-spinner.scss +4 -3
  260. package/radio/_radio-theme.scss +21 -4
  261. package/radio/radio-tokens.scss +7 -3
  262. package/radio/radio.scss +55 -8
  263. package/schematics/collection.json +399 -7
  264. package/schematics/migrations/accordion-state-saving-default/README.md +60 -0
  265. package/schematics/migrations/accordion-state-saving-default/data.js +75 -0
  266. package/schematics/migrations/accordion-state-saving-default/index.js +60 -0
  267. package/schematics/migrations/accordion-state-saving-default/schema.json +15 -0
  268. package/schematics/migrations/actions-panel-overlay-container/README.md +35 -0
  269. package/schematics/migrations/actions-panel-overlay-container/data.js +47 -0
  270. package/schematics/migrations/actions-panel-overlay-container/index.js +54 -0
  271. package/schematics/migrations/actions-panel-overlay-container/schema.json +15 -0
  272. package/schematics/migrations/alert-signals/README.md +13 -7
  273. package/schematics/migrations/alert-signals/data.js +3 -0
  274. package/schematics/migrations/alert-signals/index.js +70 -203
  275. package/schematics/migrations/angular-animations-removal/README.md +46 -0
  276. package/schematics/migrations/angular-animations-removal/data.js +150 -0
  277. package/schematics/migrations/angular-animations-removal/index.js +20 -0
  278. package/schematics/migrations/angular-animations-removal/schema.json +15 -0
  279. package/schematics/migrations/app-switcher-signals/README.md +88 -0
  280. package/schematics/migrations/app-switcher-signals/data.js +136 -0
  281. package/schematics/migrations/app-switcher-signals/index.js +365 -0
  282. package/schematics/migrations/app-switcher-signals/schema.json +20 -0
  283. package/schematics/migrations/autocomplete-panel-width-auto/README.md +2 -2
  284. package/schematics/migrations/autocomplete-panel-width-auto/index.js +1 -1
  285. package/schematics/migrations/autocomplete-signals/README.md +92 -0
  286. package/schematics/migrations/autocomplete-signals/data.js +149 -0
  287. package/schematics/migrations/autocomplete-signals/index.js +706 -0
  288. package/schematics/migrations/autocomplete-signals/schema.json +20 -0
  289. package/schematics/migrations/badge-signals/README.md +77 -0
  290. package/schematics/migrations/badge-signals/data.js +109 -0
  291. package/schematics/migrations/badge-signals/index.js +693 -0
  292. package/schematics/migrations/badge-signals/schema.json +20 -0
  293. package/schematics/migrations/button-state-and-styles/README.md +129 -0
  294. package/schematics/migrations/button-state-and-styles/data.js +136 -0
  295. package/schematics/migrations/button-state-and-styles/index.js +220 -0
  296. package/schematics/migrations/button-state-and-styles/schema.json +20 -0
  297. package/schematics/migrations/button-supported-colors/README.md +73 -0
  298. package/schematics/migrations/button-supported-colors/data.js +106 -0
  299. package/schematics/migrations/button-supported-colors/index.js +260 -0
  300. package/schematics/migrations/button-supported-colors/schema.json +20 -0
  301. package/schematics/migrations/button-toggle-signals-and-aria/README.md +137 -0
  302. package/schematics/migrations/button-toggle-signals-and-aria/data.js +200 -0
  303. package/schematics/migrations/button-toggle-signals-and-aria/index.js +496 -0
  304. package/schematics/migrations/button-toggle-signals-and-aria/schema.json +20 -0
  305. package/schematics/migrations/button-truncation/README.md +110 -0
  306. package/schematics/migrations/button-truncation/data.js +88 -0
  307. package/schematics/migrations/button-truncation/index.js +269 -0
  308. package/schematics/migrations/button-truncation/schema.json +20 -0
  309. package/schematics/migrations/checkbox-signals/README.md +76 -0
  310. package/schematics/migrations/checkbox-signals/data.js +114 -0
  311. package/schematics/migrations/checkbox-signals/index.js +634 -0
  312. package/schematics/migrations/checkbox-signals/schema.json +20 -0
  313. package/schematics/migrations/clamped-text-disclosure/README.md +62 -0
  314. package/schematics/migrations/clamped-text-disclosure/data.js +101 -0
  315. package/schematics/migrations/clamped-text-disclosure/index.js +59 -0
  316. package/schematics/migrations/clamped-text-disclosure/schema.json +15 -0
  317. package/schematics/migrations/code-block-signals/README.md +84 -0
  318. package/schematics/migrations/code-block-signals/data.js +121 -0
  319. package/schematics/migrations/code-block-signals/index.js +700 -0
  320. package/schematics/migrations/code-block-signals/schema.json +20 -0
  321. package/schematics/migrations/color-signals/README.md +46 -0
  322. package/schematics/migrations/color-signals/data.js +131 -0
  323. package/schematics/migrations/color-signals/index.js +19 -0
  324. package/schematics/migrations/color-signals/schema.json +20 -0
  325. package/schematics/migrations/core-mixins-removal/README.md +20 -0
  326. package/schematics/migrations/core-mixins-removal/data.js +27 -0
  327. package/schematics/migrations/core-mixins-removal/index.js +17 -0
  328. package/schematics/migrations/core-mixins-removal/schema.json +15 -0
  329. package/schematics/migrations/css-selectors/README.md +2 -2
  330. package/schematics/migrations/css-selectors/index.js +1 -1
  331. package/schematics/migrations/datepicker-signals/README.md +24 -0
  332. package/schematics/migrations/datepicker-signals/data.js +49 -0
  333. package/schematics/migrations/datepicker-signals/index.js +17 -0
  334. package/schematics/migrations/datepicker-signals/schema.json +15 -0
  335. package/schematics/migrations/deprecated-icons/README.md +2 -2
  336. package/schematics/migrations/deprecated-icons/index.js +1 -1
  337. package/schematics/migrations/design-tokens-v4/README.md +75 -0
  338. package/schematics/migrations/design-tokens-v4/index.js +59 -0
  339. package/schematics/migrations/design-tokens-v4/schema.json +15 -0
  340. package/schematics/migrations/divider-signals-and-aria/README.md +47 -0
  341. package/schematics/migrations/divider-signals-and-aria/data.js +62 -0
  342. package/schematics/migrations/divider-signals-and-aria/index.js +211 -0
  343. package/schematics/migrations/divider-signals-and-aria/schema.json +15 -0
  344. package/schematics/migrations/dl-attribute-coercion/README.md +59 -0
  345. package/schematics/migrations/dl-attribute-coercion/data.js +85 -0
  346. package/schematics/migrations/dl-attribute-coercion/index.js +161 -0
  347. package/schematics/migrations/dl-attribute-coercion/schema.json +15 -0
  348. package/schematics/migrations/dl-standalone-names/README.md +49 -0
  349. package/schematics/migrations/dl-standalone-names/data.js +44 -0
  350. package/schematics/migrations/dl-standalone-names/index.js +321 -0
  351. package/schematics/migrations/dl-standalone-names/schema.json +20 -0
  352. package/schematics/migrations/dropdown-demote-overlay/README.md +137 -0
  353. package/schematics/migrations/dropdown-demote-overlay/data.js +84 -0
  354. package/schematics/migrations/dropdown-demote-overlay/index.js +288 -0
  355. package/schematics/migrations/dropdown-demote-overlay/schema.json +20 -0
  356. package/schematics/migrations/dropdown-signals/README.md +83 -0
  357. package/schematics/migrations/dropdown-signals/data.js +152 -0
  358. package/schematics/migrations/dropdown-signals/index.js +19 -0
  359. package/schematics/migrations/dropdown-signals/schema.json +20 -0
  360. package/schematics/migrations/empty-state-error-color/README.md +84 -0
  361. package/schematics/migrations/empty-state-error-color/data.js +85 -0
  362. package/schematics/migrations/empty-state-error-color/index.js +71 -0
  363. package/schematics/migrations/empty-state-error-color/schema.json +15 -0
  364. package/schematics/migrations/empty-state-size-attr/README.md +2 -2
  365. package/schematics/migrations/empty-state-size-attr/index.js +1 -1
  366. package/schematics/migrations/file-upload-cva-and-primitives/README.md +70 -0
  367. package/schematics/migrations/file-upload-cva-and-primitives/data.js +97 -0
  368. package/schematics/migrations/file-upload-cva-and-primitives/index.js +60 -0
  369. package/schematics/migrations/file-upload-cva-and-primitives/schema.json +15 -0
  370. package/schematics/migrations/file-upload-deprecated-outputs/README.md +90 -0
  371. package/schematics/migrations/file-upload-deprecated-outputs/data.js +20 -0
  372. package/schematics/migrations/file-upload-deprecated-outputs/index.js +70 -0
  373. package/schematics/migrations/file-upload-deprecated-outputs/schema.json +20 -0
  374. package/schematics/migrations/filter-bar-rename-action/README.md +183 -0
  375. package/schematics/migrations/filter-bar-rename-action/data.js +151 -0
  376. package/schematics/migrations/filter-bar-rename-action/index.js +177 -0
  377. package/schematics/migrations/filter-bar-rename-action/schema.json +20 -0
  378. package/schematics/migrations/filter-bar-signals/README.md +27 -16
  379. package/schematics/migrations/filter-bar-signals/data.js +1 -2
  380. package/schematics/migrations/filter-bar-signals/index.js +100 -195
  381. package/schematics/migrations/filter-bar-state-saving-default/README.md +53 -0
  382. package/schematics/migrations/filter-bar-state-saving-default/data.js +87 -0
  383. package/schematics/migrations/filter-bar-state-saving-default/index.js +61 -0
  384. package/schematics/migrations/filter-bar-state-saving-default/schema.json +15 -0
  385. package/schematics/migrations/flag-inner-html/README.md +67 -0
  386. package/schematics/migrations/flag-inner-html/data.js +58 -0
  387. package/schematics/migrations/flag-inner-html/index.js +61 -0
  388. package/schematics/migrations/flag-inner-html/schema.json +15 -0
  389. package/schematics/migrations/form-field-signals/README.md +125 -0
  390. package/schematics/migrations/form-field-signals/data.js +288 -0
  391. package/schematics/migrations/form-field-signals/index.js +382 -0
  392. package/schematics/migrations/form-field-signals/schema.json +20 -0
  393. package/schematics/migrations/icon-semantics-and-api/README.md +65 -0
  394. package/schematics/migrations/icon-semantics-and-api/data.js +97 -0
  395. package/schematics/migrations/icon-semantics-and-api/index.js +64 -0
  396. package/schematics/migrations/icon-semantics-and-api/schema.json +15 -0
  397. package/schematics/migrations/icons-replacement/README.md +5 -5
  398. package/schematics/migrations/icons-replacement/index.js +1 -1
  399. package/schematics/migrations/inline-edit-a11y-and-types/README.md +82 -0
  400. package/schematics/migrations/inline-edit-a11y-and-types/data.js +117 -0
  401. package/schematics/migrations/inline-edit-a11y-and-types/index.js +97 -0
  402. package/schematics/migrations/inline-edit-a11y-and-types/schema.json +20 -0
  403. package/schematics/migrations/input-number-surface/README.md +140 -0
  404. package/schematics/migrations/input-number-surface/data.js +135 -0
  405. package/schematics/migrations/input-number-surface/index.js +292 -0
  406. package/schematics/migrations/input-number-surface/schema.json +20 -0
  407. package/schematics/migrations/input-signals/README.md +20 -0
  408. package/schematics/migrations/input-signals/data.js +30 -0
  409. package/schematics/migrations/input-signals/index.js +17 -0
  410. package/schematics/migrations/input-signals/schema.json +15 -0
  411. package/schematics/migrations/link-deprecated-path/README.md +144 -0
  412. package/schematics/migrations/link-deprecated-path/index.js +19 -0
  413. package/schematics/migrations/link-deprecated-path/schema.json +20 -0
  414. package/schematics/migrations/link-signals/README.md +71 -0
  415. package/schematics/migrations/link-signals/data.js +116 -0
  416. package/schematics/migrations/link-signals/index.js +415 -0
  417. package/schematics/migrations/link-signals/schema.json +20 -0
  418. package/schematics/migrations/list-signals/README.md +22 -0
  419. package/schematics/migrations/list-signals/data.js +35 -0
  420. package/schematics/migrations/list-signals/index.js +17 -0
  421. package/schematics/migrations/list-signals/schema.json +15 -0
  422. package/schematics/migrations/list-tree-multiple-input/README.md +105 -0
  423. package/schematics/migrations/list-tree-multiple-input/data.js +74 -0
  424. package/schematics/migrations/list-tree-multiple-input/index.js +221 -0
  425. package/schematics/migrations/list-tree-multiple-input/schema.json +20 -0
  426. package/schematics/migrations/loader-overlay-signals/README.md +62 -0
  427. package/schematics/migrations/loader-overlay-signals/data.js +101 -0
  428. package/schematics/migrations/loader-overlay-signals/index.js +697 -0
  429. package/schematics/migrations/loader-overlay-signals/schema.json +20 -0
  430. package/schematics/migrations/loader-overlay-size-attr/README.md +2 -2
  431. package/schematics/migrations/loader-overlay-size-attr/index.js +1 -1
  432. package/schematics/migrations/locale-configuration-providers/README.md +163 -0
  433. package/schematics/migrations/locale-configuration-providers/data.js +257 -0
  434. package/schematics/migrations/locale-configuration-providers/index.js +294 -0
  435. package/schematics/migrations/locale-configuration-providers/schema.json +20 -0
  436. package/schematics/migrations/mandatory-peer-dependencies/README.md +70 -0
  437. package/schematics/migrations/mandatory-peer-dependencies/index.js +42 -0
  438. package/schematics/migrations/mandatory-peer-dependencies/schema.json +15 -0
  439. package/schematics/migrations/markdown-signals/README.md +58 -0
  440. package/schematics/migrations/markdown-signals/data.js +79 -0
  441. package/schematics/migrations/markdown-signals/index.js +639 -0
  442. package/schematics/migrations/markdown-signals/schema.json +20 -0
  443. package/schematics/migrations/modal-dialog-semantics/README.md +106 -0
  444. package/schematics/migrations/modal-dialog-semantics/data.js +110 -0
  445. package/schematics/migrations/modal-dialog-semantics/index.js +58 -0
  446. package/schematics/migrations/modal-dialog-semantics/schema.json +15 -0
  447. package/schematics/migrations/modal-signals/README.md +88 -0
  448. package/schematics/migrations/modal-signals/data.js +132 -0
  449. package/schematics/migrations/modal-signals/index.js +19 -0
  450. package/schematics/migrations/modal-signals/schema.json +20 -0
  451. package/schematics/migrations/navbar-signals-and-aria/README.md +111 -0
  452. package/schematics/migrations/navbar-signals-and-aria/data.js +198 -0
  453. package/schematics/migrations/navbar-signals-and-aria/index.js +568 -0
  454. package/schematics/migrations/navbar-signals-and-aria/schema.json +20 -0
  455. package/schematics/migrations/new-icons-pack/README.md +10 -10
  456. package/schematics/migrations/new-icons-pack/index.js +1 -1
  457. package/schematics/migrations/notification-center-signals/README.md +67 -0
  458. package/schematics/migrations/notification-center-signals/data.js +66 -0
  459. package/schematics/migrations/notification-center-signals/index.js +61 -0
  460. package/schematics/migrations/notification-center-signals/schema.json +15 -0
  461. package/schematics/migrations/option-signals/README.md +37 -0
  462. package/schematics/migrations/option-signals/data.js +86 -0
  463. package/schematics/migrations/option-signals/index.js +19 -0
  464. package/schematics/migrations/option-signals/schema.json +20 -0
  465. package/schematics/migrations/popover-leave-delay/README.md +51 -0
  466. package/schematics/migrations/popover-leave-delay/data.js +61 -0
  467. package/schematics/migrations/popover-leave-delay/index.js +54 -0
  468. package/schematics/migrations/popover-leave-delay/schema.json +15 -0
  469. package/schematics/migrations/progress-bar-percentage-and-aria/README.md +54 -0
  470. package/schematics/migrations/progress-bar-percentage-and-aria/data.js +76 -0
  471. package/schematics/migrations/progress-bar-percentage-and-aria/index.js +58 -0
  472. package/schematics/migrations/progress-bar-percentage-and-aria/schema.json +15 -0
  473. package/schematics/migrations/progress-spinner-signals/README.md +72 -0
  474. package/schematics/migrations/progress-spinner-signals/data.js +83 -0
  475. package/schematics/migrations/progress-spinner-signals/index.js +694 -0
  476. package/schematics/migrations/progress-spinner-signals/schema.json +20 -0
  477. package/schematics/migrations/query-list-signals/README.md +32 -0
  478. package/schematics/migrations/query-list-signals/data.js +70 -0
  479. package/schematics/migrations/query-list-signals/index.js +17 -0
  480. package/schematics/migrations/query-list-signals/schema.json +15 -0
  481. package/schematics/migrations/radio-signals-and-aria/README.md +82 -0
  482. package/schematics/migrations/radio-signals-and-aria/data.js +163 -0
  483. package/schematics/migrations/radio-signals-and-aria/index.js +39 -0
  484. package/schematics/migrations/radio-signals-and-aria/schema.json +20 -0
  485. package/schematics/migrations/read-state-dwell-handlers/README.md +125 -0
  486. package/schematics/migrations/read-state-dwell-handlers/data.js +45 -0
  487. package/schematics/migrations/read-state-dwell-handlers/index.js +215 -0
  488. package/schematics/migrations/read-state-dwell-handlers/schema.json +20 -0
  489. package/schematics/migrations/scrollbar-deprecated-path/README.md +128 -0
  490. package/schematics/migrations/scrollbar-deprecated-path/index.js +20 -0
  491. package/schematics/migrations/scrollbar-deprecated-path/schema.json +20 -0
  492. package/schematics/migrations/select-signal-inputs/README.md +61 -0
  493. package/schematics/migrations/select-signal-inputs/data.js +99 -0
  494. package/schematics/migrations/select-signal-inputs/index.js +57 -0
  495. package/schematics/migrations/select-signal-inputs/schema.json +15 -0
  496. package/schematics/migrations/sidepanel-non-modal-behavior/README.md +57 -0
  497. package/schematics/migrations/sidepanel-non-modal-behavior/data.js +111 -0
  498. package/schematics/migrations/sidepanel-non-modal-behavior/index.js +57 -0
  499. package/schematics/migrations/sidepanel-non-modal-behavior/schema.json +15 -0
  500. package/schematics/migrations/signal-inputs-subclasses/README.md +28 -0
  501. package/schematics/migrations/signal-inputs-subclasses/data.js +69 -0
  502. package/schematics/migrations/signal-inputs-subclasses/index.js +17 -0
  503. package/schematics/migrations/signal-inputs-subclasses/schema.json +15 -0
  504. package/schematics/migrations/split-button-optional-disabled/README.md +47 -0
  505. package/schematics/migrations/split-button-optional-disabled/data.js +53 -0
  506. package/schematics/migrations/split-button-optional-disabled/index.js +57 -0
  507. package/schematics/migrations/split-button-optional-disabled/schema.json +15 -0
  508. package/schematics/migrations/splitter-deprecated-path/README.md +136 -0
  509. package/schematics/migrations/splitter-deprecated-path/index.js +20 -0
  510. package/schematics/migrations/splitter-deprecated-path/schema.json +20 -0
  511. package/schematics/migrations/state-saving-default/README.md +67 -0
  512. package/schematics/migrations/state-saving-default/data.js +88 -0
  513. package/schematics/migrations/state-saving-default/index.js +62 -0
  514. package/schematics/migrations/state-saving-default/schema.json +15 -0
  515. package/schematics/migrations/table-cell-content/README.md +55 -0
  516. package/schematics/migrations/table-cell-content/data.js +66 -0
  517. package/schematics/migrations/table-cell-content/index.js +66 -0
  518. package/schematics/migrations/table-cell-content/schema.json +15 -0
  519. package/schematics/migrations/tabs-signals-and-aria/README.md +93 -0
  520. package/schematics/migrations/tabs-signals-and-aria/data.js +139 -0
  521. package/schematics/migrations/tabs-signals-and-aria/index.js +65 -0
  522. package/schematics/migrations/tabs-signals-and-aria/schema.json +15 -0
  523. package/schematics/migrations/tag-list-cleaner/README.md +58 -0
  524. package/schematics/migrations/tag-list-cleaner/data.js +42 -0
  525. package/schematics/migrations/tag-list-cleaner/index.js +196 -0
  526. package/schematics/migrations/tag-list-cleaner/schema.json +20 -0
  527. package/schematics/migrations/tag-slots/README.md +41 -0
  528. package/schematics/migrations/tag-slots/index.js +190 -0
  529. package/schematics/migrations/tag-slots/schema.json +20 -0
  530. package/schematics/migrations/tags-signals/README.md +85 -0
  531. package/schematics/migrations/tags-signals/data.js +103 -0
  532. package/schematics/migrations/tags-signals/index.js +673 -0
  533. package/schematics/migrations/tags-signals/schema.json +20 -0
  534. package/schematics/migrations/textarea-signals/README.md +72 -0
  535. package/schematics/migrations/textarea-signals/data.js +121 -0
  536. package/schematics/migrations/textarea-signals/index.js +379 -0
  537. package/schematics/migrations/textarea-signals/schema.json +20 -0
  538. package/schematics/migrations/time-range-title-for/README.md +164 -0
  539. package/schematics/migrations/time-range-title-for/data.js +139 -0
  540. package/schematics/migrations/time-range-title-for/index.js +163 -0
  541. package/schematics/migrations/time-range-title-for/schema.json +20 -0
  542. package/schematics/migrations/timepicker-signals/README.md +78 -0
  543. package/schematics/migrations/timepicker-signals/data.js +82 -0
  544. package/schematics/migrations/timepicker-signals/index.js +709 -0
  545. package/schematics/migrations/timepicker-signals/schema.json +20 -0
  546. package/schematics/migrations/timezone-grouping-utils/README.md +73 -0
  547. package/schematics/migrations/timezone-grouping-utils/data.js +101 -0
  548. package/schematics/migrations/timezone-grouping-utils/index.js +64 -0
  549. package/schematics/migrations/timezone-grouping-utils/schema.json +15 -0
  550. package/schematics/migrations/title-encapsulation/README.md +49 -0
  551. package/schematics/migrations/title-encapsulation/data.js +69 -0
  552. package/schematics/migrations/title-encapsulation/index.js +57 -0
  553. package/schematics/migrations/title-encapsulation/schema.json +15 -0
  554. package/schematics/migrations/toast-stack-and-defaults/README.md +102 -0
  555. package/schematics/migrations/toast-stack-and-defaults/data.js +79 -0
  556. package/schematics/migrations/toast-stack-and-defaults/index.js +53 -0
  557. package/schematics/migrations/toast-stack-and-defaults/schema.json +15 -0
  558. package/schematics/migrations/tooltip-pointer-events-and-types/README.md +53 -0
  559. package/schematics/migrations/tooltip-pointer-events-and-types/data.js +89 -0
  560. package/schematics/migrations/tooltip-pointer-events-and-types/index.js +60 -0
  561. package/schematics/migrations/tooltip-pointer-events-and-types/schema.json +15 -0
  562. package/schematics/migrations/top-bar-container-selectors/README.md +111 -0
  563. package/schematics/migrations/top-bar-container-selectors/data.js +56 -0
  564. package/schematics/migrations/top-bar-container-selectors/index.js +84 -0
  565. package/schematics/migrations/top-bar-container-selectors/schema.json +20 -0
  566. package/schematics/migrations/tree-select-signals/README.md +61 -0
  567. package/schematics/migrations/tree-select-signals/data.js +106 -0
  568. package/schematics/migrations/tree-select-signals/index.js +58 -0
  569. package/schematics/migrations/tree-select-signals/schema.json +15 -0
  570. package/schematics/migrations/tree-signals/README.md +82 -0
  571. package/schematics/migrations/tree-signals/data.js +123 -0
  572. package/schematics/migrations/tree-signals/index.js +54 -0
  573. package/schematics/migrations/tree-signals/schema.json +15 -0
  574. package/schematics/migrations/tree-state-saving-default/README.md +66 -0
  575. package/schematics/migrations/tree-state-saving-default/data.js +78 -0
  576. package/schematics/migrations/tree-state-saving-default/index.js +60 -0
  577. package/schematics/migrations/tree-state-saving-default/schema.json +15 -0
  578. package/schematics/migrations/username-pipe-injection/README.md +59 -0
  579. package/schematics/migrations/username-pipe-injection/data.js +78 -0
  580. package/schematics/migrations/username-pipe-injection/index.js +58 -0
  581. package/schematics/migrations/username-pipe-injection/schema.json +15 -0
  582. package/schematics/migrations/v20-upgrade/README.md +36 -16
  583. package/schematics/migrations/v20-upgrade/data.js +124 -77
  584. package/schematics/migrations/v20-upgrade/index.js +6 -213
  585. package/schematics/migrations/v21-upgrade/README.md +271 -0
  586. package/schematics/migrations/v21-upgrade/data.js +1371 -0
  587. package/schematics/migrations/v21-upgrade/index.js +94 -0
  588. package/schematics/migrations/v21-upgrade/schema.json +20 -0
  589. package/schematics/migrations/zoneless-change-detection/README.md +30 -0
  590. package/schematics/migrations/zoneless-change-detection/data.js +29 -0
  591. package/schematics/migrations/zoneless-change-detection/index.js +20 -0
  592. package/schematics/migrations/zoneless-change-detection/schema.json +15 -0
  593. package/schematics/migrations.json +392 -2
  594. package/schematics/ng-add/index.js +515 -14
  595. package/schematics/ng-add/schema.json +15 -0
  596. package/schematics/utils/deprecated-path-migration.js +61 -0
  597. package/schematics/utils/package-config.js +9 -105
  598. package/scrollbar/{_scrollbar-component-theme.scss → deprecated/_scrollbar-component-theme.scss} +1 -1
  599. package/scrollbar/{scrollbar.component.scss → deprecated/scrollbar.component.scss} +1 -1
  600. package/scrollbar/native-scrollbar.scss +68 -0
  601. package/scrollbar/scrollbar-tokens.scss +13 -22
  602. package/scrollbar/scrollbar-track.scss +94 -0
  603. package/scrollbar/scrollbar-viewport.scss +33 -0
  604. package/scrollbar/scrollbar.scss +24 -0
  605. package/search-expandable/search-expandable-tokens.scss +4 -0
  606. package/search-expandable/search-expandable.scss +4 -2
  607. package/select/_select-theme.scss +3 -16
  608. package/select/select.scss +0 -6
  609. package/sidebar/sidebar.scss +20 -0
  610. package/sidepanel/_sidepanel-theme.scss +1 -1
  611. package/sidepanel/sidepanel-tokens.scss +7 -1
  612. package/sidepanel/sidepanel.scss +41 -5
  613. package/skeleton/skeleton-presets.scss +350 -0
  614. package/skeleton/skeleton-tokens.scss +127 -0
  615. package/skeleton/skeleton.scss +53 -45
  616. package/split-button/_split-button-theme.scss +4 -4
  617. package/split-button/split-button.scss +2 -6
  618. package/splitter/{_splitter-theme.scss → deprecated/_splitter-theme.scss} +1 -1
  619. package/splitter/deprecated/splitter.scss +51 -0
  620. package/splitter/splitter-tokens.scss +19 -0
  621. package/splitter/splitter.scss +148 -28
  622. package/table/_table-theme.scss +13 -12
  623. package/table/table-tokens.scss +8 -0
  624. package/table/table.scss +47 -22
  625. package/tabs/_tabs-common.scss +14 -14
  626. package/tabs/_tabs-theme.scss +4 -5
  627. package/tabs/tab-body.scss +49 -1
  628. package/tabs/tab-header.scss +2 -1
  629. package/tags/tag-list.scss +4 -0
  630. package/tags/tag.scss +19 -1
  631. package/time-range/time-range.scss +9 -0
  632. package/timezone/timezone-option.component.scss +4 -7
  633. package/timezone/timezone-select.component.scss +3 -0
  634. package/toast/_toast-theme.scss +1 -4
  635. package/toast/toast-container.component.scss +19 -13
  636. package/toast/toast-tokens.scss +12 -6
  637. package/toast/toast.component.scss +42 -19
  638. package/toggle/_toggle-theme.scss +4 -10
  639. package/toggle/toggle.scss +67 -26
  640. package/tooltip/_tooltip-theme.scss +7 -1
  641. package/tooltip/tooltip-tokens.scss +1 -2
  642. package/tooltip/tooltip.scss +55 -9
  643. package/top-bar/top-bar-tokens.scss +13 -2
  644. package/top-bar/top-bar.scss +24 -19
  645. package/tree/_tree-theme.scss +0 -1
  646. package/tree/toggle.scss +5 -9
  647. package/tree/tree-option.scss +2 -4
  648. package/tree/tree-tokens.scss +2 -1
  649. package/tree/tree.scss +3 -5
  650. package/tree-select/_tree-select-theme.scss +4 -15
  651. package/tree-select/tree-select-tokens.scss +16 -0
  652. package/tree-select/tree-select.scss +0 -6
  653. package/{accordion/index.d.ts → types/koobiq-components-accordion.d.ts} +102 -84
  654. package/{actions-panel/index.d.ts → types/koobiq-components-actions-panel.d.ts} +44 -59
  655. package/{alert/index.d.ts → types/koobiq-components-alert.d.ts} +8 -3
  656. package/types/koobiq-components-app-switcher.d.ts +406 -0
  657. package/types/koobiq-components-autocomplete.d.ts +443 -0
  658. package/{badge/index.d.ts → types/koobiq-components-badge.d.ts} +25 -20
  659. package/{breadcrumbs/index.d.ts → types/koobiq-components-breadcrumbs.d.ts} +97 -46
  660. package/types/koobiq-components-button-toggle.d.ts +340 -0
  661. package/types/koobiq-components-button.d.ts +296 -0
  662. package/types/koobiq-components-checkbox.d.ts +172 -0
  663. package/types/koobiq-components-clamped-text.d.ts +184 -0
  664. package/{code-block/index.d.ts → types/koobiq-components-code-block.d.ts} +114 -79
  665. package/{content-panel/index.d.ts → types/koobiq-components-content-panel.d.ts} +81 -25
  666. package/{core/index.d.ts → types/koobiq-components-core.d.ts} +2827 -865
  667. package/{datepicker/index.d.ts → types/koobiq-components-datepicker.d.ts} +161 -116
  668. package/types/koobiq-components-divider.d.ts +43 -0
  669. package/types/koobiq-components-dl.d.ts +235 -0
  670. package/{dropdown/index.d.ts → types/koobiq-components-dropdown.d.ts} +245 -239
  671. package/types/koobiq-components-ellipsis-center.d.ts +85 -0
  672. package/types/koobiq-components-empty-state.d.ts +106 -0
  673. package/{file-upload/index.d.ts → types/koobiq-components-file-upload.d.ts} +214 -107
  674. package/{filter-bar/index.d.ts → types/koobiq-components-filter-bar.d.ts} +410 -495
  675. package/types/koobiq-components-flag.d.ts +68 -0
  676. package/{form-field/index.d.ts → types/koobiq-components-form-field.d.ts} +167 -191
  677. package/types/koobiq-components-icon.d.ts +333 -0
  678. package/{inline-edit/index.d.ts → types/koobiq-components-inline-edit.d.ts} +109 -46
  679. package/types/koobiq-components-input.d.ts +477 -0
  680. package/types/koobiq-components-link-deprecated.d.ts +101 -0
  681. package/types/koobiq-components-link.d.ts +176 -0
  682. package/{list/index.d.ts → types/koobiq-components-list.d.ts} +162 -99
  683. package/types/koobiq-components-loader-overlay.d.ts +101 -0
  684. package/{markdown/index.d.ts → types/koobiq-components-markdown.d.ts} +16 -24
  685. package/types/koobiq-components-modal.d.ts +666 -0
  686. package/types/koobiq-components-navbar.d.ts +569 -0
  687. package/types/koobiq-components-notification-center.d.ts +500 -0
  688. package/{overflow-items/index.d.ts → types/koobiq-components-overflow-items.d.ts} +8 -22
  689. package/types/koobiq-components-popover.d.ts +468 -0
  690. package/types/koobiq-components-progress-bar.d.ts +67 -0
  691. package/{progress-spinner/index.d.ts → types/koobiq-components-progress-spinner.d.ts} +33 -10
  692. package/types/koobiq-components-radio.d.ts +294 -0
  693. package/{resizer/index.d.ts → types/koobiq-components-resizer.d.ts} +37 -2
  694. package/{scrollbar/index.d.ts → types/koobiq-components-scrollbar-deprecated.d.ts} +18 -1
  695. package/types/koobiq-components-scrollbar.d.ts +154 -0
  696. package/types/koobiq-components-search-expandable.d.ts +164 -0
  697. package/{select/index.d.ts → types/koobiq-components-select.d.ts} +360 -167
  698. package/types/koobiq-components-sidebar.d.ts +152 -0
  699. package/types/koobiq-components-sidepanel.d.ts +436 -0
  700. package/types/koobiq-components-skeleton.d.ts +234 -0
  701. package/types/koobiq-components-split-button.d.ts +65 -0
  702. package/{splitter/index.d.ts → types/koobiq-components-splitter-deprecated.d.ts} +44 -1
  703. package/types/koobiq-components-splitter.d.ts +406 -0
  704. package/types/koobiq-components-table.d.ts +44 -0
  705. package/types/koobiq-components-tabs.d.ts +888 -0
  706. package/{tags/index.d.ts → types/koobiq-components-tags.d.ts} +249 -133
  707. package/types/koobiq-components-textarea.d.ts +178 -0
  708. package/{time-range/index.d.ts → types/koobiq-components-time-range.d.ts} +135 -62
  709. package/types/koobiq-components-timepicker.d.ts +223 -0
  710. package/types/koobiq-components-timezone.d.ts +266 -0
  711. package/types/koobiq-components-title.d.ts +184 -0
  712. package/types/koobiq-components-toast.d.ts +289 -0
  713. package/types/koobiq-components-toggle.d.ts +121 -0
  714. package/types/koobiq-components-tooltip.d.ts +610 -0
  715. package/types/koobiq-components-top-bar.d.ts +61 -0
  716. package/types/koobiq-components-tree-select.d.ts +667 -0
  717. package/types/koobiq-components-tree.d.ts +1290 -0
  718. package/types/koobiq-components-username.d.ts +340 -0
  719. package/username/_username-theme.scss +35 -0
  720. package/username/username.scss +10 -34
  721. package/app-switcher/index.d.ts +0 -276
  722. package/autocomplete/index.d.ts +0 -286
  723. package/button/index.d.ts +0 -153
  724. package/button-toggle/index.d.ts +0 -162
  725. package/checkbox/index.d.ts +0 -163
  726. package/clamped-text/index.d.ts +0 -146
  727. package/core/styles/_tokens.scss +0 -7
  728. package/core/styles/common/_clearfix.scss +0 -13
  729. package/core/styles/common/_popup.scss +0 -6
  730. package/core/styles/functions/_index.scss +0 -3
  731. package/core/styles/functions/_number.scss +0 -60
  732. package/core/styles/functions/_string.scss +0 -18
  733. package/core/styles/theming/scrollbar-tokens.scss +0 -25
  734. package/core/styles/typography/_typography-utils.scss +0 -84
  735. package/divider/index.d.ts +0 -20
  736. package/dl/index.d.ts +0 -45
  737. package/ellipsis-center/index.d.ts +0 -71
  738. package/empty-state/index.d.ts +0 -45
  739. package/flag/index.d.ts +0 -44
  740. package/icon/index.d.ts +0 -200
  741. package/input/index.d.ts +0 -354
  742. package/link/index.d.ts +0 -56
  743. package/loader-overlay/index.d.ts +0 -57
  744. package/modal/index.d.ts +0 -339
  745. package/navbar/index.d.ts +0 -372
  746. package/notification-center/index.d.ts +0 -323
  747. package/popover/index.d.ts +0 -182
  748. package/prebuilt-themes/dark-theme.css +0 -1
  749. package/prebuilt-themes/light-theme.css +0 -1
  750. package/progress-bar/index.d.ts +0 -31
  751. package/radio/index.d.ts +0 -203
  752. package/search-expandable/index.d.ts +0 -101
  753. package/sidebar/index.d.ts +0 -94
  754. package/sidepanel/index.d.ts +0 -272
  755. package/skeleton/index.d.ts +0 -26
  756. package/split-button/index.d.ts +0 -46
  757. package/table/index.d.ts +0 -25
  758. package/tabs/index.d.ts +0 -677
  759. package/textarea/index.d.ts +0 -138
  760. package/timepicker/index.d.ts +0 -197
  761. package/timezone/index.d.ts +0 -125
  762. package/title/index.d.ts +0 -139
  763. package/toast/index.d.ts +0 -178
  764. package/toggle/index.d.ts +0 -104
  765. package/tooltip/index.d.ts +0 -335
  766. package/top-bar/index.d.ts +0 -33
  767. package/tree/index.d.ts +0 -802
  768. package/tree-select/index.d.ts +0 -475
  769. package/username/index.d.ts +0 -194
  770. /package/{dynamic-translation/index.d.ts → types/koobiq-components-dynamic-translation.d.ts} +0 -0
  771. /package/{index.d.ts → types/koobiq-components.d.ts} +0 -0
@@ -0,0 +1,57 @@
1
+ # sidepanel-non-modal-behavior
2
+
3
+ Migration schematic invoked automatically by `ng update @koobiq/components@20`
4
+ (registered for `21.0.0-0`). Reports what the sidepanel review changed about the panel's effect on the
5
+ page around it. It never writes to the tree.
6
+
7
+ ## Background
8
+
9
+ The non-modal mode is documented as "without page blocking", but every sidepanel got CDK's
10
+ `BlockScrollStrategy`, which pins the document with `position: fixed`. The strategy follows the
11
+ modality now, and `KbqSidepanelConfig` gained a `scrollStrategy` factory for the cases that want
12
+ something else.
13
+
14
+ | Change | Before | After |
15
+ | ------------------------------------------------ | ------------------------------- | ------------------------------------------------- |
16
+ | Scroll strategy | `block()` for every panel | `block()` with a backdrop, `reposition()` without |
17
+ | `trapFocusAutoCapture` default | `!!hasBackdrop` | `true` |
18
+ | Container ARIA | none | `role="dialog"`, `aria-modal`, `aria-labelledby` |
19
+ | Rest of the page while a modal sidepanel is open | reachable by the virtual cursor | `aria-hidden="true"` |
20
+ | `FocusTrapFactory` override | on `KbqSidepanelModule` | scoped to `KbqSidepanelContainerComponent` |
21
+ | `kbq-sidepanel-overlay` on the overlay host | added, styled by nothing | not added |
22
+ | Click inside a sidepanel at another edge | closed this one | only the same-position stack closes |
23
+
24
+ The `FocusTrapFactory` entry is the one with the widest reach. It was an unscoped override of a
25
+ `providedIn: 'root'` CDK service, so importing the sidepanel module changed the focus-trap
26
+ implementation used by every trapping component in the application — modal, dropdown, popover — not
27
+ just sidepanels. The sidepanel container keeps the override for itself, because
28
+ `ConfigurableFocusTrapFactory` brings the inert strategy that pulls escaping focus back; nothing else
29
+ in the package asked for it.
30
+
31
+ ## What it does _not_ do
32
+
33
+ Nothing is rewritten. Whether a given non-modal panel wanted the page frozen, and whether an
34
+ application had come to depend on the leaked focus-trap implementation, are decisions the schematic
35
+ cannot make.
36
+
37
+ | Pattern | Manual migration |
38
+ | ------------------------------------------------------------ | -------------------------------------------------------------------------------------------------- |
39
+ | `{ hasBackdrop: false }` | Pass `scrollStrategy` to keep the page frozen, `trapFocusAutoCapture: false` to keep focus outside |
40
+ | `config.hasBackdrop = …` after open | Decide the backdrop when opening; only `disableClose` is re-read |
41
+ | `overlayRef.backdropElement` | `null` for a panel opened without a backdrop — the `!` only silenced the compiler |
42
+ | `.kbq-sidepanel-overlay` in a stylesheet | Tag the overlay pane with `overlayPanelClass` instead |
43
+ | `host: { class: 'layout-column flex' }` on sidepanel content | Delete it; the package styles the portal host |
44
+
45
+ ## Notes with no call site to point at
46
+
47
+ - `KbqSidepanelService` is `providedIn: 'root'`. `KbqSidepanelModule` still provides it, so existing
48
+ per-module instances are unchanged, and a component-provided service now closes the sidepanels it
49
+ opened when it is destroyed instead of leaking them.
50
+ - `KbqSidepanelClose` injects `KbqSidepanelRef` non-optionally; the `setTimeout` fallback that looked
51
+ the ref up by container id is gone.
52
+
53
+ ## Running it manually
54
+
55
+ ```
56
+ ng generate @koobiq/components:sidepanel-non-modal-behavior --project my-app
57
+ ```
@@ -0,0 +1,111 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Data for the `sidepanel-non-modal-behavior` migration.
5
+ *
6
+ * The sidepanel review changed what a sidepanel does to the page around it:
7
+ *
8
+ * - A sidepanel without a backdrop no longer applies CDK's `BlockScrollStrategy`. The non-modal mode
9
+ * is documented as "without page blocking", but every panel got `block()`, which pins the document
10
+ * with `position: fixed`.
11
+ * - `trapFocusAutoCapture` defaults to `true` in both modalities instead of following `hasBackdrop`,
12
+ * so a non-modal sidepanel moves focus into itself on open and returns it to the trigger on close.
13
+ * - The container is a `role="dialog"` with `aria-modal` and a name taken from `kbq-sidepanel-header`,
14
+ * and a modal sidepanel hides the rest of the page from assistive technology while it is open.
15
+ * - `KbqSidepanelModule` no longer swaps `FocusTrapFactory` for `ConfigurableFocusTrapFactory`
16
+ * application-wide; the override is scoped to the sidepanel container.
17
+ * - The overlay host element no longer gets the unstyled `kbq-sidepanel-overlay` class.
18
+ *
19
+ * Warn-only. Whether a given non-modal panel wanted the page frozen, and whether an application was
20
+ * relying on the leaked focus-trap implementation, are decisions this migration cannot make.
21
+ */
22
+ /** Import specifier that marks a file as a sidepanel consumer. */
23
+ const SIDEPANEL_PACKAGE = '@koobiq/components/sidepanel';
24
+ /**
25
+ * Identifier and element shapes that mark a consumer without an import.
26
+ *
27
+ * The lookbehind keeps the `--kbq-sidepanel-*` design tokens out: a custom property always carries the
28
+ * leading `--`, and a stylesheet that merely reads one is not a consumer of anything this migration
29
+ * changed. A selector or an element — `.kbq-sidepanel-overlay`, `<kbq-sidepanel-header>` — is preceded
30
+ * by something else and still matches.
31
+ */
32
+ const SIDEPANEL_TYPE = '\\bKbqSidepanel\\w*\\b|(?<!-)\\bkbq-sidepanel\\b';
33
+ const warnPatterns = [
34
+ {
35
+ anchor: SIDEPANEL_TYPE,
36
+ pattern: 'hasBackdrop\\s*:\\s*false',
37
+ message: 'A sidepanel opened with hasBackdrop: false no longer blocks the page scroll. Every panel used ' +
38
+ "to get CDK's BlockScrollStrategy, which pins the document with `position: fixed` — the exact " +
39
+ 'opposite of what the non-modal mode documents. Pass scrollStrategy: () => ' +
40
+ 'overlay.scrollStrategies.block() in KbqSidepanelConfig if a particular panel wants the page ' +
41
+ 'frozen. The same panel now captures focus on open and returns it to the trigger on close: ' +
42
+ 'trapFocusAutoCapture defaults to true in both modalities instead of following hasBackdrop, ' +
43
+ 'because CdkTrapFocus only restores focus it captured itself. Pass trapFocusAutoCapture: false to ' +
44
+ 'leave focus where it was. The focus trap itself still follows hasBackdrop — set trapFocus: true ' +
45
+ 'to keep Tab inside a non-modal panel, which also hides the rest of the page from assistive ' +
46
+ 'technology.'
47
+ },
48
+ {
49
+ anchor: SIDEPANEL_TYPE,
50
+ pattern: '\\.\\s*config\\s*\\.\\s*hasBackdrop\\s*=(?!=)',
51
+ message: 'Assigning KbqSidepanelRef.config.hasBackdrop on an open sidepanel has never done anything — the ' +
52
+ 'value is read once, when the overlay is built — and the docs that said otherwise are corrected. ' +
53
+ 'disableClose is the one config property that is re-read after open.'
54
+ },
55
+ {
56
+ anchor: SIDEPANEL_TYPE,
57
+ // Matched as a property access: `sidepanelResult` is an ordinary enough name for a host to own one.
58
+ pattern: '\\.\\s*sidepanelResult\\b',
59
+ message: 'KbqSidepanelClose.sidepanelResult is an input signal now, aliased kbq-sidepanel-close as before. ' +
60
+ 'Reading it takes a call — sidepanelResult() — and it can no longer be assigned: bind the value in ' +
61
+ 'the template, <button kbq-sidepanel-close="value"> or [kbqSidepanelClose]="value". The directive ' +
62
+ 'no longer implements OnChanges, and the two spellings are read through one computed, with the ' +
63
+ 'camel-case one winning if a template binds both.'
64
+ },
65
+ {
66
+ anchor: SIDEPANEL_TYPE,
67
+ pattern: '\\boverlayRef\\s*\\.\\s*backdropElement\\b',
68
+ message: 'Reaching for KbqSidepanelRef.overlayRef.backdropElement to hide a backdrop throws on any panel ' +
69
+ 'opened with hasBackdrop: false, where the element is null. Decide the backdrop when you open the ' +
70
+ 'sidepanel.'
71
+ },
72
+ {
73
+ anchor: SIDEPANEL_TYPE,
74
+ // Bounded on both sides so the `--kbq-sidepanel-overlay-background` token does not read as the class:
75
+ // the token is preceded by `-` and continues with `-background`, the class does neither.
76
+ pattern: '(?<!-)\\bkbq-sidepanel-overlay\\b(?!-)',
77
+ message: 'The kbq-sidepanel-overlay class is no longer added to the overlay host element. Nothing in the ' +
78
+ 'library ever styled it. Use overlayPanelClass in KbqSidepanelConfig to tag the overlay pane.'
79
+ },
80
+ {
81
+ anchor: SIDEPANEL_TYPE,
82
+ pattern: '\\b(?:layout-column\\s+flex|flex\\s+layout-column)\\b|:host\\s*\\{[^}]*display\\s*:\\s*flex',
83
+ message: 'The package styles the host element of a component-based sidepanel itself now ' +
84
+ '(.kbq-sidepanel-content-host: a flex column with min-height: 0). If the component you open in a ' +
85
+ "sidepanel carries `host: { class: 'layout-column flex' }` or a `:host { display: flex; … }` " +
86
+ 'block only to make the body scroll and the footer stick, that workaround can go.'
87
+ }
88
+ ];
89
+ /** Printed once per project, after the per-file reports. */
90
+ const SUMMARY = [
91
+ ' KbqSidepanelModule no longer provides { provide: FocusTrapFactory, useClass: ' +
92
+ 'ConfigurableFocusTrapFactory }. That was an unscoped override of a providedIn: "root" CDK service, ' +
93
+ 'so importing the sidepanel module changed the focus-trap implementation of every trapping component ' +
94
+ 'in the application — modal, dropdown, popover. The override is scoped to the sidepanel container ' +
95
+ 'now; add the provider to your own application config if you were depending on it.',
96
+ ' The sidepanel container renders role="dialog", aria-modal for a modal panel and an aria-labelledby ' +
97
+ 'pointing at the kbq-sidepanel-header title, and a modal sidepanel marks the rest of the page ' +
98
+ 'aria-hidden while it is open. Pass ariaLabel or ariaLabelledBy in KbqSidepanelConfig for a panel ' +
99
+ 'with no header, and drop any role or aria-* you were stamping on the container yourself.',
100
+ ' KbqSidepanelService is providedIn: "root", so KbqSidepanelModule is no longer the only way to get ' +
101
+ 'one. The module still provides it, which keeps the existing per-module instances.',
102
+ ' A click inside a sidepanel at a different edge no longer closes this one: the outside-click filter ' +
103
+ 'consults the position, so only the panels of the same stack close each other.',
104
+ ' KbqSidepanelClose injects KbqSidepanelRef non-optionally. The setTimeout fallback that looked the ref ' +
105
+ 'up by container id is gone — the ref reaches template portals through the portal injector.'
106
+ ];
107
+
108
+ exports.SIDEPANEL_PACKAGE = SIDEPANEL_PACKAGE;
109
+ exports.SIDEPANEL_TYPE = SIDEPANEL_TYPE;
110
+ exports.SUMMARY = SUMMARY;
111
+ exports.warnPatterns = warnPatterns;
@@ -0,0 +1,57 @@
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_sidepanelNonModalBehavior_data = require('./data.js');
8
+ require('@angular-devkit/schematics');
9
+ require('@schematics/angular/utility');
10
+
11
+ const LABEL = '[sidepanel-non-modal-behavior]';
12
+ // Stylesheets are visited too: two of the patterns are about CSS the sidepanel no longer backs.
13
+ const EXTENSIONS = ['.ts', '.html', '.scss', '.css'];
14
+ /** A file is a sidepanel consumer if it imports the package, names the service or renders one of the parts. */
15
+ function referencesSidepanel(content) {
16
+ return content.includes(migrations_sidepanelNonModalBehavior_data.SIDEPANEL_PACKAGE) || new RegExp(migrations_sidepanelNonModalBehavior_data.SIDEPANEL_TYPE).test(content);
17
+ }
18
+ /**
19
+ * Reports what the sidepanel review changed about the panel's effect on the page around it: the scroll
20
+ * block that no longer applies to non-modal panels, the focus that is captured and restored in both
21
+ * modalities, the dialog semantics on the container, and the application-wide `FocusTrapFactory`
22
+ * override that is gone. It never writes to the tree.
23
+ */
24
+ function sidepanelNonModalBehavior(options) {
25
+ return async (tree, context) => {
26
+ const { project } = options;
27
+ const projectDefinition = await utils_packageConfig.setupOptions(project, tree);
28
+ const root = projectDefinition?.root ?? '';
29
+ const rootDir = root ? tree.getDir(root) : tree.root;
30
+ let consumers = 0;
31
+ let reported = 0;
32
+ utils_packageConfig.visitProjectFiles(rootDir, (filePath, entry) => {
33
+ if (!EXTENSIONS.some((extension) => filePath.endsWith(extension)))
34
+ return;
35
+ const content = entry?.content.toString();
36
+ if (!content || !referencesSidepanel(content))
37
+ return;
38
+ consumers++;
39
+ for (const { anchor, pattern, message } of migrations_sidepanelNonModalBehavior_data.warnPatterns) {
40
+ if (!new RegExp(anchor).test(content) || !new RegExp(pattern).test(content))
41
+ continue;
42
+ reported++;
43
+ utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${message}`]);
44
+ }
45
+ });
46
+ // Nothing here opens a sidepanel, so the summary would only be noise.
47
+ if (consumers === 0)
48
+ return;
49
+ utils_messages.logMessage(context.logger, [
50
+ `${LABEL} processed kbq-sidepanel under "${root || '<workspace root>'}", ` +
51
+ `${consumers} file(s) reference the component, ${reported} call site(s) reported.`,
52
+ ...migrations_sidepanelNonModalBehavior_data.SUMMARY
53
+ ]);
54
+ };
55
+ }
56
+
57
+ exports.default = sidepanelNonModalBehavior;
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "koobiq-components-sidepanel-non-modal-behavior",
4
+ "title": "Koobiq components sidepanel 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
+ }
@@ -0,0 +1,28 @@
1
+ # signal-inputs-subclasses
2
+
3
+ Migration schematic invoked automatically by `ng update @koobiq/components@21` (registered for `21.0.0-0`).
4
+ Reports subclasses of the components whose decorator inputs became signal inputs. It never writes to the tree.
5
+
6
+ ## Background
7
+
8
+ The inputs of `KbqCheckbox`, `KbqToggleComponent`, `KbqRadioGroup`, `KbqRadioButton`, `KbqButtonToggleGroup`,
9
+ `KbqButtonToggle`, `KbqButton`, `KbqButtonGroupRoot`, `KbqSplitButton`, `KbqIcon`, `KbqIconButton`, `KbqIconItem` and
10
+ `KbqSearchExpandable`, and of the pop-up triggers — tooltip, popover, popover confirm, app switcher, notification
11
+ center, password toggle and ellipsis center — and of the tags, file uploads, accordion item, navbar item, notification
12
+ item and sidebar are signal inputs named `<member>Input`, which `ngOnChanges` hands to the unchanged member.
13
+ Reading and writing the members works as before. A member another migration moved to a signal, such as `color`
14
+ (`color-signals`) or the `KbqFormFieldControl` members of the tag list (`form-field-signals`), is migrated there.
15
+
16
+ | Pattern | Manual migration |
17
+ | ---------------------------------------- | ------------------------------------------------------------------------------ |
18
+ | A subclass that implements `ngOnChanges` | Call `super.ngOnChanges(changes)` |
19
+ | A subclass that redeclares an `@Input()` | Override the `<member>Input` signal input with its alias, e.g. `iconNameInput` |
20
+ | A panel that redeclares `elementRef` | Override the protected `elementRef` getter over a `viewChild()` |
21
+
22
+ A boolean input accepts `boolean | string | null | undefined` in a template now, rather than anything.
23
+
24
+ ## Running it manually
25
+
26
+ ```bash
27
+ ng g @koobiq/components:signal-inputs-subclasses --project "<your project>"
28
+ ```
@@ -0,0 +1,69 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Data for the `signal-inputs-subclasses` migration.
5
+ *
6
+ * The decorator inputs of the checkbox, toggle, radio, button toggle, buttons, icons, search-expandable and the
7
+ * pop-up triggers are signal inputs named `<member>Input` now, handed to the unchanged member from `ngOnChanges`.
8
+ * Reads and writes of the members are unchanged; a subclass is not. Warn-only. A member another migration moved to
9
+ * a signal, such as `color` or the `KbqFormFieldControl` members of the tag list, is migrated there.
10
+ */
11
+ const COMPONENTS = [
12
+ 'KbqCheckbox',
13
+ 'KbqToggleComponent',
14
+ 'KbqRadioGroup',
15
+ 'KbqRadioButton',
16
+ 'KbqButtonToggleGroup',
17
+ 'KbqButtonToggle',
18
+ 'KbqButton',
19
+ 'KbqButtonGroupRoot',
20
+ 'KbqSplitButton',
21
+ 'KbqIcon',
22
+ 'KbqIconButton',
23
+ 'KbqIconItem',
24
+ 'KbqSearchExpandable',
25
+ 'KbqTooltipTrigger',
26
+ 'KbqPopoverTrigger',
27
+ 'KbqPopoverConfirmTrigger',
28
+ 'KbqAppSwitcherTrigger',
29
+ 'KbqAppSwitcherComponent',
30
+ 'KbqNotificationCenterTrigger',
31
+ 'KbqPasswordToggle',
32
+ 'KbqEllipsisCenterDirective',
33
+ 'KbqTagInput',
34
+ 'KbqTagList',
35
+ 'KbqTag',
36
+ 'KbqSingleFileUploadComponent',
37
+ 'KbqMultipleFileUploadComponent',
38
+ 'KbqAccordionItem',
39
+ 'KbqNavbarFocusableItem',
40
+ 'KbqNavbarItem',
41
+ 'KbqNotificationItemComponent',
42
+ 'KbqSidebar'
43
+ ].join('|');
44
+ const PANELS = ['KbqPopUp', 'KbqTooltipComponent', 'KbqPopoverComponent', 'KbqPopoverConfirmComponent'].join('|');
45
+ const warnPatterns = [
46
+ {
47
+ anchor: `\\bextends\\s+(?:${COMPONENTS})\\b`,
48
+ pattern: `\\bextends\\s+(?:${COMPONENTS})\\b`,
49
+ message: 'A subclass of a Koobiq component whose inputs became signal inputs. The bound value reaches the member ' +
50
+ 'from ngOnChanges now, so an ngOnChanges of the subclass has to call super.ngOnChanges(changes). An input ' +
51
+ 'the subclass redeclared with @Input() is overridden through the `<member>Input` signal input instead, ' +
52
+ "e.g. `override readonly iconNameInput = input<string | undefined>(undefined, { alias: 'my-icon' })`."
53
+ },
54
+ {
55
+ anchor: `\\bextends\\s+(?:${PANELS})\\b`,
56
+ pattern: '@ViewChild\\([^)]*\\)\\s*(?:override\\s+)?elementRef\\b',
57
+ message: 'KbqPopUp.elementRef is a protected getter now, the element the pop-up measures and decorates. A panel ' +
58
+ 'that renders an element of its own overrides the getter over a viewChild() instead of re-declaring the ' +
59
+ 'field with @ViewChild.'
60
+ }
61
+ ];
62
+ const SUMMARY = [
63
+ 'Reads and writes of the members of these components are unchanged. A member another migration moved to a',
64
+ 'signal, such as color or the KbqFormFieldControl members of the tag list, is migrated there. A boolean input',
65
+ 'accepts boolean | string | null | undefined in a template now, rather than anything.'
66
+ ];
67
+
68
+ exports.SUMMARY = SUMMARY;
69
+ exports.warnPatterns = warnPatterns;
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var warnOnlyMigration = require('../../warn-only-migration-BISJBODk.js');
6
+ var migrations_signalInputsSubclasses_data = require('./data.js');
7
+ require('../../utils/messages.js');
8
+ require('../../package-config-BhU2TfC8.js');
9
+ require('@angular-devkit/schematics');
10
+ require('@schematics/angular/utility');
11
+
12
+ /** Reports subclasses of the components whose inputs became signal inputs feeding writable members. Never writes. */
13
+ function signalInputsSubclasses(options) {
14
+ return warnOnlyMigration.warnOnlyRule({ label: '[signal-inputs-subclasses]', warnPatterns: migrations_signalInputsSubclasses_data.warnPatterns, summary: migrations_signalInputsSubclasses_data.SUMMARY }, options);
15
+ }
16
+
17
+ exports.default = signalInputsSubclasses;
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "koobiq-components-signal-inputs-subclasses",
4
+ "title": "Koobiq components signal inputs subclasses 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,47 @@
1
+ # split-button-optional-disabled
2
+
3
+ Migration schematic invoked automatically by `ng update @koobiq/components@21`
4
+ (registered for `21.0.0-0`). Reports the `KbqSplitButton` members whose type changed in the
5
+ split-button review. It never writes to the tree.
6
+
7
+ ## Background
8
+
9
+ `disabled` was published as `boolean`, but the backing field is declared without an initializer and
10
+ the setter returns early for `undefined`. A `<kbq-split-button>` with no `[disabled]` binding
11
+ therefore reported `undefined` from a non-nullable type:
12
+
13
+ ```ts
14
+ const flag: boolean = splitButton.disabled; // held undefined
15
+ if (splitButton.disabled === false) { … } // never ran
16
+ ```
17
+
18
+ The getter now reports `boolean | undefined`, which is what the sibling `KbqButtonGroupRoot` has
19
+ always reported. Nothing about the runtime value changed — the call sites that were quietly wrong
20
+ now fail to compile.
21
+
22
+ The `buttons` content query moved from `QueryList<KbqButton>` to a signal query in the same review.
23
+ It is `protected`, so only a subclass sees it.
24
+
25
+ ## What it does _not_ do
26
+
27
+ Nothing is rewritten. Narrowing `boolean | undefined` back to `boolean` is a decision — `?? false`,
28
+ a non-null assertion, or handling the third state — and which one is right depends on what the call
29
+ site does with the value.
30
+
31
+ | Pattern | Manual migration |
32
+ | --------------------------------- | -------------------------------------------------------------------------- |
33
+ | `.disabled` on a `KbqSplitButton` | `?? false` for the common reading, or handle the unset state explicitly |
34
+ | `buttons.*` in a subclass | Read `buttons()` and use array methods; `buttons.changes` no longer exists |
35
+
36
+ ## Notes with no call site to point at
37
+
38
+ - A `<kbq-split-button>` with no projected button no longer throws outside dev mode. The guard sits
39
+ behind `isDevMode()`, so production renders an empty control instead of aborting the change
40
+ detection pass of whoever rendered it. A host that used the throw as a runtime assertion needs its
41
+ own check.
42
+
43
+ ## Running it manually
44
+
45
+ ```
46
+ ng generate @koobiq/components:split-button-optional-disabled --project my-app
47
+ ```
@@ -0,0 +1,53 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Data for the `split-button-optional-disabled` migration.
5
+ *
6
+ * `KbqSplitButton.disabled` was declared `boolean` over a field with no initializer, so an unbound
7
+ * control reported `undefined` through a non-nullable type: `const flag: boolean = sb.disabled` held
8
+ * `undefined`, and `if (sb.disabled === false)` never ran for a control nobody had disabled. The
9
+ * getter now reports `boolean | undefined`, matching the sibling `KbqButtonGroupRoot`, so those call
10
+ * sites finally fail to compile instead of lying at runtime.
11
+ *
12
+ * The content query moved from `QueryList<KbqButton>` to a signal query in the same review. It is
13
+ * `protected`, so only a subclass can see it.
14
+ *
15
+ * Warn-only. Narrowing `boolean | undefined` back to `boolean` is a decision — `?? false`, a
16
+ * non-null assertion, or handling the third state — and which one is right depends on what the call
17
+ * site does with it.
18
+ */
19
+ /** Import specifier that marks a file as a split-button consumer. */
20
+ const SPLIT_BUTTON_PACKAGE = '@koobiq/components/split-button';
21
+ /** Identifier shape that marks a consumer without an import (e.g. a re-export or a subclass). */
22
+ const SPLIT_BUTTON_TYPE = '\\bKbqSplitButton\\b';
23
+ const SUBCLASS_ANCHOR = 'extends\\s+KbqSplitButton\\b';
24
+ const warnPatterns = [
25
+ {
26
+ anchor: SPLIT_BUTTON_TYPE,
27
+ pattern: '\\.\\s*disabled\\b',
28
+ message: 'KbqSplitButton.disabled reports `boolean | undefined` instead of `boolean`. The backing field has ' +
29
+ 'no initializer, so a control with no [disabled] binding always returned `undefined` behind a ' +
30
+ 'non-nullable type — an assignment to a `boolean` held `undefined`, and `=== false` never matched. ' +
31
+ 'Decide per call site: `?? false` for the common reading, or handle the unset state explicitly.'
32
+ },
33
+ {
34
+ anchor: SUBCLASS_ANCHOR,
35
+ pattern: '\\bbuttons\\s*\\.\\s*(?:changes|first|last|toArray|notifyOnChanges|reset|length|forEach|map|filter)\\b',
36
+ message: 'KbqSplitButton.buttons is a signal query — `Signal<readonly KbqButton[]>` instead of ' +
37
+ '`QueryList<KbqButton>`. Read it as `buttons()` and use array methods on the result; ' +
38
+ '`buttons.changes` is gone, and `buttons.length` is the arity of the signal function, not the ' +
39
+ 'number of buttons.'
40
+ }
41
+ ];
42
+ /** Printed once per project, after the per-file reports. */
43
+ const SUMMARY = [
44
+ ' A <kbq-split-button> with no projected button no longer throws outside dev mode: the guard is ' +
45
+ 'behind isDevMode(), so production renders an empty control instead of aborting the change ' +
46
+ 'detection pass of whoever rendered it. A host that relied on the throw as a runtime assertion ' +
47
+ 'needs its own check.'
48
+ ];
49
+
50
+ exports.SPLIT_BUTTON_PACKAGE = SPLIT_BUTTON_PACKAGE;
51
+ exports.SPLIT_BUTTON_TYPE = SPLIT_BUTTON_TYPE;
52
+ exports.SUMMARY = SUMMARY;
53
+ exports.warnPatterns = warnPatterns;
@@ -0,0 +1,57 @@
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_splitButtonOptionalDisabled_data = require('./data.js');
8
+ require('@angular-devkit/schematics');
9
+ require('@schematics/angular/utility');
10
+
11
+ const LABEL = '[split-button-optional-disabled]';
12
+ const EXTENSIONS = ['.ts'];
13
+ /** A file is a split-button consumer if it imports the package or names the component. */
14
+ function referencesSplitButton(content) {
15
+ return content.includes(migrations_splitButtonOptionalDisabled_data.SPLIT_BUTTON_PACKAGE) || new RegExp(migrations_splitButtonOptionalDisabled_data.SPLIT_BUTTON_TYPE).test(content);
16
+ }
17
+ /**
18
+ * Reports the `KbqSplitButton` members whose type changed. Never writes: narrowing
19
+ * `boolean | undefined` back to `boolean` is a decision the call site owns.
20
+ *
21
+ * Only `.ts` is visited — the component's template surface did not change, and the `disabled`
22
+ * binding accepts exactly what it did before.
23
+ */
24
+ function splitButtonOptionalDisabled(options) {
25
+ return async (tree, context) => {
26
+ const { project } = options;
27
+ const projectDefinition = await utils_packageConfig.setupOptions(project, tree);
28
+ const root = projectDefinition?.root ?? '';
29
+ const rootDir = root ? tree.getDir(root) : tree.root;
30
+ let consumers = 0;
31
+ let reported = 0;
32
+ utils_packageConfig.visitProjectFiles(rootDir, (filePath, entry) => {
33
+ if (!EXTENSIONS.some((extension) => filePath.endsWith(extension)))
34
+ return;
35
+ const content = entry?.content.toString();
36
+ if (!content || !referencesSplitButton(content))
37
+ return;
38
+ consumers++;
39
+ for (const { anchor, pattern, message } of migrations_splitButtonOptionalDisabled_data.warnPatterns) {
40
+ if (!new RegExp(anchor).test(content) || !new RegExp(pattern).test(content))
41
+ continue;
42
+ reported++;
43
+ utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${message}`]);
44
+ }
45
+ });
46
+ // Nothing here uses the split button, so the summary would only be noise.
47
+ if (consumers === 0)
48
+ return;
49
+ utils_messages.logMessage(context.logger, [
50
+ `${LABEL} processed kbq-split-button under "${root || '<workspace root>'}", ` +
51
+ `${consumers} file(s) reference the component, ${reported} call site(s) reported.`,
52
+ ...migrations_splitButtonOptionalDisabled_data.SUMMARY
53
+ ]);
54
+ };
55
+ }
56
+
57
+ exports.default = splitButtonOptionalDisabled;
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "koobiq-components-split-button-optional-disabled",
4
+ "title": "Koobiq components split-button 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
+ }