@brightspot/ui 1.11.0 → 3.0.1-cms-ui-migration.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 (347) hide show
  1. package/dist/components/action-bar/ActionBar.d.ts +1 -1
  2. package/dist/components/action-bar/ActionBar.js +7 -7
  3. package/dist/components/action-bar/ActionBar.js.map +1 -1
  4. package/dist/components/action-bar/ActionItem.d.ts +5 -5
  5. package/dist/components/action-bar/ActionItem.d.ts.map +1 -1
  6. package/dist/components/action-bar/ActionItem.js +13 -13
  7. package/dist/components/action-bar/ActionItem.js.map +1 -1
  8. package/dist/components/avatar/AvatarGroup.d.ts +3 -0
  9. package/dist/components/avatar/AvatarGroup.d.ts.map +1 -1
  10. package/dist/components/avatar/AvatarGroup.js +3 -0
  11. package/dist/components/avatar/AvatarGroup.js.map +1 -1
  12. package/dist/components/badge/Badge.d.ts +3 -1
  13. package/dist/components/badge/Badge.d.ts.map +1 -1
  14. package/dist/components/badge/Badge.js +2 -0
  15. package/dist/components/badge/Badge.js.map +1 -1
  16. package/dist/components/button-group/ButtonGroup.d.ts +138 -0
  17. package/dist/components/button-group/ButtonGroup.d.ts.map +1 -0
  18. package/dist/components/button-group/ButtonGroup.js +436 -0
  19. package/dist/components/button-group/ButtonGroup.js.map +1 -0
  20. package/dist/components/checkbox/Checkbox.d.ts +107 -0
  21. package/dist/components/checkbox/Checkbox.d.ts.map +1 -0
  22. package/dist/components/checkbox/Checkbox.js +224 -0
  23. package/dist/components/checkbox/Checkbox.js.map +1 -0
  24. package/dist/components/circular-progress/CircularProgress.d.ts +2 -2
  25. package/dist/components/circular-progress/CircularProgress.js +2 -2
  26. package/dist/components/copy-to-clipboard/CopyToClipboard.d.ts +7 -2
  27. package/dist/components/copy-to-clipboard/CopyToClipboard.d.ts.map +1 -1
  28. package/dist/components/copy-to-clipboard/CopyToClipboard.js +10 -5
  29. package/dist/components/copy-to-clipboard/CopyToClipboard.js.map +1 -1
  30. package/dist/components/dropdown/Dropdown.d.ts +5 -5
  31. package/dist/components/dropdown/Dropdown.d.ts.map +1 -1
  32. package/dist/components/dropdown/Dropdown.js +11 -16
  33. package/dist/components/dropdown/Dropdown.js.map +1 -1
  34. package/dist/components/dropdown/DropdownItem.d.ts +14 -6
  35. package/dist/components/dropdown/DropdownItem.d.ts.map +1 -1
  36. package/dist/components/dropdown/DropdownItem.js +21 -15
  37. package/dist/components/dropdown/DropdownItem.js.map +1 -1
  38. package/dist/components/dropdown/DropdownMenu.d.ts +4 -4
  39. package/dist/components/dropdown/DropdownMenu.d.ts.map +1 -1
  40. package/dist/components/dropdown/DropdownMenu.js +6 -6
  41. package/dist/components/dropdown/DropdownMenu.js.map +1 -1
  42. package/dist/components/empty-state/EmptyState.css +4 -0
  43. package/dist/components/empty-state/EmptyState.d.ts +103 -0
  44. package/dist/components/empty-state/EmptyState.d.ts.map +1 -0
  45. package/dist/components/empty-state/EmptyState.js +209 -0
  46. package/dist/components/empty-state/EmptyState.js.map +1 -0
  47. package/dist/components/icon/Icon.d.ts +23 -10
  48. package/dist/components/icon/Icon.d.ts.map +1 -1
  49. package/dist/components/icon/Icon.js +40 -9
  50. package/dist/components/icon/Icon.js.map +1 -1
  51. package/dist/components/icon-button/IconButton.d.ts +7 -21
  52. package/dist/components/icon-button/IconButton.d.ts.map +1 -1
  53. package/dist/components/icon-button/IconButton.js +12 -18
  54. package/dist/components/icon-button/IconButton.js.map +1 -1
  55. package/dist/components/linear-progress/LinearProgress.d.ts +2 -2
  56. package/dist/components/linear-progress/LinearProgress.js +2 -2
  57. package/dist/components/pagination/Pagination.js +10 -10
  58. package/dist/components/popover/Popover.d.ts +6 -0
  59. package/dist/components/popover/Popover.d.ts.map +1 -1
  60. package/dist/components/popover/Popover.js +6 -0
  61. package/dist/components/popover/Popover.js.map +1 -1
  62. package/dist/components/switch/Switch.d.ts +5 -1
  63. package/dist/components/switch/Switch.d.ts.map +1 -1
  64. package/dist/components/switch/Switch.js +10 -6
  65. package/dist/components/switch/Switch.js.map +1 -1
  66. package/dist/components/tabs/Tab.d.ts +4 -4
  67. package/dist/components/tabs/Tab.d.ts.map +1 -1
  68. package/dist/components/tabs/Tab.js +5 -5
  69. package/dist/components/tabs/Tab.js.map +1 -1
  70. package/dist/components/tabs/Tabs.d.ts +3 -3
  71. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  72. package/dist/components/tabs/Tabs.js +20 -20
  73. package/dist/components/tabs/Tabs.js.map +1 -1
  74. package/dist/components/upload/Upload.d.ts +157 -0
  75. package/dist/components/upload/Upload.d.ts.map +1 -0
  76. package/dist/components/upload/Upload.js +538 -0
  77. package/dist/components/upload/Upload.js.map +1 -0
  78. package/dist/components/upload/UploadItem.d.ts +73 -0
  79. package/dist/components/upload/UploadItem.d.ts.map +1 -0
  80. package/dist/components/upload/UploadItem.js +180 -0
  81. package/dist/components/upload/UploadItem.js.map +1 -0
  82. package/dist/components/widget/Widget.d.ts +1 -6
  83. package/dist/components/widget/Widget.d.ts.map +1 -1
  84. package/dist/components/widget/Widget.js +1 -6
  85. package/dist/components/widget/Widget.js.map +1 -1
  86. package/dist/custom-elements.json +7527 -2115
  87. package/dist/storybook/assets/{ActionBar.stories--nAeDC-G.js → ActionBar.stories-CXEvFUN5.js} +65 -65
  88. package/dist/storybook/assets/{ActionItem.stories-BHrGjk-P.js → ActionItem.stories-8-qQmVGz.js} +41 -41
  89. package/dist/storybook/assets/{Avatar.stories-Da-mRj6_.js → Avatar.stories-LOTCiTgV.js} +2 -2
  90. package/dist/storybook/assets/{AvatarGroup.stories-BQlaC_yl.js → AvatarGroup.stories-N17TVn4O.js} +5 -5
  91. package/dist/storybook/assets/{Badge.stories-DnVnOrnF.js → Badge.stories-2IRfk8Ri.js} +2 -2
  92. package/dist/storybook/assets/{Button-CFLAI1H9.js → Button-CQ2CjiFm.js} +1 -1
  93. package/dist/storybook/assets/{Button.stories-DxaBOjwv.js → Button.stories-DwyviUHj.js} +1 -1
  94. package/dist/storybook/assets/ButtonGroup.stories-D6nkkXxD.js +588 -0
  95. package/dist/storybook/assets/{Celebrate.stories-CuMm15Nr.js → Celebrate.stories-DtKNptXA.js} +7 -7
  96. package/dist/storybook/assets/Checkbox.stories--fetKLgV.js +141 -0
  97. package/dist/storybook/assets/{CircularProgress.stories-DRN8Mtvj.js → CircularProgress.stories-vK3MWdEg.js} +7 -7
  98. package/dist/storybook/assets/{ClipboardMixin.stories-DR7Ou2Av.js → ClipboardMixin.stories-BXOX2e9A.js} +31 -28
  99. package/dist/storybook/assets/{Color-6BZIO3FS-Die62Y0Z.js → Color-6BZIO3FS-DIO6ExZa.js} +1 -1
  100. package/dist/storybook/assets/{Colors.stories-bIq_ssbI.js → Colors.stories-Z-o0Dmyi.js} +1 -1
  101. package/dist/storybook/assets/{CombinedEffects.stories-CtKzOUZn.js → CombinedEffects.stories-BIvRmEL2.js} +33 -33
  102. package/dist/storybook/assets/{ComponentStatesMixin-DMLCk9fE.js → ComponentStatesMixin-BeLIKOsg.js} +1 -1
  103. package/dist/storybook/assets/{ComponentStatesMixin.stories-D8UI9o-d.js → ComponentStatesMixin.stories-u03jgLUU.js} +3 -3
  104. package/dist/storybook/assets/{CopyToClipboard.stories-ti6CpJNp.js → CopyToClipboard.stories-D23guAYu.js} +16 -16
  105. package/dist/storybook/assets/{Debounce.stories-DzZUSvbk.js → Debounce.stories-Bz3JaQJY.js} +9 -9
  106. package/dist/storybook/assets/{DocsRenderer-LL677BLK-CIRGv5IX.js → DocsRenderer-LL677BLK-CaEKjMeC.js} +3 -3
  107. package/dist/storybook/assets/{Dropdown.stories-Lt4cY0Re.js → Dropdown.stories-CNxtx8UX.js} +60 -60
  108. package/dist/storybook/assets/EmptyState.stories-Ck5T6q1T.js +318 -0
  109. package/dist/storybook/assets/{Events.stories-B1ddcgpT.js → Events.stories-Cx10pvVB.js} +1 -1
  110. package/dist/storybook/assets/{Heading.stories-DI4w61cf.js → Heading.stories-mbkSoA5r.js} +1 -1
  111. package/dist/storybook/assets/{HueRipple.stories-DjhoxxEw.js → HueRipple.stories-B-DDviMh.js} +11 -11
  112. package/dist/storybook/assets/Icon.stories-Dodo1jjZ.js +441 -0
  113. package/dist/storybook/assets/{IconButton.stories-KjN28hfc.js → IconButton.stories-eAU6vNiX.js} +126 -146
  114. package/dist/storybook/assets/{LinearProgress.stories-DcIpdz6R.js → LinearProgress.stories-BqAUCgwy.js} +7 -7
  115. package/dist/storybook/assets/{Pagination.stories-BBkLEwoP.js → Pagination.stories-CVK8mlEU.js} +6 -6
  116. package/dist/storybook/assets/{Popover.stories-DLv48c2h.js → Popover.stories-CC2R-jiv.js} +33 -62
  117. package/dist/storybook/assets/ReadyMixin-CAkCCAOH.js +1 -0
  118. package/dist/storybook/assets/{RovingTabindexMixin.stories-BWaFx9mu.js → RovingTabindexMixin.stories-Dgm5izU_.js} +6 -6
  119. package/dist/storybook/assets/{Rtc.stories-Ve7Bwo_l.js → Rtc.stories-D9uVCq71.js} +3 -3
  120. package/dist/storybook/assets/{ScrollShadow.stories-C6XmrRLm.js → ScrollShadow.stories-D5GJ6Zes.js} +2 -2
  121. package/dist/storybook/assets/{Switch.stories-Cf8WM1LG.js → Switch.stories-D7HV0v6i.js} +21 -21
  122. package/dist/storybook/assets/{Tab.stories-CEtdEtOx.js → Tab.stories-CwHBngmO.js} +33 -33
  123. package/dist/storybook/assets/{Tabs.stories-CIAO1bPO.js → Tabs.stories-D87ILflp.js} +2 -2
  124. package/dist/storybook/assets/{Throttle.stories-BqxVIb-r.js → Throttle.stories-C13Vl7yt.js} +10 -10
  125. package/dist/storybook/assets/{Tooltip.stories-B6fw6875.js → Tooltip.stories-BRmAKppC.js} +2 -2
  126. package/dist/storybook/assets/Upload.stories-CvceXasD.js +447 -0
  127. package/dist/storybook/assets/UploadItem.stories-BF6c7tVM.js +167 -0
  128. package/dist/storybook/assets/{Welcome.stories-CfJtSM19.js → Welcome.stories-Ciht_H8A.js} +1 -1
  129. package/dist/storybook/assets/{Widget.stories-CiOho7lO.js → Widget.stories-30UYw1gn.js} +13 -13
  130. package/dist/storybook/assets/{WithTooltip-65CFNBJE-PGcopp73.js → WithTooltip-65CFNBJE-Q8AG_oZS.js} +1 -1
  131. package/dist/storybook/assets/{blocks-dP2DwISI.js → blocks-DIrsUt2U.js} +5 -5
  132. package/dist/storybook/assets/{formatter-EIJCOSYU-CZSAC3tg.js → formatter-EIJCOSYU-BcNb3EA1.js} +1 -1
  133. package/dist/storybook/assets/if-defined-C1_PRAyA.js +1 -0
  134. package/dist/storybook/assets/iframe-BgFj0b5u.css +1 -0
  135. package/dist/storybook/assets/{iframe-DloIUNZz.js → iframe-D5Uwm8Zd.js} +191 -191
  136. package/dist/storybook/assets/{index-DKF0ypu5.js → index-BOlx3-q7.js} +1 -1
  137. package/dist/storybook/assets/{onFind-C0l4Gew0.js → onFind-Cp2DO8R2.js} +1 -1
  138. package/dist/storybook/assets/{onFind.stories-DOTt9puO.js → onFind.stories-BDK06xaW.js} +53 -77
  139. package/dist/storybook/assets/{onRemove.stories-CQ9ZC5dm.js → onRemove.stories-TSKvqih3.js} +6 -10
  140. package/dist/storybook/assets/{onVisible.stories-Cbj5_Vz0.js → onVisible.stories-DiOPobn8.js} +3 -3
  141. package/dist/storybook/assets/{style-map-DLXysq3r.js → style-map-Cy6U2K_U.js} +1 -1
  142. package/dist/storybook/assets/{syntaxhighlighter-ED5Y7EFY-Bjjbl9ca.js → syntaxhighlighter-ED5Y7EFY-NNCQVsSv.js} +1 -1
  143. package/dist/storybook/box-illustration.svg +51 -0
  144. package/dist/storybook/cloud-illustration.svg +49 -0
  145. package/dist/storybook/docs-illustration.svg +92 -0
  146. package/dist/storybook/iframe.html +3 -3
  147. package/dist/storybook/index.json +1 -1
  148. package/dist/storybook/project.json +1 -1
  149. package/dist/tailwind-plugin-badge.js +1 -1
  150. package/dist/tailwind-plugin-badge.ts +1 -1
  151. package/dist/tailwind-plugin-button-group.d.ts +2 -0
  152. package/dist/tailwind-plugin-button-group.d.ts.map +1 -0
  153. package/dist/tailwind-plugin-button-group.js +215 -0
  154. package/dist/tailwind-plugin-button-group.js.map +1 -0
  155. package/dist/tailwind-plugin-button-group.ts +238 -0
  156. package/dist/tailwind-plugin-button.js +1 -1
  157. package/dist/tailwind-plugin-button.ts +1 -1
  158. package/dist/tailwind-plugin-checkbox.d.ts +2 -0
  159. package/dist/tailwind-plugin-checkbox.d.ts.map +1 -0
  160. package/dist/tailwind-plugin-checkbox.js +246 -0
  161. package/dist/tailwind-plugin-checkbox.js.map +1 -0
  162. package/dist/tailwind-plugin-checkbox.ts +281 -0
  163. package/dist/tailwind-plugin-empty-state.d.ts +2 -0
  164. package/dist/tailwind-plugin-empty-state.d.ts.map +1 -0
  165. package/dist/tailwind-plugin-empty-state.js +113 -0
  166. package/dist/tailwind-plugin-empty-state.js.map +1 -0
  167. package/dist/tailwind-plugin-empty-state.ts +124 -0
  168. package/dist/tailwind-plugin-icon.js +122 -18
  169. package/dist/tailwind-plugin-icon.js.map +1 -1
  170. package/dist/tailwind-plugin-icon.ts +131 -18
  171. package/dist/tailwind-plugin-loader.js +3 -3
  172. package/dist/tailwind-plugin-loader.ts +3 -3
  173. package/dist/tailwind-plugin-tabs.js +7 -0
  174. package/dist/tailwind-plugin-tabs.js.map +1 -1
  175. package/dist/tailwind-plugin-tabs.ts +7 -0
  176. package/dist/tailwind-plugin-upload.d.ts +2 -0
  177. package/dist/tailwind-plugin-upload.d.ts.map +1 -0
  178. package/dist/tailwind-plugin-upload.js +322 -0
  179. package/dist/tailwind-plugin-upload.js.map +1 -0
  180. package/dist/tailwind-plugin-upload.ts +362 -0
  181. package/dist/tailwind.config.d.ts.map +1 -1
  182. package/dist/tailwind.config.js +1 -0
  183. package/dist/tailwind.config.js.map +1 -1
  184. package/dist/tailwind.config.ts +1 -0
  185. package/dist/util/ClipboardMixin.d.ts +7 -2
  186. package/dist/util/ClipboardMixin.d.ts.map +1 -1
  187. package/dist/util/ClipboardMixin.js +15 -13
  188. package/dist/util/ClipboardMixin.js.map +1 -1
  189. package/dist/util/ComponentStatesMixin.d.ts +2 -1
  190. package/dist/util/ComponentStatesMixin.d.ts.map +1 -1
  191. package/dist/util/ComponentStatesMixin.js +4 -0
  192. package/dist/util/ComponentStatesMixin.js.map +1 -1
  193. package/dist/util/EventEmitterMixin.d.ts +42 -4
  194. package/dist/util/EventEmitterMixin.d.ts.map +1 -1
  195. package/dist/util/EventEmitterMixin.js +5 -2
  196. package/dist/util/EventEmitterMixin.js.map +1 -1
  197. package/dist/util/ProgressMixin.d.ts +9 -2
  198. package/dist/util/ProgressMixin.d.ts.map +1 -1
  199. package/dist/util/ProgressMixin.js +22 -18
  200. package/dist/util/ProgressMixin.js.map +1 -1
  201. package/dist/util/RovingTabindexMixin.d.ts +8 -0
  202. package/dist/util/RovingTabindexMixin.d.ts.map +1 -1
  203. package/dist/util/RovingTabindexMixin.js +8 -8
  204. package/dist/util/RovingTabindexMixin.js.map +1 -1
  205. package/dist/util/TetherLayout.d.ts.map +1 -1
  206. package/dist/util/TetherLayout.js +3 -0
  207. package/dist/util/TetherLayout.js.map +1 -1
  208. package/dist/util/TooltipMixin.d.ts.map +1 -1
  209. package/dist/util/TooltipMixin.js +5 -4
  210. package/dist/util/TooltipMixin.js.map +1 -1
  211. package/dist/util/upload.d.ts +53 -0
  212. package/dist/util/upload.d.ts.map +1 -0
  213. package/dist/util/upload.js +113 -0
  214. package/dist/util/upload.js.map +1 -0
  215. package/docs/adr/0001-retire-cms-ui-package-fold-under-src-legacy.md +78 -0
  216. package/docs/adr/0002-yarn-workspaces-preserve-cms-ui-deps.md +130 -0
  217. package/docs/adr/0003-bundle-equivalence-as-fold-acceptance-criterion.md +286 -0
  218. package/docs/components/ActionBar.md +6 -0
  219. package/docs/components/ActionItem.md +52 -27
  220. package/docs/components/Avatar.md +42 -12
  221. package/docs/components/AvatarGroup.md +4 -3
  222. package/docs/components/Badge.md +13 -1
  223. package/docs/components/ButtonGroup.md +91 -0
  224. package/docs/components/Checkbox.md +91 -0
  225. package/docs/components/CircularProgress.md +41 -12
  226. package/docs/components/CopyToClipboard.md +13 -11
  227. package/docs/components/Dropdown.md +44 -19
  228. package/docs/components/DropdownItem.md +39 -26
  229. package/docs/components/DropdownMenu.md +9 -9
  230. package/docs/components/EmptyState.md +75 -0
  231. package/docs/components/Icon.md +22 -14
  232. package/docs/components/IconButton.md +46 -21
  233. package/docs/components/LinearProgress.md +43 -4
  234. package/docs/components/Pagination.md +11 -10
  235. package/docs/components/Popover.md +16 -0
  236. package/docs/components/README.md +5 -0
  237. package/docs/components/Switch.md +21 -16
  238. package/docs/components/Tab.md +8 -2
  239. package/docs/components/Tabs.md +8 -0
  240. package/docs/components/Upload.md +112 -0
  241. package/docs/components/UploadItem.md +61 -0
  242. package/docs/components/Widget.md +12 -6
  243. package/package.json +9 -5
  244. package/src/legacy/tool-ui/src/main/webapp/dist/011a678e3efe41981754.png +1 -0
  245. package/src/legacy/tool-ui/src/main/webapp/dist/1173.080a90c5923854fc48e6.js +2 -0
  246. package/src/legacy/tool-ui/src/main/webapp/dist/1173.080a90c5923854fc48e6.js.LICENSE.txt +10 -0
  247. package/src/legacy/tool-ui/src/main/webapp/dist/194137260531ee29a5f2.svg +1 -0
  248. package/src/legacy/tool-ui/src/main/webapp/dist/1946.156c6821383df2638492.js +1 -0
  249. package/src/legacy/tool-ui/src/main/webapp/dist/1950.3594aaa4f20df28f39d9.js +1 -0
  250. package/src/legacy/tool-ui/src/main/webapp/dist/1e8408af1a34bdf61457.png +1 -0
  251. package/src/legacy/tool-ui/src/main/webapp/dist/2111.3956b5196a514b2c0131.js +1 -0
  252. package/src/legacy/tool-ui/src/main/webapp/dist/2111.a937b0cafa8cf7c039d2.css +1 -0
  253. package/src/legacy/tool-ui/src/main/webapp/dist/2129.6b044e5564dd3dbb2f94.js +1 -0
  254. package/src/legacy/tool-ui/src/main/webapp/dist/2314.420883b6638f35f40e70.js +1 -0
  255. package/src/legacy/tool-ui/src/main/webapp/dist/2456.5bcfb782c2ec27de32ed.js +1 -0
  256. package/src/legacy/tool-ui/src/main/webapp/dist/2537.e8f1359bedd328bf57f4.js +1 -0
  257. package/src/legacy/tool-ui/src/main/webapp/dist/2565.4ca31a6a46de85cd3b31.js +1 -0
  258. package/src/legacy/tool-ui/src/main/webapp/dist/270.3011484ff80f3093083a.js +1 -0
  259. package/src/legacy/tool-ui/src/main/webapp/dist/2825.c1342ac2662d11fd4125.js +1 -0
  260. package/src/legacy/tool-ui/src/main/webapp/dist/2947.f96d21c44c05980974ef.js +1 -0
  261. package/src/legacy/tool-ui/src/main/webapp/dist/3532.c358dfbb2cde0f802c7f.js +1 -0
  262. package/src/legacy/tool-ui/src/main/webapp/dist/3543.2d704cf9e170322468e7.js +2 -0
  263. package/src/legacy/tool-ui/src/main/webapp/dist/3543.2d704cf9e170322468e7.js.LICENSE.txt +1 -0
  264. package/src/legacy/tool-ui/src/main/webapp/dist/3611.61837ffa933f74502094.js +1 -0
  265. package/src/legacy/tool-ui/src/main/webapp/dist/3790.74b7037d430ed0a47d0c.js +1 -0
  266. package/src/legacy/tool-ui/src/main/webapp/dist/3995.afbec58662cafb46ec2c.js +1 -0
  267. package/src/legacy/tool-ui/src/main/webapp/dist/4017.c3ed1ca3be18b5c080c8.js +1 -0
  268. package/src/legacy/tool-ui/src/main/webapp/dist/4093.152620c022c3013502b7.js +1 -0
  269. package/src/legacy/tool-ui/src/main/webapp/dist/4114.57fe159e416e716f8cbc.js +1 -0
  270. package/src/legacy/tool-ui/src/main/webapp/dist/4168.a224af7c5c5f6f2ddd7b.js +1 -0
  271. package/src/legacy/tool-ui/src/main/webapp/dist/4374.37147747a254da8f5f8a.js +1 -0
  272. package/src/legacy/tool-ui/src/main/webapp/dist/4450.16dd5684292fd0a7ea7f.js +1 -0
  273. package/src/legacy/tool-ui/src/main/webapp/dist/4478.93f64e6a6ccb35a6c6d4.js +1 -0
  274. package/src/legacy/tool-ui/src/main/webapp/dist/44b38a404dec4643c46b.png +1 -0
  275. package/src/legacy/tool-ui/src/main/webapp/dist/4582.243dbaa3d8a8648f6f40.js +1 -0
  276. package/src/legacy/tool-ui/src/main/webapp/dist/4709.4f6b707e225e481a928e.js +1 -0
  277. package/src/legacy/tool-ui/src/main/webapp/dist/4790.10d75f7c7f8e54ce83a1.js +1 -0
  278. package/src/legacy/tool-ui/src/main/webapp/dist/4795.034ebc93a67b7a3d6536.js +1 -0
  279. package/src/legacy/tool-ui/src/main/webapp/dist/4850.6b944738520f69c98070.js +1 -0
  280. package/src/legacy/tool-ui/src/main/webapp/dist/4a4ee777ddc0d4cedee4.png +1 -0
  281. package/src/legacy/tool-ui/src/main/webapp/dist/5001.a61ae5608398d5d98ab1.js +1 -0
  282. package/src/legacy/tool-ui/src/main/webapp/dist/5030.1e8b82e1444067d492b1.js +1 -0
  283. package/src/legacy/tool-ui/src/main/webapp/dist/5055.620ccb3717b4a6427f09.js +1 -0
  284. package/src/legacy/tool-ui/src/main/webapp/dist/5098.33613009827cfc80aafb.js +1 -0
  285. package/src/legacy/tool-ui/src/main/webapp/dist/5385.6656501b67424994820b.js +1 -0
  286. package/src/legacy/tool-ui/src/main/webapp/dist/5598.d84773ca53126661bdca.js +2 -0
  287. package/src/legacy/tool-ui/src/main/webapp/dist/5598.d84773ca53126661bdca.js.LICENSE.txt +11 -0
  288. package/src/legacy/tool-ui/src/main/webapp/dist/5617.c81ecb679371ca302f1f.js +1 -0
  289. package/src/legacy/tool-ui/src/main/webapp/dist/5718.449113ae2463a3bb8a83.js +2 -0
  290. package/src/legacy/tool-ui/src/main/webapp/dist/5718.449113ae2463a3bb8a83.js.LICENSE.txt +8 -0
  291. package/src/legacy/tool-ui/src/main/webapp/dist/6047.291dd2d4b3f79be2c64d.js +1 -0
  292. package/src/legacy/tool-ui/src/main/webapp/dist/6086.7ca02b827506f29db590.js +1 -0
  293. package/src/legacy/tool-ui/src/main/webapp/dist/6216.cf8adc1990ee1111f065.js +1 -0
  294. package/src/legacy/tool-ui/src/main/webapp/dist/6497.b7d8dcbf0e7c8d8d538d.js +1 -0
  295. package/src/legacy/tool-ui/src/main/webapp/dist/6565.0e5abc3bd344c53ae154.js +1 -0
  296. package/src/legacy/tool-ui/src/main/webapp/dist/7033.4cd6efbe12e7aaa35745.js +1 -0
  297. package/src/legacy/tool-ui/src/main/webapp/dist/7202.1e5b8f21215ea6eae20a.js +1 -0
  298. package/src/legacy/tool-ui/src/main/webapp/dist/7361.793163ca71dfac69d9eb.js +1 -0
  299. package/src/legacy/tool-ui/src/main/webapp/dist/75.e45c9aec6e7409bfe21d.js +1 -0
  300. package/src/legacy/tool-ui/src/main/webapp/dist/7524.2990be869cf0a2988d17.js +1 -0
  301. package/src/legacy/tool-ui/src/main/webapp/dist/7554.bb243c1fb06a125f6353.js +1 -0
  302. package/src/legacy/tool-ui/src/main/webapp/dist/7718.a937b0cafa8cf7c039d2.css +1 -0
  303. package/src/legacy/tool-ui/src/main/webapp/dist/7718.f5996ddd99f2353c7785.js +1 -0
  304. package/src/legacy/tool-ui/src/main/webapp/dist/7741.0b2789c4e783af835763.js +1 -0
  305. package/src/legacy/tool-ui/src/main/webapp/dist/7769.d47f40cc83035fc2392a.js +1 -0
  306. package/src/legacy/tool-ui/src/main/webapp/dist/7863.2a1d1fd229778a47e10b.js +1 -0
  307. package/src/legacy/tool-ui/src/main/webapp/dist/7923.8a92f55de8387f7a8a35.js +1 -0
  308. package/src/legacy/tool-ui/src/main/webapp/dist/8684.7171c731d38a9873d6df.js +1 -0
  309. package/src/legacy/tool-ui/src/main/webapp/dist/8752.3d02a0f42ec39786fdf0.js +1 -0
  310. package/src/legacy/tool-ui/src/main/webapp/dist/8897.bfeed19f2a4acbb6d67c.js +1 -0
  311. package/src/legacy/tool-ui/src/main/webapp/dist/8934.e90ceca8169fc25e4e1b.js +1 -0
  312. package/src/legacy/tool-ui/src/main/webapp/dist/9277.88b2d89b3ba1c24e7f93.js +2 -0
  313. package/src/legacy/tool-ui/src/main/webapp/dist/9277.88b2d89b3ba1c24e7f93.js.LICENSE.txt +9 -0
  314. package/src/legacy/tool-ui/src/main/webapp/dist/9360.bb0352313d610cae11de.js +2 -0
  315. package/src/legacy/tool-ui/src/main/webapp/dist/9360.bb0352313d610cae11de.js.LICENSE.txt +33 -0
  316. package/src/legacy/tool-ui/src/main/webapp/dist/9561.64eab18c8c1bbc4ad8ec.js +1 -0
  317. package/src/legacy/tool-ui/src/main/webapp/dist/9576.174d6a99544d17e7416d.js +1 -0
  318. package/src/legacy/tool-ui/src/main/webapp/dist/983.eedba1cd484aa5bee0c4.js +1 -0
  319. package/src/legacy/tool-ui/src/main/webapp/dist/Appetizeio.185641211f7c0e42a455.js +1 -0
  320. package/src/legacy/tool-ui/src/main/webapp/dist/CISpectrum.74db7dc80b3a6797a167.js +1 -0
  321. package/src/legacy/tool-ui/src/main/webapp/dist/Chart.223ea4ee9e3e32b67a26.js +1 -0
  322. package/src/legacy/tool-ui/src/main/webapp/dist/ChartCompat.4dd096dd030942227ec6.js +1 -0
  323. package/src/legacy/tool-ui/src/main/webapp/dist/CodeMirror.5ddffe054374f883d6f8.js +1 -0
  324. package/src/legacy/tool-ui/src/main/webapp/dist/ImageEditor.14e3b3035666436f53a5.js +1 -0
  325. package/src/legacy/tool-ui/src/main/webapp/dist/LocationMap.72a510c0f5ff236f596e.js +1 -0
  326. package/src/legacy/tool-ui/src/main/webapp/dist/RTEProseMirror.7561297911cca56da5dd.js +500 -0
  327. package/src/legacy/tool-ui/src/main/webapp/dist/RTEProseMirror.7561297911cca56da5dd.js.LICENSE.txt +8 -0
  328. package/src/legacy/tool-ui/src/main/webapp/dist/RegionMap.63f3b2303ab369a05073.js +1 -0
  329. package/src/legacy/tool-ui/src/main/webapp/dist/TimedContent.4bb4dc83ffbe4019dd7b.js +1 -0
  330. package/src/legacy/tool-ui/src/main/webapp/dist/VideoEditor.11c89dda5cf125738a33.js +2 -0
  331. package/src/legacy/tool-ui/src/main/webapp/dist/VideoEditor.11c89dda5cf125738a33.js.LICENSE.txt +23 -0
  332. package/src/legacy/tool-ui/src/main/webapp/dist/c6e9c007f41bd4d26c20.png +1 -0
  333. package/src/legacy/tool-ui/src/main/webapp/dist/iframeResizer.contentWindow.map +1 -0
  334. package/src/legacy/tool-ui/src/main/webapp/dist/iframeResizer.contentWindow.min.js +2 -0
  335. package/src/legacy/tool-ui/src/main/webapp/dist/iframeResizer.contentWindow.min.js.LICENSE.txt +7 -0
  336. package/src/legacy/tool-ui/src/main/webapp/dist/lucide.woff2 +0 -0
  337. package/src/legacy/tool-ui/src/main/webapp/dist/preview.d46d98e5ca9dba0a0f5a.js +1 -0
  338. package/src/legacy/tool-ui/src/main/webapp/dist/v4.63bc3566a89786faeb89.js +92 -0
  339. package/src/legacy/tool-ui/src/main/webapp/dist/v4.63bc3566a89786faeb89.js.LICENSE.txt +71 -0
  340. package/src/legacy/tool-ui/src/main/webapp/dist/v4.a6f53058dbb04a69aa5c.css +3 -0
  341. package/src/legacy/tool-ui/src/main/webapp/dist/v5.5e3fdf0f0b20b4e3c170.css +5 -0
  342. package/src/legacy/tool-ui/src/main/webapp/dist/v5.702238fcabd666eba152.js +92 -0
  343. package/src/legacy/tool-ui/src/main/webapp/dist/v5.702238fcabd666eba152.js.LICENSE.txt +78 -0
  344. package/dist/storybook/assets/Icon.stories-CpziAhae.js +0 -264
  345. package/dist/storybook/assets/ReadyMixin-Cw2Dfbu2.js +0 -1
  346. package/dist/storybook/assets/if-defined-B1RdczOE.js +0 -1
  347. package/dist/storybook/assets/iframe-bJgLXZKK.css +0 -1
@@ -1 +1 @@
1
- {"generatedAt":1774622294052,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":true,"hasStorybookEslint":true,"refCount":0,"knownPackages":{"testPackages":{"@storybook/addon-vitest":"10.2.12","@vitest/browser-playwright":"4.0.18","playwright":"1.58.2","vitest":"4.0.18"},"stylingPackages":{"tailwindcss":"^3.4.13","autoprefixer":"10.4.21"}},"hasRouterPackage":false,"packageManager":{"type":"yarn","agent":"yarn","nodeLinker":"undefined"},"preview":{"usesGlobals":true},"framework":{"name":"@storybook/web-components-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/web-components","portableStoriesFileCount":0,"applicationFileCount":0,"storybookVersion":"10.2.12","storybookVersionSpecifier":"10.2.12","language":"typescript","storybookPackages":{"@storybook/addon-themes":{"version":"10.2.12"},"@storybook/web-components-vite":{"version":"10.2.12"},"@wc-toolkit/storybook-helpers":{"version":"10.0.0"},"eslint-plugin-storybook":{"version":"10.0.7"},"storybook":{}},"addons":{"@storybook/addon-docs":{"version":"10.2.12"},"@storybook/addon-vitest":{"version":"10.2.12"}},"packageJsonType":"module"}
1
+ {"generatedAt":1779461132095,"userSince":1749234503234,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":true,"hasStorybookEslint":true,"refCount":0,"knownPackages":{"testPackages":{"@storybook/addon-vitest":"10.2.12","@vitest/browser-playwright":"4.0.18","playwright":"1.58.2","vitest":"4.0.18"},"stylingPackages":{"tailwindcss":"^3.4.13","autoprefixer":"10.4.21"}},"hasRouterPackage":false,"packageManager":{"type":"yarn","agent":"yarn","nodeLinker":"undefined"},"preview":{"usesGlobals":true},"framework":{"name":"@storybook/web-components-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/web-components","portableStoriesFileCount":0,"applicationFileCount":0,"storybookVersion":"10.2.12","storybookVersionSpecifier":"10.2.12","language":"typescript","storybookPackages":{"@storybook/addon-themes":{"version":"10.2.12"},"@storybook/web-components-vite":{"version":"10.2.12"},"@wc-toolkit/storybook-helpers":{"version":"10.0.0"},"eslint-plugin-storybook":{"version":"10.0.7"},"storybook":{}},"addons":{"@storybook/addon-docs":{"version":"10.2.12"},"@storybook/addon-vitest":{"version":"10.2.12"}},"packageJsonType":"module"}
@@ -34,7 +34,7 @@ module.exports = plugin(function ({ addComponents, theme, e, matchUtilities, add
34
34
  for (const key in colors) {
35
35
  badgeColors.push({
36
36
  [`${className}-${e(key)}`]: {
37
- '--Icon-size': iconSizes['xs'],
37
+ '--icon-size': iconSizes['xs'],
38
38
  backgroundColor: `var(--badge-color-background, oklch(var(--btu-theme-${key}-50)))`,
39
39
  color: `var(--badge-color-foreground, oklch(var(--btu-theme-${key}-700)))`,
40
40
  textDecoration: 'underline',
@@ -76,7 +76,7 @@ module.exports = plugin(
76
76
  for (const key in colors) {
77
77
  badgeColors.push({
78
78
  [`${className}-${e(key)}`]: {
79
- '--Icon-size': iconSizes['xs'],
79
+ '--icon-size': iconSizes['xs'],
80
80
  backgroundColor: `var(--badge-color-background, oklch(var(--btu-theme-${key}-50)))`,
81
81
  color: `var(--badge-color-foreground, oklch(var(--btu-theme-${key}-700)))`,
82
82
  textDecoration: 'underline',
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tailwind-plugin-button-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tailwind-plugin-button-group.d.ts","sourceRoot":"","sources":["../src/tailwind-plugin-button-group.ts"],"names":[],"mappings":""}
@@ -0,0 +1,215 @@
1
+ import plugin from 'tailwindcss/plugin';
2
+ /**
3
+ * Button Group — Tailwind CSS plugin for grouping related buttons.
4
+ *
5
+ * Provides connected (joined) and spaced layouts with horizontal/vertical orientation.
6
+ * Supports both direct `.btu-button` children and `btu-icon-button` children.
7
+ * `btu-icon-button` uses `display: contents` so its inner button participates
8
+ * directly in the group's flex layout.
9
+ *
10
+ * Selection uses a circular wipe transition: a `::after` pseudo-element with
11
+ * `clip-path: circle()` reveals the selection color from the center outward.
12
+ *
13
+ * Class Names:
14
+ *
15
+ * btu-button-group - Base group container
16
+ *
17
+ * CSS Custom Properties:
18
+ *
19
+ * --button-group-gap - Gap between buttons in spaced variant (default: spacing.sm)
20
+ * --button-group-border-radius - Outer corner radius in connected variant (default: 0.5rem)
21
+ * --button-group-border-color - Internal divider color in connected variant (default: gray-300)
22
+ * --button-group-selection-bg - Selection background color (auto-set per color variant)
23
+ * --button-group-selection-color - Selection text color (auto-set per color variant)
24
+ */
25
+ module.exports = plugin(function ({ addComponents, addBase, theme }) {
26
+ const connected = 'btu-button-group[variant="connected"]';
27
+ const connectedH = `${connected}[orientation="horizontal"]`;
28
+ const connectedV = `${connected}[orientation="vertical"]`;
29
+ const allSelected = `${connected}[data-all-selected]`;
30
+ const borderColor = 'var(--button-group-border-color, oklch(var(--btu-theme-gray-300)))';
31
+ const outerRadius = 'var(--button-group-border-radius, 0.5rem)';
32
+ const skipColors = new Set(['currentColor', 'transparent', 'white', 'black', 'ai']);
33
+ const colors = theme('colors') || {};
34
+ const components = {
35
+ // ─── Base ─────────────────────────────────────────────────────────
36
+ '.btu-button-group': {
37
+ display: 'inline-flex',
38
+ alignItems: 'stretch',
39
+ flexWrap: 'nowrap',
40
+ flexShrink: '0',
41
+ },
42
+ // ─── Icon-button: remove wrapper box so inner button is the flex item ──
43
+ '.btu-button-group > btu-icon-button': {
44
+ display: 'contents',
45
+ },
46
+ // ─── Orientation ──────────────────────────────────────────────────
47
+ 'btu-button-group[orientation="vertical"]': {
48
+ flexDirection: 'column',
49
+ },
50
+ // ─── Spaced variant ───────────────────────────────────────────────
51
+ 'btu-button-group[variant="spaced"]': {
52
+ gap: 'var(--button-group-gap, var(--gap-s, 0.5rem))',
53
+ },
54
+ // ─── slot="end" auto-margin ──────────────────────────────────────
55
+ // Direct children and inner .btu-button (for display:contents wrappers like btu-icon-button)
56
+ 'btu-button-group[orientation="horizontal"] > [slot="end"], btu-button-group[orientation="horizontal"] > [slot="end"] > .btu-button': {
57
+ marginInlineStart: 'auto',
58
+ },
59
+ 'btu-button-group[orientation="vertical"] > [slot="end"], btu-button-group[orientation="vertical"] > [slot="end"] > .btu-button': {
60
+ marginBlockStart: 'auto',
61
+ },
62
+ // ─── Size propagation via CSS ─────────────────────────────────────
63
+ 'btu-button-group[size="small"] .btu-button': {
64
+ padding: 'var(--button-padding-sm)',
65
+ width: 'var(--button-size-sm, auto)',
66
+ height: 'var(--button-size-sm, auto)',
67
+ },
68
+ 'btu-button-group[size="medium"] .btu-button': {
69
+ padding: 'var(--button-padding-md)',
70
+ width: 'var(--button-size-md, auto)',
71
+ height: 'var(--button-size-md, auto)',
72
+ },
73
+ 'btu-button-group[size="large"] .btu-button': {
74
+ padding: 'var(--button-padding-lg)',
75
+ width: 'var(--button-size-lg, auto)',
76
+ height: 'var(--button-size-lg, auto)',
77
+ },
78
+ // ─── Connected: convert outline buttons to border-based ───────────
79
+ [`${connected} .btu-button`]: {
80
+ outline: 'none',
81
+ border: `1px solid ${borderColor}`,
82
+ transition: 'box-shadow 100ms ease, filter 100ms ease',
83
+ '&:active': {
84
+ scale: '1',
85
+ boxShadow: 'inset 0 2px 4px oklch(0 0 0 / 10%)',
86
+ filter: 'brightness(0.92)',
87
+ },
88
+ },
89
+ // ─── Disabled buttons ─────────────────────────────────────────────
90
+ '.btu-button-group .btu-button:disabled, .btu-button-group .btu-button[disabled]': {
91
+ opacity: '0.5',
92
+ cursor: 'default',
93
+ },
94
+ // ─── Selection wipe: disable button plugin's instant pressed toggle ─
95
+ // The ::after pseudo handles the pressed background via clip-path wipe,
96
+ // so the button itself must stay at its normal (non-pressed) color.
97
+ '.btu-button-group .btu-button[aria-pressed]': {
98
+ '--button-pressed-color': 'initial',
99
+ '--button-pressed-text-color': 'initial',
100
+ isolation: 'isolate',
101
+ transition: 'color 150ms ease-in',
102
+ },
103
+ '.btu-button-group .btu-button[aria-pressed]::after': {
104
+ content: '""',
105
+ position: 'absolute',
106
+ inset: '0',
107
+ zIndex: '-1',
108
+ borderRadius: 'inherit',
109
+ background: 'var(--button-group-selection-bg)',
110
+ clipPath: 'circle(0% at center)',
111
+ transition: 'clip-path 150ms ease-in',
112
+ },
113
+ // ─── Selection wipe: active state ─────────────────────────────────
114
+ '.btu-button-group .btu-button[aria-pressed="true"]': {
115
+ color: 'var(--button-group-selection-color)',
116
+ transition: 'color 200ms ease-out',
117
+ },
118
+ '.btu-button-group .btu-button[aria-pressed="true"]::after': {
119
+ clipPath: 'circle(75% at center)',
120
+ transition: 'clip-path 200ms ease-out',
121
+ },
122
+ // ─── Reduced motion ─────────────────────────────────────────────────
123
+ '@media (prefers-reduced-motion: reduce)': {
124
+ '.btu-button-group .btu-button[aria-pressed]': {
125
+ transition: 'color 0.01ms ease',
126
+ },
127
+ '.btu-button-group .btu-button[aria-pressed]::after': {
128
+ transition: 'clip-path 0.01ms ease',
129
+ },
130
+ [`${allSelected} .btu-button[aria-pressed="true"]`]: {
131
+ animation: 'none',
132
+ },
133
+ },
134
+ // ─── Connected variant — horizontal ───────────────────────────────
135
+ [`${connectedH} .btu-button`]: {
136
+ borderRadius: '0',
137
+ marginInlineEnd: '-1px',
138
+ position: 'relative',
139
+ '&:hover, &:focus-visible, &:active, &[aria-pressed="true"]': {
140
+ zIndex: '1',
141
+ },
142
+ '&:focus-visible': {
143
+ zIndex: '2',
144
+ },
145
+ },
146
+ [`${connectedH} > :first-child:is(.btu-button), ${connectedH} > :first-child > .btu-button`]: {
147
+ borderStartStartRadius: outerRadius,
148
+ borderEndStartRadius: outerRadius,
149
+ },
150
+ [`${connectedH} > :last-child:is(.btu-button), ${connectedH} > :last-child > .btu-button`]: {
151
+ borderStartEndRadius: outerRadius,
152
+ borderEndEndRadius: outerRadius,
153
+ marginInlineEnd: '0',
154
+ },
155
+ // ─── Connected variant — vertical ─────────────────────────────────
156
+ [`${connectedV} .btu-button`]: {
157
+ borderRadius: '0',
158
+ marginBlockEnd: '-1px',
159
+ position: 'relative',
160
+ '&:hover, &:focus-visible, &:active, &[aria-pressed="true"]': {
161
+ zIndex: '1',
162
+ },
163
+ '&:focus-visible': {
164
+ zIndex: '2',
165
+ },
166
+ },
167
+ [`${connectedV} > :first-child:is(.btu-button), ${connectedV} > :first-child > .btu-button`]: {
168
+ borderStartStartRadius: outerRadius,
169
+ borderStartEndRadius: outerRadius,
170
+ },
171
+ [`${connectedV} > :last-child:is(.btu-button), ${connectedV} > :last-child > .btu-button`]: {
172
+ borderEndStartRadius: outerRadius,
173
+ borderEndEndRadius: outerRadius,
174
+ marginBlockEnd: '0',
175
+ },
176
+ };
177
+ // ─── Sibling index for staggered animations ─────────────────────────
178
+ // CSS sibling-index() has limited browser support (Chrome 133+).
179
+ // When unsupported, the fallback of 1 means all buttons animate simultaneously.
180
+ components[`${connected} > *`] = {
181
+ '--_btn-index': 'sibling-index()',
182
+ };
183
+ // ─── All-selected shimmer (connected only) ─────────────────────────
184
+ // Text color pulse + border color pulse on each button, staggered.
185
+ components[`${allSelected} .btu-button[aria-pressed="true"]`] = {
186
+ animation: 'btu-shimmer-all 500ms ease-in-out both',
187
+ animationDelay: 'calc((var(--_btn-index, 1) - 1) * 100ms)',
188
+ };
189
+ // ─── Selection color variants ─────────────────────────────────────
190
+ for (const key in colors) {
191
+ if (skipColors.has(key))
192
+ continue;
193
+ const pressedKey = key === 'gray' ? 'primary' : key;
194
+ components[`.btu-button-group .btu-button-${key}`] = {
195
+ '--button-group-selection-bg': `oklch(var(--btu-theme-${pressedKey}-50))`,
196
+ '--button-group-selection-color': `oklch(var(--btu-theme-${pressedKey}-800))`,
197
+ '--button-group-shimmer-highlight': `oklch(var(--btu-theme-${pressedKey}-200))`,
198
+ };
199
+ }
200
+ addComponents(components);
201
+ // Keyframes must be added via addBase (not addComponents)
202
+ addBase({
203
+ '@keyframes btu-shimmer-all': {
204
+ '0%, 100%': {
205
+ color: 'var(--button-group-selection-color)',
206
+ borderColor: 'var(--button-group-border-color, oklch(var(--btu-theme-gray-300)))',
207
+ },
208
+ '40%, 60%': {
209
+ color: 'var(--button-group-shimmer-highlight)',
210
+ borderColor: 'var(--button-group-shimmer-highlight)',
211
+ },
212
+ },
213
+ });
214
+ });
215
+ //# sourceMappingURL=tailwind-plugin-button-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tailwind-plugin-button-group.js","sourceRoot":"","sources":["../src/tailwind-plugin-button-group.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,238 @@
1
+ import plugin from 'tailwindcss/plugin'
2
+ import type { CSSRuleObject } from 'tailwindcss/types/config'
3
+ declare let module: any
4
+
5
+ /**
6
+ * Button Group — Tailwind CSS plugin for grouping related buttons.
7
+ *
8
+ * Provides connected (joined) and spaced layouts with horizontal/vertical orientation.
9
+ * Supports both direct `.btu-button` children and `btu-icon-button` children.
10
+ * `btu-icon-button` uses `display: contents` so its inner button participates
11
+ * directly in the group's flex layout.
12
+ *
13
+ * Selection uses a circular wipe transition: a `::after` pseudo-element with
14
+ * `clip-path: circle()` reveals the selection color from the center outward.
15
+ *
16
+ * Class Names:
17
+ *
18
+ * btu-button-group - Base group container
19
+ *
20
+ * CSS Custom Properties:
21
+ *
22
+ * --button-group-gap - Gap between buttons in spaced variant (default: spacing.sm)
23
+ * --button-group-border-radius - Outer corner radius in connected variant (default: 0.5rem)
24
+ * --button-group-border-color - Internal divider color in connected variant (default: gray-300)
25
+ * --button-group-selection-bg - Selection background color (auto-set per color variant)
26
+ * --button-group-selection-color - Selection text color (auto-set per color variant)
27
+ */
28
+
29
+ module.exports = plugin(function ({ addComponents, addBase, theme }) {
30
+ const connected = 'btu-button-group[variant="connected"]'
31
+ const connectedH = `${connected}[orientation="horizontal"]`
32
+ const connectedV = `${connected}[orientation="vertical"]`
33
+ const allSelected = `${connected}[data-all-selected]`
34
+ const borderColor = 'var(--button-group-border-color, oklch(var(--btu-theme-gray-300)))'
35
+ const outerRadius = 'var(--button-group-border-radius, 0.5rem)'
36
+ const skipColors = new Set(['currentColor', 'transparent', 'white', 'black', 'ai'])
37
+ const colors: CSSRuleObject = theme('colors') || {}
38
+
39
+ const components: CSSRuleObject = {
40
+ // ─── Base ─────────────────────────────────────────────────────────
41
+ '.btu-button-group': {
42
+ display: 'inline-flex',
43
+ alignItems: 'stretch',
44
+ flexWrap: 'nowrap',
45
+ flexShrink: '0',
46
+ },
47
+
48
+ // ─── Icon-button: remove wrapper box so inner button is the flex item ──
49
+ '.btu-button-group > btu-icon-button': {
50
+ display: 'contents',
51
+ },
52
+
53
+ // ─── Orientation ──────────────────────────────────────────────────
54
+ 'btu-button-group[orientation="vertical"]': {
55
+ flexDirection: 'column',
56
+ },
57
+
58
+ // ─── Spaced variant ───────────────────────────────────────────────
59
+ 'btu-button-group[variant="spaced"]': {
60
+ gap: 'var(--button-group-gap, var(--gap-s, 0.5rem))',
61
+ },
62
+
63
+ // ─── slot="end" auto-margin ──────────────────────────────────────
64
+ // Direct children and inner .btu-button (for display:contents wrappers like btu-icon-button)
65
+ 'btu-button-group[orientation="horizontal"] > [slot="end"], btu-button-group[orientation="horizontal"] > [slot="end"] > .btu-button':
66
+ {
67
+ marginInlineStart: 'auto',
68
+ },
69
+ 'btu-button-group[orientation="vertical"] > [slot="end"], btu-button-group[orientation="vertical"] > [slot="end"] > .btu-button':
70
+ {
71
+ marginBlockStart: 'auto',
72
+ },
73
+
74
+ // ─── Size propagation via CSS ─────────────────────────────────────
75
+ 'btu-button-group[size="small"] .btu-button': {
76
+ padding: 'var(--button-padding-sm)',
77
+ width: 'var(--button-size-sm, auto)',
78
+ height: 'var(--button-size-sm, auto)',
79
+ },
80
+ 'btu-button-group[size="medium"] .btu-button': {
81
+ padding: 'var(--button-padding-md)',
82
+ width: 'var(--button-size-md, auto)',
83
+ height: 'var(--button-size-md, auto)',
84
+ },
85
+ 'btu-button-group[size="large"] .btu-button': {
86
+ padding: 'var(--button-padding-lg)',
87
+ width: 'var(--button-size-lg, auto)',
88
+ height: 'var(--button-size-lg, auto)',
89
+ },
90
+
91
+ // ─── Connected: convert outline buttons to border-based ───────────
92
+ [`${connected} .btu-button`]: {
93
+ outline: 'none',
94
+ border: `1px solid ${borderColor}`,
95
+ transition: 'box-shadow 100ms ease, filter 100ms ease',
96
+ '&:active': {
97
+ scale: '1',
98
+ boxShadow: 'inset 0 2px 4px oklch(0 0 0 / 10%)',
99
+ filter: 'brightness(0.92)',
100
+ },
101
+ },
102
+
103
+ // ─── Disabled buttons ─────────────────────────────────────────────
104
+ '.btu-button-group .btu-button:disabled, .btu-button-group .btu-button[disabled]': {
105
+ opacity: '0.5',
106
+ cursor: 'default',
107
+ },
108
+
109
+ // ─── Selection wipe: disable button plugin's instant pressed toggle ─
110
+ // The ::after pseudo handles the pressed background via clip-path wipe,
111
+ // so the button itself must stay at its normal (non-pressed) color.
112
+ '.btu-button-group .btu-button[aria-pressed]': {
113
+ '--button-pressed-color': 'initial',
114
+ '--button-pressed-text-color': 'initial',
115
+ isolation: 'isolate',
116
+ transition: 'color 150ms ease-in',
117
+ },
118
+ '.btu-button-group .btu-button[aria-pressed]::after': {
119
+ content: '""',
120
+ position: 'absolute',
121
+ inset: '0',
122
+ zIndex: '-1',
123
+ borderRadius: 'inherit',
124
+ background: 'var(--button-group-selection-bg)',
125
+ clipPath: 'circle(0% at center)',
126
+ transition: 'clip-path 150ms ease-in',
127
+ },
128
+
129
+ // ─── Selection wipe: active state ─────────────────────────────────
130
+ '.btu-button-group .btu-button[aria-pressed="true"]': {
131
+ color: 'var(--button-group-selection-color)',
132
+ transition: 'color 200ms ease-out',
133
+ },
134
+
135
+ '.btu-button-group .btu-button[aria-pressed="true"]::after': {
136
+ clipPath: 'circle(75% at center)',
137
+ transition: 'clip-path 200ms ease-out',
138
+ },
139
+
140
+ // ─── Reduced motion ─────────────────────────────────────────────────
141
+ '@media (prefers-reduced-motion: reduce)': {
142
+ '.btu-button-group .btu-button[aria-pressed]': {
143
+ transition: 'color 0.01ms ease',
144
+ },
145
+ '.btu-button-group .btu-button[aria-pressed]::after': {
146
+ transition: 'clip-path 0.01ms ease',
147
+ },
148
+ [`${allSelected} .btu-button[aria-pressed="true"]`]: {
149
+ animation: 'none',
150
+ },
151
+ },
152
+
153
+ // ─── Connected variant — horizontal ───────────────────────────────
154
+ [`${connectedH} .btu-button`]: {
155
+ borderRadius: '0',
156
+ marginInlineEnd: '-1px',
157
+ position: 'relative',
158
+ '&:hover, &:focus-visible, &:active, &[aria-pressed="true"]': {
159
+ zIndex: '1',
160
+ },
161
+ '&:focus-visible': {
162
+ zIndex: '2',
163
+ },
164
+ },
165
+ [`${connectedH} > :first-child:is(.btu-button), ${connectedH} > :first-child > .btu-button`]: {
166
+ borderStartStartRadius: outerRadius,
167
+ borderEndStartRadius: outerRadius,
168
+ },
169
+ [`${connectedH} > :last-child:is(.btu-button), ${connectedH} > :last-child > .btu-button`]: {
170
+ borderStartEndRadius: outerRadius,
171
+ borderEndEndRadius: outerRadius,
172
+ marginInlineEnd: '0',
173
+ },
174
+
175
+ // ─── Connected variant — vertical ─────────────────────────────────
176
+ [`${connectedV} .btu-button`]: {
177
+ borderRadius: '0',
178
+ marginBlockEnd: '-1px',
179
+ position: 'relative',
180
+ '&:hover, &:focus-visible, &:active, &[aria-pressed="true"]': {
181
+ zIndex: '1',
182
+ },
183
+ '&:focus-visible': {
184
+ zIndex: '2',
185
+ },
186
+ },
187
+ [`${connectedV} > :first-child:is(.btu-button), ${connectedV} > :first-child > .btu-button`]: {
188
+ borderStartStartRadius: outerRadius,
189
+ borderStartEndRadius: outerRadius,
190
+ },
191
+ [`${connectedV} > :last-child:is(.btu-button), ${connectedV} > :last-child > .btu-button`]: {
192
+ borderEndStartRadius: outerRadius,
193
+ borderEndEndRadius: outerRadius,
194
+ marginBlockEnd: '0',
195
+ },
196
+ }
197
+
198
+ // ─── Sibling index for staggered animations ─────────────────────────
199
+ // CSS sibling-index() has limited browser support (Chrome 133+).
200
+ // When unsupported, the fallback of 1 means all buttons animate simultaneously.
201
+ components[`${connected} > *`] = {
202
+ '--_btn-index': 'sibling-index()',
203
+ }
204
+
205
+ // ─── All-selected shimmer (connected only) ─────────────────────────
206
+ // Text color pulse + border color pulse on each button, staggered.
207
+ components[`${allSelected} .btu-button[aria-pressed="true"]`] = {
208
+ animation: 'btu-shimmer-all 500ms ease-in-out both',
209
+ animationDelay: 'calc((var(--_btn-index, 1) - 1) * 100ms)',
210
+ }
211
+
212
+ // ─── Selection color variants ─────────────────────────────────────
213
+ for (const key in colors) {
214
+ if (skipColors.has(key)) continue
215
+ const pressedKey = key === 'gray' ? 'primary' : key
216
+ components[`.btu-button-group .btu-button-${key}`] = {
217
+ '--button-group-selection-bg': `oklch(var(--btu-theme-${pressedKey}-50))`,
218
+ '--button-group-selection-color': `oklch(var(--btu-theme-${pressedKey}-800))`,
219
+ '--button-group-shimmer-highlight': `oklch(var(--btu-theme-${pressedKey}-200))`,
220
+ }
221
+ }
222
+
223
+ addComponents(components)
224
+
225
+ // Keyframes must be added via addBase (not addComponents)
226
+ addBase({
227
+ '@keyframes btu-shimmer-all': {
228
+ '0%, 100%': {
229
+ color: 'var(--button-group-selection-color)',
230
+ borderColor: 'var(--button-group-border-color, oklch(var(--btu-theme-gray-300)))',
231
+ },
232
+ '40%, 60%': {
233
+ color: 'var(--button-group-shimmer-highlight)',
234
+ borderColor: 'var(--button-group-shimmer-highlight)',
235
+ },
236
+ },
237
+ })
238
+ })
@@ -218,7 +218,7 @@ module.exports = plugin(function ({ addComponents, addUtilities, theme }) {
218
218
  height: 'var(--button-size-xl, auto)',
219
219
  },
220
220
  '2xl': {
221
- '--Icon-size': iconSizes['lg'],
221
+ '--icon-size': iconSizes['lg'],
222
222
  fontSize: `var(--button-icon-font-size, ${textSizes['lg'][0]})`,
223
223
  lineHeight: `var(--button-icon-line-height, ${textSizes['lg'][1]})`,
224
224
  padding: 'var(--button-padding-2xl)',
@@ -227,7 +227,7 @@ module.exports = plugin(function ({ addComponents, addUtilities, theme }) {
227
227
  height: 'var(--button-size-xl, auto)',
228
228
  },
229
229
  '2xl': {
230
- '--Icon-size': iconSizes['lg'],
230
+ '--icon-size': iconSizes['lg'],
231
231
  fontSize: `var(--button-icon-font-size, ${textSizes['lg'][0]})`,
232
232
  lineHeight: `var(--button-icon-line-height, ${textSizes['lg'][1]})`,
233
233
  padding: 'var(--button-padding-2xl)',
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tailwind-plugin-checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tailwind-plugin-checkbox.d.ts","sourceRoot":"","sources":["../src/tailwind-plugin-checkbox.ts"],"names":[],"mappings":""}