@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
@@ -0,0 +1,27 @@
1
+ import type React from "react";
2
+ export interface GradientFrameProps {
3
+ /** Side the gradient frame sticks out on (default: `"right"`). */
4
+ side?: "left" | "right";
5
+ children: React.ReactNode;
6
+ /**
7
+ * Custom classes for each part of the component.
8
+ *
9
+ * - `root` wraps the frame and the content.
10
+ * - `frame` is the offset gradient panel — set its colors here with
11
+ * gradient stops (`from-* via-* to-*`), the direction (`bg-linear-135`)
12
+ * is already set.
13
+ * - `content` is the rounded, clipped container around `children`.
14
+ */
15
+ className?: Partial<Record<"root" | "frame" | "content", string>>;
16
+ }
17
+ /**
18
+ * A visual (image, video, card…) laid on a rounded frame offset diagonally
19
+ * behind it, filled with a gradient — a decorative "photo on a colored card"
20
+ * effect. The offset grows from `md` screens on.
21
+ *
22
+ * @version 0.1.0
23
+ * @author Forth
24
+ * @copyright 2026 Forth
25
+ */
26
+ export declare function GradientFrame({ side, children, className, }: GradientFrameProps): React.JSX.Element;
27
+ //# sourceMappingURL=gradient-frame.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradient-frame.d.ts","sourceRoot":"","sources":["../../../src/components/gradient-frame/gradient-frame.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,OAAO,GAAG,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;CACnE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,kBAAkB,qBAuBpB"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
3
+ /**
4
+ * A visual (image, video, card…) laid on a rounded frame offset diagonally
5
+ * behind it, filled with a gradient — a decorative "photo on a colored card"
6
+ * effect. The offset grows from `md` screens on.
7
+ *
8
+ * @version 0.1.0
9
+ * @author Forth
10
+ * @copyright 2026 Forth
11
+ */
12
+ export function GradientFrame({ side = "right", children, className, }) {
13
+ return (_jsxs("div", { "data-slot": "gradient-frame", className: cn("relative", className?.root), children: [_jsx("div", { "aria-hidden": "true", className: cn("from-primary to-primary/40 absolute inset-0 rounded-3xl bg-linear-135", side === "right"
14
+ ? "translate-x-3 translate-y-3 md:translate-x-5 md:translate-y-5"
15
+ : "-translate-x-3 translate-y-3 md:-translate-x-5 md:translate-y-5", className?.frame) }), _jsx("div", { className: cn("relative overflow-hidden rounded-3xl shadow-xl", className?.content), children: children })] }));
16
+ }
@@ -0,0 +1,3 @@
1
+ export type { GradientFrameProps } from "./gradient-frame.js";
2
+ export { GradientFrame } from "./gradient-frame.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/gradient-frame/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ export { GradientFrame } from "./gradient-frame.js";
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/components/grid/context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAO,MAAM,gBAAgB;IAC3B,8BAA8B;YACtB,OAAO;mBACA,OAAO;EAGtB,CAAC;AAEH,eAAO,MAAM,mBAAmB;IAP9B,8BAA8B;YACtB,OAAO;mBACA,OAAO;CAK4C,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/components/grid/context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAO,MAAM,gBAAgB;IAC3B,8BAA8B;YACtB,OAAO;mBACA,OAAO;EAGtB,CAAC;AAEH,eAAO,MAAM,mBAAmB;IAP9B,8BAA8B;YACtB,OAAO;mBACA,OAAO;CAK4C,CAAC"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import React from "react";
2
3
  export const GridDebugContext = React.createContext({
3
4
  isDebugActive: false,
@@ -1,6 +1,6 @@
1
1
  import type React from "react";
2
2
  import type { Prettify } from "@forthtilliath/ts-types/object";
3
- import { type GridItemVariants } from "./variants";
3
+ import { type GridItemVariants } from "./variants.js";
4
4
  type Props = Prettify<GridItemVariants & React.ComponentProps<"div"> & {
5
5
  children: React.ReactNode;
6
6
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"grid-item.d.ts","sourceRoot":"","sources":["../../../src/components/grid/grid-item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAEL,KAAK,gBAAgB,EAEtB,MAAM,YAAY,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CACnB,gBAAgB,GACd,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CACJ,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAkB3B"}
1
+ {"version":3,"file":"grid-item.d.ts","sourceRoot":"","sources":["../../../src/components/grid/grid-item.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAEL,KAAK,gBAAgB,EAEtB,MAAM,eAAe,CAAC;AAEvB,KAAK,KAAK,GAAG,QAAQ,CACnB,gBAAgB,GACd,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,CACJ,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAkB3B"}
@@ -1,7 +1,8 @@
1
+ "use client";
1
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
3
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
3
- import { useGridDebugContext } from "./context";
4
- import { gridItemDebugVariants, gridItemVariants, } from "./variants";
4
+ import { useGridDebugContext } from "./context.js";
5
+ import { gridItemDebugVariants, gridItemVariants, } from "./variants.js";
5
6
  /**
6
7
  * A GridItem is a component that represents an item inside a Grid.
7
8
  *
@@ -1,8 +1,8 @@
1
1
  import type React from "react";
2
- import { type ClassValue } from "@forthtilliath/shadcn-ui/lib/utils";
2
+ import type { ClassValue } from "clsx";
3
3
  import { type Prettify } from "@forthtilliath/ts-types/object";
4
- import { GridItem } from "./grid-item";
5
- import type { GridVariants } from "./variants";
4
+ import { GridItem } from "./grid-item.js";
5
+ import type { GridVariants } from "./variants.js";
6
6
  export type GridProps = Prettify<{
7
7
  children?: React.ReactNode;
8
8
  debug?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../src/components/grid/grid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,KAAK,UAAU,EAAM,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,MAAM,MAAM,SAAS,GAAG,QAAQ,CAC9B;IACE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB,GAAG,YAAY,GACd,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,CAC1D,CAAC;AAEF,wBAAgB,IAAI,CAAC,EACnB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,QAAc,EACd,IAAI,EACJ,OAAO,EACP,GAAG,KAAK,EACT,EAAE,SAAS,qBAqBX;yBA7Be,IAAI"}
1
+ {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../src/components/grid/grid.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAIvC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAG/D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,MAAM,MAAM,SAAS,GAAG,QAAQ,CAC9B;IACE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,UAAU,CAAC;CACxB,GAAG,YAAY,GACd,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC,CAC1D,CAAC;AAEF,wBAAgB,IAAI,CAAC,EACnB,QAAQ,EACR,SAAS,EACT,KAAK,EACL,QAAc,EACd,IAAI,EACJ,OAAO,EACP,GAAG,KAAK,EACT,EAAE,SAAS,qBAqBX;yBA7Be,IAAI"}
@@ -1,10 +1,11 @@
1
+ "use client";
1
2
  import { jsx as _jsx } from "react/jsx-runtime";
2
3
  import { useMemo, useState } from "react";
3
4
  import { useKeyListener } from "@forthtilliath/react-kit/useKeyListener";
4
5
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
5
- import { GridDebugContext } from "./context";
6
- import { GridItem } from "./grid-item";
7
- import { gridVariants } from "./variants";
6
+ import { GridDebugContext } from "./context.js";
7
+ import { GridItem } from "./grid-item.js";
8
+ import { gridVariants } from "./variants.js";
8
9
  export function Grid({ children, className, debug, debugKey = "g", cols, spacing, ...props }) {
9
10
  const [isDebugActive, setIsDebugActive] = useState(true);
10
11
  const contextValue = useMemo(() => ({ debug, isDebugActive }), [debug, isDebugActive]);
@@ -1,3 +1,3 @@
1
- export * from "./grid";
2
- export * from "./grid-item";
1
+ export * from "./grid.js";
2
+ export * from "./grid-item.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/grid/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/grid/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC"}
@@ -1,2 +1,2 @@
1
- export * from "./grid";
2
- export * from "./grid-item";
1
+ export * from "./grid.js";
2
+ export * from "./grid-item.js";
@@ -1,7 +1,7 @@
1
1
  import type { VariantProps } from "class-variance-authority";
2
2
  export declare const gridVariants: (props?: ({
3
- cols?: 1 | 2 | 3 | 7 | 12 | 4 | 5 | 6 | 8 | 9 | 10 | 11 | null | undefined;
4
- spacing?: "sm" | "lg" | "none" | "xs" | "md" | "xl" | null | undefined;
3
+ cols?: 1 | 2 | 3 | 7 | 10 | 5 | 12 | 4 | 6 | 8 | 9 | 11 | null | undefined;
4
+ spacing?: "none" | "sm" | "lg" | "xs" | "md" | "xl" | null | undefined;
5
5
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
6
  export type GridVariants = VariantProps<typeof gridVariants>;
7
7
  export declare const gridItemVariants: (props?: ({
@@ -0,0 +1,21 @@
1
+ import type React from "react";
2
+ import type { IconBubbleVariants } from "./variants.js";
3
+ export type IconBubbleProps = Omit<React.ComponentProps<"span">, "children"> & IconBubbleVariants & {
4
+ /** Icon component, e.g. a `lucide-react` icon. Decorative (`aria-hidden`). */
5
+ icon: React.ComponentType<{
6
+ size?: number | string;
7
+ "aria-hidden"?: boolean | "true" | "false";
8
+ }>;
9
+ };
10
+ /**
11
+ * An icon inside a round, tinted bubble — e.g. to lead an information line
12
+ * (date, place…). Tinted with `primary` by default; override both the
13
+ * background and the icon color through `className`
14
+ * (`bg-sky-500/15 text-sky-600`).
15
+ *
16
+ * @version 0.1.0
17
+ * @author Forth
18
+ * @copyright 2026 Forth
19
+ */
20
+ export declare function IconBubble({ icon: Icon, size, className, ...props }: IconBubbleProps): React.JSX.Element;
21
+ //# sourceMappingURL=icon-bubble.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-bubble.d.ts","sourceRoot":"","sources":["../../../src/components/icon-bubble/icon-bubble.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGxD,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,GAC1E,kBAAkB,GAAG;IACnB,8EAA8E;IAC9E,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QACxB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QACvB,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;KAC5C,CAAC,CAAC;CACJ,CAAC;AAEJ;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EAAE,IAAI,EACV,IAAI,EACJ,SAAS,EACT,GAAG,KAAK,EACT,EAAE,eAAe,qBAajB"}
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
3
+ import { ICON_BUBBLE_ICON_SIZES, iconBubbleVariants } from "./variants.js";
4
+ /**
5
+ * An icon inside a round, tinted bubble — e.g. to lead an information line
6
+ * (date, place…). Tinted with `primary` by default; override both the
7
+ * background and the icon color through `className`
8
+ * (`bg-sky-500/15 text-sky-600`).
9
+ *
10
+ * @version 0.1.0
11
+ * @author Forth
12
+ * @copyright 2026 Forth
13
+ */
14
+ export function IconBubble({ icon: Icon, size, className, ...props }) {
15
+ return (_jsx("span", { "data-slot": "icon-bubble", className: cn(iconBubbleVariants({ size }), className), ...props, children: _jsx(Icon, { size: ICON_BUBBLE_ICON_SIZES[size ?? "default"], "aria-hidden": "true" }) }));
16
+ }
@@ -0,0 +1,4 @@
1
+ export type { IconBubbleProps } from "./icon-bubble.js";
2
+ export { IconBubble } from "./icon-bubble.js";
3
+ export type { IconBubbleVariants } from "./variants.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/icon-bubble/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1 @@
1
+ export { IconBubble } from "./icon-bubble.js";
@@ -0,0 +1,12 @@
1
+ import type { VariantProps } from "class-variance-authority";
2
+ export declare const iconBubbleVariants: (props?: ({
3
+ size?: "default" | "sm" | "lg" | null | undefined;
4
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
5
+ /** Icon size (px) matching each bubble size. */
6
+ export declare const ICON_BUBBLE_ICON_SIZES: {
7
+ readonly sm: 14;
8
+ readonly default: 17;
9
+ readonly lg: 20;
10
+ };
11
+ export type IconBubbleVariants = VariantProps<typeof iconBubbleVariants>;
12
+ //# sourceMappingURL=variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../src/components/icon-bubble/variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,eAAO,MAAM,kBAAkB;;8EAc9B,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { cva } from "class-variance-authority";
2
+ export const iconBubbleVariants = cva("bg-primary/15 text-primary grid shrink-0 place-items-center rounded-full", {
3
+ variants: {
4
+ size: {
5
+ sm: "size-7",
6
+ default: "size-9",
7
+ lg: "size-11",
8
+ },
9
+ },
10
+ defaultVariants: {
11
+ size: "default",
12
+ },
13
+ });
14
+ /** Icon size (px) matching each bubble size. */
15
+ export const ICON_BUBBLE_ICON_SIZES = {
16
+ sm: 14,
17
+ default: 17,
18
+ lg: 20,
19
+ };
@@ -1,4 +1,5 @@
1
1
  import * as React from "react";
2
+ import { type UiLocale } from "../../locale/locale.js";
2
3
  export interface ImageInputProps {
3
4
  /** An existing image URL to preview (e.g. editing something that already has one). */
4
5
  value?: string | null;
@@ -7,6 +8,11 @@ export interface ImageInputProps {
7
8
  className?: string;
8
9
  /** @default "16/9" */
9
10
  aspectRatio?: string;
11
+ /**
12
+ * Language of the built-in labels — French by default, or the nearest
13
+ * `UiLocaleProvider`'s. Explicit text props still win.
14
+ */
15
+ locale?: UiLocale;
10
16
  }
11
17
  /**
12
18
  * A click-to-upload image picker with a live preview.
@@ -17,5 +23,5 @@ export interface ImageInputProps {
17
23
  * @author Forth
18
24
  * @copyright 2026 Forth
19
25
  */
20
- export declare function ImageInput({ value, onFileChange, disabled, className, aspectRatio, }: ImageInputProps): React.JSX.Element;
26
+ export declare function ImageInput({ value, onFileChange, disabled, className, aspectRatio, locale, }: ImageInputProps): React.JSX.Element;
21
27
  //# sourceMappingURL=image-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"image-input.d.ts","sourceRoot":"","sources":["../../../src/components/image-input/image-input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,YAAY,EACZ,QAAgB,EAChB,SAAS,EACT,WAAoB,GACrB,EAAE,eAAe,qBA4EjB"}
1
+ {"version":3,"file":"image-input.d.ts","sourceRoot":"","sources":["../../../src/components/image-input/image-input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,YAAY,EACZ,QAAgB,EAChB,SAAS,EACT,WAAoB,EACpB,MAAM,GACP,EAAE,eAAe,qBA6EjB"}
@@ -3,6 +3,7 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
3
3
  import * as React from "react";
4
4
  import { ImageIcon, XIcon } from "lucide-react";
5
5
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
6
+ import { useUiMessages } from "../../locale/locale.js";
6
7
  /**
7
8
  * A click-to-upload image picker with a live preview.
8
9
  *
@@ -12,7 +13,8 @@ import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
12
13
  * @author Forth
13
14
  * @copyright 2026 Forth
14
15
  */
15
- export function ImageInput({ value, onFileChange, disabled = false, className, aspectRatio = "16/9", }) {
16
+ export function ImageInput({ value, onFileChange, disabled = false, className, aspectRatio = "16/9", locale, }) {
17
+ const messages = useUiMessages(locale);
16
18
  const [file, setFile] = React.useState(null);
17
19
  const [objectUrl, setObjectUrl] = React.useState(null);
18
20
  const inputRef = React.useRef(null);
@@ -36,7 +38,7 @@ export function ImageInput({ value, onFileChange, disabled = false, className, a
36
38
  }
37
39
  return (_jsxs("div", { "data-slot": "image-input", className: cn("border-input relative flex items-center justify-center overflow-hidden rounded-lg border border-dashed", disabled && "pointer-events-none opacity-50", className), style: { aspectRatio }, children: [preview !== null ? (_jsxs(_Fragment, { children: [_jsx("img", { src: preview, alt: "", className: "size-full object-cover" }), _jsx("button", { type: "button", onClick: () => {
38
40
  handleFile(null);
39
- }, "aria-label": "Remove image", className: "bg-background/80 text-foreground hover:bg-background absolute top-2 right-2 rounded-full p-1 shadow-xs", children: _jsx(XIcon, { className: "size-4" }) })] })) : (_jsxs("button", { type: "button", onClick: () => {
41
+ }, "aria-label": messages.imageInput.remove, className: "bg-background/80 text-foreground hover:bg-background absolute top-2 right-2 rounded-full p-1 shadow-xs", children: _jsx(XIcon, { className: "size-4" }) })] })) : (_jsxs("button", { type: "button", onClick: () => {
40
42
  inputRef.current?.click();
41
43
  }, disabled: disabled, className: "text-muted-foreground hover:text-foreground flex flex-col items-center gap-2 p-8 text-sm", children: [_jsx(ImageIcon, { className: "size-8" }), "Click to upload an image"] })), _jsx("input", { ref: inputRef, type: "file", accept: "image/*", disabled: disabled, className: "hidden", onChange: (e) => {
42
44
  handleFile(e.target.files?.[0] ?? null);
@@ -1,3 +1,3 @@
1
- export type { ImageInputProps } from "./image-input";
2
- export { ImageInput } from "./image-input";
1
+ export type { ImageInputProps } from "./image-input.js";
2
+ export { ImageInput } from "./image-input.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/image-input/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/image-input/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- export { ImageInput } from "./image-input";
1
+ export { ImageInput } from "./image-input.js";
@@ -1,3 +1,3 @@
1
- export type { InfiniteScrollProps } from "./infinite-scroll";
2
- export { InfiniteScroll } from "./infinite-scroll";
1
+ export type { InfiniteScrollProps } from "./infinite-scroll.js";
2
+ export { InfiniteScroll } from "./infinite-scroll.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/infinite-scroll/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/infinite-scroll/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1 +1 @@
1
- export { InfiniteScroll } from "./infinite-scroll";
1
+ export { InfiniteScroll } from "./infinite-scroll.js";
@@ -1,2 +1,2 @@
1
- export { Kbd, KbdGroup } from "./kbd";
1
+ export { Kbd, KbdGroup } from "./kbd.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/kbd/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/kbd/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC"}
@@ -1 +1 @@
1
- export { Kbd, KbdGroup } from "./kbd";
1
+ export { Kbd, KbdGroup } from "./kbd.js";
@@ -1,7 +1,7 @@
1
- export type { LinkProps } from "./link";
2
- export { Link } from "./link";
3
- export type { LinkPreviewMetadata, LinkPreviewProps } from "./link-preview";
4
- export { LinkPreview } from "./link-preview";
5
- export type { LinkVariants } from "./variants";
6
- export { linkVariants } from "./variants";
1
+ export type { LinkProps } from "./link.js";
2
+ export { Link } from "./link.js";
3
+ export type { LinkPreviewMetadata, LinkPreviewProps } from "./link-preview.js";
4
+ export { LinkPreview } from "./link-preview.js";
5
+ export type { LinkVariants } from "./variants.js";
6
+ export { linkVariants } from "./variants.js";
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/link/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/link/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
@@ -1,3 +1,3 @@
1
- export { Link } from "./link";
2
- export { LinkPreview } from "./link-preview";
3
- export { linkVariants } from "./variants";
1
+ export { Link } from "./link.js";
2
+ export { LinkPreview } from "./link-preview.js";
3
+ export { linkVariants } from "./variants.js";
@@ -1,5 +1,5 @@
1
1
  import type * as React from "react";
2
- import type { LinkVariants } from "./variants";
2
+ import type { LinkVariants } from "./variants.js";
3
3
  export type LinkProps = React.ComponentProps<"a"> & LinkVariants & {
4
4
  /**
5
5
  * Renders the passed child instead of an `<a>` (e.g. a framework's own
@@ -1 +1 @@
1
- {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/components/link/link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAMpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAC/C,YAAY,GAAG;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAMJ;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,EACnB,SAAS,EACT,OAAO,EACP,SAAS,EACT,IAAI,EACJ,OAAe,EACf,UAAU,EACV,QAAgB,EAChB,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,SAAS,qBAgCX"}
1
+ {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../src/components/link/link.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAMpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAC/C,YAAY,GAAG;IACb;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAMJ;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,EACnB,SAAS,EACT,OAAO,EACP,SAAS,EACT,IAAI,EACJ,OAAe,EACf,UAAU,EACV,QAAgB,EAChB,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,SAAS,qBAgCX"}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Slot } from "@radix-ui/react-slot";
3
3
  import { ArrowUpRightIcon } from "lucide-react";
4
4
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
5
- import { linkVariants } from "./variants";
5
+ import { linkVariants } from "./variants.js";
6
6
  function isExternalHref(href) {
7
7
  return href !== undefined && /^https?:\/\//.test(href);
8
8
  }
@@ -1,3 +1,3 @@
1
- export type { MarqueeProps } from "./marquee";
2
- export { Marquee } from "./marquee";
1
+ export type { MarqueeProps } from "./marquee.js";
2
+ export { Marquee } from "./marquee.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/marquee/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/marquee/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +1 @@
1
- export { Marquee } from "./marquee";
1
+ export { Marquee } from "./marquee.js";
@@ -0,0 +1,4 @@
1
+ export type { ModeToggleProps } from "./mode-toggle.js";
2
+ export { ModeToggle } from "./mode-toggle.js";
3
+ export { ThemeProvider } from "./theme-provider.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/mode-toggle/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { ModeToggle } from "./mode-toggle.js";
2
+ export { ThemeProvider } from "./theme-provider.js";
@@ -0,0 +1,22 @@
1
+ import { type UiLocale } from "../../locale/locale.js";
2
+ export interface ModeToggleProps {
3
+ className?: string;
4
+ /**
5
+ * Language of the built-in labels — French by default, or the nearest
6
+ * `UiLocaleProvider`'s.
7
+ */
8
+ locale?: UiLocale;
9
+ }
10
+ /**
11
+ * A light / dark / system theme switcher — the web counterpart of
12
+ * react-native-kit's `ThemeToggle`. Built on `next-themes`: render it under
13
+ * a `ThemeProvider` (this folder's, or next-themes' own).
14
+ *
15
+ * @see https://ui.shadcn.com/docs/dark-mode/next
16
+ *
17
+ * @version 0.1.0
18
+ * @author Forth
19
+ * @copyright 2026 Forth
20
+ */
21
+ export declare function ModeToggle({ className, locale }: ModeToggleProps): import("react").JSX.Element;
22
+ //# sourceMappingURL=mode-toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mode-toggle.d.ts","sourceRoot":"","sources":["../../../src/components/mode-toggle/mode-toggle.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,wBAAwB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,eAAe,+BA2BhE"}
@@ -0,0 +1,26 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { MoonIcon, SunIcon } from "lucide-react";
4
+ import { useTheme } from "next-themes";
5
+ import { Button } from "@forthtilliath/shadcn-ui/components/button";
6
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@forthtilliath/shadcn-ui/components/dropdown-menu";
7
+ import { useUiMessages } from "../../locale/locale.js";
8
+ const THEMES = ["light", "dark", "system"];
9
+ /**
10
+ * A light / dark / system theme switcher — the web counterpart of
11
+ * react-native-kit's `ThemeToggle`. Built on `next-themes`: render it under
12
+ * a `ThemeProvider` (this folder's, or next-themes' own).
13
+ *
14
+ * @see https://ui.shadcn.com/docs/dark-mode/next
15
+ *
16
+ * @version 0.1.0
17
+ * @author Forth
18
+ * @copyright 2026 Forth
19
+ */
20
+ export function ModeToggle({ className, locale }) {
21
+ const messages = useUiMessages(locale);
22
+ const { setTheme } = useTheme();
23
+ return (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsxs(Button, { variant: "outline", size: "icon", className: className, children: [_jsx(SunIcon, { className: "scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90" }), _jsx(MoonIcon, { className: "absolute scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0" }), _jsx("span", { className: "sr-only", children: messages.modeToggle.toggle })] }) }), _jsx(DropdownMenuContent, { align: "end", children: THEMES.map((theme) => (_jsx(DropdownMenuItem, { onClick: () => {
24
+ setTheme(theme);
25
+ }, children: messages.modeToggle[theme] }, theme))) })] }));
26
+ }
@@ -0,0 +1,13 @@
1
+ import type { ComponentProps } from "react";
2
+ import { ThemeProvider as NextThemesProvider } from "next-themes";
3
+ /**
4
+ * `next-themes`' provider behind a `"use client"` boundary, so a Next.js
5
+ * root layout (a Server Component) can render it directly.
6
+ *
7
+ * @example
8
+ * <ThemeProvider attribute="class" defaultTheme="system" enableSystem>
9
+ * {children}
10
+ * </ThemeProvider>
11
+ */
12
+ export declare function ThemeProvider({ children, ...props }: ComponentProps<typeof NextThemesProvider>): import("react").JSX.Element;
13
+ //# sourceMappingURL=theme-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-provider.d.ts","sourceRoot":"","sources":["../../../src/components/mode-toggle/theme-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,aAAa,IAAI,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAElE;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,CAAC,OAAO,kBAAkB,CAAC,+BAE3C"}
@@ -0,0 +1,15 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { ThemeProvider as NextThemesProvider } from "next-themes";
4
+ /**
5
+ * `next-themes`' provider behind a `"use client"` boundary, so a Next.js
6
+ * root layout (a Server Component) can render it directly.
7
+ *
8
+ * @example
9
+ * <ThemeProvider attribute="class" defaultTheme="system" enableSystem>
10
+ * {children}
11
+ * </ThemeProvider>
12
+ */
13
+ export function ThemeProvider({ children, ...props }) {
14
+ return _jsx(NextThemesProvider, { ...props, children: children });
15
+ }
@@ -1,3 +1,3 @@
1
- export type { LoadingState, MultiStepLoaderProps } from "./multi-step-loader";
2
- export { MultiStepLoader } from "./multi-step-loader";
1
+ export type { LoadingState, MultiStepLoaderProps, } from "./multi-step-loader.js";
2
+ export { MultiStepLoader } from "./multi-step-loader.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/multi-step-loader/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/multi-step-loader/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1 +1 @@
1
- export { MultiStepLoader } from "./multi-step-loader";
1
+ export { MultiStepLoader } from "./multi-step-loader.js";
@@ -3,7 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import * as React from "react";
4
4
  import { CheckIcon } from "lucide-react";
5
5
  import { cn } from "@forthtilliath/shadcn-ui/lib/utils";
6
- import { Spinner } from "../spinner";
6
+ import { Spinner } from "../spinner/index.js";
7
7
  /**
8
8
  * A full-screen overlay stepping through a sequence of loading messages —
9
9
  * for operations that take long enough that a single spinner reads as
@@ -49,5 +49,5 @@ export function MultiStepLoader({ loadingStates, loading, duration = 2000, loop
49
49
  return null;
50
50
  }
51
51
  const activeIndex = value ?? currentState;
52
- return (_jsx("div", { role: "status", "aria-live": "polite", className: cn("bg-background/80 fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm", className), children: _jsx("div", { className: "flex flex-col gap-3", children: loadingStates.map((state, index) => (_jsxs("div", { className: cn("flex items-center gap-2 text-sm", index < activeIndex && "text-muted-foreground line-through", index === activeIndex && "text-foreground font-medium", index > activeIndex && "text-muted-foreground/50"), children: [index < activeIndex ? (_jsx(CheckIcon, { className: "size-4 text-green-600" })) : index === activeIndex ? (_jsx(Spinner, { size: "sm" })) : (_jsx("span", { className: "size-4" })), state.text] }, state.text))) }) }));
52
+ return (_jsx("div", { role: "status", "aria-live": "polite", className: cn("bg-background/80 fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm", className), children: _jsx("div", { className: "flex flex-col gap-3", children: loadingStates.map((state, index) => (_jsxs("div", { className: cn("flex items-center gap-2 text-sm", index < activeIndex && "text-muted-foreground line-through", index === activeIndex && "text-foreground font-medium", index > activeIndex && "text-muted-foreground"), children: [index < activeIndex ? (_jsx(CheckIcon, { className: "size-4 text-green-600" })) : index === activeIndex ? (_jsx(Spinner, { size: "sm" })) : (_jsx("span", { className: "size-4" })), state.text] }, state.text))) }) }));
53
53
  }
@@ -1,5 +1,5 @@
1
- export type { NavbarProps } from "./navbar";
2
- export { Navbar } from "./navbar";
3
- export type { NavbarMobileMenuItem, NavbarMobileMenuProps, } from "./navbar-mobile-menu";
4
- export { NavbarMobileMenu } from "./navbar-mobile-menu";
1
+ export type { NavbarProps } from "./navbar.js";
2
+ export { Navbar } from "./navbar.js";
3
+ export type { NavbarMobileMenuItem, NavbarMobileMenuProps, } from "./navbar-mobile-menu.js";
4
+ export { NavbarMobileMenu } from "./navbar-mobile-menu.js";
5
5
  //# sourceMappingURL=index.d.ts.map