@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.
Files changed (798) 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 +791 -609
  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 +2871 -2595
  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 +400 -149
  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 +734 -488
  197. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  198. package/fesm2022/koobiq-components-tree.mjs +1700 -617
  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 +415 -18
  264. package/schematics/migrations/accordion-state-saving-default/README.md +60 -0
  265. package/schematics/migrations/accordion-state-saving-default/data.cjs +75 -0
  266. package/schematics/migrations/accordion-state-saving-default/index.cjs +61 -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.cjs +47 -0
  270. package/schematics/migrations/actions-panel-overlay-container/index.cjs +55 -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 → data.cjs} +3 -0
  274. package/schematics/migrations/alert-signals/index.cjs +221 -0
  275. package/schematics/migrations/angular-animations-removal/README.md +46 -0
  276. package/schematics/migrations/angular-animations-removal/data.cjs +150 -0
  277. package/schematics/migrations/angular-animations-removal/index.cjs +21 -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.cjs +136 -0
  281. package/schematics/migrations/app-switcher-signals/index.cjs +366 -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 → index.cjs} +6 -5
  285. package/schematics/migrations/autocomplete-signals/README.md +92 -0
  286. package/schematics/migrations/autocomplete-signals/data.cjs +149 -0
  287. package/schematics/migrations/autocomplete-signals/index.cjs +707 -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.cjs +109 -0
  291. package/schematics/migrations/badge-signals/index.cjs +694 -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.cjs +136 -0
  295. package/schematics/migrations/button-state-and-styles/index.cjs +221 -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.cjs +106 -0
  299. package/schematics/migrations/button-supported-colors/index.cjs +261 -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.cjs +200 -0
  303. package/schematics/migrations/button-toggle-signals-and-aria/index.cjs +497 -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.cjs +88 -0
  307. package/schematics/migrations/button-truncation/index.cjs +270 -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.cjs +114 -0
  311. package/schematics/migrations/checkbox-signals/index.cjs +635 -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.cjs +101 -0
  315. package/schematics/migrations/clamped-text-disclosure/index.cjs +60 -0
  316. package/schematics/migrations/clamped-text-disclosure/schema.json +15 -0
  317. package/schematics/migrations/code-block-highlight-js-core/README.md +53 -0
  318. package/schematics/migrations/code-block-highlight-js-core/data.cjs +64 -0
  319. package/schematics/migrations/code-block-highlight-js-core/index.cjs +319 -0
  320. package/schematics/migrations/code-block-highlight-js-core/schema.json +20 -0
  321. package/schematics/migrations/code-block-signals/README.md +84 -0
  322. package/schematics/migrations/code-block-signals/data.cjs +121 -0
  323. package/schematics/migrations/code-block-signals/index.cjs +701 -0
  324. package/schematics/migrations/code-block-signals/schema.json +20 -0
  325. package/schematics/migrations/color-signals/README.md +46 -0
  326. package/schematics/migrations/color-signals/data.cjs +131 -0
  327. package/schematics/migrations/color-signals/index.cjs +20 -0
  328. package/schematics/migrations/color-signals/schema.json +20 -0
  329. package/schematics/migrations/core-mixins-removal/README.md +20 -0
  330. package/schematics/migrations/core-mixins-removal/data.cjs +27 -0
  331. package/schematics/migrations/core-mixins-removal/index.cjs +18 -0
  332. package/schematics/migrations/core-mixins-removal/schema.json +15 -0
  333. package/schematics/migrations/css-selectors/README.md +2 -2
  334. package/schematics/migrations/css-selectors/{index.js → index.cjs} +4 -3
  335. package/schematics/migrations/datepicker-signals/README.md +24 -0
  336. package/schematics/migrations/datepicker-signals/data.cjs +49 -0
  337. package/schematics/migrations/datepicker-signals/index.cjs +18 -0
  338. package/schematics/migrations/datepicker-signals/schema.json +15 -0
  339. package/schematics/migrations/deprecated-icons/README.md +2 -2
  340. package/schematics/migrations/deprecated-icons/{index.js → index.cjs} +8 -7
  341. package/schematics/migrations/design-tokens-v4/README.md +75 -0
  342. package/schematics/migrations/design-tokens-v4/index.cjs +60 -0
  343. package/schematics/migrations/design-tokens-v4/schema.json +15 -0
  344. package/schematics/migrations/divider-signals-and-aria/README.md +47 -0
  345. package/schematics/migrations/divider-signals-and-aria/data.cjs +62 -0
  346. package/schematics/migrations/divider-signals-and-aria/index.cjs +212 -0
  347. package/schematics/migrations/divider-signals-and-aria/schema.json +15 -0
  348. package/schematics/migrations/dl-attribute-coercion/README.md +59 -0
  349. package/schematics/migrations/dl-attribute-coercion/data.cjs +85 -0
  350. package/schematics/migrations/dl-attribute-coercion/index.cjs +162 -0
  351. package/schematics/migrations/dl-attribute-coercion/schema.json +15 -0
  352. package/schematics/migrations/dl-standalone-names/README.md +49 -0
  353. package/schematics/migrations/dl-standalone-names/data.cjs +44 -0
  354. package/schematics/migrations/dl-standalone-names/index.cjs +322 -0
  355. package/schematics/migrations/dl-standalone-names/schema.json +20 -0
  356. package/schematics/migrations/dropdown-demote-overlay/README.md +137 -0
  357. package/schematics/migrations/dropdown-demote-overlay/data.cjs +84 -0
  358. package/schematics/migrations/dropdown-demote-overlay/index.cjs +289 -0
  359. package/schematics/migrations/dropdown-demote-overlay/schema.json +20 -0
  360. package/schematics/migrations/dropdown-signals/README.md +83 -0
  361. package/schematics/migrations/dropdown-signals/data.cjs +152 -0
  362. package/schematics/migrations/dropdown-signals/index.cjs +20 -0
  363. package/schematics/migrations/dropdown-signals/schema.json +20 -0
  364. package/schematics/migrations/empty-state-error-color/README.md +84 -0
  365. package/schematics/migrations/empty-state-error-color/data.cjs +85 -0
  366. package/schematics/migrations/empty-state-error-color/index.cjs +72 -0
  367. package/schematics/migrations/empty-state-error-color/schema.json +15 -0
  368. package/schematics/migrations/empty-state-size-attr/README.md +2 -2
  369. package/schematics/migrations/empty-state-size-attr/{index.js → index.cjs} +6 -5
  370. package/schematics/migrations/file-upload-cva-and-primitives/README.md +70 -0
  371. package/schematics/migrations/file-upload-cva-and-primitives/data.cjs +97 -0
  372. package/schematics/migrations/file-upload-cva-and-primitives/index.cjs +61 -0
  373. package/schematics/migrations/file-upload-cva-and-primitives/schema.json +15 -0
  374. package/schematics/migrations/file-upload-deprecated-outputs/README.md +90 -0
  375. package/schematics/migrations/file-upload-deprecated-outputs/data.cjs +20 -0
  376. package/schematics/migrations/file-upload-deprecated-outputs/index.cjs +71 -0
  377. package/schematics/migrations/file-upload-deprecated-outputs/schema.json +20 -0
  378. package/schematics/migrations/filter-bar-rename-action/README.md +183 -0
  379. package/schematics/migrations/filter-bar-rename-action/data.cjs +151 -0
  380. package/schematics/migrations/filter-bar-rename-action/index.cjs +178 -0
  381. package/schematics/migrations/filter-bar-rename-action/schema.json +20 -0
  382. package/schematics/migrations/filter-bar-signals/README.md +27 -16
  383. package/schematics/migrations/filter-bar-signals/{data.js → data.cjs} +1 -2
  384. package/schematics/migrations/filter-bar-signals/index.cjs +225 -0
  385. package/schematics/migrations/filter-bar-state-saving-default/README.md +53 -0
  386. package/schematics/migrations/filter-bar-state-saving-default/data.cjs +87 -0
  387. package/schematics/migrations/filter-bar-state-saving-default/index.cjs +62 -0
  388. package/schematics/migrations/filter-bar-state-saving-default/schema.json +15 -0
  389. package/schematics/migrations/flag-inner-html/README.md +67 -0
  390. package/schematics/migrations/flag-inner-html/data.cjs +58 -0
  391. package/schematics/migrations/flag-inner-html/index.cjs +62 -0
  392. package/schematics/migrations/flag-inner-html/schema.json +15 -0
  393. package/schematics/migrations/form-field-signals/README.md +125 -0
  394. package/schematics/migrations/form-field-signals/data.cjs +288 -0
  395. package/schematics/migrations/form-field-signals/index.cjs +383 -0
  396. package/schematics/migrations/form-field-signals/schema.json +20 -0
  397. package/schematics/migrations/icon-semantics-and-api/README.md +65 -0
  398. package/schematics/migrations/icon-semantics-and-api/data.cjs +97 -0
  399. package/schematics/migrations/icon-semantics-and-api/index.cjs +65 -0
  400. package/schematics/migrations/icon-semantics-and-api/schema.json +15 -0
  401. package/schematics/migrations/icons-replacement/README.md +5 -5
  402. package/schematics/migrations/icons-replacement/{index.js → index.cjs} +4 -3
  403. package/schematics/migrations/inline-edit-a11y-and-types/README.md +82 -0
  404. package/schematics/migrations/inline-edit-a11y-and-types/data.cjs +117 -0
  405. package/schematics/migrations/inline-edit-a11y-and-types/index.cjs +98 -0
  406. package/schematics/migrations/inline-edit-a11y-and-types/schema.json +20 -0
  407. package/schematics/migrations/input-number-surface/README.md +140 -0
  408. package/schematics/migrations/input-number-surface/data.cjs +135 -0
  409. package/schematics/migrations/input-number-surface/index.cjs +293 -0
  410. package/schematics/migrations/input-number-surface/schema.json +20 -0
  411. package/schematics/migrations/input-signals/README.md +20 -0
  412. package/schematics/migrations/input-signals/data.cjs +30 -0
  413. package/schematics/migrations/input-signals/index.cjs +18 -0
  414. package/schematics/migrations/input-signals/schema.json +15 -0
  415. package/schematics/migrations/link-deprecated-path/README.md +144 -0
  416. package/schematics/migrations/link-deprecated-path/index.cjs +20 -0
  417. package/schematics/migrations/link-deprecated-path/schema.json +20 -0
  418. package/schematics/migrations/link-signals/README.md +71 -0
  419. package/schematics/migrations/link-signals/data.cjs +116 -0
  420. package/schematics/migrations/link-signals/index.cjs +416 -0
  421. package/schematics/migrations/link-signals/schema.json +20 -0
  422. package/schematics/migrations/list-signals/README.md +22 -0
  423. package/schematics/migrations/list-signals/data.cjs +35 -0
  424. package/schematics/migrations/list-signals/index.cjs +18 -0
  425. package/schematics/migrations/list-signals/schema.json +15 -0
  426. package/schematics/migrations/list-tree-multiple-input/README.md +105 -0
  427. package/schematics/migrations/list-tree-multiple-input/data.cjs +74 -0
  428. package/schematics/migrations/list-tree-multiple-input/index.cjs +222 -0
  429. package/schematics/migrations/list-tree-multiple-input/schema.json +20 -0
  430. package/schematics/migrations/loader-overlay-signals/README.md +62 -0
  431. package/schematics/migrations/loader-overlay-signals/data.cjs +101 -0
  432. package/schematics/migrations/loader-overlay-signals/index.cjs +698 -0
  433. package/schematics/migrations/loader-overlay-signals/schema.json +20 -0
  434. package/schematics/migrations/loader-overlay-size-attr/README.md +2 -2
  435. package/schematics/migrations/loader-overlay-size-attr/{index.js → index.cjs} +6 -5
  436. package/schematics/migrations/locale-configuration-providers/README.md +163 -0
  437. package/schematics/migrations/locale-configuration-providers/data.cjs +257 -0
  438. package/schematics/migrations/locale-configuration-providers/index.cjs +295 -0
  439. package/schematics/migrations/locale-configuration-providers/schema.json +20 -0
  440. package/schematics/migrations/mandatory-peer-dependencies/README.md +70 -0
  441. package/schematics/migrations/mandatory-peer-dependencies/index.cjs +43 -0
  442. package/schematics/migrations/mandatory-peer-dependencies/schema.json +15 -0
  443. package/schematics/migrations/markdown-signals/README.md +58 -0
  444. package/schematics/migrations/markdown-signals/data.cjs +79 -0
  445. package/schematics/migrations/markdown-signals/index.cjs +640 -0
  446. package/schematics/migrations/markdown-signals/schema.json +20 -0
  447. package/schematics/migrations/modal-dialog-semantics/README.md +106 -0
  448. package/schematics/migrations/modal-dialog-semantics/data.cjs +110 -0
  449. package/schematics/migrations/modal-dialog-semantics/index.cjs +59 -0
  450. package/schematics/migrations/modal-dialog-semantics/schema.json +15 -0
  451. package/schematics/migrations/modal-signals/README.md +88 -0
  452. package/schematics/migrations/modal-signals/data.cjs +132 -0
  453. package/schematics/migrations/modal-signals/index.cjs +20 -0
  454. package/schematics/migrations/modal-signals/schema.json +20 -0
  455. package/schematics/migrations/navbar-signals-and-aria/README.md +111 -0
  456. package/schematics/migrations/navbar-signals-and-aria/data.cjs +198 -0
  457. package/schematics/migrations/navbar-signals-and-aria/index.cjs +569 -0
  458. package/schematics/migrations/navbar-signals-and-aria/schema.json +20 -0
  459. package/schematics/migrations/new-icons-pack/README.md +10 -10
  460. package/schematics/migrations/new-icons-pack/{index.js → index.cjs} +8 -7
  461. package/schematics/migrations/notification-center-signals/README.md +67 -0
  462. package/schematics/migrations/notification-center-signals/data.cjs +66 -0
  463. package/schematics/migrations/notification-center-signals/index.cjs +62 -0
  464. package/schematics/migrations/notification-center-signals/schema.json +15 -0
  465. package/schematics/migrations/option-signals/README.md +37 -0
  466. package/schematics/migrations/option-signals/data.cjs +86 -0
  467. package/schematics/migrations/option-signals/index.cjs +20 -0
  468. package/schematics/migrations/option-signals/schema.json +20 -0
  469. package/schematics/migrations/popover-leave-delay/README.md +51 -0
  470. package/schematics/migrations/popover-leave-delay/data.cjs +61 -0
  471. package/schematics/migrations/popover-leave-delay/index.cjs +55 -0
  472. package/schematics/migrations/popover-leave-delay/schema.json +15 -0
  473. package/schematics/migrations/progress-bar-percentage-and-aria/README.md +54 -0
  474. package/schematics/migrations/progress-bar-percentage-and-aria/data.cjs +76 -0
  475. package/schematics/migrations/progress-bar-percentage-and-aria/index.cjs +59 -0
  476. package/schematics/migrations/progress-bar-percentage-and-aria/schema.json +15 -0
  477. package/schematics/migrations/progress-spinner-signals/README.md +72 -0
  478. package/schematics/migrations/progress-spinner-signals/data.cjs +83 -0
  479. package/schematics/migrations/progress-spinner-signals/index.cjs +695 -0
  480. package/schematics/migrations/progress-spinner-signals/schema.json +20 -0
  481. package/schematics/migrations/query-list-signals/README.md +32 -0
  482. package/schematics/migrations/query-list-signals/data.cjs +70 -0
  483. package/schematics/migrations/query-list-signals/index.cjs +18 -0
  484. package/schematics/migrations/query-list-signals/schema.json +15 -0
  485. package/schematics/migrations/radio-signals-and-aria/README.md +82 -0
  486. package/schematics/migrations/radio-signals-and-aria/data.cjs +163 -0
  487. package/schematics/migrations/radio-signals-and-aria/index.cjs +40 -0
  488. package/schematics/migrations/radio-signals-and-aria/schema.json +20 -0
  489. package/schematics/migrations/read-state-dwell-handlers/README.md +125 -0
  490. package/schematics/migrations/read-state-dwell-handlers/data.cjs +45 -0
  491. package/schematics/migrations/read-state-dwell-handlers/index.cjs +216 -0
  492. package/schematics/migrations/read-state-dwell-handlers/schema.json +20 -0
  493. package/schematics/migrations/scrollbar-deprecated-path/README.md +128 -0
  494. package/schematics/migrations/scrollbar-deprecated-path/index.cjs +21 -0
  495. package/schematics/migrations/scrollbar-deprecated-path/schema.json +20 -0
  496. package/schematics/migrations/select-signal-inputs/README.md +61 -0
  497. package/schematics/migrations/select-signal-inputs/data.cjs +99 -0
  498. package/schematics/migrations/select-signal-inputs/index.cjs +58 -0
  499. package/schematics/migrations/select-signal-inputs/schema.json +15 -0
  500. package/schematics/migrations/sidepanel-non-modal-behavior/README.md +57 -0
  501. package/schematics/migrations/sidepanel-non-modal-behavior/data.cjs +111 -0
  502. package/schematics/migrations/sidepanel-non-modal-behavior/index.cjs +58 -0
  503. package/schematics/migrations/sidepanel-non-modal-behavior/schema.json +15 -0
  504. package/schematics/migrations/signal-inputs-subclasses/README.md +28 -0
  505. package/schematics/migrations/signal-inputs-subclasses/data.cjs +69 -0
  506. package/schematics/migrations/signal-inputs-subclasses/index.cjs +18 -0
  507. package/schematics/migrations/signal-inputs-subclasses/schema.json +15 -0
  508. package/schematics/migrations/split-button-optional-disabled/README.md +47 -0
  509. package/schematics/migrations/split-button-optional-disabled/data.cjs +53 -0
  510. package/schematics/migrations/split-button-optional-disabled/index.cjs +58 -0
  511. package/schematics/migrations/split-button-optional-disabled/schema.json +15 -0
  512. package/schematics/migrations/splitter-deprecated-path/README.md +136 -0
  513. package/schematics/migrations/splitter-deprecated-path/index.cjs +21 -0
  514. package/schematics/migrations/splitter-deprecated-path/schema.json +20 -0
  515. package/schematics/migrations/state-saving-default/README.md +67 -0
  516. package/schematics/migrations/state-saving-default/data.cjs +88 -0
  517. package/schematics/migrations/state-saving-default/index.cjs +63 -0
  518. package/schematics/migrations/state-saving-default/schema.json +15 -0
  519. package/schematics/migrations/table-cell-content/README.md +55 -0
  520. package/schematics/migrations/table-cell-content/data.cjs +66 -0
  521. package/schematics/migrations/table-cell-content/index.cjs +67 -0
  522. package/schematics/migrations/table-cell-content/schema.json +15 -0
  523. package/schematics/migrations/tabs-signals-and-aria/README.md +93 -0
  524. package/schematics/migrations/tabs-signals-and-aria/data.cjs +139 -0
  525. package/schematics/migrations/tabs-signals-and-aria/index.cjs +66 -0
  526. package/schematics/migrations/tabs-signals-and-aria/schema.json +15 -0
  527. package/schematics/migrations/tag-list-cleaner/README.md +58 -0
  528. package/schematics/migrations/tag-list-cleaner/data.cjs +42 -0
  529. package/schematics/migrations/tag-list-cleaner/index.cjs +197 -0
  530. package/schematics/migrations/tag-list-cleaner/schema.json +20 -0
  531. package/schematics/migrations/tag-slots/README.md +41 -0
  532. package/schematics/migrations/tag-slots/index.cjs +191 -0
  533. package/schematics/migrations/tag-slots/schema.json +20 -0
  534. package/schematics/migrations/tags-signals/README.md +85 -0
  535. package/schematics/migrations/tags-signals/data.cjs +103 -0
  536. package/schematics/migrations/tags-signals/index.cjs +674 -0
  537. package/schematics/migrations/tags-signals/schema.json +20 -0
  538. package/schematics/migrations/textarea-signals/README.md +72 -0
  539. package/schematics/migrations/textarea-signals/data.cjs +121 -0
  540. package/schematics/migrations/textarea-signals/index.cjs +380 -0
  541. package/schematics/migrations/textarea-signals/schema.json +20 -0
  542. package/schematics/migrations/time-range-title-for/README.md +164 -0
  543. package/schematics/migrations/time-range-title-for/data.cjs +139 -0
  544. package/schematics/migrations/time-range-title-for/index.cjs +164 -0
  545. package/schematics/migrations/time-range-title-for/schema.json +20 -0
  546. package/schematics/migrations/timepicker-signals/README.md +78 -0
  547. package/schematics/migrations/timepicker-signals/data.cjs +82 -0
  548. package/schematics/migrations/timepicker-signals/index.cjs +710 -0
  549. package/schematics/migrations/timepicker-signals/schema.json +20 -0
  550. package/schematics/migrations/timezone-grouping-utils/README.md +73 -0
  551. package/schematics/migrations/timezone-grouping-utils/data.cjs +101 -0
  552. package/schematics/migrations/timezone-grouping-utils/index.cjs +65 -0
  553. package/schematics/migrations/timezone-grouping-utils/schema.json +15 -0
  554. package/schematics/migrations/title-encapsulation/README.md +49 -0
  555. package/schematics/migrations/title-encapsulation/data.cjs +69 -0
  556. package/schematics/migrations/title-encapsulation/index.cjs +58 -0
  557. package/schematics/migrations/title-encapsulation/schema.json +15 -0
  558. package/schematics/migrations/toast-stack-and-defaults/README.md +102 -0
  559. package/schematics/migrations/toast-stack-and-defaults/data.cjs +79 -0
  560. package/schematics/migrations/toast-stack-and-defaults/index.cjs +54 -0
  561. package/schematics/migrations/toast-stack-and-defaults/schema.json +15 -0
  562. package/schematics/migrations/tooltip-pointer-events-and-types/README.md +53 -0
  563. package/schematics/migrations/tooltip-pointer-events-and-types/data.cjs +89 -0
  564. package/schematics/migrations/tooltip-pointer-events-and-types/index.cjs +61 -0
  565. package/schematics/migrations/tooltip-pointer-events-and-types/schema.json +15 -0
  566. package/schematics/migrations/top-bar-container-selectors/README.md +111 -0
  567. package/schematics/migrations/top-bar-container-selectors/data.cjs +56 -0
  568. package/schematics/migrations/top-bar-container-selectors/index.cjs +85 -0
  569. package/schematics/migrations/top-bar-container-selectors/schema.json +20 -0
  570. package/schematics/migrations/tree-select-signals/README.md +61 -0
  571. package/schematics/migrations/tree-select-signals/data.cjs +106 -0
  572. package/schematics/migrations/tree-select-signals/index.cjs +59 -0
  573. package/schematics/migrations/tree-select-signals/schema.json +15 -0
  574. package/schematics/migrations/tree-signals/README.md +82 -0
  575. package/schematics/migrations/tree-signals/data.cjs +123 -0
  576. package/schematics/migrations/tree-signals/index.cjs +55 -0
  577. package/schematics/migrations/tree-signals/schema.json +15 -0
  578. package/schematics/migrations/tree-state-saving-default/README.md +66 -0
  579. package/schematics/migrations/tree-state-saving-default/data.cjs +78 -0
  580. package/schematics/migrations/tree-state-saving-default/index.cjs +61 -0
  581. package/schematics/migrations/tree-state-saving-default/schema.json +15 -0
  582. package/schematics/migrations/username-pipe-injection/README.md +59 -0
  583. package/schematics/migrations/username-pipe-injection/data.cjs +78 -0
  584. package/schematics/migrations/username-pipe-injection/index.cjs +59 -0
  585. package/schematics/migrations/username-pipe-injection/schema.json +15 -0
  586. package/schematics/migrations/v20-upgrade/README.md +36 -16
  587. package/schematics/migrations/v20-upgrade/{data.js → data.cjs} +124 -77
  588. package/schematics/migrations/v20-upgrade/index.cjs +19 -0
  589. package/schematics/migrations/v21-upgrade/README.md +271 -0
  590. package/schematics/migrations/v21-upgrade/data.cjs +1371 -0
  591. package/schematics/migrations/v21-upgrade/index.cjs +95 -0
  592. package/schematics/migrations/v21-upgrade/schema.json +20 -0
  593. package/schematics/migrations/zoneless-change-detection/README.md +30 -0
  594. package/schematics/migrations/zoneless-change-detection/data.cjs +29 -0
  595. package/schematics/migrations/zoneless-change-detection/index.cjs +21 -0
  596. package/schematics/migrations/zoneless-change-detection/schema.json +15 -0
  597. package/schematics/migrations.json +401 -6
  598. package/schematics/ng-add/index.cjs +266 -0
  599. package/schematics/ng-add/schema.json +15 -0
  600. package/schematics/utils/{angular-parsing.js → angular-parsing.cjs} +2 -2
  601. package/schematics/utils/deprecated-path-migration.cjs +62 -0
  602. package/schematics/utils/html-config.cjs +148 -0
  603. package/schematics/utils/{icon-migration.js → icon-migration.cjs} +2 -2
  604. package/schematics/utils/list-item-pattern.cjs +16 -0
  605. package/schematics/utils/{package-config.js → package-config.cjs} +3 -32
  606. package/schematics/utils/project-files.cjs +25 -0
  607. package/schematics/utils/replacement-driver.cjs +337 -0
  608. package/schematics/utils/safe-rule.cjs +23 -0
  609. package/schematics/utils/signal-members-migration.cjs +779 -0
  610. package/schematics/utils/tag-patterns.cjs +21 -0
  611. package/schematics/utils/template-ref-access.cjs +155 -0
  612. package/schematics/utils/{typescript.js → typescript.cjs} +1 -1
  613. package/schematics/utils/warn-only-migration.cjs +52 -0
  614. package/schematics/utils/workspace-styles.cjs +123 -0
  615. package/scrollbar/{_scrollbar-component-theme.scss → deprecated/_scrollbar-component-theme.scss} +1 -1
  616. package/scrollbar/{scrollbar.component.scss → deprecated/scrollbar.component.scss} +1 -1
  617. package/scrollbar/native-scrollbar.scss +68 -0
  618. package/scrollbar/scrollbar-tokens.scss +13 -22
  619. package/scrollbar/scrollbar-track.scss +94 -0
  620. package/scrollbar/scrollbar-viewport.scss +33 -0
  621. package/scrollbar/scrollbar.scss +24 -0
  622. package/search-expandable/search-expandable-tokens.scss +4 -0
  623. package/search-expandable/search-expandable.scss +4 -2
  624. package/select/_select-theme.scss +3 -16
  625. package/select/select.scss +0 -6
  626. package/sidebar/sidebar.scss +20 -0
  627. package/sidepanel/_sidepanel-theme.scss +1 -1
  628. package/sidepanel/sidepanel-tokens.scss +7 -1
  629. package/sidepanel/sidepanel.scss +41 -5
  630. package/skeleton/skeleton-presets.scss +350 -0
  631. package/skeleton/skeleton-tokens.scss +127 -0
  632. package/skeleton/skeleton.scss +53 -45
  633. package/split-button/_split-button-theme.scss +4 -4
  634. package/split-button/split-button.scss +2 -6
  635. package/splitter/{_splitter-theme.scss → deprecated/_splitter-theme.scss} +1 -1
  636. package/splitter/deprecated/splitter.scss +51 -0
  637. package/splitter/splitter-tokens.scss +19 -0
  638. package/splitter/splitter.scss +148 -28
  639. package/table/_table-theme.scss +13 -12
  640. package/table/table-tokens.scss +8 -0
  641. package/table/table.scss +47 -22
  642. package/tabs/_tabs-common.scss +14 -14
  643. package/tabs/_tabs-theme.scss +4 -5
  644. package/tabs/tab-body.scss +49 -1
  645. package/tabs/tab-header.scss +2 -1
  646. package/tags/tag-list.scss +4 -0
  647. package/tags/tag.scss +19 -1
  648. package/time-range/time-range.scss +9 -0
  649. package/timezone/timezone-option.component.scss +4 -7
  650. package/timezone/timezone-select.component.scss +3 -0
  651. package/toast/_toast-theme.scss +1 -4
  652. package/toast/toast-container.component.scss +19 -13
  653. package/toast/toast-tokens.scss +12 -6
  654. package/toast/toast.component.scss +42 -19
  655. package/toggle/_toggle-theme.scss +4 -10
  656. package/toggle/toggle.scss +67 -26
  657. package/tooltip/_tooltip-theme.scss +7 -1
  658. package/tooltip/tooltip-tokens.scss +1 -2
  659. package/tooltip/tooltip.scss +55 -9
  660. package/top-bar/top-bar-tokens.scss +13 -2
  661. package/top-bar/top-bar.scss +24 -19
  662. package/tree/_tree-theme.scss +0 -1
  663. package/tree/toggle.scss +5 -9
  664. package/tree/tree-option.scss +2 -4
  665. package/tree/tree-tokens.scss +2 -1
  666. package/tree/tree.scss +3 -5
  667. package/tree-select/_tree-select-theme.scss +4 -15
  668. package/tree-select/tree-select-tokens.scss +16 -0
  669. package/tree-select/tree-select.scss +0 -6
  670. package/{accordion/index.d.ts → types/koobiq-components-accordion.d.ts} +102 -84
  671. package/{actions-panel/index.d.ts → types/koobiq-components-actions-panel.d.ts} +44 -59
  672. package/{alert/index.d.ts → types/koobiq-components-alert.d.ts} +8 -3
  673. package/types/koobiq-components-app-switcher.d.ts +406 -0
  674. package/types/koobiq-components-autocomplete.d.ts +443 -0
  675. package/{badge/index.d.ts → types/koobiq-components-badge.d.ts} +25 -20
  676. package/{breadcrumbs/index.d.ts → types/koobiq-components-breadcrumbs.d.ts} +97 -46
  677. package/types/koobiq-components-button-toggle.d.ts +340 -0
  678. package/types/koobiq-components-button.d.ts +296 -0
  679. package/types/koobiq-components-checkbox.d.ts +172 -0
  680. package/types/koobiq-components-clamped-text.d.ts +184 -0
  681. package/{code-block/index.d.ts → types/koobiq-components-code-block.d.ts} +150 -88
  682. package/{content-panel/index.d.ts → types/koobiq-components-content-panel.d.ts} +81 -25
  683. package/{core/index.d.ts → types/koobiq-components-core.d.ts} +2827 -865
  684. package/{datepicker/index.d.ts → types/koobiq-components-datepicker.d.ts} +161 -116
  685. package/types/koobiq-components-divider.d.ts +43 -0
  686. package/types/koobiq-components-dl.d.ts +235 -0
  687. package/{dropdown/index.d.ts → types/koobiq-components-dropdown.d.ts} +245 -239
  688. package/types/koobiq-components-ellipsis-center.d.ts +85 -0
  689. package/types/koobiq-components-empty-state.d.ts +106 -0
  690. package/{file-upload/index.d.ts → types/koobiq-components-file-upload.d.ts} +214 -107
  691. package/{filter-bar/index.d.ts → types/koobiq-components-filter-bar.d.ts} +410 -495
  692. package/types/koobiq-components-flag.d.ts +68 -0
  693. package/{form-field/index.d.ts → types/koobiq-components-form-field.d.ts} +167 -191
  694. package/types/koobiq-components-icon.d.ts +333 -0
  695. package/{inline-edit/index.d.ts → types/koobiq-components-inline-edit.d.ts} +109 -46
  696. package/types/koobiq-components-input.d.ts +477 -0
  697. package/types/koobiq-components-link-deprecated.d.ts +101 -0
  698. package/types/koobiq-components-link.d.ts +176 -0
  699. package/{list/index.d.ts → types/koobiq-components-list.d.ts} +162 -99
  700. package/types/koobiq-components-loader-overlay.d.ts +101 -0
  701. package/{markdown/index.d.ts → types/koobiq-components-markdown.d.ts} +16 -24
  702. package/types/koobiq-components-modal.d.ts +666 -0
  703. package/types/koobiq-components-navbar.d.ts +569 -0
  704. package/types/koobiq-components-notification-center.d.ts +500 -0
  705. package/{overflow-items/index.d.ts → types/koobiq-components-overflow-items.d.ts} +8 -22
  706. package/types/koobiq-components-popover.d.ts +468 -0
  707. package/types/koobiq-components-progress-bar.d.ts +67 -0
  708. package/{progress-spinner/index.d.ts → types/koobiq-components-progress-spinner.d.ts} +33 -10
  709. package/types/koobiq-components-radio.d.ts +294 -0
  710. package/{resizer/index.d.ts → types/koobiq-components-resizer.d.ts} +37 -2
  711. package/{scrollbar/index.d.ts → types/koobiq-components-scrollbar-deprecated.d.ts} +18 -1
  712. package/types/koobiq-components-scrollbar.d.ts +154 -0
  713. package/types/koobiq-components-search-expandable.d.ts +164 -0
  714. package/{select/index.d.ts → types/koobiq-components-select.d.ts} +360 -167
  715. package/types/koobiq-components-sidebar.d.ts +152 -0
  716. package/types/koobiq-components-sidepanel.d.ts +436 -0
  717. package/types/koobiq-components-skeleton.d.ts +234 -0
  718. package/types/koobiq-components-split-button.d.ts +65 -0
  719. package/{splitter/index.d.ts → types/koobiq-components-splitter-deprecated.d.ts} +44 -1
  720. package/types/koobiq-components-splitter.d.ts +406 -0
  721. package/types/koobiq-components-table.d.ts +44 -0
  722. package/types/koobiq-components-tabs.d.ts +888 -0
  723. package/{tags/index.d.ts → types/koobiq-components-tags.d.ts} +249 -133
  724. package/types/koobiq-components-textarea.d.ts +178 -0
  725. package/{time-range/index.d.ts → types/koobiq-components-time-range.d.ts} +135 -62
  726. package/types/koobiq-components-timepicker.d.ts +223 -0
  727. package/types/koobiq-components-timezone.d.ts +266 -0
  728. package/types/koobiq-components-title.d.ts +184 -0
  729. package/types/koobiq-components-toast.d.ts +289 -0
  730. package/types/koobiq-components-toggle.d.ts +121 -0
  731. package/types/koobiq-components-tooltip.d.ts +610 -0
  732. package/types/koobiq-components-top-bar.d.ts +61 -0
  733. package/types/koobiq-components-tree-select.d.ts +670 -0
  734. package/types/koobiq-components-tree.d.ts +1339 -0
  735. package/types/koobiq-components-username.d.ts +340 -0
  736. package/username/_username-theme.scss +35 -0
  737. package/username/username.scss +10 -34
  738. package/app-switcher/index.d.ts +0 -276
  739. package/autocomplete/index.d.ts +0 -286
  740. package/button/index.d.ts +0 -153
  741. package/button-toggle/index.d.ts +0 -162
  742. package/checkbox/index.d.ts +0 -163
  743. package/clamped-text/index.d.ts +0 -146
  744. package/core/styles/_tokens.scss +0 -7
  745. package/core/styles/common/_clearfix.scss +0 -13
  746. package/core/styles/common/_popup.scss +0 -6
  747. package/core/styles/functions/_index.scss +0 -3
  748. package/core/styles/functions/_number.scss +0 -60
  749. package/core/styles/functions/_string.scss +0 -18
  750. package/core/styles/theming/scrollbar-tokens.scss +0 -25
  751. package/core/styles/typography/_typography-utils.scss +0 -84
  752. package/divider/index.d.ts +0 -20
  753. package/dl/index.d.ts +0 -45
  754. package/ellipsis-center/index.d.ts +0 -71
  755. package/empty-state/index.d.ts +0 -45
  756. package/flag/index.d.ts +0 -44
  757. package/icon/index.d.ts +0 -200
  758. package/input/index.d.ts +0 -354
  759. package/link/index.d.ts +0 -56
  760. package/loader-overlay/index.d.ts +0 -57
  761. package/modal/index.d.ts +0 -339
  762. package/navbar/index.d.ts +0 -372
  763. package/notification-center/index.d.ts +0 -323
  764. package/popover/index.d.ts +0 -182
  765. package/prebuilt-themes/dark-theme.css +0 -1
  766. package/prebuilt-themes/light-theme.css +0 -1
  767. package/progress-bar/index.d.ts +0 -31
  768. package/radio/index.d.ts +0 -203
  769. package/schematics/migrations/alert-signals/index.js +0 -353
  770. package/schematics/migrations/filter-bar-signals/index.js +0 -319
  771. package/schematics/migrations/v20-upgrade/index.js +0 -225
  772. package/schematics/ng-add/index.js +0 -39
  773. package/search-expandable/index.d.ts +0 -101
  774. package/sidebar/index.d.ts +0 -94
  775. package/sidepanel/index.d.ts +0 -272
  776. package/skeleton/index.d.ts +0 -26
  777. package/split-button/index.d.ts +0 -46
  778. package/table/index.d.ts +0 -25
  779. package/tabs/index.d.ts +0 -677
  780. package/textarea/index.d.ts +0 -138
  781. package/timepicker/index.d.ts +0 -197
  782. package/timezone/index.d.ts +0 -125
  783. package/title/index.d.ts +0 -139
  784. package/toast/index.d.ts +0 -178
  785. package/toggle/index.d.ts +0 -104
  786. package/tooltip/index.d.ts +0 -335
  787. package/top-bar/index.d.ts +0 -33
  788. package/tree/index.d.ts +0 -802
  789. package/tree-select/index.d.ts +0 -475
  790. package/username/index.d.ts +0 -194
  791. /package/schematics/migrations/css-selectors/{data.js → data.cjs} +0 -0
  792. /package/schematics/migrations/deprecated-icons/{data.js → data.cjs} +0 -0
  793. /package/schematics/migrations/icons-replacement/{data.js → data.cjs} +0 -0
  794. /package/schematics/migrations/new-icons-pack/{data.js → data.cjs} +0 -0
  795. /package/schematics/utils/{ast.js → ast.cjs} +0 -0
  796. /package/schematics/utils/{messages.js → messages.cjs} +0 -0
  797. /package/{dynamic-translation/index.d.ts → types/koobiq-components-dynamic-translation.d.ts} +0 -0
  798. /package/{index.d.ts → types/koobiq-components.d.ts} +0 -0
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "koobiq-components-badge-signals",
4
+ "title": "Koobiq components badge signals 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 all auto-fix replacements. When false, prints what would change without writing."
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,129 @@
1
+ # button-state-and-styles
2
+
3
+ Migration schematic invoked automatically by `ng update @koobiq/components@21`
4
+ (registered for `21.0.0-0`). Migrates consumers of the v21.0.0 button review.
5
+
6
+ ## Background
7
+
8
+ The review of `[kbq-button]` changed three unrelated things at once, which is why
9
+ one schematic covers all of them:
10
+
11
+ 1. **Host attributes.** `disabled` and `aria-disabled` are now chosen by host
12
+ tag instead of being applied to both; `tabindex` is omitted when it would be
13
+ redundant; an `<a kbq-button>` without `href` is announced as a button.
14
+ 2. **Button group ownership.** `KbqButtonGroupRoot` used to overwrite every
15
+ nested button's `kbqStyle` and `color` on each update. It now treats a button
16
+ that sets them itself as the owner, and its `disabled` became additive.
17
+ 3. **Styles.** Four physical border-radius mixins were replaced by logical ones,
18
+ the `.kbq-progress` utility moved into `kbq-core()`, and two custom properties
19
+ that nothing read were dropped.
20
+
21
+ ## What it does
22
+
23
+ The schematic walks every `.ts`, `.html`, `.scss` and `.css` file in the project
24
+ (skipping `node_modules` and `dist`).
25
+
26
+ | Auto-fix | Where |
27
+ | --------------------------------------------------------------------------- | ---------------- |
28
+ | `@include border-right-radius(…)` → `@include border-inline-end-radius(…)` | `.scss` / `.css` |
29
+ | `@include border-left-radius(…)` → `@include border-inline-start-radius(…)` | `.scss` / `.css` |
30
+ | `@include border-top-radius(…)` → `@include border-block-start-radius(…)` | `.scss` / `.css` |
31
+ | `@include border-bottom-radius(…)` → `@include border-block-end-radius(…)` | `.scss` / `.css` |
32
+
33
+ This is the only mandatory mechanical change in the release: the four mixins were
34
+ removed from `core/styles/common/_groups-mixins.scss` and
35
+ `core/styles/common/_groups.scss` (the latter re-exported through
36
+ `core/styles/common/_index.scss`), so an unmigrated stylesheet no longer compiles.
37
+
38
+ The rewrite is anchored on `@include`, because these identifiers only ever appear
39
+ as Sass mixin calls. A CSS declaration (`border-top-left-radius`), a custom
40
+ property (`--border-top-radius`) or a comment mentioning the old name is never
41
+ touched.
42
+
43
+ > **The replacement is not a pure rename.** `border-inline-end-radius` follows
44
+ > `dir`, so under `dir="rtl"` it rounds the corners `border-right-radius` did
45
+ > not. That is the intent — the library moved its own group styling the same way
46
+ > — but a physically-designed RTL layout will change.
47
+
48
+ ## Group ownership findings
49
+
50
+ Templates are **parsed**, and a button is reported only when it sits inside a
51
+ group (`kbqButtonGroupRoot`, `<kbq-button-group>` or `[kbq-button-group]`) **and**
52
+ declares a `kbqStyle`, `color` or `disabled` of its own — in any binding form
53
+ (`color="…"`, `[color]="…"`, `bind-color="…"`). A standalone button is
54
+ unaffected by the ownership rule, so reporting it would be noise.
55
+
56
+ ```html
57
+ <div kbqButtonGroupRoot [kbqStyle]="groupStyle">
58
+ <button kbq-button [kbqStyle]="ownStyle">Reported — the group no longer wins</button>
59
+ <button kbq-button>Not reported — still inherits from the group</button>
60
+ </div>
61
+ ```
62
+
63
+ Nesting is tracked through the traversal, so a button inside an `@if` block, or a
64
+ group nested in another group, is found once. Findings carry a line number; for
65
+ an inline `@Component({ template })` it is offset to point into the `.ts` file.
66
+
67
+ Template rules are applied to `.ts` files **only inside inline
68
+ `@Component({ template })` literals**, located through the TypeScript AST — a
69
+ `template` property of some other object is not a component template.
70
+
71
+ ## What it warns about
72
+
73
+ Nothing below is auto-fixed: each needs a decision, and rewriting it blind would
74
+ be wrong more often than right.
75
+
76
+ **`.ts`**
77
+
78
+ | Trigger | Why |
79
+ | ------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
80
+ | `KbqButtonGroupRoot` | `disabled` is now `boolean \| undefined` and additive — re-enabling the group no longer enables a button disabled through its own input |
81
+ | `KbqButtonCssStyler` | `nativeElement` became `readonly`; `icons` is typed `Signal<readonly KbqIcon[]>` instead of `readonly any[]` |
82
+ | `getAttribute('disabled')` / `hasAttribute` | `<a kbq-button>` no longer renders `disabled`; `<button kbq-button>` no longer renders `aria-disabled` |
83
+ | `KBQ_LOCALE_DATA` / `.addLocale(` | locale data gained an `a11y` section; custom data without it falls back to the ru-RU accessible names |
84
+
85
+ **`.scss` / `.css`**
86
+
87
+ | Trigger | Why |
88
+ | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
89
+ | `--kbq-button-icon-size-vertical-padding` | removed — nothing read it even before 21.0.0, so the override was already inert |
90
+ | `--kbq-button-icon-size-content-padding` | same |
91
+ | `[disabled]` in a file mentioning `kbq-button` | `a[kbq-button][disabled]` never matches now — use `.kbq-disabled` or `[aria-disabled="true"]` |
92
+ | `@use '…/core/styles/common[/animation]'` | the import no longer emits `.kbq-progress` or its keyframes; they moved into the `kbq-progress()` mixin |
93
+
94
+ A template that mentions a group but fails to parse is reported rather than
95
+ guessed at, because a regex cannot tell which buttons are inside the group.
96
+
97
+ ## Behaviour note
98
+
99
+ Printed once per run, since none of it needs a code change but all of it is
100
+ visible in tests and screenshots:
101
+
102
+ - `<a kbq-button [disabled]>` drops `disabled`, keeps `aria-disabled="true"`, `tabindex="-1"` and `.kbq-disabled`
103
+ - `<button kbq-button [disabled]>` drops `aria-disabled`, keeps the native `disabled`
104
+ - `<button kbq-button>` no longer renders `tabindex="0"` (anchors still do)
105
+ - `<a kbq-button>` without `href` is announced as `role="button"`
106
+ - every `[kbqDropdownTriggerFor]` renders `aria-expanded`
107
+ - the built-in icon-only buttons render a localized `aria-label`
108
+ - icon gaps and group corner radii follow `dir`
109
+ - `.kbq-progress` is emitted by `kbq-core()` only
110
+
111
+ ## Usage
112
+
113
+ ```bash
114
+ # automatically, as part of the update
115
+ ng update @koobiq/components@21
116
+
117
+ # or manually
118
+ ng g @koobiq/components:button-state-and-styles --project "<your project>"
119
+
120
+ # dry run — report without writing
121
+ ng g @koobiq/components:button-state-and-styles --project "<your project>" --fix false
122
+ ```
123
+
124
+ ## Options
125
+
126
+ | Option | Default | Description |
127
+ | ----------- | ------- | -------------------------------------------------------------- |
128
+ | `--project` | — | Project to migrate. Omitted, the migration runs over the tree. |
129
+ | `--fix` | `true` | When `false`, prints what would change without writing. |
@@ -0,0 +1,136 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Replacement data for the v21.0.0 button review.
5
+ *
6
+ * Three unrelated clusters landed together and are migrated by one schematic
7
+ * because they all originate from the same release:
8
+ *
9
+ * 1. Host attributes of `[kbq-button]` — `disabled` / `aria-disabled` are now
10
+ * chosen by host tag, `tabindex` is omitted when redundant, and an `<a>`
11
+ * without `href` is announced as a button.
12
+ * 2. `KbqButtonGroupRoot` no longer overwrites a `kbqStyle` / `color` the button
13
+ * sets itself, and its `disabled` became additive.
14
+ * 3. Styles — four physical border-radius mixins were replaced by logical ones,
15
+ * the `.kbq-progress` utility moved into `kbq-core()`, and two dead custom
16
+ * properties were dropped.
17
+ */
18
+ /**
19
+ * Physical border-radius mixins removed from `core/styles/common/_groups-mixins.scss`
20
+ * and `core/styles/common/_groups.scss` (the latter re-exported through
21
+ * `core/styles/common/_index.scss`), mapped to the logical mixins that replaced them.
22
+ *
23
+ * The replacement is not a rename: `border-inline-end-radius` follows `dir`, so
24
+ * under `dir="rtl"` it rounds the corners the old `border-right-radius` did not.
25
+ * That is the point of the change — the library moved its own group styling the
26
+ * same way — but it is a behaviour change for a physically-designed RTL layout.
27
+ */
28
+ const REMOVED_MIXINS = {
29
+ 'border-right-radius': 'border-inline-end-radius',
30
+ 'border-left-radius': 'border-inline-start-radius',
31
+ 'border-top-radius': 'border-block-start-radius',
32
+ 'border-bottom-radius': 'border-block-end-radius'
33
+ };
34
+ /**
35
+ * Matches a mixin call, optionally namespaced (`@include groups-mixins.border-right-radius(0)`).
36
+ *
37
+ * Anchored on `@include` on purpose: these identifiers only ever appear as Sass
38
+ * mixin calls, so a CSS declaration, a custom property name or a comment that
39
+ * happens to contain the same text is never rewritten.
40
+ */
41
+ const MIXIN_INCLUDE_PATTERN = /(@include\s+(?:[\w$-]+\.)?)(border-(?:right|left|top|bottom)-radius)\b/g;
42
+ /** Attribute / element names identifying a button group in a template. */
43
+ const GROUP_ATTRIBUTES = ['kbqButtonGroupRoot', 'kbq-button-group'];
44
+ const GROUP_ELEMENT = 'kbq-button-group';
45
+ /** The button attribute marking a host as `KbqButton`. */
46
+ const BUTTON_ATTRIBUTE = 'kbq-button';
47
+ /**
48
+ * Inputs a nested button may now own. A group used to overwrite these on every
49
+ * update; it now leaves them alone once the button sets them itself.
50
+ */
51
+ const OWNED_INPUTS = ['kbqStyle', 'color', 'disabled'];
52
+ /** Reported for a nested button that declares one of {@link OWNED_INPUTS}. */
53
+ const groupOverrideMessage = (inputs) => `This button sets ${inputs.map((input) => `\`${input}\``).join(' / ')} inside a button group. ` +
54
+ 'Until 21.0.0 the group overwrote that value on every update; it now treats the button as the owner ' +
55
+ 'and leaves it alone. Drop the binding if you wanted the group value, or keep it if you wanted the override.';
56
+ /** Warnings for `.ts` files. */
57
+ const tsWarnPatterns = [
58
+ {
59
+ pattern: '\\bKbqButtonGroupRoot\\b',
60
+ message: 'KbqButtonGroupRoot changed: `disabled` now reads `boolean | undefined` (it stays undefined while ' +
61
+ 'the input is unbound) and is additive — re-enabling the group no longer enables a button disabled ' +
62
+ 'through its own input. Style and color are no longer propagated to a button that sets them itself.'
63
+ },
64
+ {
65
+ pattern: '\\bKbqButtonCssStyler\\b',
66
+ message: 'KbqButtonCssStyler.nativeElement is now readonly and `icons` is typed Signal<readonly KbqIcon[]> ' +
67
+ 'instead of readonly any[]. Assignments and untyped member access no longer compile.'
68
+ },
69
+ {
70
+ pattern: '(get|has)Attribute\\(\\s*[\'"]disabled[\'"]',
71
+ message: 'The disabled attribute moved: `<a kbq-button>` no longer renders `disabled` (it renders ' +
72
+ 'aria-disabled="true", tabindex="-1" and .kbq-disabled), and `<button kbq-button>` no longer renders ' +
73
+ 'aria-disabled (only the native disabled attribute). Assertions and queries need updating.'
74
+ },
75
+ {
76
+ pattern: '\\bKBQ_LOCALE_DATA\\b|\\.addLocale\\(',
77
+ message: 'Locale data gained an `a11y` section holding the accessible names of the built-in icon-only buttons ' +
78
+ '(modal / popover / sidepanel close, calendar navigation, inline-edit save and cancel, and others). ' +
79
+ 'Custom locale data without it falls back to the ru-RU strings — add the section, or provide ' +
80
+ 'kbqA11yLocaleConfigurationProvider(...).'
81
+ }
82
+ ];
83
+ /** Warnings for `.scss` / `.css` files. */
84
+ const styleWarnPatterns = [
85
+ {
86
+ pattern: '--kbq-button-icon-size-(vertical-padding|content-padding)\\b',
87
+ message: 'The --kbq-button-icon-size-vertical-padding and --kbq-button-icon-size-content-padding custom ' +
88
+ 'properties were removed. Nothing read them even before 21.0.0, so an override was already inert — ' +
89
+ 'delete it. Icon buttons use --kbq-button-icon-size-horizontal-padding and ' +
90
+ '--kbq-button-size-content-padding.'
91
+ },
92
+ {
93
+ pattern: '^(?=[\\s\\S]*kbq-button)(?=[\\s\\S]*\\[disabled\\])',
94
+ message: 'This stylesheet mentions kbq-button and a [disabled] selector. A disabled `<a kbq-button>` no ' +
95
+ 'longer carries the disabled attribute, so `a[kbq-button][disabled]` never matches now — use ' +
96
+ '.kbq-disabled or [aria-disabled="true"]. Selectors targeting `<button kbq-button>` still work.'
97
+ },
98
+ {
99
+ pattern: '@use\\s+[\'"][^\'"]*core/styles/common(/animation)?[\'"]',
100
+ message: 'Importing core/styles/common/animation no longer emits the `.kbq-progress` rule or its keyframes — ' +
101
+ 'they moved into the `kbq-progress()` mixin, emitted once by `kbq-core()`. If you relied on the ' +
102
+ 'import to ship that CSS, include the prebuilt theme (which calls kbq-core()) or add ' +
103
+ '`@include animation.kbq-progress();` yourself.'
104
+ }
105
+ ];
106
+ /** Reported when a template mentions a button group but cannot be parsed, so nothing was inspected in it. */
107
+ const UNPARSEABLE_TEMPLATE_MESSAGE = 'This template mentions a button group but could not be parsed, so it was not inspected. ' +
108
+ 'Check by hand whether a nested button sets its own kbqStyle / color / disabled.';
109
+ /**
110
+ * Behaviour note printed once per run. Nothing here needs a code change, but all
111
+ * of it is observable in tests, stylesheets and screenshots.
112
+ */
113
+ const BEHAVIOUR_NOTE = [
114
+ 'Rendered attributes changed for [kbq-button]:',
115
+ ' - <a kbq-button [disabled]> drops `disabled`, keeps aria-disabled="true" + tabindex="-1" + .kbq-disabled',
116
+ ' - <button kbq-button [disabled]> drops `aria-disabled`, keeps the native `disabled`',
117
+ ' - <button kbq-button> no longer renders tabindex="0" (anchors still do)',
118
+ ' - <a kbq-button> without href is announced as role="button"',
119
+ ' - every [kbqDropdownTriggerFor] now renders aria-expanded',
120
+ ' - the built-in icon-only buttons now render a localized aria-label',
121
+ 'Icon gaps and group corner radii follow `dir` now, so an RTL layout mirrors instead of staying physical.',
122
+ 'The .kbq-progress utility is emitted by kbq-core() only — it is no longer part of button.css / toggle.css.',
123
+ 'Snapshot and DOM-query tests covering any of the above need updating.'
124
+ ];
125
+
126
+ exports.BEHAVIOUR_NOTE = BEHAVIOUR_NOTE;
127
+ exports.BUTTON_ATTRIBUTE = BUTTON_ATTRIBUTE;
128
+ exports.GROUP_ATTRIBUTES = GROUP_ATTRIBUTES;
129
+ exports.GROUP_ELEMENT = GROUP_ELEMENT;
130
+ exports.MIXIN_INCLUDE_PATTERN = MIXIN_INCLUDE_PATTERN;
131
+ exports.OWNED_INPUTS = OWNED_INPUTS;
132
+ exports.REMOVED_MIXINS = REMOVED_MIXINS;
133
+ exports.UNPARSEABLE_TEMPLATE_MESSAGE = UNPARSEABLE_TEMPLATE_MESSAGE;
134
+ exports.groupOverrideMessage = groupOverrideMessage;
135
+ exports.styleWarnPatterns = styleWarnPatterns;
136
+ exports.tsWarnPatterns = tsWarnPatterns;
@@ -0,0 +1,221 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var ts = require('typescript');
6
+ var utils_ast = require('../../utils/ast.cjs');
7
+ var utils_messages = require('../../utils/messages.cjs');
8
+ var utils_packageConfig = require('../../utils/package-config.cjs');
9
+ var utils_projectFiles = require('../../utils/project-files.cjs');
10
+ var utils_typescript = require('../../utils/typescript.cjs');
11
+ var migrations_buttonStateAndStyles_data = require('./data.cjs');
12
+ require('@angular-devkit/schematics');
13
+ require('@schematics/angular/utility');
14
+
15
+ const TS_EXT = '.ts';
16
+ const HTML_EXT = '.html';
17
+ const SCSS_EXT = '.scss';
18
+ const CSS_EXT = '.css';
19
+ const LABEL = '[button-state-and-styles]';
20
+ /** `kbqStyle`, `[kbqStyle]` and `bind-kbqStyle` all name the same input. */
21
+ function attributeName(name) {
22
+ return utils_ast.getSimpleAttributeName(name).replace(/^bind-/, '');
23
+ }
24
+ function hasAttribute(element, name) {
25
+ return (element.attrs ?? []).some((attr) => typeof attr.name === 'string' && attributeName(attr.name) === name);
26
+ }
27
+ function isGroup(element) {
28
+ return element.name === migrations_buttonStateAndStyles_data.GROUP_ELEMENT || migrations_buttonStateAndStyles_data.GROUP_ATTRIBUTES.some((name) => hasAttribute(element, name));
29
+ }
30
+ /** The owned inputs a `[kbq-button]` element declares, in template order. */
31
+ function ownedInputs(element) {
32
+ if (!hasAttribute(element, migrations_buttonStateAndStyles_data.BUTTON_ATTRIBUTE))
33
+ return [];
34
+ return migrations_buttonStateAndStyles_data.OWNED_INPUTS.filter((input) => hasAttribute(element, input));
35
+ }
36
+ /**
37
+ * Collects nested buttons that declare a `kbqStyle` / `color` / `disabled` of
38
+ * their own.
39
+ *
40
+ * Only buttons *inside* a group are reported: the ownership rule exists solely
41
+ * to decide who wins between a group and its child, so a standalone button is
42
+ * unaffected and reporting it would be noise. Nesting is tracked through the
43
+ * traversal rather than by matching the whole subtree at once, so a group nested
44
+ * in another group still reports its children once.
45
+ */
46
+ class GroupOverrideCollector {
47
+ constructor() {
48
+ this.overrides = [];
49
+ this.groupDepth = 0;
50
+ }
51
+ visitElement(element) {
52
+ const entered = isGroup(element);
53
+ if (entered)
54
+ this.groupDepth++;
55
+ if (this.groupDepth > 0) {
56
+ const inputs = ownedInputs(element);
57
+ if (inputs.length) {
58
+ this.overrides.push({ line: element.sourceSpan.start.line + 1, inputs });
59
+ }
60
+ }
61
+ this.visitChildren(element);
62
+ if (entered)
63
+ this.groupDepth--;
64
+ }
65
+ visitBlock(block) {
66
+ this.visitChildren(block);
67
+ }
68
+ visitChildren(node) {
69
+ for (const child of node.children ?? []) {
70
+ child.visit(this);
71
+ }
72
+ }
73
+ visitAttribute() { }
74
+ visitText() { }
75
+ visitComment() { }
76
+ visitExpansion() { }
77
+ visitExpansionCase() { }
78
+ visitBlockParameter() { }
79
+ visitLetDeclaration() { }
80
+ }
81
+ /**
82
+ * Reports nested buttons owning a group-propagated input.
83
+ *
84
+ * Returns `null` when the template could not be parsed — guessing at the
85
+ * structure with a regex would report buttons that are not in a group at all.
86
+ */
87
+ async function inspectTemplate(template) {
88
+ // Parsing every template of the project is not free, and a template with no
89
+ // group in it cannot produce a finding.
90
+ if (!migrations_buttonStateAndStyles_data.GROUP_ATTRIBUTES.some((name) => template.includes(name)))
91
+ return [];
92
+ const parsed = await utils_typescript.parseTemplate(template);
93
+ if (!parsed.tree)
94
+ return null;
95
+ const collector = new GroupOverrideCollector();
96
+ utils_ast.visitAll(collector, parsed.tree.rootNodes);
97
+ return collector.overrides;
98
+ }
99
+ /**
100
+ * Applies the template inspection to every inline `@Component({ template })`
101
+ * literal of a `.ts` source. Line numbers are reported relative to the template,
102
+ * which is what a reader of an inline template needs.
103
+ */
104
+ async function inspectInlineTemplates(content, sourceFile, onParseError) {
105
+ const overrides = [];
106
+ for (const { start, end } of utils_typescript.collectInlineTemplateRanges(sourceFile)) {
107
+ const found = await inspectTemplate(content.slice(start, end));
108
+ if (found === null) {
109
+ onParseError();
110
+ continue;
111
+ }
112
+ // Offset by where the literal starts, so the number points into the file.
113
+ const lineOffset = content.slice(0, start).split('\n').length - 1;
114
+ overrides.push(...found.map(({ line, inputs }) => ({ line: line + lineOffset, inputs })));
115
+ }
116
+ return overrides;
117
+ }
118
+ const createSourceFile = (fileName, content) => ts.createSourceFile(fileName, content, ts.ScriptTarget.Latest, true, ts.ScriptKind.TS);
119
+ /**
120
+ * Rewrites `@include border-<side>-radius(…)` to its logical counterpart.
121
+ *
122
+ * The mixins were removed outright, so an unmigrated stylesheet fails to compile
123
+ * — this is the one change in the release that is both mechanical and mandatory.
124
+ */
125
+ function migrateMixinIncludes(content) {
126
+ return content.replace(migrations_buttonStateAndStyles_data.MIXIN_INCLUDE_PATTERN, (full, prefix, name) => {
127
+ const replacement = migrations_buttonStateAndStyles_data.REMOVED_MIXINS[name];
128
+ return replacement ? `${prefix}${replacement}` : full;
129
+ });
130
+ }
131
+ function logWarnings(context, filePath, content, patterns) {
132
+ for (const { pattern, message } of patterns) {
133
+ if (new RegExp(pattern).test(content)) {
134
+ utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${message}`]);
135
+ }
136
+ }
137
+ }
138
+ function logGroupOverrides(context, filePath, overrides) {
139
+ for (const { line, inputs } of overrides) {
140
+ utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}:${line}`, ` ${migrations_buttonStateAndStyles_data.groupOverrideMessage(inputs)}`]);
141
+ }
142
+ }
143
+ function pickWarnPatterns(filePath) {
144
+ if (filePath.endsWith(TS_EXT))
145
+ return migrations_buttonStateAndStyles_data.tsWarnPatterns;
146
+ if (filePath.endsWith(HTML_EXT))
147
+ return [];
148
+ return migrations_buttonStateAndStyles_data.styleWarnPatterns;
149
+ }
150
+ function isMigratableFile(filePath) {
151
+ return (filePath.endsWith(TS_EXT) ||
152
+ filePath.endsWith(HTML_EXT) ||
153
+ filePath.endsWith(SCSS_EXT) ||
154
+ filePath.endsWith(CSS_EXT));
155
+ }
156
+ function buttonStateAndStyles(options) {
157
+ return async (tree, context) => {
158
+ const { project } = options;
159
+ // `ng update` invokes migrations with no options at all, and migrations.json
160
+ // declares no schema, so the schema default never reaches us — applying the
161
+ // fix is the intended behaviour there.
162
+ const fix = options.fix ?? true;
163
+ const projectDefinition = await utils_packageConfig.setupOptions(project, tree);
164
+ const root = projectDefinition?.root ?? '';
165
+ const rootDir = root ? tree.getDir(root) : tree.root;
166
+ const filePaths = [];
167
+ utils_projectFiles.visitProjectFiles(rootDir, (filePath) => {
168
+ if (!isMigratableFile(filePath))
169
+ return;
170
+ filePaths.push(filePath);
171
+ });
172
+ let touched = 0;
173
+ for (const filePath of filePaths) {
174
+ const originalContent = tree.read(filePath)?.toString();
175
+ if (!originalContent)
176
+ continue;
177
+ let content = originalContent;
178
+ let unparseable = false;
179
+ const reportParseError = () => (unparseable = true);
180
+ let overrides = [];
181
+ if (filePath.endsWith(TS_EXT)) {
182
+ overrides = await inspectInlineTemplates(content, createSourceFile(filePath, content), reportParseError);
183
+ }
184
+ else if (filePath.endsWith(HTML_EXT)) {
185
+ const found = await inspectTemplate(content);
186
+ if (found === null)
187
+ reportParseError();
188
+ else
189
+ overrides = found;
190
+ }
191
+ else {
192
+ content = migrateMixinIncludes(content);
193
+ }
194
+ // Warn on what is left over, so an auto-fixed usage does not also produce
195
+ // a "manual migration required" note. In dry-run mode the fix is not
196
+ // written, so report against the original content.
197
+ logWarnings(context, filePath, fix ? content : originalContent, pickWarnPatterns(filePath));
198
+ logGroupOverrides(context, filePath, overrides);
199
+ if (unparseable) {
200
+ utils_messages.logMessage(context.logger, [`${LABEL} ${filePath}`, ` ${migrations_buttonStateAndStyles_data.UNPARSEABLE_TEMPLATE_MESSAGE}`]);
201
+ }
202
+ if (content === originalContent)
203
+ continue;
204
+ touched++;
205
+ if (fix) {
206
+ tree.overwrite(filePath, content);
207
+ }
208
+ else {
209
+ utils_messages.logMessage(context.logger, [`${LABEL} would update ${filePath} (run with --fix to apply)`]);
210
+ }
211
+ }
212
+ utils_messages.logMessage(context.logger, [
213
+ `${LABEL} processed tree under "${root || '<workspace root>'}", ` +
214
+ `${fix ? 'updated' : 'would update'} ${touched} file(s).`,
215
+ '',
216
+ ...migrations_buttonStateAndStyles_data.BEHAVIOUR_NOTE
217
+ ]);
218
+ };
219
+ }
220
+
221
+ exports.default = buttonStateAndStyles;
@@ -0,0 +1,20 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "koobiq-components-button-state-and-styles",
4
+ "title": "Koobiq components button state and styles upgrade",
5
+ "type": "object",
6
+ "properties": {
7
+ "project": {
8
+ "type": "string",
9
+ "description": "Name of the project to migrate. If omitted, the migration runs over the whole tree.",
10
+ "$default": {
11
+ "$source": "projectName"
12
+ }
13
+ },
14
+ "fix": {
15
+ "type": "boolean",
16
+ "default": true,
17
+ "description": "When true, applies all auto-fix replacements. When false, prints what would change without writing."
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,73 @@
1
+ ### Button Supported Colors schematics
2
+
3
+ This schematic migrates consumers to the narrowed button color set. It includes:
4
+
5
+ - Removing a `color` written as a literal outside the supported set from `[kbq-button]`, `kbq-button-group`,
6
+ `[kbqButtonGroupRoot]` and `kbq-split-button` hosts
7
+ - Reporting the `color` bindings it cannot resolve, and the members still typed `KbqComponentColors` /
8
+ `ThemePalette`
9
+ - Reporting stylesheets that target the old default color of a transparent button
10
+ - A note about the behaviour changes that have no textual signature to search for
11
+
12
+ #### Why
13
+
14
+ `color` used to accept any `KbqComponentColors` / `ThemePalette` value, but `kbq-button-theme()` only ever
15
+ styled the pairs the design system defines:
16
+
17
+ | `kbqStyle` | supported colors |
18
+ | ------------- | ----------------------------- |
19
+ | `filled` | `contrast`, `contrast-fade` |
20
+ | `outline` | `theme-fade`, `contrast-fade` |
21
+ | `transparent` | `theme`, `contrast` |
22
+
23
+ Every other combination matched no rule at all, so the button fell through to the user-agent appearance — a
24
+ grey OS button. The most visible case was `transparent` with no explicit color: the shared default was
25
+ `contrast-fade`, which is not one of the two colors the transparent block styled.
26
+
27
+ Each style now carries its own default color, every style gained an unqualified fallback rule, and `color` was
28
+ narrowed to the four colors a button supports.
29
+
30
+ #### What is fixed
31
+
32
+ A `color` written as a literal — `color="error"`, `[color]="'error'"`, `bind-color="'error'"` — and holding one
33
+ of `error`, `warning`, `success`, `empty`, `primary`, `secondary`, `info` is removed.
34
+
35
+ This is appearance-preserving. The button already rendered in its style's default color: an unsupported color
36
+ matched no theme rule, and the fallback rule added by this release resolves to exactly the tokens the style's
37
+ default color branch resolves to. Removing the binding only drops a value that never had an effect, and fixes
38
+ the type error.
39
+
40
+ #### What is reported, not fixed
41
+
42
+ | Case | Why |
43
+ | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
44
+ | `[color]="colors.Error"` | the expression is not resolved, so the member name alone does not prove which enum it comes from — deleting it blind could change colors |
45
+ | `button.color = KbqComponentColors.Error` | same, on the programmatic path |
46
+ | `kbqOkType` | narrowed from `string` to `KbqButtonColor` on `KbqModalComponent` and `ModalOptions` |
47
+ | a member typed `KbqComponentColors` / `ThemePalette` | the wide type no longer assigns to a button `color` binding |
48
+ | `.kbq-button_transparent.kbq-contrast-fade` | no longer matches — a transparent button defaults to `contrast` now |
49
+
50
+ Watch for values built inside `Array.from` / `map` callbacks: without a return-type annotation an enum member
51
+ widens to the whole enum and stops assigning even when every value is supported. Annotate the callback:
52
+
53
+ ```ts
54
+ Array.from({ length: 3 }, (_, i): ExampleAction => ({ color: KbqComponentColors.ContrastFade, ... }))
55
+ ```
56
+
57
+ #### Behaviour changes with no textual signature
58
+
59
+ - A transparent button with no explicit color renders in `contrast` instead of `contrast-fade`. It used to
60
+ match no theme rule and rendered as a native button, so this is the fix — but a stylesheet or a `color`
61
+ getter read that expected `contrast-fade` needs updating.
62
+ - A style paired with a color the design system does not define now renders in the style default instead of
63
+ unstyled.
64
+ - `KbqButtonGroupRoot` no longer propagates a color it was never given, so each nested button follows the
65
+ default color of its own style. A color bound on the group still wins over that default.
66
+
67
+ #### Usage
68
+
69
+ ```bash
70
+ ng generate @koobiq/components/schematics:button-supported-colors
71
+ ```
72
+
73
+ Pass `--fix=false` to print what would change without writing.