@forthtilliath/forth-ui 0.2.5 → 0.4.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 (372) hide show
  1. package/README.md +91 -34
  2. package/dist/components/accordion/accordion-items.d.ts +1 -1
  3. package/dist/components/accordion/accordion-items.d.ts.map +1 -1
  4. package/dist/components/accordion/accordion-items.js +3 -2
  5. package/dist/components/accordion/accordion-multiple.d.ts +1 -1
  6. package/dist/components/accordion/accordion-multiple.d.ts.map +1 -1
  7. package/dist/components/accordion/accordion-multiple.js +2 -2
  8. package/dist/components/accordion/accordion-single.d.ts +1 -1
  9. package/dist/components/accordion/accordion-single.d.ts.map +1 -1
  10. package/dist/components/accordion/accordion-single.js +2 -2
  11. package/dist/components/accordion/accordion-trigger.d.ts +15 -0
  12. package/dist/components/accordion/accordion-trigger.d.ts.map +1 -0
  13. package/dist/components/accordion/accordion-trigger.js +25 -0
  14. package/dist/components/accordion/accordion.d.ts +1 -1
  15. package/dist/components/accordion/accordion.d.ts.map +1 -1
  16. package/dist/components/accordion/accordion.js +2 -2
  17. package/dist/components/accordion/index.d.ts +1 -1
  18. package/dist/components/accordion/index.d.ts.map +1 -1
  19. package/dist/components/accordion/index.js +1 -1
  20. package/dist/components/accordion/types.d.ts +1 -1
  21. package/dist/components/accordion/types.d.ts.map +1 -1
  22. package/dist/components/alert/alert.d.ts +8 -2
  23. package/dist/components/alert/alert.d.ts.map +1 -1
  24. package/dist/components/alert/alert.js +5 -3
  25. package/dist/components/alert/index.d.ts +3 -3
  26. package/dist/components/alert/index.d.ts.map +1 -1
  27. package/dist/components/alert/index.js +1 -1
  28. package/dist/components/alert/variants.d.ts.map +1 -1
  29. package/dist/components/alert/variants.js +11 -4
  30. package/dist/components/avatar/avatar-group.d.ts +1 -1
  31. package/dist/components/avatar/avatar-group.d.ts.map +1 -1
  32. package/dist/components/avatar/avatar-group.js +1 -1
  33. package/dist/components/avatar/avatar.d.ts +9 -3
  34. package/dist/components/avatar/avatar.d.ts.map +1 -1
  35. package/dist/components/avatar/avatar.js +7 -4
  36. package/dist/components/avatar/index.d.ts +4 -4
  37. package/dist/components/avatar/index.d.ts.map +1 -1
  38. package/dist/components/avatar/index.js +2 -2
  39. package/dist/components/avatar/variants.d.ts.map +1 -1
  40. package/dist/components/avatar/variants.js +39 -39
  41. package/dist/components/badge/badge.d.ts +8 -2
  42. package/dist/components/badge/badge.d.ts.map +1 -1
  43. package/dist/components/badge/badge.js +5 -3
  44. package/dist/components/badge/index.d.ts +3 -3
  45. package/dist/components/badge/index.d.ts.map +1 -1
  46. package/dist/components/badge/index.js +1 -1
  47. package/dist/components/badge/variants.d.ts.map +1 -1
  48. package/dist/components/badge/variants.js +8 -4
  49. package/dist/components/banner/banner.d.ts +8 -2
  50. package/dist/components/banner/banner.d.ts.map +1 -1
  51. package/dist/components/banner/banner.js +5 -3
  52. package/dist/components/banner/index.d.ts +3 -3
  53. package/dist/components/banner/index.d.ts.map +1 -1
  54. package/dist/components/banner/index.js +1 -1
  55. package/dist/components/bento-grid/index.d.ts +2 -2
  56. package/dist/components/bento-grid/index.d.ts.map +1 -1
  57. package/dist/components/bento-grid/index.js +1 -1
  58. package/dist/components/breadcrumb/breadcrumb.d.ts +8 -2
  59. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  60. package/dist/components/breadcrumb/breadcrumb.js +8 -3
  61. package/dist/components/breadcrumb/index.d.ts +2 -2
  62. package/dist/components/breadcrumb/index.d.ts.map +1 -1
  63. package/dist/components/breadcrumb/index.js +1 -1
  64. package/dist/components/button/button.d.ts +1 -1
  65. package/dist/components/button/button.d.ts.map +1 -1
  66. package/dist/components/button/button.js +1 -1
  67. package/dist/components/button/index.d.ts +5 -5
  68. package/dist/components/button/index.d.ts.map +1 -1
  69. package/dist/components/button/index.js +2 -2
  70. package/dist/components/checkbox/index.d.ts +2 -2
  71. package/dist/components/checkbox/index.d.ts.map +1 -1
  72. package/dist/components/checkbox/index.js +1 -1
  73. package/dist/components/chip/chip.d.ts +2 -2
  74. package/dist/components/chip/chip.d.ts.map +1 -1
  75. package/dist/components/chip/chip.js +2 -2
  76. package/dist/components/chip/index.d.ts +2 -2
  77. package/dist/components/chip/index.d.ts.map +1 -1
  78. package/dist/components/chip/index.js +1 -1
  79. package/dist/components/code-block/code-block.d.ts +7 -1
  80. package/dist/components/code-block/code-block.d.ts.map +1 -1
  81. package/dist/components/code-block/code-block.js +4 -2
  82. package/dist/components/code-block/index.d.ts +2 -2
  83. package/dist/components/code-block/index.d.ts.map +1 -1
  84. package/dist/components/code-block/index.js +1 -1
  85. package/dist/components/collapsible/index.d.ts +6 -6
  86. package/dist/components/collapsible/index.d.ts.map +1 -1
  87. package/dist/components/collapsible/index.js +3 -3
  88. package/dist/components/color-picker/color-picker.d.ts +7 -1
  89. package/dist/components/color-picker/color-picker.d.ts.map +1 -1
  90. package/dist/components/color-picker/color-picker.js +5 -3
  91. package/dist/components/color-picker/index.d.ts +2 -2
  92. package/dist/components/color-picker/index.d.ts.map +1 -1
  93. package/dist/components/color-picker/index.js +1 -1
  94. package/dist/components/column-menu/column-menu.d.ts +39 -0
  95. package/dist/components/column-menu/column-menu.d.ts.map +1 -0
  96. package/dist/components/column-menu/column-menu.js +74 -0
  97. package/dist/components/column-menu/index.d.ts +6 -0
  98. package/dist/components/column-menu/index.d.ts.map +1 -0
  99. package/dist/components/column-menu/index.js +3 -0
  100. package/dist/components/column-menu/sortable-column-row.d.ts +13 -0
  101. package/dist/components/column-menu/sortable-column-row.d.ts.map +1 -0
  102. package/dist/components/column-menu/sortable-column-row.js +22 -0
  103. package/dist/components/column-menu/types.d.ts +21 -0
  104. package/dist/components/column-menu/types.d.ts.map +1 -0
  105. package/dist/components/column-menu/types.js +7 -0
  106. package/dist/components/column-menu/use-dnd-sensors.d.ts +6 -0
  107. package/dist/components/column-menu/use-dnd-sensors.d.ts.map +1 -0
  108. package/dist/components/column-menu/use-dnd-sensors.js +14 -0
  109. package/dist/components/combobox/combobox.d.ts +16 -1
  110. package/dist/components/combobox/combobox.d.ts.map +1 -1
  111. package/dist/components/combobox/combobox.js +7 -3
  112. package/dist/components/combobox/index.d.ts +4 -4
  113. package/dist/components/combobox/index.d.ts.map +1 -1
  114. package/dist/components/combobox/index.js +2 -2
  115. package/dist/components/combobox/multi-select.d.ts +17 -2
  116. package/dist/components/combobox/multi-select.d.ts.map +1 -1
  117. package/dist/components/combobox/multi-select.js +8 -4
  118. package/dist/components/command-palette/command-palette.d.ts +7 -1
  119. package/dist/components/command-palette/command-palette.d.ts.map +1 -1
  120. package/dist/components/command-palette/command-palette.js +6 -2
  121. package/dist/components/command-palette/index.d.ts +2 -2
  122. package/dist/components/command-palette/index.d.ts.map +1 -1
  123. package/dist/components/command-palette/index.js +1 -1
  124. package/dist/components/confirm-dialog/confirm-dialog.d.ts +7 -1
  125. package/dist/components/confirm-dialog/confirm-dialog.d.ts.map +1 -1
  126. package/dist/components/confirm-dialog/confirm-dialog.js +12 -6
  127. package/dist/components/confirm-dialog/index.d.ts +3 -3
  128. package/dist/components/confirm-dialog/index.d.ts.map +1 -1
  129. package/dist/components/confirm-dialog/index.js +2 -2
  130. package/dist/components/confirm-dialog/use-confirm.d.ts +1 -1
  131. package/dist/components/confirm-dialog/use-confirm.d.ts.map +1 -1
  132. package/dist/components/confirm-dialog/use-confirm.js +1 -1
  133. package/dist/components/copy-menu-item/copy-menu-item.d.ts +18 -0
  134. package/dist/components/copy-menu-item/copy-menu-item.d.ts.map +1 -0
  135. package/dist/components/copy-menu-item/copy-menu-item.js +23 -0
  136. package/dist/components/copy-menu-item/index.d.ts +3 -0
  137. package/dist/components/copy-menu-item/index.d.ts.map +1 -0
  138. package/dist/components/copy-menu-item/index.js +1 -0
  139. package/dist/components/count-animation/index.d.ts +2 -2
  140. package/dist/components/count-animation/index.d.ts.map +1 -1
  141. package/dist/components/count-animation/index.js +1 -1
  142. package/dist/components/date-picker/date-picker.d.ts +7 -1
  143. package/dist/components/date-picker/date-picker.d.ts.map +1 -1
  144. package/dist/components/date-picker/date-picker.js +6 -3
  145. package/dist/components/date-picker/index.d.ts +2 -2
  146. package/dist/components/date-picker/index.d.ts.map +1 -1
  147. package/dist/components/date-picker/index.js +1 -1
  148. package/dist/components/description-list/index.d.ts +1 -1
  149. package/dist/components/description-list/index.d.ts.map +1 -1
  150. package/dist/components/description-list/index.js +1 -1
  151. package/dist/components/dropdrawer/index.d.ts +2 -2
  152. package/dist/components/dropdrawer/index.d.ts.map +1 -1
  153. package/dist/components/dropdrawer/index.js +1 -1
  154. package/dist/components/dropzone/dropzone.d.ts +7 -1
  155. package/dist/components/dropzone/dropzone.d.ts.map +1 -1
  156. package/dist/components/dropzone/dropzone.js +5 -3
  157. package/dist/components/dropzone/index.d.ts +2 -2
  158. package/dist/components/dropzone/index.d.ts.map +1 -1
  159. package/dist/components/dropzone/index.js +1 -1
  160. package/dist/components/field/index.d.ts +2 -2
  161. package/dist/components/field/index.d.ts.map +1 -1
  162. package/dist/components/field/index.js +1 -1
  163. package/dist/components/file-list/file-list.d.ts +4 -1
  164. package/dist/components/file-list/file-list.d.ts.map +1 -1
  165. package/dist/components/file-list/file-list.js +4 -1
  166. package/dist/components/file-list/index.d.ts +2 -2
  167. package/dist/components/file-list/index.d.ts.map +1 -1
  168. package/dist/components/file-list/index.js +1 -1
  169. package/dist/components/gradient-frame/gradient-frame.d.ts +27 -0
  170. package/dist/components/gradient-frame/gradient-frame.d.ts.map +1 -0
  171. package/dist/components/gradient-frame/gradient-frame.js +16 -0
  172. package/dist/components/gradient-frame/index.d.ts +3 -0
  173. package/dist/components/gradient-frame/index.d.ts.map +1 -0
  174. package/dist/components/gradient-frame/index.js +1 -0
  175. package/dist/components/grid/context.d.ts.map +1 -1
  176. package/dist/components/grid/context.js +1 -0
  177. package/dist/components/grid/grid-item.d.ts +1 -1
  178. package/dist/components/grid/grid-item.d.ts.map +1 -1
  179. package/dist/components/grid/grid-item.js +3 -2
  180. package/dist/components/grid/grid.d.ts +3 -3
  181. package/dist/components/grid/grid.d.ts.map +1 -1
  182. package/dist/components/grid/grid.js +4 -3
  183. package/dist/components/grid/index.d.ts +2 -2
  184. package/dist/components/grid/index.d.ts.map +1 -1
  185. package/dist/components/grid/index.js +2 -2
  186. package/dist/components/grid/variants.d.ts +2 -2
  187. package/dist/components/icon-bubble/icon-bubble.d.ts +21 -0
  188. package/dist/components/icon-bubble/icon-bubble.d.ts.map +1 -0
  189. package/dist/components/icon-bubble/icon-bubble.js +16 -0
  190. package/dist/components/icon-bubble/index.d.ts +4 -0
  191. package/dist/components/icon-bubble/index.d.ts.map +1 -0
  192. package/dist/components/icon-bubble/index.js +1 -0
  193. package/dist/components/icon-bubble/variants.d.ts +12 -0
  194. package/dist/components/icon-bubble/variants.d.ts.map +1 -0
  195. package/dist/components/icon-bubble/variants.js +19 -0
  196. package/dist/components/image-input/image-input.d.ts +7 -1
  197. package/dist/components/image-input/image-input.d.ts.map +1 -1
  198. package/dist/components/image-input/image-input.js +4 -2
  199. package/dist/components/image-input/index.d.ts +2 -2
  200. package/dist/components/image-input/index.d.ts.map +1 -1
  201. package/dist/components/image-input/index.js +1 -1
  202. package/dist/components/infinite-scroll/index.d.ts +2 -2
  203. package/dist/components/infinite-scroll/index.d.ts.map +1 -1
  204. package/dist/components/infinite-scroll/index.js +1 -1
  205. package/dist/components/kbd/index.d.ts +1 -1
  206. package/dist/components/kbd/index.d.ts.map +1 -1
  207. package/dist/components/kbd/index.js +1 -1
  208. package/dist/components/link/index.d.ts +6 -6
  209. package/dist/components/link/index.d.ts.map +1 -1
  210. package/dist/components/link/index.js +3 -3
  211. package/dist/components/link/link.d.ts +1 -1
  212. package/dist/components/link/link.d.ts.map +1 -1
  213. package/dist/components/link/link.js +1 -1
  214. package/dist/components/marquee/index.d.ts +2 -2
  215. package/dist/components/marquee/index.d.ts.map +1 -1
  216. package/dist/components/marquee/index.js +1 -1
  217. package/dist/components/mode-toggle/index.d.ts +4 -0
  218. package/dist/components/mode-toggle/index.d.ts.map +1 -0
  219. package/dist/components/mode-toggle/index.js +2 -0
  220. package/dist/components/mode-toggle/mode-toggle.d.ts +22 -0
  221. package/dist/components/mode-toggle/mode-toggle.d.ts.map +1 -0
  222. package/dist/components/mode-toggle/mode-toggle.js +26 -0
  223. package/dist/components/mode-toggle/theme-provider.d.ts +13 -0
  224. package/dist/components/mode-toggle/theme-provider.d.ts.map +1 -0
  225. package/dist/components/mode-toggle/theme-provider.js +15 -0
  226. package/dist/components/multi-step-loader/index.d.ts +2 -2
  227. package/dist/components/multi-step-loader/index.d.ts.map +1 -1
  228. package/dist/components/multi-step-loader/index.js +1 -1
  229. package/dist/components/multi-step-loader/multi-step-loader.js +2 -2
  230. package/dist/components/navbar/index.d.ts +4 -4
  231. package/dist/components/navbar/index.d.ts.map +1 -1
  232. package/dist/components/navbar/index.js +2 -2
  233. package/dist/components/navbar/navbar-mobile-menu.d.ts +7 -1
  234. package/dist/components/navbar/navbar-mobile-menu.d.ts.map +1 -1
  235. package/dist/components/navbar/navbar-mobile-menu.js +5 -3
  236. package/dist/components/notification-center/index.d.ts +2 -2
  237. package/dist/components/notification-center/index.d.ts.map +1 -1
  238. package/dist/components/notification-center/index.js +1 -1
  239. package/dist/components/notification-center/notification-center.d.ts +7 -1
  240. package/dist/components/notification-center/notification-center.d.ts.map +1 -1
  241. package/dist/components/notification-center/notification-center.js +7 -4
  242. package/dist/components/number-input/index.d.ts +2 -2
  243. package/dist/components/number-input/index.d.ts.map +1 -1
  244. package/dist/components/number-input/index.js +1 -1
  245. package/dist/components/number-input/number-input.d.ts +7 -1
  246. package/dist/components/number-input/number-input.d.ts.map +1 -1
  247. package/dist/components/number-input/number-input.js +6 -4
  248. package/dist/components/pagination/index.d.ts +4 -4
  249. package/dist/components/pagination/index.d.ts.map +1 -1
  250. package/dist/components/pagination/index.js +2 -2
  251. package/dist/components/pagination/pagination.d.ts +8 -2
  252. package/dist/components/pagination/pagination.d.ts.map +1 -1
  253. package/dist/components/pagination/pagination.js +12 -9
  254. package/dist/components/password-input/index.d.ts +4 -4
  255. package/dist/components/password-input/index.d.ts.map +1 -1
  256. package/dist/components/password-input/index.js +2 -2
  257. package/dist/components/password-input/password-input.d.ts +9 -2
  258. package/dist/components/password-input/password-input.d.ts.map +1 -1
  259. package/dist/components/password-input/password-input.js +4 -2
  260. package/dist/components/progress/index.d.ts +3 -3
  261. package/dist/components/progress/index.d.ts.map +1 -1
  262. package/dist/components/progress/index.js +1 -1
  263. package/dist/components/progress/progress.d.ts +5 -2
  264. package/dist/components/progress/progress.d.ts.map +1 -1
  265. package/dist/components/progress/progress.js +5 -3
  266. package/dist/components/qr-code/index.d.ts +2 -2
  267. package/dist/components/qr-code/index.d.ts.map +1 -1
  268. package/dist/components/qr-code/index.js +1 -1
  269. package/dist/components/qr-code/qr-code.d.ts +7 -1
  270. package/dist/components/qr-code/qr-code.d.ts.map +1 -1
  271. package/dist/components/qr-code/qr-code.js +5 -2
  272. package/dist/components/radio/index.d.ts +2 -2
  273. package/dist/components/radio/index.d.ts.map +1 -1
  274. package/dist/components/radio/index.js +1 -1
  275. package/dist/components/rating/index.d.ts +2 -2
  276. package/dist/components/rating/index.d.ts.map +1 -1
  277. package/dist/components/rating/index.js +1 -1
  278. package/dist/components/rating/rating.d.ts +7 -1
  279. package/dist/components/rating/rating.d.ts.map +1 -1
  280. package/dist/components/rating/rating.js +23 -2
  281. package/dist/components/relative-time/index.d.ts +2 -2
  282. package/dist/components/relative-time/index.d.ts.map +1 -1
  283. package/dist/components/relative-time/index.js +1 -1
  284. package/dist/components/reparent/index.d.ts +2 -2
  285. package/dist/components/reparent/index.d.ts.map +1 -1
  286. package/dist/components/reparent/index.js +1 -1
  287. package/dist/components/repeat/index.d.ts +1 -1
  288. package/dist/components/repeat/index.d.ts.map +1 -1
  289. package/dist/components/repeat/index.js +1 -1
  290. package/dist/components/scroll-progress/index.d.ts +2 -2
  291. package/dist/components/scroll-progress/index.d.ts.map +1 -1
  292. package/dist/components/scroll-progress/index.js +1 -1
  293. package/dist/components/scroll-shadow/index.d.ts +2 -2
  294. package/dist/components/scroll-shadow/index.d.ts.map +1 -1
  295. package/dist/components/scroll-shadow/index.js +1 -1
  296. package/dist/components/scroll-shadow/scroll-shadow.d.ts.map +1 -1
  297. package/dist/components/scroll-shadow/scroll-shadow.js +3 -1
  298. package/dist/components/scrollspy/index.d.ts +2 -2
  299. package/dist/components/scrollspy/index.d.ts.map +1 -1
  300. package/dist/components/scrollspy/index.js +1 -1
  301. package/dist/components/separator/index.d.ts +2 -2
  302. package/dist/components/separator/index.d.ts.map +1 -1
  303. package/dist/components/separator/index.js +1 -1
  304. package/dist/components/snippet/index.d.ts +2 -2
  305. package/dist/components/snippet/index.d.ts.map +1 -1
  306. package/dist/components/snippet/index.js +1 -1
  307. package/dist/components/snippet/snippet.d.ts +7 -1
  308. package/dist/components/snippet/snippet.d.ts.map +1 -1
  309. package/dist/components/snippet/snippet.js +6 -2
  310. package/dist/components/sortable/index.d.ts +2 -2
  311. package/dist/components/sortable/index.d.ts.map +1 -1
  312. package/dist/components/sortable/index.js +1 -1
  313. package/dist/components/spacer/index.d.ts +2 -2
  314. package/dist/components/spacer/index.d.ts.map +1 -1
  315. package/dist/components/spacer/index.js +1 -1
  316. package/dist/components/spinner/index.d.ts +3 -3
  317. package/dist/components/spinner/index.d.ts.map +1 -1
  318. package/dist/components/spinner/index.js +1 -1
  319. package/dist/components/spinner/spinner.d.ts +8 -2
  320. package/dist/components/spinner/spinner.d.ts.map +1 -1
  321. package/dist/components/spinner/spinner.js +6 -3
  322. package/dist/components/stepper/index.d.ts +2 -2
  323. package/dist/components/stepper/index.d.ts.map +1 -1
  324. package/dist/components/stepper/index.js +1 -1
  325. package/dist/components/submit-button/index.d.ts +2 -2
  326. package/dist/components/submit-button/index.d.ts.map +1 -1
  327. package/dist/components/submit-button/index.js +1 -1
  328. package/dist/components/submit-button/submit-button.d.ts +1 -1
  329. package/dist/components/submit-button/submit-button.d.ts.map +1 -1
  330. package/dist/components/submit-button/submit-button.js +1 -1
  331. package/dist/components/tags-input/index.d.ts +2 -2
  332. package/dist/components/tags-input/index.d.ts.map +1 -1
  333. package/dist/components/tags-input/index.js +1 -1
  334. package/dist/components/tags-input/tags-input.d.ts +14 -1
  335. package/dist/components/tags-input/tags-input.d.ts.map +1 -1
  336. package/dist/components/tags-input/tags-input.js +7 -4
  337. package/dist/components/theme-image/index.d.ts +3 -0
  338. package/dist/components/theme-image/index.d.ts.map +1 -0
  339. package/dist/components/theme-image/index.js +1 -0
  340. package/dist/components/theme-image/theme-image.d.ts +25 -0
  341. package/dist/components/theme-image/theme-image.d.ts.map +1 -0
  342. package/dist/components/theme-image/theme-image.js +19 -0
  343. package/dist/components/timeline/index.d.ts +2 -2
  344. package/dist/components/timeline/index.d.ts.map +1 -1
  345. package/dist/components/timeline/index.js +1 -1
  346. package/dist/components/toggle-switch/index.d.ts +4 -0
  347. package/dist/components/toggle-switch/index.d.ts.map +1 -0
  348. package/dist/components/toggle-switch/index.js +1 -0
  349. package/dist/components/toggle-switch/toggle-switch.d.ts +37 -0
  350. package/dist/components/toggle-switch/toggle-switch.d.ts.map +1 -0
  351. package/dist/components/toggle-switch/toggle-switch.js +25 -0
  352. package/dist/components/toggle-switch/variants.d.ts +9 -0
  353. package/dist/components/toggle-switch/variants.d.ts.map +1 -0
  354. package/dist/components/toggle-switch/variants.js +30 -0
  355. package/dist/components/tree/index.d.ts +2 -2
  356. package/dist/components/tree/index.d.ts.map +1 -1
  357. package/dist/components/tree/index.js +1 -1
  358. package/dist/components/tree/tree.js +1 -1
  359. package/dist/globals.css +1509 -121
  360. package/dist/locale/UiLocaleProvider.d.ts +19 -0
  361. package/dist/locale/UiLocaleProvider.d.ts.map +1 -0
  362. package/dist/locale/UiLocaleProvider.js +17 -0
  363. package/dist/locale/index.d.ts +4 -0
  364. package/dist/locale/index.d.ts.map +1 -0
  365. package/dist/locale/index.js +3 -0
  366. package/dist/locale/locale.d.ts +15 -0
  367. package/dist/locale/locale.d.ts.map +1 -0
  368. package/dist/locale/locale.js +19 -0
  369. package/dist/locale/messages.d.ts +98 -0
  370. package/dist/locale/messages.d.ts.map +1 -0
  371. package/dist/locale/messages.js +99 -0
  372. package/package.json +34 -15
@@ -1,9 +1,11 @@
1
+ "use client";
1
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
3
  import { Avatar as AvatarPrimitive, AvatarFallback, AvatarImage, } from "@forthtilliath/shadcn-ui/components/avatar";
3
4
  import { Tooltip, TooltipContent, TooltipTrigger, } from "@forthtilliath/shadcn-ui/components/tooltip";
4
5
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
5
- import { DEFAULT_BADGE_POSITION, STATUS_LABEL } from "./constants";
6
- import { avatarVariants, badgeVariants, fallbackVariants, statusVariants, tooltipTriggerVariants, } from "./variants";
6
+ import { useUiMessages } from "../../locale/locale.js";
7
+ import { DEFAULT_BADGE_POSITION } from "./constants.js";
8
+ import { avatarVariants, badgeVariants, fallbackVariants, statusVariants, tooltipTriggerVariants, } from "./variants.js";
7
9
  /**
8
10
  * An image element with a fallback for representing the user.
9
11
  *
@@ -17,8 +19,9 @@ import { avatarVariants, badgeVariants, fallbackVariants, statusVariants, toolti
17
19
  * @author Forth
18
20
  * @copyright 2025 Forth
19
21
  */
20
- export function Avatar({ src, alt, fallback, fallbackVariant, shape, size, ring = false, status, position, badge, badgeVariant, badgePosition = DEFAULT_BADGE_POSITION, className, renderTooltip, ...props }) {
21
- const avatar = (_jsxs("div", { className: "relative", children: [_jsxs(AvatarPrimitive, { className: cn("block", avatarVariants({ shape, ring, size }), className?.root), ...props, children: [_jsx(AvatarImage, { src: src, alt: alt, className: className?.image }), _jsx(AvatarFallback, { className: cn(fallbackVariants({ fallbackVariant, shape }), className?.fallback), children: fallback })] }), status && (_jsx("div", { className: cn(statusVariants({ status, position }), className?.status), children: _jsx("span", { className: "sr-only", children: STATUS_LABEL[status] }) })), badge !== undefined && (_jsx("div", { className: cn(badgeVariants({ badgeVariant, position: badgePosition }), className?.badge), children: badge }))] }));
22
+ export function Avatar({ src, alt, fallback, fallbackVariant, shape, size, ring = false, status, position, badge, badgeVariant, badgePosition = DEFAULT_BADGE_POSITION, className, renderTooltip, locale, ...props }) {
23
+ const messages = useUiMessages(locale);
24
+ const avatar = (_jsxs("div", { className: "relative", children: [_jsxs(AvatarPrimitive, { className: cn("block", avatarVariants({ shape, ring, size }), className?.root), ...props, children: [_jsx(AvatarImage, { src: src, alt: alt, className: className?.image }), _jsx(AvatarFallback, { className: cn(fallbackVariants({ fallbackVariant, shape }), className?.fallback), children: fallback })] }), status && (_jsx("div", { className: cn(statusVariants({ status, position }), className?.status), children: _jsx("span", { className: "sr-only", children: messages.avatar[status] }) })), badge !== undefined && (_jsx("div", { className: cn(badgeVariants({ badgeVariant, position: badgePosition }), className?.badge), children: badge }))] }));
22
25
  if (typeof renderTooltip === "function") {
23
26
  return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { className: cn(tooltipTriggerVariants({ shape }), className?.tooltipTrigger), asChild: true, children: avatar }), _jsx(TooltipContent, { className: cn(className?.tooltipContent), children: renderTooltip() })] }));
24
27
  }
@@ -1,5 +1,5 @@
1
- export type { AvatarProps } from "./avatar";
2
- export { Avatar } from "./avatar";
3
- export type { AvatarGroupProps } from "./avatar-group";
4
- export { AvatarGroup } from "./avatar-group";
1
+ export type { AvatarProps } from "./avatar.js";
2
+ export { Avatar } from "./avatar.js";
3
+ export type { AvatarGroupProps } from "./avatar-group.js";
4
+ export { AvatarGroup } from "./avatar-group.js";
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,2 +1,2 @@
1
- export { Avatar } from "./avatar";
2
- export { AvatarGroup } from "./avatar-group";
1
+ export { Avatar } from "./avatar.js";
2
+ export { AvatarGroup } from "./avatar-group.js";
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAM7D,eAAO,MAAM,cAAc;;;;8EA0BzB,CAAC;AAEH,eAAO,MAAM,cAAc;;;8EAwBzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC;AAEjE;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;8EAsBzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAE/D,eAAO,MAAM,gBAAgB;;;8EAsD3B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAErE,eAAO,MAAM,sBAAsB;;8EAWjC,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAW7D,eAAO,MAAM,cAAc;;;;8EA0BzB,CAAC;AAEH,eAAO,MAAM,cAAc;;;8EAwBzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC;AAEjE;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;8EAsBzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAE/D,eAAO,MAAM,gBAAgB;;;8EAwD3B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAErE,eAAO,MAAM,sBAAsB;;8EAWjC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { cva } from "class-variance-authority";
2
- import { DEFAULT_BADGE_POSITION, DEFAULT_SHAPE } from "./constants";
2
+ import { DEFAULT_BADGE_POSITION, DEFAULT_SHAPE } from "./constants.js";
3
3
  export const avatarVariants = cva("size-10", {
4
4
  variants: {
5
5
  ring: {
@@ -82,44 +82,44 @@ export const fallbackVariants = cva("", {
82
82
  variants: {
83
83
  fallbackVariant: {
84
84
  default: "",
85
- amber: "bg-amber-500",
86
- blue: "bg-blue-500",
87
- cyan: "bg-cyan-500",
88
- emerald: "bg-emerald-500",
89
- fuchsia: "bg-fuchsia-500",
90
- gray: "bg-gray-500",
91
- green: "bg-green-500",
92
- indigo: "bg-indigo-500",
93
- lime: "bg-lime-500",
94
- orange: "bg-orange-500",
95
- pink: "bg-pink-500",
96
- purple: "bg-purple-500",
97
- red: "bg-red-500",
98
- rose: "bg-rose-500",
99
- slate: "bg-slate-500",
100
- sky: "bg-sky-500",
101
- teal: "bg-teal-500",
102
- violet: "bg-violet-500",
103
- yellow: "bg-yellow-500",
104
- "amber-full": "bg-amber-500/25 text-amber-500",
105
- "blue-full": "bg-blue-500/25 text-blue-500",
106
- "cyan-full": "bg-cyan-500/25 text-cyan-500",
107
- "emerald-full": "bg-emerald-500/25 text-emerald-500",
108
- "fuchsia-full": "bg-fuchsia-500/25 text-fuchsia-500",
109
- "gray-full": "bg-gray-500/25 text-gray-500",
110
- "green-full": "bg-green-500/25 text-green-500",
111
- "indigo-full": "bg-indigo-500/25 text-indigo-500",
112
- "lime-full": "bg-lime-500/25 text-lime-500",
113
- "orange-full": "bg-orange-500/25 text-orange-500",
114
- "pink-full": "bg-pink-500/25 text-pink-500",
115
- "purple-full": "bg-purple-500/25 text-purple-500",
116
- "red-full": "bg-red-500/25 text-red-500",
117
- "rose-full": "bg-rose-500/25 text-rose-500",
118
- "slate-full": "bg-slate-500/25 text-slate-500",
119
- "sky-full": "bg-sky-500/25 text-sky-500",
120
- "teal-full": "bg-teal-500/25 text-teal-500",
121
- "violet-full": "bg-violet-500/25 text-violet-500",
122
- "yellow-full": "bg-yellow-500/25 text-yellow-500",
85
+ amber: "bg-amber-500 text-neutral-950",
86
+ blue: "bg-blue-500 text-neutral-950",
87
+ cyan: "bg-cyan-500 text-neutral-950",
88
+ emerald: "bg-emerald-500 text-neutral-950",
89
+ fuchsia: "bg-fuchsia-500 text-neutral-950",
90
+ gray: "bg-gray-600 text-white",
91
+ green: "bg-green-500 text-neutral-950",
92
+ indigo: "bg-indigo-600 text-white",
93
+ lime: "bg-lime-500 text-neutral-950",
94
+ orange: "bg-orange-500 text-neutral-950",
95
+ pink: "bg-pink-500 text-neutral-950",
96
+ purple: "bg-purple-500 text-neutral-950",
97
+ red: "bg-red-500 text-neutral-950",
98
+ rose: "bg-rose-500 text-neutral-950",
99
+ slate: "bg-slate-600 text-white",
100
+ sky: "bg-sky-500 text-neutral-950",
101
+ teal: "bg-teal-500 text-neutral-950",
102
+ violet: "bg-violet-600 text-white",
103
+ yellow: "bg-yellow-500 text-neutral-950",
104
+ "amber-full": "bg-amber-500/25 text-amber-800 dark:text-amber-200",
105
+ "blue-full": "bg-blue-500/25 text-blue-800 dark:text-blue-200",
106
+ "cyan-full": "bg-cyan-500/25 text-cyan-800 dark:text-cyan-200",
107
+ "emerald-full": "bg-emerald-500/25 text-emerald-800 dark:text-emerald-200",
108
+ "fuchsia-full": "bg-fuchsia-500/25 text-fuchsia-800 dark:text-fuchsia-200",
109
+ "gray-full": "bg-gray-500/25 text-gray-800 dark:text-gray-200",
110
+ "green-full": "bg-green-500/25 text-green-800 dark:text-green-200",
111
+ "indigo-full": "bg-indigo-500/25 text-indigo-800 dark:text-indigo-200",
112
+ "lime-full": "bg-lime-500/25 text-lime-800 dark:text-lime-200",
113
+ "orange-full": "bg-orange-500/25 text-orange-800 dark:text-orange-200",
114
+ "pink-full": "bg-pink-500/25 text-pink-800 dark:text-pink-200",
115
+ "purple-full": "bg-purple-500/25 text-purple-800 dark:text-purple-200",
116
+ "red-full": "bg-red-500/25 text-red-800 dark:text-red-200",
117
+ "rose-full": "bg-rose-500/25 text-rose-800 dark:text-rose-200",
118
+ "slate-full": "bg-slate-500/25 text-slate-800 dark:text-slate-200",
119
+ "sky-full": "bg-sky-500/25 text-sky-800 dark:text-sky-200",
120
+ "teal-full": "bg-teal-500/25 text-teal-800 dark:text-teal-200",
121
+ "violet-full": "bg-violet-500/25 text-violet-800 dark:text-violet-200",
122
+ "yellow-full": "bg-yellow-500/25 text-yellow-800 dark:text-yellow-200",
123
123
  },
124
124
  shape: {
125
125
  square: "rounded-none",
@@ -1,6 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { Badge as BadgePrimitive } from "@forthtilliath/shadcn-ui/components/badge";
3
- import type { BadgeVariants } from "./variants";
3
+ import { type UiLocale } from "../../locale/locale.js";
4
+ import type { BadgeVariants } from "./variants.js";
4
5
  export type BadgeProps = Omit<React.ComponentProps<typeof BadgePrimitive>, "variant"> & BadgeVariants & {
5
6
  /**
6
7
  * Show a small colored dot before the content instead of filling the
@@ -30,6 +31,11 @@ export type BadgeProps = Omit<React.ComponentProps<typeof BadgePrimitive>, "vari
30
31
  * Called when the badge is dismissed, whether controlled or not.
31
32
  */
32
33
  onOpenChange?: (open: boolean) => void;
34
+ /**
35
+ * Language of the built-in labels — French by default, or the nearest
36
+ * `UiLocaleProvider`'s. Explicit text props still win.
37
+ */
38
+ locale?: UiLocale;
33
39
  };
34
40
  /**
35
41
  * Displays a badge or a component that looks like a badge.
@@ -44,5 +50,5 @@ export type BadgeProps = Omit<React.ComponentProps<typeof BadgePrimitive>, "vari
44
50
  * @author Forth
45
51
  * @copyright 2026 Forth
46
52
  */
47
- export declare function Badge({ className, variant, look, shape, size, dot, pulse, dismissible, open, onOpenChange, children, ...props }: BadgeProps): React.JSX.Element | null;
53
+ export declare function Badge({ className, variant, look, shape, size, dot, pulse, dismissible, open, onOpenChange, children, locale, ...props }: BadgeProps): React.JSX.Element | null;
48
54
  //# sourceMappingURL=badge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/badge/badge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAGpF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,EAC3C,SAAS,CACV,GACC,aAAa,GAAG;IACd;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEJ;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,EACpB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,GAAW,EACX,KAAa,EACb,WAAmB,EACnB,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,UAAU,4BA6CZ"}
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../src/components/badge/badge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAGpF,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AAEtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,MAAM,MAAM,UAAU,GAAG,IAAI,CAC3B,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,EAC3C,SAAS,CACV,GACC,aAAa,GAAG;IACd;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEJ;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,EACpB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,GAAW,EACX,KAAa,EACb,WAAmB,EACnB,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,UAAU,4BA8CZ"}
@@ -4,7 +4,8 @@ import * as React from "react";
4
4
  import { X } from "lucide-react";
5
5
  import { Badge as BadgePrimitive } from "@forthtilliath/shadcn-ui/components/badge";
6
6
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
7
- import { badgeVariants, dotVariants } from "./variants";
7
+ import { useUiMessages } from "../../locale/locale.js";
8
+ import { badgeVariants, dotVariants } from "./variants.js";
8
9
  /**
9
10
  * Displays a badge or a component that looks like a badge.
10
11
  *
@@ -18,7 +19,8 @@ import { badgeVariants, dotVariants } from "./variants";
18
19
  * @author Forth
19
20
  * @copyright 2026 Forth
20
21
  */
21
- export function Badge({ className, variant, look, shape, size, dot = false, pulse = false, dismissible = false, open, onOpenChange, children, ...props }) {
22
+ export function Badge({ className, variant, look, shape, size, dot = false, pulse = false, dismissible = false, open, onOpenChange, children, locale, ...props }) {
23
+ const messages = useUiMessages(locale);
22
24
  const [uncontrolledOpen, setUncontrolledOpen] = React.useState(true);
23
25
  const isOpen = open ?? uncontrolledOpen;
24
26
  function handleDismiss(event) {
@@ -29,5 +31,5 @@ export function Badge({ className, variant, look, shape, size, dot = false, puls
29
31
  if (!isOpen) {
30
32
  return null;
31
33
  }
32
- return (_jsxs(BadgePrimitive, { className: cn(badgeVariants({ variant, look, shape, size }), className), ...props, children: [dot && (_jsxs("span", { className: "relative inline-flex size-1.5", children: [pulse && (_jsx("span", { className: cn(dotVariants({ variant }), "absolute inline-flex size-full animate-ping opacity-75") })), _jsx("span", { className: cn(dotVariants({ variant }), "relative") })] })), children, dismissible && (_jsx("button", { type: "button", onClick: handleDismiss, "aria-label": "Dismiss", className: "-mr-0.5 ml-0.5 rounded-full opacity-70 transition-opacity outline-none hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current [&>svg]:size-2.5", children: _jsx(X, {}) }))] }));
34
+ return (_jsxs(BadgePrimitive, { className: cn(badgeVariants({ variant, look, shape, size }), className), ...props, children: [dot && (_jsxs("span", { className: "relative inline-flex size-1.5", children: [pulse && (_jsx("span", { className: cn(dotVariants({ variant }), "absolute inline-flex size-full animate-ping opacity-75") })), _jsx("span", { className: cn(dotVariants({ variant }), "relative") })] })), children, dismissible && (_jsx("button", { type: "button", onClick: handleDismiss, "aria-label": messages.badge.remove, className: "-mr-0.5 ml-0.5 rounded-full opacity-70 transition-opacity outline-none hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current [&>svg]:size-2.5", children: _jsx(X, {}) }))] }));
33
35
  }
@@ -1,4 +1,4 @@
1
- export type { BadgeProps } from "./badge";
2
- export { Badge } from "./badge";
3
- export type { BadgeVariants } from "./variants";
1
+ export type { BadgeProps } from "./badge.js";
2
+ export { Badge } from "./badge.js";
3
+ export type { BadgeVariants } from "./variants.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/badge/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- export { Badge } from "./badge";
1
+ export { Badge } from "./badge.js";
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/components/badge/variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAK7D,eAAO,MAAM,aAAa;;;;;8EA2HzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAE/D,eAAO,MAAM,WAAW;;8EAetB,CAAC"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/components/badge/variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAK7D,eAAO,MAAM,aAAa;;;;;8EAgIzB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,aAAa,CAAC,CAAC;AAE/D,eAAO,MAAM,WAAW;;8EAetB,CAAC"}
@@ -35,6 +35,10 @@ export const badgeVariants = cva("inline-flex w-fit shrink-0 items-center justif
35
35
  size: "default",
36
36
  },
37
37
  compoundVariants: [
38
+ // `outline`'s bg-transparent clears the shadcn Badge's own background
39
+ // on colored variants; default/secondary keep theirs.
40
+ { variant: "default", look: "outline", className: "bg-primary" },
41
+ { variant: "secondary", look: "outline", className: "bg-secondary" },
38
42
  // default/secondary ignore `look` — like Alert's neutral variant,
39
43
  // none of the reference sources show a "soft"/"outline" neutral
40
44
  // badge distinct from `outline` itself already being a variant
@@ -57,7 +61,7 @@ export const badgeVariants = cva("inline-flex w-fit shrink-0 items-center justif
57
61
  {
58
62
  variant: "success",
59
63
  look: "solid",
60
- className: "bg-green-600 text-white border-transparent",
64
+ className: "bg-green-700 text-white border-transparent",
61
65
  },
62
66
  {
63
67
  variant: "success",
@@ -72,7 +76,7 @@ export const badgeVariants = cva("inline-flex w-fit shrink-0 items-center justif
72
76
  {
73
77
  variant: "warning",
74
78
  look: "solid",
75
- className: "bg-amber-500 text-white border-transparent",
79
+ className: "bg-amber-500 text-amber-950 border-transparent",
76
80
  },
77
81
  {
78
82
  variant: "warning",
@@ -87,7 +91,7 @@ export const badgeVariants = cva("inline-flex w-fit shrink-0 items-center justif
87
91
  {
88
92
  variant: "info",
89
93
  look: "solid",
90
- className: "bg-sky-600 text-white border-transparent",
94
+ className: "bg-sky-700 text-white border-transparent",
91
95
  },
92
96
  {
93
97
  variant: "info",
@@ -107,7 +111,7 @@ export const badgeVariants = cva("inline-flex w-fit shrink-0 items-center justif
107
111
  {
108
112
  variant: "destructive",
109
113
  look: "soft",
110
- className: "bg-destructive/10 text-destructive border-transparent",
114
+ className: "bg-red-50 text-red-700 border-transparent dark:bg-red-950 dark:text-red-300",
111
115
  },
112
116
  {
113
117
  variant: "destructive",
@@ -1,5 +1,6 @@
1
1
  import * as React from "react";
2
- import type { BannerVariants } from "./variants";
2
+ import { type UiLocale } from "../../locale/locale.js";
3
+ import type { BannerVariants } from "./variants.js";
3
4
  export type BannerProps = React.ComponentProps<"div"> & BannerVariants & {
4
5
  /**
5
6
  * Shows a close button. Uncontrolled by default (the banner hides
@@ -26,6 +27,11 @@ export type BannerProps = React.ComponentProps<"div"> & BannerVariants & {
26
27
  * meaningful when `sticky` is also set.
27
28
  */
28
29
  hideOnScroll?: boolean;
30
+ /**
31
+ * Language of the built-in labels — French by default, or the nearest
32
+ * `UiLocaleProvider`'s. Explicit text props still win.
33
+ */
34
+ locale?: UiLocale;
29
35
  };
30
36
  /**
31
37
  * A full-width, page-level announcement bar — as opposed to `Alert`, which
@@ -39,5 +45,5 @@ export type BannerProps = React.ComponentProps<"div"> & BannerVariants & {
39
45
  * @author Forth
40
46
  * @copyright 2026 Forth
41
47
  */
42
- export declare function Banner({ className, variant, look, inset, sticky, dismissible, open, onOpenChange, hideOnScroll, action, children, ...props }: BannerProps): React.JSX.Element | null;
48
+ export declare function Banner({ className, variant, look, inset, sticky, dismissible, open, onOpenChange, hideOnScroll, action, children, locale, ...props }: BannerProps): React.JSX.Element | null;
43
49
  //# sourceMappingURL=banner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/components/banner/banner.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GACnD,cAAc,GAAG;IACf;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAIJ;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,MAAM,EACN,WAAmB,EACnB,IAAI,EACJ,YAAY,EACZ,YAAoB,EACpB,MAAM,EACN,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,WAAW,4BAmDb"}
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../../src/components/banner/banner.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AAEtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,MAAM,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GACnD,cAAc,GAAG;IACf;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;;OAGG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB,CAAC;AAIJ;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,MAAM,EACN,WAAmB,EACnB,IAAI,EACJ,YAAY,EACZ,YAAoB,EACpB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,WAAW,4BAoDb"}
@@ -3,7 +3,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import * as React from "react";
4
4
  import { X } from "lucide-react";
5
5
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
6
- import { bannerVariants } from "./variants";
6
+ import { useUiMessages } from "../../locale/locale.js";
7
+ import { bannerVariants } from "./variants.js";
7
8
  const HIDE_ON_SCROLL_THRESHOLD = 40;
8
9
  /**
9
10
  * A full-width, page-level announcement bar — as opposed to `Alert`, which
@@ -17,7 +18,8 @@ const HIDE_ON_SCROLL_THRESHOLD = 40;
17
18
  * @author Forth
18
19
  * @copyright 2026 Forth
19
20
  */
20
- export function Banner({ className, variant, look, inset, sticky, dismissible = false, open, onOpenChange, hideOnScroll = false, action, children, ...props }) {
21
+ export function Banner({ className, variant, look, inset, sticky, dismissible = false, open, onOpenChange, hideOnScroll = false, action, children, locale, ...props }) {
22
+ const messages = useUiMessages(locale);
21
23
  const [uncontrolledOpen, setUncontrolledOpen] = React.useState(true);
22
24
  const [scrolledPast, setScrolledPast] = React.useState(false);
23
25
  const isOpen = (open ?? uncontrolledOpen) && !scrolledPast;
@@ -40,5 +42,5 @@ export function Banner({ className, variant, look, inset, sticky, dismissible =
40
42
  if (!isOpen) {
41
43
  return null;
42
44
  }
43
- return (_jsxs("div", { "data-slot": "banner", role: "region", className: cn(bannerVariants({ variant, look, inset, sticky }), className), ...props, children: [children, action, dismissible && (_jsx("button", { type: "button", onClick: handleDismiss, "aria-label": "Dismiss", className: "ml-1 shrink-0 rounded-sm opacity-70 transition-opacity outline-none hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current", children: _jsx(X, { className: "size-4" }) }))] }));
45
+ return (_jsxs("div", { "data-slot": "banner", role: "region", className: cn(bannerVariants({ variant, look, inset, sticky }), className), ...props, children: [children, action, dismissible && (_jsx("button", { type: "button", onClick: handleDismiss, "aria-label": messages.dismiss, className: "ml-1 shrink-0 rounded-sm opacity-70 transition-opacity outline-none hover:opacity-100 focus-visible:ring-2 focus-visible:ring-current", children: _jsx(X, { className: "size-4" }) }))] }));
44
46
  }
@@ -1,4 +1,4 @@
1
- export type { BannerProps } from "./banner";
2
- export { Banner } from "./banner";
3
- export type { BannerVariants } from "./variants";
1
+ export type { BannerProps } from "./banner.js";
2
+ export { Banner } from "./banner.js";
3
+ export type { BannerVariants } from "./variants.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/banner/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/banner/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- export { Banner } from "./banner";
1
+ export { Banner } from "./banner.js";
@@ -1,3 +1,3 @@
1
- export type { BentoGridItemProps } from "./bento-grid";
2
- export { BentoGrid, BentoGridItem } from "./bento-grid";
1
+ export type { BentoGridItemProps } from "./bento-grid.js";
2
+ export { BentoGrid, BentoGridItem } from "./bento-grid.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/bento-grid/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/bento-grid/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- export { BentoGrid, BentoGridItem } from "./bento-grid";
1
+ export { BentoGrid, BentoGridItem } from "./bento-grid.js";
@@ -1,4 +1,5 @@
1
- import type React from "react";
1
+ import * as React from "react";
2
+ import { type UiLocale } from "../../locale/locale.js";
2
3
  export interface BreadcrumbEntry {
3
4
  label: React.ReactNode;
4
5
  href?: string;
@@ -13,6 +14,11 @@ export interface BreadcrumbProps {
13
14
  */
14
15
  maxItems?: number;
15
16
  className?: string;
17
+ /**
18
+ * Language of the built-in labels — French by default, or the nearest
19
+ * `UiLocaleProvider`'s. Explicit text props still win.
20
+ */
21
+ locale?: UiLocale;
16
22
  }
17
23
  /**
18
24
  * Displays the path to the current resource using a hierarchy of links.
@@ -25,5 +31,5 @@ export interface BreadcrumbProps {
25
31
  * @author Forth
26
32
  * @copyright 2026 Forth
27
33
  */
28
- export declare function Breadcrumb({ items, maxItems, className }: BreadcrumbProps): React.JSX.Element;
34
+ export declare function Breadcrumb({ items, maxItems, className, locale, }: BreadcrumbProps): React.JSX.Element;
29
35
  //# sourceMappingURL=breadcrumb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../src/components/breadcrumb/breadcrumb.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiB/B,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,qBAyFzE"}
1
+ {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../../src/components/breadcrumb/breadcrumb.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiB/B,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB;AAWD;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,SAAS,EACT,MAAM,GACP,EAAE,eAAe,qBAyFjB"}
@@ -1,7 +1,9 @@
1
1
  "use client";
2
2
  import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
3
+ import * as React from "react";
3
4
  import { Breadcrumb as BreadcrumbPrimitive, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, } from "@forthtilliath/shadcn-ui/components/breadcrumb";
4
5
  import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@forthtilliath/shadcn-ui/components/dropdown-menu";
6
+ import { useUiMessages } from "../../locale/locale.js";
5
7
  function EntryLink({ item }) {
6
8
  return (_jsxs("span", { className: "inline-flex items-center gap-1.5", children: [item.icon, item.label] }));
7
9
  }
@@ -16,13 +18,16 @@ function EntryLink({ item }) {
16
18
  * @author Forth
17
19
  * @copyright 2026 Forth
18
20
  */
19
- export function Breadcrumb({ items, maxItems, className }) {
21
+ export function Breadcrumb({ items, maxItems, className, locale, }) {
22
+ const messages = useUiMessages(locale);
20
23
  const shouldCollapse = maxItems !== undefined && items.length > maxItems;
21
24
  const firstItem = items[0];
22
25
  const lastItem = items.at(-1);
23
26
  const hiddenItems = shouldCollapse ? items.slice(1, -1) : [];
24
27
  const visibleMiddleItems = shouldCollapse ? [] : items.slice(1, -1);
25
- return (_jsx(BreadcrumbPrimitive, { className: className, children: _jsxs(BreadcrumbList, { children: [firstItem && (_jsx(BreadcrumbItem, { children: firstItem.href ? (_jsx(BreadcrumbLink, { href: firstItem.href, children: _jsx(EntryLink, { item: firstItem }) })) : (_jsx(BreadcrumbPage, { children: _jsx(EntryLink, { item: firstItem }) })) })), items.length > 1 && _jsx(BreadcrumbSeparator, {}), shouldCollapse && (_jsxs(_Fragment, { children: [_jsx(BreadcrumbItem, { children: _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { className: "hover:text-foreground flex items-center transition-colors", "aria-label": "Show hidden breadcrumb items", children: "\u2026" }), _jsx(DropdownMenuContent, { align: "start", children: hiddenItems.map((item, index) => (
28
+ return (_jsx(BreadcrumbPrimitive, { className: className, children: _jsxs(BreadcrumbList, { children: [firstItem && (_jsx(BreadcrumbItem, { children: firstItem.href ? (_jsx(BreadcrumbLink, { href: firstItem.href, children: _jsx(EntryLink, { item: firstItem }) })) : (_jsx(BreadcrumbPage, { children: _jsx(EntryLink, { item: firstItem }) })) })), items.length > 1 && _jsx(BreadcrumbSeparator, {}), shouldCollapse && (_jsxs(_Fragment, { children: [_jsx(BreadcrumbItem, { children: _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { className: "hover:text-foreground flex items-center transition-colors", "aria-label": messages.breadcrumb.showHidden, children: "\u2026" }), _jsx(DropdownMenuContent, { align: "start", children: hiddenItems.map((item, index) => (
26
29
  // eslint-disable-next-line @eslint-react/no-array-index-key -- `label` is an arbitrary ReactNode and `href` is optional, so index is the only stable fallback
27
- _jsx(DropdownMenuItem, { asChild: true, children: item.href ? (_jsx("a", { href: item.href, children: _jsx(EntryLink, { item: item }) })) : (_jsx("span", { children: _jsx(EntryLink, { item: item }) })) }, item.href ?? index))) })] }) }), _jsx(BreadcrumbSeparator, {})] })), visibleMiddleItems.map((item, index) => (_jsxs("span", { className: "inline-flex items-center gap-1.5 sm:gap-2.5", children: [_jsx(BreadcrumbItem, { children: item.href ? (_jsx(BreadcrumbLink, { href: item.href, children: _jsx(EntryLink, { item: item }) })) : (_jsx(BreadcrumbPage, { children: _jsx(EntryLink, { item: item }) })) }), _jsx(BreadcrumbSeparator, {})] }, item.href ?? index))), lastItem && items.length > 1 && (_jsx(BreadcrumbItem, { children: _jsx(BreadcrumbPage, { children: _jsx(EntryLink, { item: lastItem }) }) }))] }) }));
30
+ _jsx(DropdownMenuItem, { asChild: true, children: item.href ? (_jsx("a", { href: item.href, children: _jsx(EntryLink, { item: item }) })) : (_jsx("span", { children: _jsx(EntryLink, { item: item }) })) }, item.href ?? index))) })] }) }), _jsx(BreadcrumbSeparator, {})] })), visibleMiddleItems.map((item, index) => (_jsxs(React.Fragment
31
+ // eslint-disable-next-line @eslint-react/no-array-index-key -- `label` is an arbitrary ReactNode and `href` is optional, so index is the only stable fallback
32
+ , { children: [_jsx(BreadcrumbItem, { children: item.href ? (_jsx(BreadcrumbLink, { href: item.href, children: _jsx(EntryLink, { item: item }) })) : (_jsx(BreadcrumbPage, { children: _jsx(EntryLink, { item: item }) })) }), _jsx(BreadcrumbSeparator, {})] }, item.href ?? index))), lastItem && items.length > 1 && (_jsx(BreadcrumbItem, { children: _jsx(BreadcrumbPage, { children: _jsx(EntryLink, { item: lastItem }) }) }))] }) }));
28
33
  }
@@ -1,3 +1,3 @@
1
- export type { BreadcrumbEntry, BreadcrumbProps } from "./breadcrumb";
2
- export { Breadcrumb } from "./breadcrumb";
1
+ export type { BreadcrumbEntry, BreadcrumbProps } from "./breadcrumb.js";
2
+ export { Breadcrumb } from "./breadcrumb.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/breadcrumb/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/breadcrumb/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- export { Breadcrumb } from "./breadcrumb";
1
+ export { Breadcrumb } from "./breadcrumb.js";
@@ -1,6 +1,6 @@
1
1
  import type * as React from "react";
2
2
  import { Button as ButtonPrimitive } from "@forthtilliath/shadcn-ui/components/button";
3
- import type { ButtonSizeVariants } from "./variants";
3
+ import type { ButtonSizeVariants } from "./variants.js";
4
4
  export type ButtonProps = Omit<React.ComponentProps<typeof ButtonPrimitive>, "size"> & ButtonSizeVariants & {
5
5
  /**
6
6
  * Shows a spinner before the content and disables the button.
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAGpC,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAGvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,EAC5C,MAAM,CACP,GACC,kBAAkB,GAAG;IACnB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEJ;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,IAAI,EACJ,KAAK,EACL,OAAe,EACf,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,WAAW,qBAYb"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAGpC,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAGvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,EAC5C,MAAM,CACP,GACC,kBAAkB,GAAG;IACnB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEJ;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,EACrB,SAAS,EACT,IAAI,EACJ,KAAK,EACL,OAAe,EACf,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,WAAW,qBAYb"}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Loader2Icon } from "lucide-react";
3
3
  import { Button as ButtonPrimitive } from "@forthtilliath/shadcn-ui/components/button";
4
4
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
5
- import { buttonSizeVariants } from "./variants";
5
+ import { buttonSizeVariants } from "./variants.js";
6
6
  /**
7
7
  * Displays a button or a component that looks like a button.
8
8
  *
@@ -1,6 +1,6 @@
1
- export type { ButtonProps } from "./button";
2
- export { Button } from "./button";
3
- export type { ButtonGroupProps } from "./button-group";
4
- export { ButtonGroup } from "./button-group";
5
- export type { ButtonSizeVariants } from "./variants";
1
+ export type { ButtonProps } from "./button.js";
2
+ export { Button } from "./button.js";
3
+ export type { ButtonGroupProps } from "./button-group.js";
4
+ export { ButtonGroup } from "./button-group.js";
5
+ export type { ButtonSizeVariants } from "./variants.js";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/button/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -1,2 +1,2 @@
1
- export { Button } from "./button";
2
- export { ButtonGroup } from "./button-group";
1
+ export { Button } from "./button.js";
2
+ export { ButtonGroup } from "./button-group.js";
@@ -1,3 +1,3 @@
1
- export type { CheckboxGroupOption, CheckboxGroupProps } from "./checkbox-group";
2
- export { CheckboxGroup } from "./checkbox-group";
1
+ export type { CheckboxGroupOption, CheckboxGroupProps, } from "./checkbox-group.js";
2
+ export { CheckboxGroup } from "./checkbox-group.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/checkbox/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- export { CheckboxGroup } from "./checkbox-group";
1
+ export { CheckboxGroup } from "./checkbox-group.js";
@@ -1,5 +1,5 @@
1
- import type { AvatarProps } from "../avatar";
2
- import type { BadgeProps } from "../badge";
1
+ import type { AvatarProps } from "../avatar/index.js";
2
+ import type { BadgeProps } from "../badge/index.js";
3
3
  export type ChipProps = BadgeProps & {
4
4
  /**
5
5
  * Renders a small `Avatar` before the content — for "person/entity chip"
@@ -1 +1 @@
1
- {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../src/components/chip/chip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG;IACnC;;;OAGG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC;IACvD;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,IAAI,CAAC,EACnB,MAAM,EACN,UAAkB,EAClB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,SAAS,+BAWX"}
1
+ {"version":3,"file":"chip.d.ts","sourceRoot":"","sources":["../../../src/components/chip/chip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG;IACnC;;;OAGG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC;IACvD;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,IAAI,CAAC,EACnB,MAAM,EACN,UAAkB,EAClB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,SAAS,+BAWX"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
3
- import { Avatar } from "../avatar";
4
- import { Badge } from "../badge";
3
+ import { Avatar } from "../avatar/index.js";
4
+ import { Badge } from "../badge/index.js";
5
5
  /**
6
6
  * A compact, interactive element for displaying status, categories, or
7
7
  * filters — `Badge` with an optional avatar slot for tagging people/entities.
@@ -1,3 +1,3 @@
1
- export type { ChipProps } from "./chip";
2
- export { Chip } from "./chip";
1
+ export type { ChipProps } from "./chip.js";
2
+ export { Chip } from "./chip.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chip/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/chip/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- export { Chip } from "./chip";
1
+ export { Chip } from "./chip.js";