@customafk/lunas-ui 0.2.8 → 0.2.10

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 (281) hide show
  1. package/dist/{alert-DIC1_ymv.cjs → alert-BqJVf4wD.cjs} +1 -1
  2. package/dist/{alert-DIC1_ymv.cjs.map → alert-BqJVf4wD.cjs.map} +1 -1
  3. package/dist/{alert-VP3giy31.mjs → alert-DQHE-pdI.mjs} +1 -1
  4. package/dist/{alert-VP3giy31.mjs.map → alert-DQHE-pdI.mjs.map} +1 -1
  5. package/dist/{alert-DDL82_U3.d.mts → alert-Dt_GDCm5.d.mts} +8 -8
  6. package/dist/{alert-CA1RS1CG.d.cts → alert-LqhAi5XB.d.cts} +6 -6
  7. package/dist/{badge-Cg0e-djv.d.mts → badge-DaaGIpeV.d.mts} +7 -7
  8. package/dist/{badge-BFTGDsBm.d.cts → badge-Gsrn62XW.d.cts} +5 -5
  9. package/dist/{button-C76drZpd.d.mts → button-CjlinfYI.d.mts} +5 -5
  10. package/dist/{button-Bn54lPVz.d.cts → button-gKqh2psz.d.cts} +7 -7
  11. package/dist/{calendar-CyAPpT2m.cjs → calendar-B2V4Lv0T.cjs} +1 -1
  12. package/dist/{calendar-CyAPpT2m.cjs.map → calendar-B2V4Lv0T.cjs.map} +1 -1
  13. package/dist/{calendar-JKxWM6AF.mjs → calendar-Cw1G0sVL.mjs} +1 -1
  14. package/dist/{calendar-JKxWM6AF.mjs.map → calendar-Cw1G0sVL.mjs.map} +1 -1
  15. package/dist/cards/simple-card.d.mts +2 -2
  16. package/dist/{checkbox-RZrRNYP2.cjs → checkbox-Di7ACavC.cjs} +1 -1
  17. package/dist/{checkbox-RZrRNYP2.cjs.map → checkbox-Di7ACavC.cjs.map} +1 -1
  18. package/dist/{checkbox-DJEdYOjA.mjs → checkbox-Dzo6oI4y.mjs} +1 -1
  19. package/dist/{checkbox-DJEdYOjA.mjs.map → checkbox-Dzo6oI4y.mjs.map} +1 -1
  20. package/dist/{cms-layout-HfnOQS16.mjs → cms-layout-Bp6rU_of.mjs} +2 -2
  21. package/dist/{cms-layout-HfnOQS16.mjs.map → cms-layout-Bp6rU_of.mjs.map} +1 -1
  22. package/dist/{cms-layout-Dc4moos1.cjs → cms-layout-r9TmK6hi.cjs} +2 -2
  23. package/dist/{cms-layout-Dc4moos1.cjs.map → cms-layout-r9TmK6hi.cjs.map} +1 -1
  24. package/dist/data-display/country.d.mts +1 -1
  25. package/dist/data-display/role-badge.d.mts +1 -1
  26. package/dist/data-display/statistic.d.mts +2 -2
  27. package/dist/{dialog-D6ygAOSV.d.mts → dialog-Coe4g5Lp.d.cts} +12 -12
  28. package/dist/{dialog-CNhwBcEl.d.cts → dialog-DrJyRArf.d.mts} +12 -12
  29. package/dist/dialogs/detail-dialog/components/sidebar.cjs +1 -1
  30. package/dist/dialogs/detail-dialog/components/sidebar.d.cts +27 -27
  31. package/dist/dialogs/detail-dialog/components/sidebar.d.mts +27 -27
  32. package/dist/dialogs/detail-dialog/components/sidebar.mjs +1 -1
  33. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  34. package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
  35. package/dist/dialogs/detail-dialog/index.mjs +1 -1
  36. package/dist/dialogs/detail-dialog/index.mjs.map +1 -1
  37. package/dist/features/descriptions/index.cjs +1 -1
  38. package/dist/features/descriptions/index.cjs.map +1 -1
  39. package/dist/features/descriptions/index.d.cts +10 -1
  40. package/dist/features/descriptions/index.d.mts +10 -1
  41. package/dist/features/descriptions/index.mjs +1 -1
  42. package/dist/features/descriptions/index.mjs.map +1 -1
  43. package/dist/features/search-modal/index.d.cts +2 -2
  44. package/dist/features/search-modal/index.d.mts +2 -2
  45. package/dist/features/tables/index.cjs +1 -1
  46. package/dist/features/tables/index.d.cts +194 -27
  47. package/dist/features/tables/index.d.mts +174 -7
  48. package/dist/features/tables/index.mjs +1 -1
  49. package/dist/features/tanstack-form/index.cjs +1 -1
  50. package/dist/features/tanstack-form/index.d.cts +1 -1
  51. package/dist/features/tanstack-form/index.d.mts +1 -1
  52. package/dist/features/tanstack-form/index.mjs +1 -1
  53. package/dist/{field-CppNvoxV.cjs → field-C51eJ6QN.cjs} +2 -2
  54. package/dist/{field-CppNvoxV.cjs.map → field-C51eJ6QN.cjs.map} +1 -1
  55. package/dist/{field-CXVnw75a.mjs → field-DfsTE4Ie.mjs} +2 -2
  56. package/dist/{field-CXVnw75a.mjs.map → field-DfsTE4Ie.mjs.map} +1 -1
  57. package/dist/{index-75nSAiSe.d.mts → index-DzSTWYsk.d.mts} +173 -173
  58. package/dist/{index-aTMCQQms.d.cts → index-rnLTzTi7.d.cts} +358 -358
  59. package/dist/index.cjs +1 -1
  60. package/dist/index.d.cts +8 -8
  61. package/dist/index.d.mts +8 -8
  62. package/dist/index.mjs +1 -1
  63. package/dist/{input-Cd0G5y-9.mjs → input-6f9JTc79.mjs} +1 -1
  64. package/dist/{input-Cd0G5y-9.mjs.map → input-6f9JTc79.mjs.map} +1 -1
  65. package/dist/{input-Cl5VkKQh.cjs → input-BMOYFJYM.cjs} +1 -1
  66. package/dist/{input-Cl5VkKQh.cjs.map → input-BMOYFJYM.cjs.map} +1 -1
  67. package/dist/{input-D5dtkW6g.d.mts → input-BRVTkuUg.d.cts} +6 -6
  68. package/dist/{input-t2hpPP2K.d.cts → input-DpaSVQ7H.d.mts} +6 -6
  69. package/dist/{label-OmlGaZ5h.mjs → label-3vAlNtF9.mjs} +1 -1
  70. package/dist/{label-OmlGaZ5h.mjs.map → label-3vAlNtF9.mjs.map} +1 -1
  71. package/dist/{label-DkMTQ3Ch.cjs → label-zyBJYydC.cjs} +1 -1
  72. package/dist/{label-DkMTQ3Ch.cjs.map → label-zyBJYydC.cjs.map} +1 -1
  73. package/dist/layouts/cms-layout/index.cjs +1 -1
  74. package/dist/layouts/cms-layout/index.mjs +1 -1
  75. package/dist/layouts/flex.d.cts +7 -7
  76. package/dist/layouts/flex.d.mts +9 -9
  77. package/dist/layouts/payment-layout/index.cjs +1 -1
  78. package/dist/layouts/payment-layout/index.mjs +1 -1
  79. package/dist/pages/FeatureDeveloping.d.cts +2 -2
  80. package/dist/pages/FeatureDeveloping.d.mts +2 -2
  81. package/dist/pages/FeatureFixing.d.cts +2 -2
  82. package/dist/pages/FeatureFixing.d.mts +2 -2
  83. package/dist/pages/NotAuthorized.d.cts +2 -2
  84. package/dist/pages/NotAuthorized.d.mts +2 -2
  85. package/dist/pages/NotFound.d.cts +2 -2
  86. package/dist/pages/NotFound.d.mts +2 -2
  87. package/dist/{payment-layout-Da29dHJe.cjs → payment-layout-C9pP5HdT.cjs} +1 -1
  88. package/dist/{payment-layout-Da29dHJe.cjs.map → payment-layout-C9pP5HdT.cjs.map} +1 -1
  89. package/dist/{payment-layout-wN5c7MCM.mjs → payment-layout-D-69gOPJ.mjs} +1 -1
  90. package/dist/{payment-layout-wN5c7MCM.mjs.map → payment-layout-D-69gOPJ.mjs.map} +1 -1
  91. package/dist/{popover-OJXFbqJi.mjs → popover-BFJhuzW3.mjs} +1 -1
  92. package/dist/{popover-OJXFbqJi.mjs.map → popover-BFJhuzW3.mjs.map} +1 -1
  93. package/dist/{popover-AEt-aSy3.cjs → popover-CmoqhK17.cjs} +1 -1
  94. package/dist/{popover-AEt-aSy3.cjs.map → popover-CmoqhK17.cjs.map} +1 -1
  95. package/dist/progress-0cpDwgAJ.mjs +2 -0
  96. package/dist/progress-0cpDwgAJ.mjs.map +1 -0
  97. package/dist/progress-DE1FdQ1J.cjs +2 -0
  98. package/dist/progress-DE1FdQ1J.cjs.map +1 -0
  99. package/dist/{radio-group-CAgfOr7-.mjs → radio-group-D5OurBIG.mjs} +1 -1
  100. package/dist/{radio-group-CAgfOr7-.mjs.map → radio-group-D5OurBIG.mjs.map} +1 -1
  101. package/dist/{radio-group-BWLdQw7M.cjs → radio-group-DAv2EU3F.cjs} +1 -1
  102. package/dist/{radio-group-BWLdQw7M.cjs.map → radio-group-DAv2EU3F.cjs.map} +1 -1
  103. package/dist/{resizable-DWh_mp5P.mjs → resizable-C2Zl-iLF.mjs} +1 -1
  104. package/dist/{resizable-DWh_mp5P.mjs.map → resizable-C2Zl-iLF.mjs.map} +1 -1
  105. package/dist/{resizable-D6UKwvFa.cjs → resizable-DDPMwd28.cjs} +1 -1
  106. package/dist/{resizable-D6UKwvFa.cjs.map → resizable-DDPMwd28.cjs.map} +1 -1
  107. package/dist/{select-Ze8Fq88G.mjs → select-DRCKwnTV.mjs} +1 -1
  108. package/dist/{select-Ze8Fq88G.mjs.map → select-DRCKwnTV.mjs.map} +1 -1
  109. package/dist/{select-Py_t2nX1.cjs → select-DfvSMRUq.cjs} +1 -1
  110. package/dist/{select-Py_t2nX1.cjs.map → select-DfvSMRUq.cjs.map} +1 -1
  111. package/dist/{sidebar-C27_pwLR.cjs → sidebar-CcJCnqLb.cjs} +2 -2
  112. package/dist/{sidebar-C27_pwLR.cjs.map → sidebar-CcJCnqLb.cjs.map} +1 -1
  113. package/dist/{sidebar-meLttL0V.mjs → sidebar-QmCQFs8h.mjs} +2 -2
  114. package/dist/{sidebar-meLttL0V.mjs.map → sidebar-QmCQFs8h.mjs.map} +1 -1
  115. package/dist/{spinner-EgMJOaQi.mjs → spinner-B3F9W53l.mjs} +1 -1
  116. package/dist/{spinner-EgMJOaQi.mjs.map → spinner-B3F9W53l.mjs.map} +1 -1
  117. package/dist/{spinner-MKXqwF9G.cjs → spinner-rA8pMY6v.cjs} +1 -1
  118. package/dist/{spinner-MKXqwF9G.cjs.map → spinner-rA8pMY6v.cjs.map} +1 -1
  119. package/dist/tables-Chn2pQSc.cjs +4 -0
  120. package/dist/tables-Chn2pQSc.cjs.map +1 -0
  121. package/dist/tables-eLIhswqW.mjs +4 -0
  122. package/dist/tables-eLIhswqW.mjs.map +1 -0
  123. package/dist/{tanstack-form-BmV2BXDz.cjs → tanstack-form-Bb9JXuEq.cjs} +2 -2
  124. package/dist/{tanstack-form-BmV2BXDz.cjs.map → tanstack-form-Bb9JXuEq.cjs.map} +1 -1
  125. package/dist/{tanstack-form-CJ43hVb_.mjs → tanstack-form-BwyHENeF.mjs} +2 -2
  126. package/dist/{tanstack-form-CJ43hVb_.mjs.map → tanstack-form-BwyHENeF.mjs.map} +1 -1
  127. package/dist/{textarea-CdGSEkZB.mjs → textarea-5RD9ToTV.mjs} +1 -1
  128. package/dist/{textarea-CdGSEkZB.mjs.map → textarea-5RD9ToTV.mjs.map} +1 -1
  129. package/dist/{textarea-BsgmN4jy.cjs → textarea-CvoBIPlJ.cjs} +1 -1
  130. package/dist/{textarea-BsgmN4jy.cjs.map → textarea-CvoBIPlJ.cjs.map} +1 -1
  131. package/dist/{types-B_32Ieia.d.mts → types-CkRjAQZ2.d.mts} +1 -1
  132. package/dist/typography/paragraph.d.cts +5 -5
  133. package/dist/typography/paragraph.d.mts +5 -5
  134. package/dist/typography/title.d.cts +2 -2
  135. package/dist/typography/title.d.mts +2 -2
  136. package/dist/ui/alert-dialog.d.cts +12 -12
  137. package/dist/ui/alert-dialog.d.mts +12 -12
  138. package/dist/ui/alert.cjs +1 -1
  139. package/dist/ui/alert.d.cts +1 -1
  140. package/dist/ui/alert.d.mts +1 -1
  141. package/dist/ui/alert.mjs +1 -1
  142. package/dist/ui/aspect-ratio.d.cts +2 -2
  143. package/dist/ui/aspect-ratio.d.mts +2 -2
  144. package/dist/ui/avatar.d.cts +4 -4
  145. package/dist/ui/avatar.d.mts +4 -4
  146. package/dist/ui/badge.d.cts +1 -1
  147. package/dist/ui/badge.d.mts +1 -1
  148. package/dist/ui/breadcrumb.d.cts +8 -8
  149. package/dist/ui/breadcrumb.d.mts +8 -8
  150. package/dist/ui/button-group.d.cts +7 -7
  151. package/dist/ui/button-group.d.mts +7 -7
  152. package/dist/ui/button.d.cts +1 -1
  153. package/dist/ui/button.d.mts +1 -1
  154. package/dist/ui/calendar.cjs +1 -1
  155. package/dist/ui/calendar.d.cts +4 -4
  156. package/dist/ui/calendar.d.mts +4 -4
  157. package/dist/ui/calendar.mjs +1 -1
  158. package/dist/ui/card.d.cts +8 -8
  159. package/dist/ui/card.d.mts +8 -8
  160. package/dist/ui/carousel.d.cts +7 -7
  161. package/dist/ui/carousel.d.mts +7 -7
  162. package/dist/ui/checkbox.cjs +1 -1
  163. package/dist/ui/checkbox.d.cts +2 -2
  164. package/dist/ui/checkbox.d.mts +2 -2
  165. package/dist/ui/checkbox.mjs +1 -1
  166. package/dist/ui/collapsible.d.cts +4 -4
  167. package/dist/ui/collapsible.d.mts +4 -4
  168. package/dist/ui/command.d.cts +11 -11
  169. package/dist/ui/command.d.mts +11 -11
  170. package/dist/ui/context-menu.d.cts +16 -16
  171. package/dist/ui/context-menu.d.mts +16 -16
  172. package/dist/ui/dialog.d.cts +1 -1
  173. package/dist/ui/dialog.d.mts +1 -1
  174. package/dist/ui/drawer.d.cts +11 -11
  175. package/dist/ui/drawer.d.mts +11 -11
  176. package/dist/ui/dropdown-menu.d.cts +16 -16
  177. package/dist/ui/dropdown-menu.d.mts +16 -16
  178. package/dist/ui/empty.d.cts +9 -9
  179. package/dist/ui/empty.d.mts +9 -9
  180. package/dist/ui/field.cjs +1 -1
  181. package/dist/ui/field.d.cts +25 -25
  182. package/dist/ui/field.d.mts +25 -25
  183. package/dist/ui/field.mjs +1 -1
  184. package/dist/ui/file-uploader.cjs +2 -2
  185. package/dist/ui/file-uploader.cjs.map +1 -1
  186. package/dist/ui/file-uploader.d.cts +2 -2
  187. package/dist/ui/file-uploader.d.mts +2 -2
  188. package/dist/ui/file-uploader.mjs +1 -1
  189. package/dist/ui/file-uploader.mjs.map +1 -1
  190. package/dist/ui/form.cjs +1 -1
  191. package/dist/ui/form.d.cts +11 -11
  192. package/dist/ui/form.d.mts +7 -7
  193. package/dist/ui/form.mjs +1 -1
  194. package/dist/ui/hover-card.d.cts +4 -4
  195. package/dist/ui/hover-card.d.mts +4 -4
  196. package/dist/ui/input-otp.d.cts +5 -5
  197. package/dist/ui/input-otp.d.mts +5 -5
  198. package/dist/ui/input.cjs +1 -1
  199. package/dist/ui/input.d.cts +1 -1
  200. package/dist/ui/input.d.mts +1 -1
  201. package/dist/ui/input.mjs +1 -1
  202. package/dist/ui/inputs/search-input.cjs +1 -1
  203. package/dist/ui/inputs/search-input.d.cts +3 -3
  204. package/dist/ui/inputs/search-input.d.mts +3 -3
  205. package/dist/ui/inputs/search-input.mjs +1 -1
  206. package/dist/ui/item.d.cts +16 -16
  207. package/dist/ui/item.d.mts +16 -16
  208. package/dist/ui/label.cjs +1 -1
  209. package/dist/ui/label.d.cts +2 -2
  210. package/dist/ui/label.d.mts +2 -2
  211. package/dist/ui/label.mjs +1 -1
  212. package/dist/ui/menubar.d.cts +17 -17
  213. package/dist/ui/menubar.d.mts +17 -17
  214. package/dist/ui/multi-select.d.mts +3 -3
  215. package/dist/ui/navigation-menu.d.cts +11 -11
  216. package/dist/ui/navigation-menu.d.mts +11 -11
  217. package/dist/ui/pagination.d.cts +9 -9
  218. package/dist/ui/pagination.d.mts +9 -9
  219. package/dist/ui/popover.cjs +1 -1
  220. package/dist/ui/popover.d.cts +6 -6
  221. package/dist/ui/popover.d.mts +6 -6
  222. package/dist/ui/popover.mjs +1 -1
  223. package/dist/ui/progress.cjs +1 -2
  224. package/dist/ui/progress.d.cts +2 -2
  225. package/dist/ui/progress.d.mts +2 -2
  226. package/dist/ui/progress.mjs +1 -2
  227. package/dist/ui/radio-group.cjs +1 -1
  228. package/dist/ui/radio-group.d.cts +3 -3
  229. package/dist/ui/radio-group.d.mts +3 -3
  230. package/dist/ui/radio-group.mjs +1 -1
  231. package/dist/ui/resizable.cjs +1 -1
  232. package/dist/ui/resizable.d.cts +9 -9
  233. package/dist/ui/resizable.d.mts +9 -9
  234. package/dist/ui/resizable.mjs +1 -1
  235. package/dist/ui/scroll-area.d.cts +6 -6
  236. package/dist/ui/scroll-area.d.mts +6 -6
  237. package/dist/ui/select.cjs +1 -1
  238. package/dist/ui/select.d.cts +9 -9
  239. package/dist/ui/select.d.mts +9 -9
  240. package/dist/ui/select.mjs +1 -1
  241. package/dist/ui/separator.d.cts +2 -2
  242. package/dist/ui/separator.d.mts +2 -2
  243. package/dist/ui/sheet.d.cts +9 -9
  244. package/dist/ui/sheet.d.mts +9 -9
  245. package/dist/ui/sidebar.cjs +1 -1
  246. package/dist/ui/sidebar.d.cts +29 -29
  247. package/dist/ui/sidebar.d.mts +29 -29
  248. package/dist/ui/sidebar.mjs +1 -1
  249. package/dist/ui/skeleton.d.cts +2 -2
  250. package/dist/ui/skeleton.d.mts +2 -2
  251. package/dist/ui/slider.d.cts +2 -2
  252. package/dist/ui/slider.d.mts +2 -2
  253. package/dist/ui/sonner.d.cts +2 -2
  254. package/dist/ui/sonner.d.mts +2 -2
  255. package/dist/ui/spinner.cjs +1 -1
  256. package/dist/ui/spinner.d.cts +2 -2
  257. package/dist/ui/spinner.d.mts +2 -2
  258. package/dist/ui/spinner.mjs +1 -1
  259. package/dist/ui/switch.d.cts +2 -2
  260. package/dist/ui/switch.d.mts +2 -2
  261. package/dist/ui/table.d.cts +18 -18
  262. package/dist/ui/table.d.mts +18 -18
  263. package/dist/ui/tabs.d.cts +5 -5
  264. package/dist/ui/tabs.d.mts +5 -5
  265. package/dist/ui/textarea.cjs +1 -1
  266. package/dist/ui/textarea.d.cts +2 -2
  267. package/dist/ui/textarea.d.mts +2 -2
  268. package/dist/ui/textarea.mjs +1 -1
  269. package/dist/ui/toggle-group.d.cts +3 -3
  270. package/dist/ui/toggle-group.d.mts +3 -3
  271. package/dist/ui/toggle.d.cts +5 -5
  272. package/dist/ui/toggle.d.mts +5 -5
  273. package/dist/ui/tooltip.d.cts +5 -5
  274. package/dist/ui/tooltip.d.mts +5 -5
  275. package/package.json +1 -1
  276. package/dist/tables-Cc3Wik4i.cjs +0 -2
  277. package/dist/tables-Cc3Wik4i.cjs.map +0 -1
  278. package/dist/tables-DrJKQPsT.mjs +0 -2
  279. package/dist/tables-DrJKQPsT.mjs.map +0 -1
  280. package/dist/ui/progress.cjs.map +0 -1
  281. package/dist/ui/progress.mjs.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { t as AnyEntity } from "../../types-CDYHkcOk.cjs";
2
- import { t as Input } from "../../input-t2hpPP2K.cjs";
3
- import * as react_jsx_runtime332 from "react/jsx-runtime";
4
- import * as react273 from "react";
2
+ import { t as Input } from "../../input-BRVTkuUg.cjs";
3
+ import * as react_jsx_runtime346 from "react/jsx-runtime";
4
+ import * as react286 from "react";
5
5
  import { AccessorKeyColumnDef, CellContext, Column, ColumnPinningPosition, ColumnPinningState, Header, HeaderGroup, Row, RowSelectionState, Table } from "@tanstack/react-table";
6
6
  import { VirtualItem, Virtualizer } from "@tanstack/react-virtual";
7
7
 
@@ -46,9 +46,48 @@ declare const UITableBooleanDisplay: React.FC<{
46
46
  value: boolean | null | undefined;
47
47
  }>;
48
48
  //#endregion
49
+ //#region packages/components/features/tables/components/atoms/currency-display.d.ts
50
+ /** Props for the {@link UITableCurrencyDisplay} component. */
51
+ type Props$7 = {
52
+ /** The numeric value to format as currency; falsy / `NaN` renders an empty state. */
53
+ value: number | string | null | undefined;
54
+ /** ISO 4217 currency code (default: `'USD'`). */
55
+ currency?: string;
56
+ /**
57
+ * BCP 47 locale used for number formatting (default: `'en-US'`).
58
+ * Controls digit grouping and decimal separators.
59
+ */
60
+ locale?: string;
61
+ /** How to display the currency symbol — `'symbol'` (default), `'code'`, or `'name'`. */
62
+ display?: 'symbol' | 'code' | 'name';
63
+ /** Font-size variant (default: `'md'`). */
64
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
65
+ /** When `true`, applies a green tint for positive and red tint for negative values. */
66
+ colorize?: boolean;
67
+ };
68
+ /**
69
+ * Formats a numeric value as a locale-aware currency string in a table cell.
70
+ * Always shows exactly two decimal places and uses the browser's `Intl` API for
71
+ * symbol placement. Renders {@link UITableEmpty} when the value is absent or
72
+ * invalid.
73
+ *
74
+ * @example
75
+ * import { UITableCurrencyDisplay } from '@customafk/lunas-ui/features/tables';
76
+ *
77
+ * <UITableCurrencyDisplay value={1234.5} currency="USD" colorize />
78
+ */
79
+ declare const UITableCurrencyDisplay: react286.MemoExoticComponent<({
80
+ value,
81
+ currency,
82
+ locale,
83
+ display,
84
+ size,
85
+ colorize
86
+ }: Props$7) => react_jsx_runtime346.JSX.Element>;
87
+ //#endregion
49
88
  //#region packages/components/features/tables/components/atoms/date-display.d.ts
50
89
  /** Props for the {@link UITableDateDisplay} component. */
51
- type Props$2 = {
90
+ type Props$6 = {
52
91
  /** The date value to format and display; `null`/`undefined` renders an empty state. */
53
92
  date: Date | string | number | null | undefined;
54
93
  };
@@ -62,7 +101,7 @@ type Props$2 = {
62
101
  *
63
102
  * <UITableDateDisplay date={new Date('2024-06-15T10:30:00Z')} />
64
103
  */
65
- declare const UITableDateDisplay: React.FC<Props$2>;
104
+ declare const UITableDateDisplay: React.FC<Props$6>;
66
105
  //#endregion
67
106
  //#region packages/components/features/tables/components/atoms/description-display.d.ts
68
107
  /**
@@ -80,6 +119,51 @@ declare const UITableDescriptionDisplay: React.FC<{
80
119
  content: string | null | undefined | number;
81
120
  }>;
82
121
  //#endregion
122
+ //#region packages/components/features/tables/components/atoms/email-display.d.ts
123
+ /** Props for the {@link UITableEmailDisplay} component. */
124
+ type Props$5 = {
125
+ /** The email address to display; `null`/`undefined`/empty renders an empty state. */
126
+ email: string | null | undefined;
127
+ /** When `true`, a `mailto:` anchor wraps the address (default: `true`). */
128
+ linkable?: boolean;
129
+ };
130
+ /**
131
+ * Displays an email address in a table cell with a copy-to-clipboard button.
132
+ * Shows a brief checkmark confirmation after copying. Optionally wraps the
133
+ * address in a `mailto:` link. Renders {@link UITableEmpty} when `email` is
134
+ * absent.
135
+ *
136
+ * @example
137
+ * import { UITableEmailDisplay } from '@customafk/lunas-ui/features/tables';
138
+ *
139
+ * <UITableEmailDisplay email="jane@example.com" />
140
+ */
141
+ declare const UITableEmailDisplay: React.FC<Props$5>;
142
+ //#endregion
143
+ //#region packages/components/features/tables/components/atoms/list-display.d.ts
144
+ /** Props for the {@link UITableListDisplay} component. */
145
+ type Props$4 = {
146
+ /** Array of strings or numbers to render as inline pills. */
147
+ items: (string | number)[] | null | undefined;
148
+ /**
149
+ * Maximum number of pills shown before a `+N more` overflow badge appears
150
+ * (default: `3`).
151
+ */
152
+ maxVisible?: number;
153
+ };
154
+ /**
155
+ * Renders an array of values as compact inline pills in a table cell. When the
156
+ * list exceeds `maxVisible`, a `+N more` badge is shown; hovering it reveals all
157
+ * remaining items in a tooltip. Renders {@link UITableEmpty} for empty or absent
158
+ * arrays.
159
+ *
160
+ * @example
161
+ * import { UITableListDisplay } from '@customafk/lunas-ui/features/tables';
162
+ *
163
+ * <UITableListDisplay items={['React', 'TypeScript', 'TailwindCSS', 'Vite']} maxVisible={3} />
164
+ */
165
+ declare const UITableListDisplay: React.FC<Props$4>;
166
+ //#endregion
83
167
  //#region packages/components/features/tables/components/atoms/more-button.d.ts
84
168
  /**
85
169
  * A vertical-ellipsis icon button that opens a dropdown menu populated from the
@@ -161,6 +245,41 @@ declare const UITablePhoneNumberDisplay: React.FC<React.PropsWithChildren<{
161
245
  value: string;
162
246
  }>>;
163
247
  //#endregion
248
+ //#region packages/components/features/tables/components/atoms/progress-display.d.ts
249
+ /** Props for the {@link UITableProgressDisplay} component. */
250
+ type Props$3 = {
251
+ /** Percentage value between 0 and 100; `null`/`undefined` renders an empty state. */
252
+ value: number | null | undefined;
253
+ /** When `true`, shows the numeric percentage next to the bar (default: `true`). */
254
+ showLabel?: boolean;
255
+ /**
256
+ * Color thresholds applied to the progress indicator.
257
+ * - `≥ successThreshold` → green
258
+ * - `≥ warningThreshold` → yellow
259
+ * - otherwise → red
260
+ *
261
+ * Defaults: `successThreshold = 70`, `warningThreshold = 40`.
262
+ */
263
+ successThreshold?: number;
264
+ warningThreshold?: number;
265
+ };
266
+ /**
267
+ * Renders a horizontal progress bar with an optional percentage label for a
268
+ * table cell. The bar color shifts from red → yellow → green based on
269
+ * configurable thresholds. Renders {@link UITableEmpty} when `value` is absent.
270
+ *
271
+ * @example
272
+ * import { UITableProgressDisplay } from '@customafk/lunas-ui/features/tables';
273
+ *
274
+ * <UITableProgressDisplay value={75} />
275
+ */
276
+ declare const UITableProgressDisplay: react286.MemoExoticComponent<({
277
+ value,
278
+ showLabel,
279
+ successThreshold,
280
+ warningThreshold
281
+ }: Props$3) => react_jsx_runtime346.JSX.Element>;
282
+ //#endregion
164
283
  //#region packages/components/features/tables/components/atoms/remove-button.d.ts
165
284
  /**
166
285
  * A ghost danger icon button with a trash icon that triggers an async removal
@@ -183,7 +302,7 @@ declare const UITableRemoveButton: React.FC<{
183
302
  //#endregion
184
303
  //#region packages/components/features/tables/components/atoms/statistic.d.ts
185
304
  /** Props for the {@link UITableStatisticDisplay} component. */
186
- type Props$1 = {
305
+ type Props$2 = {
187
306
  /** Character used to separate the integer and fractional parts (default: `'.'`). */
188
307
  decimalSeparator?: string;
189
308
  /** Character used to separate thousands groups (default: `','`). */
@@ -213,7 +332,7 @@ type Props$1 = {
213
332
  *
214
333
  * <UITableStatisticDisplay value={1234567.89} precision={2} prefix="$" size="md" />
215
334
  */
216
- declare const UITableStatisticDisplay: react273.MemoExoticComponent<({
335
+ declare const UITableStatisticDisplay: react286.MemoExoticComponent<({
217
336
  decimalSeparator,
218
337
  groupSeparator,
219
338
  prefix: Prefix,
@@ -223,7 +342,38 @@ declare const UITableStatisticDisplay: react273.MemoExoticComponent<({
223
342
  showTrailingZeros,
224
343
  size,
225
344
  value
226
- }: Props$1) => react_jsx_runtime332.JSX.Element>;
345
+ }: Props$2) => react_jsx_runtime346.JSX.Element>;
346
+ //#endregion
347
+ //#region packages/components/features/tables/components/atoms/status-display.d.ts
348
+ type BadgeColor = 'primary' | 'secondary' | 'muted' | 'accent' | 'info' | 'success' | 'warning' | 'danger';
349
+ /** Props for the {@link UITableStatusDisplay} component. */
350
+ type Props$1 = {
351
+ /** The status string to display; `null`/`undefined` renders an empty state. */
352
+ value: string | null | undefined;
353
+ /**
354
+ * Maps each status string to a badge color. Any key not present in the map
355
+ * falls back to `defaultColor`.
356
+ */
357
+ colorMap?: Record<string, BadgeColor>;
358
+ /** Color used when `value` is not found in `colorMap` (default: `'muted'`). */
359
+ defaultColor?: BadgeColor;
360
+ /** Badge variant forwarded to the underlying {@link Badge} (default: `'soft'`). */
361
+ variant?: 'solid' | 'soft' | 'outline';
362
+ };
363
+ /**
364
+ * Renders a color-coded status badge for a table cell. The mapping from status
365
+ * string to badge color is fully configurable via `colorMap`; unknown statuses
366
+ * fall back to `defaultColor`.
367
+ *
368
+ * @example
369
+ * import { UITableStatusDisplay } from '@customafk/lunas-ui/features/tables';
370
+ *
371
+ * <UITableStatusDisplay
372
+ * value="active"
373
+ * colorMap={{ active: 'success', inactive: 'danger', pending: 'warning' }}
374
+ * />
375
+ */
376
+ declare const UITableStatusDisplay: React.FC<Props$1>;
227
377
  //#endregion
228
378
  //#region packages/components/features/tables/components/atoms/user.d.ts
229
379
  /** Props for the {@link UITableUserDataDisplay} component. */
@@ -419,6 +569,13 @@ type TUITableColumn<TData extends RowData<TData>> = Pick<AccessorKeyColumnDef<TD
419
569
  fitContent?: boolean;
420
570
  };
421
571
  };
572
+ /** A single cell in a CSV export row. */
573
+ type CsvCell = {
574
+ /** Column header label for this cell. */
575
+ label: string;
576
+ /** Cell value — numbers render right-aligned in spreadsheet editors. */
577
+ value: string | number | boolean | null | undefined;
578
+ };
422
579
  /**
423
580
  * Value shape of the root `TableContext` consumed by toolbar and body
424
581
  * components via `useUITableContext`.
@@ -438,6 +595,10 @@ type TTableContext<TData extends RowData<TData>> = {
438
595
  totalRows?: number;
439
596
  /** Callback that loads the next page; forwarded to `UITableLoadMore`. */
440
597
  fetchMoreData?: () => void | Promise<void>;
598
+ /** CSV export rows; each row is an ordered array of `{ label, value }` cells. */
599
+ csvData?: CsvCell[][];
600
+ /** File name (without `.csv`) for the downloaded file. Defaults to the table title. */
601
+ csvFileName?: string;
441
602
  };
442
603
  /** Context value provided by `UITableInnerWrapperProvider`. */
443
604
  type TTableInnerWrapperContext = {
@@ -550,6 +711,10 @@ type TableProviderProps<TData extends RowData<TData>, TKey extends keyof TData =
550
711
  onRowSelection?: (rowSelection: RowSelectionState) => void;
551
712
  /** Called with the updated column-pinning state after each pin/unpin action. */
552
713
  onColumnPinning?: (columnPinning: ColumnPinningState) => void;
714
+ /** CSV export rows; each row is an ordered array of `{ label, value }` cells. */
715
+ csvData?: CsvCell[][];
716
+ /** File name (without `.csv`) for the downloaded file. Defaults to the table title. */
717
+ csvFileName?: string;
553
718
  };
554
719
  //#endregion
555
720
  //#region packages/components/features/tables/components/common.d.ts
@@ -572,7 +737,7 @@ type TableProviderProps<TData extends RowData<TData>, TKey extends keyof TData =
572
737
  * />
573
738
  * ```
574
739
  */
575
- declare const UITableHeadCellOption: react273.NamedExoticComponent<TUITableHeadCellOption>;
740
+ declare const UITableHeadCellOption: react286.NamedExoticComponent<TUITableHeadCellOption>;
576
741
  /**
577
742
  * Sticky `<th>` cell that renders a "select all rows" checkbox in the leftmost
578
743
  * header position.
@@ -591,7 +756,7 @@ declare const UITableHeadCellOption: react273.NamedExoticComponent<TUITableHeadC
591
756
  * />
592
757
  * ```
593
758
  */
594
- declare const UITableHeadCellSelect: react273.NamedExoticComponent<TUITableHeadCellSelect>;
759
+ declare const UITableHeadCellSelect: react286.NamedExoticComponent<TUITableHeadCellSelect>;
595
760
  /**
596
761
  * Overlay displayed in place of table rows when the table is loading data or
597
762
  * when the dataset is empty after a successful fetch.
@@ -606,7 +771,7 @@ declare const UITableHeadCellSelect: react273.NamedExoticComponent<TUITableHeadC
606
771
  * <UITableEmptyDisplay isFetching={isLoading} isEmpty={data.length === 0} />
607
772
  * ```
608
773
  */
609
- declare const UITableEmptyDisplay: react273.NamedExoticComponent<TUITableEmptyDisplay>;
774
+ declare const UITableEmptyDisplay: react286.NamedExoticComponent<TUITableEmptyDisplay>;
610
775
  /**
611
776
  * Outermost layout container for the entire UITable composition.
612
777
  *
@@ -622,7 +787,7 @@ declare const UITableEmptyDisplay: react273.NamedExoticComponent<TUITableEmptyDi
622
787
  * </UITableWrapper>
623
788
  * ```
624
789
  */
625
- declare const UITableWrapper: react273.NamedExoticComponent<TUITableWrapper>;
790
+ declare const UITableWrapper: react286.NamedExoticComponent<TUITableWrapper>;
626
791
  /**
627
792
  * Scrollable `<div>` that wraps the `<table>` element and acts as the
628
793
  * viewport for both horizontal and vertical virtual scrolling.
@@ -640,7 +805,7 @@ declare const UITableWrapper: react273.NamedExoticComponent<TUITableWrapper>;
640
805
  * </UITableInnerWrapper>
641
806
  * ```
642
807
  */
643
- declare const UITableInnerWrapper: react273.NamedExoticComponent<TUITableInnerWrapper>;
808
+ declare const UITableInnerWrapper: react286.NamedExoticComponent<TUITableInnerWrapper>;
644
809
  /**
645
810
  * The actual `<table>` element that drives the UITable layout.
646
811
  *
@@ -660,7 +825,7 @@ declare const UITableInnerWrapper: react273.NamedExoticComponent<TUITableInnerWr
660
825
  * </UITableInnerTable>
661
826
  * ```
662
827
  */
663
- declare const UITableInnerTable: react273.NamedExoticComponent<TUITableInnerTable>;
828
+ declare const UITableInnerTable: react286.NamedExoticComponent<TUITableInnerTable>;
664
829
  /**
665
830
  * Sticky `<thead>` element that stays fixed at the top of the scrollable
666
831
  * table area while the body scrolls beneath it.
@@ -679,7 +844,7 @@ declare const UITableInnerTable: react273.NamedExoticComponent<TUITableInnerTabl
679
844
  * </UITableHead>
680
845
  * ```
681
846
  */
682
- declare const UITableHead: react273.NamedExoticComponent<TUITableHead>;
847
+ declare const UITableHead: react286.NamedExoticComponent<TUITableHead>;
683
848
  /**
684
849
  * Renders a single `<tr>` for a TanStack `HeaderGroup`, mapping each header
685
850
  * to either `UITableHeadCellSelect` (for the `select` column) or
@@ -697,7 +862,7 @@ declare const UITableHead: react273.NamedExoticComponent<TUITableHead>;
697
862
  * ))}
698
863
  * ```
699
864
  */
700
- declare const UITableHeadRow: react273.NamedExoticComponent<TUITableHeadRow>;
865
+ declare const UITableHeadRow: react286.NamedExoticComponent<TUITableHeadRow>;
701
866
  /**
702
867
  * Individual `<th>` cell that supports left/right sticky pinning, dynamic
703
868
  * CSS-variable-driven width, min/max size constraints, and an optional
@@ -721,7 +886,7 @@ declare const UITableHeadRow: react273.NamedExoticComponent<TUITableHeadRow>;
721
886
  * </UITableHeadCell>
722
887
  * ```
723
888
  */
724
- declare const UITableHeadCell: react273.NamedExoticComponent<TUITableHeadCell>;
889
+ declare const UITableHeadCell: react286.NamedExoticComponent<TUITableHeadCell>;
725
890
  /**
726
891
  * `<tbody>` element that acts as the virtual-scroll container.
727
892
  *
@@ -741,7 +906,7 @@ declare const UITableHeadCell: react273.NamedExoticComponent<TUITableHeadCell>;
741
906
  * </UITableBody>
742
907
  * ```
743
908
  */
744
- declare const UITableBody: react273.NamedExoticComponent<TUITableBody>;
909
+ declare const UITableBody: react286.NamedExoticComponent<TUITableBody>;
745
910
  /**
746
911
  * Virtualised `<tr>` that renders a single data row by translating itself to
747
912
  * the correct vertical position via a CSS `transform`.
@@ -769,7 +934,7 @@ declare const UITableBody: react273.NamedExoticComponent<TUITableBody>;
769
934
  * })}
770
935
  * ```
771
936
  */
772
- declare const UITableRow: react273.NamedExoticComponent<TUITableRow>;
937
+ declare const UITableRow: react286.NamedExoticComponent<TUITableRow>;
773
938
  /**
774
939
  * Sticky `<td>` cell in the leftmost column that renders a per-row selection
775
940
  * checkbox.
@@ -788,7 +953,7 @@ declare const UITableRow: react273.NamedExoticComponent<TUITableRow>;
788
953
  * />
789
954
  * ```
790
955
  */
791
- declare const UITableCellSelect: react273.NamedExoticComponent<TUITableCellSelect>;
956
+ declare const UITableCellSelect: react286.NamedExoticComponent<TUITableCellSelect>;
792
957
  /**
793
958
  * Sticky `<td>` cell pinned to the right edge of each row that renders the
794
959
  * column's custom `cell` renderer (typically a row-action menu).
@@ -807,7 +972,7 @@ declare const UITableCellSelect: react273.NamedExoticComponent<TUITableCellSelec
807
972
  * />
808
973
  * ```
809
974
  */
810
- declare const UITableCellActions: react273.NamedExoticComponent<TUITableCellActions>;
975
+ declare const UITableCellActions: react286.NamedExoticComponent<TUITableCellActions>;
811
976
  /**
812
977
  * Standard `<td>` data cell with support for left/right sticky pinning,
813
978
  * CSS-variable-driven width, content-fit auto-sizing, and configurable
@@ -831,7 +996,7 @@ declare const UITableCellActions: react273.NamedExoticComponent<TUITableCellActi
831
996
  * />
832
997
  * ```
833
998
  */
834
- declare const UITableCell: react273.NamedExoticComponent<TUITableCell>;
999
+ declare const UITableCell: react286.NamedExoticComponent<TUITableCell>;
835
1000
  /**
836
1001
  * `<tfoot>` element rendered below the table body, typically used for
837
1002
  * summary rows or pagination controls.
@@ -845,7 +1010,7 @@ declare const UITableCell: react273.NamedExoticComponent<TUITableCell>;
845
1010
  * </UITableFooter>
846
1011
  * ```
847
1012
  */
848
- declare const UITableFooter: react273.NamedExoticComponent<TUITableFooter>;
1013
+ declare const UITableFooter: react286.NamedExoticComponent<TUITableFooter>;
849
1014
  /**
850
1015
  * Virtualised `<tr>` appended after the last data row that renders a
851
1016
  * "Load More" / "Loading…" / "Error! Retry?" button.
@@ -865,7 +1030,7 @@ declare const UITableFooter: react273.NamedExoticComponent<TUITableFooter>;
865
1030
  * />
866
1031
  * ```
867
1032
  */
868
- declare const UITableLoadMore: react273.NamedExoticComponent<TUITableLoadMore>;
1033
+ declare const UITableLoadMore: react286.NamedExoticComponent<TUITableLoadMore>;
869
1034
  //#endregion
870
1035
  //#region packages/components/features/tables/components/table.d.ts
871
1036
  declare const UITableContainer: React.FC<React.PropsWithChildren>;
@@ -893,7 +1058,7 @@ declare const UITableContainer: React.FC<React.PropsWithChildren>;
893
1058
  * </ResizablePanelGroup>
894
1059
  * ```
895
1060
  */
896
- declare const UITableFilter: () => react_jsx_runtime332.JSX.Element;
1061
+ declare const UITableFilter: () => react_jsx_runtime346.JSX.Element;
897
1062
  //#endregion
898
1063
  //#region packages/components/features/tables/components/table/provider.d.ts
899
1064
  /**
@@ -942,8 +1107,10 @@ declare const UITableProvider: <TData extends RowData<TData> = RowData<AnyEntity
942
1107
  onRowSelection,
943
1108
  onColumnPinning,
944
1109
  fetchMoreData,
1110
+ csvData,
1111
+ csvFileName,
945
1112
  children
946
- }: React.PropsWithChildren<TableProviderProps<TData, TKey, TColumns>>) => react_jsx_runtime332.JSX.Element;
1113
+ }: React.PropsWithChildren<TableProviderProps<TData, TKey, TColumns>>) => react_jsx_runtime346.JSX.Element;
947
1114
  //#endregion
948
1115
  //#region packages/components/features/tables/components/table/tooltip.d.ts
949
1116
  /**
@@ -1010,5 +1177,5 @@ declare const UITableTooltipActions: React.FC<{
1010
1177
  */
1011
1178
  declare const UITableTooltip: React.FC<React.PropsWithChildren>;
1012
1179
  //#endregion
1013
- export { RowData, TTableBodyContext, TTableContext, TTableHeadRowContext, TTableInnerTableContext, TTableInnerWrapperContext, TTableRowContext, TTableVirtualizerContext, TUITableBody, TUITableCell, TUITableCellActions, TUITableCellSelect, TUITableColumn, TUITableEmptyDisplay, TUITableFooter, TUITableHead, TUITableHeadCell, TUITableHeadCellOption, TUITableHeadCellSelect, TUITableHeadRow, TUITableInnerTable, TUITableInnerWrapper, TUITableLoadMore, TUITableRow, TUITableWrapper, TableProviderProps, UITableBadgeDisplay, UITableBody, UITableBooleanDisplay, UITableCell, UITableCellActions, UITableCellSelect, UITableContainer, UITableDateDisplay, UITableDescriptionDisplay, UITableEmptyDisplay, UITableFilter, UITableFooter, UITableHead, UITableHeadCell, UITableHeadCellOption, UITableHeadCellSelect, UITableHeadRow, UITableInnerTable, UITableInnerWrapper, UITableLoadMore, UITableMoreButton, UITableNameDisplay, UITablePermalink, UITablePhoneNumberDisplay, UITableProvider, UITableRemoveButton, UITableRow, UITableStatisticDisplay, UITableTooltip, UITableTooltipActions, UITableTooltipFilter, UITableUserDataDisplay, UITableWrapper };
1180
+ export { CsvCell, RowData, TTableBodyContext, TTableContext, TTableHeadRowContext, TTableInnerTableContext, TTableInnerWrapperContext, TTableRowContext, TTableVirtualizerContext, TUITableBody, TUITableCell, TUITableCellActions, TUITableCellSelect, TUITableColumn, TUITableEmptyDisplay, TUITableFooter, TUITableHead, TUITableHeadCell, TUITableHeadCellOption, TUITableHeadCellSelect, TUITableHeadRow, TUITableInnerTable, TUITableInnerWrapper, TUITableLoadMore, TUITableRow, TUITableWrapper, TableProviderProps, UITableBadgeDisplay, UITableBody, UITableBooleanDisplay, UITableCell, UITableCellActions, UITableCellSelect, UITableContainer, UITableCurrencyDisplay, UITableDateDisplay, UITableDescriptionDisplay, UITableEmailDisplay, UITableEmptyDisplay, UITableFilter, UITableFooter, UITableHead, UITableHeadCell, UITableHeadCellOption, UITableHeadCellSelect, UITableHeadRow, UITableInnerTable, UITableInnerWrapper, UITableListDisplay, UITableLoadMore, UITableMoreButton, UITableNameDisplay, UITablePermalink, UITablePhoneNumberDisplay, UITableProgressDisplay, UITableProvider, UITableRemoveButton, UITableRow, UITableStatisticDisplay, UITableStatusDisplay, UITableTooltip, UITableTooltipActions, UITableTooltipFilter, UITableUserDataDisplay, UITableWrapper };
1014
1181
  //# sourceMappingURL=index.d.cts.map