@customafk/lunas-ui 0.2.67 → 0.2.69

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 (255) hide show
  1. package/dist/{action-submit-SviPJW3i.mjs → action-submit-Bew9PJtF.mjs} +2 -2
  2. package/dist/{action-submit-SviPJW3i.mjs.map → action-submit-Bew9PJtF.mjs.map} +1 -1
  3. package/dist/{action-submit-42PxGLsR.cjs → action-submit-Dzo0A7Ew.cjs} +2 -2
  4. package/dist/{action-submit-42PxGLsR.cjs.map → action-submit-Dzo0A7Ew.cjs.map} +1 -1
  5. package/dist/{actions-form-Bo46j_dH.cjs → actions-form-BnDcdbd-.cjs} +2 -2
  6. package/dist/{actions-form-Bo46j_dH.cjs.map → actions-form-BnDcdbd-.cjs.map} +1 -1
  7. package/dist/{actions-form-QdAsKwcQ.mjs → actions-form-Z8BX9Hmy.mjs} +2 -2
  8. package/dist/{actions-form-QdAsKwcQ.mjs.map → actions-form-Z8BX9Hmy.mjs.map} +1 -1
  9. package/dist/analysis-panel-BqZmOU58.mjs +2 -0
  10. package/dist/analysis-panel-BqZmOU58.mjs.map +1 -0
  11. package/dist/{analysis-panel-UlC7cvO2.cjs → analysis-panel-CQZ0hmfN.cjs} +2 -2
  12. package/dist/analysis-panel-CQZ0hmfN.cjs.map +1 -0
  13. package/dist/{badge-display-Bs0QeCJt.cjs → badge-display-DmCKpGk9.cjs} +2 -2
  14. package/dist/{badge-display-Bs0QeCJt.cjs.map → badge-display-DmCKpGk9.cjs.map} +1 -1
  15. package/dist/{badge-display-Dg5XM66P.mjs → badge-display-RP5VTE10.mjs} +2 -2
  16. package/dist/{badge-display-Dg5XM66P.mjs.map → badge-display-RP5VTE10.mjs.map} +1 -1
  17. package/dist/{boolean-display-DVn3UGuZ.mjs → boolean-display-B9qxrF5f.mjs} +2 -2
  18. package/dist/{boolean-display-DVn3UGuZ.mjs.map → boolean-display-B9qxrF5f.mjs.map} +1 -1
  19. package/dist/{boolean-display-BnN32_Jd.cjs → boolean-display-BwB-l9k0.cjs} +2 -2
  20. package/dist/{boolean-display-BnN32_Jd.cjs.map → boolean-display-BwB-l9k0.cjs.map} +1 -1
  21. package/dist/{checkbox-field-FqCe38_D.mjs → checkbox-field-BaqE-eVv.mjs} +2 -2
  22. package/dist/{checkbox-field-FqCe38_D.mjs.map → checkbox-field-BaqE-eVv.mjs.map} +1 -1
  23. package/dist/{checkbox-field-B1vCz-Wf.cjs → checkbox-field-BsGsZz_N.cjs} +2 -2
  24. package/dist/{checkbox-field-B1vCz-Wf.cjs.map → checkbox-field-BsGsZz_N.cjs.map} +1 -1
  25. package/dist/combobox-field-CAN8g_xv.mjs +2 -0
  26. package/dist/combobox-field-CAN8g_xv.mjs.map +1 -0
  27. package/dist/combobox-field-DERJQd5o.cjs +2 -0
  28. package/dist/combobox-field-DERJQd5o.cjs.map +1 -0
  29. package/dist/{currency-display-CZ6PJAzu.cjs → currency-display-Buxc6Ph5.cjs} +2 -2
  30. package/dist/{currency-display-CZ6PJAzu.cjs.map → currency-display-Buxc6Ph5.cjs.map} +1 -1
  31. package/dist/{currency-display-CKLQ_lxN.mjs → currency-display-CEg_HRYv.mjs} +2 -2
  32. package/dist/{currency-display-CKLQ_lxN.mjs.map → currency-display-CEg_HRYv.mjs.map} +1 -1
  33. package/dist/{date-display-BQOVmN7S.cjs → date-display-BgI7Wjqf.cjs} +2 -2
  34. package/dist/{date-display-BQOVmN7S.cjs.map → date-display-BgI7Wjqf.cjs.map} +1 -1
  35. package/dist/{date-display-BrCdJkmq.mjs → date-display-DGfHQhpu.mjs} +2 -2
  36. package/dist/{date-display-BrCdJkmq.mjs.map → date-display-DGfHQhpu.mjs.map} +1 -1
  37. package/dist/{date-field-RvEB9F1r.cjs → date-field--jOKZ2x1.cjs} +2 -2
  38. package/dist/{date-field-RvEB9F1r.cjs.map → date-field--jOKZ2x1.cjs.map} +1 -1
  39. package/dist/{date-field-Cxbrc0Vl.mjs → date-field-CXzcsnjn.mjs} +2 -2
  40. package/dist/{date-field-Cxbrc0Vl.mjs.map → date-field-CXzcsnjn.mjs.map} +1 -1
  41. package/dist/{description-display-DnDAB3a1.cjs → description-display-BR8nXqc_.cjs} +2 -2
  42. package/dist/{description-display-DnDAB3a1.cjs.map → description-display-BR8nXqc_.cjs.map} +1 -1
  43. package/dist/{description-display-BQFLzI2g.mjs → description-display-CW0g3aJa.mjs} +2 -2
  44. package/dist/{description-display-BQFLzI2g.mjs.map → description-display-CW0g3aJa.mjs.map} +1 -1
  45. package/dist/{dialog-form-C0W5C0u9.mjs → dialog-form-BbumLQqe.mjs} +2 -2
  46. package/dist/{dialog-form-C0W5C0u9.mjs.map → dialog-form-BbumLQqe.mjs.map} +1 -1
  47. package/dist/{dialog-form-CkNCwzWG.cjs → dialog-form-CEiuEMXD.cjs} +2 -2
  48. package/dist/{dialog-form-CkNCwzWG.cjs.map → dialog-form-CEiuEMXD.cjs.map} +1 -1
  49. package/dist/dialogs/detail-dialog/index.cjs +1 -1
  50. package/dist/dialogs/detail-dialog/index.cjs.map +1 -1
  51. package/dist/dialogs/detail-dialog/index.mjs +1 -1
  52. package/dist/dialogs/detail-dialog/index.mjs.map +1 -1
  53. package/dist/edit-button-0_FLZoT3.cjs.map +1 -1
  54. package/dist/edit-button-DmMFMzG0.mjs.map +1 -1
  55. package/dist/email-display-BKcoWmPK.mjs +2 -0
  56. package/dist/email-display-BKcoWmPK.mjs.map +1 -0
  57. package/dist/email-display-DqKYq0iM.cjs +2 -0
  58. package/dist/email-display-DqKYq0iM.cjs.map +1 -0
  59. package/dist/{email-field-BErx3liY.cjs → email-field-DRb71gQI.cjs} +2 -2
  60. package/dist/{email-field-BErx3liY.cjs.map → email-field-DRb71gQI.cjs.map} +1 -1
  61. package/dist/{email-field-BtcdBWL4.mjs → email-field-HFmUE81o.mjs} +2 -2
  62. package/dist/{email-field-BtcdBWL4.mjs.map → email-field-HFmUE81o.mjs.map} +1 -1
  63. package/dist/features/tables/index.cjs +1 -1
  64. package/dist/features/tables/index.d.cts +2 -2
  65. package/dist/features/tables/index.d.mts +2 -2
  66. package/dist/features/tables/index.mjs +1 -1
  67. package/dist/features/tanstack-form/index.cjs +1 -1
  68. package/dist/features/tanstack-form/index.d.cts +1 -1
  69. package/dist/features/tanstack-form/index.d.mts +1 -1
  70. package/dist/features/tanstack-form/index.mjs +1 -1
  71. package/dist/{filter-CG6wQHRd.mjs → filter-CWuRGTl4.mjs} +2 -2
  72. package/dist/{filter-CG6wQHRd.mjs.map → filter-CWuRGTl4.mjs.map} +1 -1
  73. package/dist/{filter-Bb9_Blk3.cjs → filter-DqedvThM.cjs} +2 -2
  74. package/dist/{filter-Bb9_Blk3.cjs.map → filter-DqedvThM.cjs.map} +1 -1
  75. package/dist/{flex-bw7U4hXn.d.cts → flex-CT71VV-I.d.cts} +2 -2
  76. package/dist/{flex-bw7U4hXn.d.mts → flex-CT71VV-I.d.mts} +2 -2
  77. package/dist/{index-DDROD2y9.d.cts → index-CgP5OCy0.d.cts} +10 -2
  78. package/dist/{index-DDROD2y9.d.mts → index-CgP5OCy0.d.mts} +10 -2
  79. package/dist/{index-BRE7tL8d.d.cts → index-FEMPGfwO.d.cts} +15 -10
  80. package/dist/{index-DvoLzsh0.d.mts → index-_GTjwUdG.d.mts} +15 -10
  81. package/dist/index.cjs +1 -1
  82. package/dist/index.d.cts +4 -4
  83. package/dist/index.d.mts +4 -4
  84. package/dist/index.mjs +1 -1
  85. package/dist/layouts/flex.d.cts +1 -1
  86. package/dist/layouts/flex.d.mts +1 -1
  87. package/dist/{list-display-BQjNDttz.cjs → list-display-BRJVmji0.cjs} +2 -2
  88. package/dist/{list-display-BQjNDttz.cjs.map → list-display-BRJVmji0.cjs.map} +1 -1
  89. package/dist/{list-display-8Jx6G5nk.mjs → list-display-Co94sV4H.mjs} +2 -2
  90. package/dist/{list-display-8Jx6G5nk.mjs.map → list-display-Co94sV4H.mjs.map} +1 -1
  91. package/dist/more-button-BKBcXz6E.mjs.map +1 -1
  92. package/dist/more-button-RYvZgYiu.cjs.map +1 -1
  93. package/dist/{name-display-scAMZdyr.cjs → name-display-B-FtblLL.cjs} +2 -2
  94. package/dist/{name-display-scAMZdyr.cjs.map → name-display-B-FtblLL.cjs.map} +1 -1
  95. package/dist/{name-display-BBJoNnRG.mjs → name-display-CB9XAhXP.mjs} +2 -2
  96. package/dist/{name-display-BBJoNnRG.mjs.map → name-display-CB9XAhXP.mjs.map} +1 -1
  97. package/dist/{number-field-BjVjf6s4.mjs → number-field-CZ06Uzb3.mjs} +2 -2
  98. package/dist/{number-field-BjVjf6s4.mjs.map → number-field-CZ06Uzb3.mjs.map} +1 -1
  99. package/dist/{number-field-DmKh7bbY.cjs → number-field-y0H7X4Ka.cjs} +2 -2
  100. package/dist/{number-field-DmKh7bbY.cjs.map → number-field-y0H7X4Ka.cjs.map} +1 -1
  101. package/dist/{password-field-gHYDiXWY.cjs → password-field-D0drFRG2.cjs} +2 -2
  102. package/dist/{password-field-gHYDiXWY.cjs.map → password-field-D0drFRG2.cjs.map} +1 -1
  103. package/dist/{password-field-C5FsQUa8.mjs → password-field-DSeObMIU.mjs} +2 -2
  104. package/dist/{password-field-C5FsQUa8.mjs.map → password-field-DSeObMIU.mjs.map} +1 -1
  105. package/dist/permalink-CUIKG9VA.cjs +2 -0
  106. package/dist/permalink-CUIKG9VA.cjs.map +1 -0
  107. package/dist/permalink-I-INEarM.mjs +2 -0
  108. package/dist/permalink-I-INEarM.mjs.map +1 -0
  109. package/dist/phone-number-Cu7Mnl6J.mjs +2 -0
  110. package/dist/phone-number-Cu7Mnl6J.mjs.map +1 -0
  111. package/dist/phone-number-DJvfJg1b.cjs +2 -0
  112. package/dist/phone-number-DJvfJg1b.cjs.map +1 -0
  113. package/dist/{popover-form-_hQQpfAB.cjs → popover-form-nkdwopLv.cjs} +2 -2
  114. package/dist/{popover-form-_hQQpfAB.cjs.map → popover-form-nkdwopLv.cjs.map} +1 -1
  115. package/dist/{popover-form-B2taDBAh.mjs → popover-form-rwhAulOD.mjs} +2 -2
  116. package/dist/{popover-form-B2taDBAh.mjs.map → popover-form-rwhAulOD.mjs.map} +1 -1
  117. package/dist/{progress-display-B45TkUcr.cjs → progress-display-DbfN7U8m.cjs} +2 -2
  118. package/dist/{progress-display-B45TkUcr.cjs.map → progress-display-DbfN7U8m.cjs.map} +1 -1
  119. package/dist/{progress-display-DvV-YhkE.mjs → progress-display-qgvclwy9.mjs} +2 -2
  120. package/dist/{progress-display-DvV-YhkE.mjs.map → progress-display-qgvclwy9.mjs.map} +1 -1
  121. package/dist/{radio-group-field-ZqMrf9Dx.mjs → radio-group-field-0BXRGTJx.mjs} +2 -2
  122. package/dist/{radio-group-field-ZqMrf9Dx.mjs.map → radio-group-field-0BXRGTJx.mjs.map} +1 -1
  123. package/dist/{radio-group-field-McpjpLW-.cjs → radio-group-field-wX3cWjyq.cjs} +2 -2
  124. package/dist/{radio-group-field-McpjpLW-.cjs.map → radio-group-field-wX3cWjyq.cjs.map} +1 -1
  125. package/dist/remove-button-B3qFw-M5.cjs.map +1 -1
  126. package/dist/remove-button-Db5oSj4h.mjs.map +1 -1
  127. package/dist/section-form-Dv9fKWmB.mjs +2 -0
  128. package/dist/section-form-Dv9fKWmB.mjs.map +1 -0
  129. package/dist/section-form-cH13fOhg.cjs +2 -0
  130. package/dist/section-form-cH13fOhg.cjs.map +1 -0
  131. package/dist/{select-field-Kq5iQCRQ.mjs → select-field-B-bbY7td.mjs} +2 -2
  132. package/dist/{select-field-Kq5iQCRQ.mjs.map → select-field-B-bbY7td.mjs.map} +1 -1
  133. package/dist/{select-field-DG8sQ5iN.cjs → select-field-DR36Hpe0.cjs} +2 -2
  134. package/dist/{select-field-DG8sQ5iN.cjs.map → select-field-DR36Hpe0.cjs.map} +1 -1
  135. package/dist/{simple-array-field-C5XdemXa.mjs → simple-array-field-CBG9o26e.mjs} +2 -2
  136. package/dist/{simple-array-field-C5XdemXa.mjs.map → simple-array-field-CBG9o26e.mjs.map} +1 -1
  137. package/dist/{simple-array-field-4paKpxXk.cjs → simple-array-field-CZb-E4GS.cjs} +2 -2
  138. package/dist/{simple-array-field-4paKpxXk.cjs.map → simple-array-field-CZb-E4GS.cjs.map} +1 -1
  139. package/dist/{simple-boolean-field-DpJ-fSQk.mjs → simple-boolean-field-BEsGOyof.mjs} +2 -2
  140. package/dist/{simple-boolean-field-DpJ-fSQk.mjs.map → simple-boolean-field-BEsGOyof.mjs.map} +1 -1
  141. package/dist/{simple-boolean-field-B9T_fHk9.cjs → simple-boolean-field-BZ9paBNQ.cjs} +2 -2
  142. package/dist/{simple-boolean-field-B9T_fHk9.cjs.map → simple-boolean-field-BZ9paBNQ.cjs.map} +1 -1
  143. package/dist/{simple-combobox-field-Ch4SBHCH.mjs → simple-combobox-field-BbhxP-te.mjs} +2 -2
  144. package/dist/{simple-combobox-field-Ch4SBHCH.mjs.map → simple-combobox-field-BbhxP-te.mjs.map} +1 -1
  145. package/dist/{simple-combobox-field-ChMKk7xp.cjs → simple-combobox-field-C4Jmm1AJ.cjs} +2 -2
  146. package/dist/{simple-combobox-field-ChMKk7xp.cjs.map → simple-combobox-field-C4Jmm1AJ.cjs.map} +1 -1
  147. package/dist/{simple-date-field-CVKqIrEs.mjs → simple-date-field-D7-UWd6G.mjs} +2 -2
  148. package/dist/{simple-date-field-CVKqIrEs.mjs.map → simple-date-field-D7-UWd6G.mjs.map} +1 -1
  149. package/dist/{simple-date-field-BGGlsHzG.cjs → simple-date-field-JVkBTfCc.cjs} +2 -2
  150. package/dist/{simple-date-field-BGGlsHzG.cjs.map → simple-date-field-JVkBTfCc.cjs.map} +1 -1
  151. package/dist/{simple-email-field-DYqCWprP.cjs → simple-email-field-BBrdKmN8.cjs} +2 -2
  152. package/dist/{simple-email-field-DYqCWprP.cjs.map → simple-email-field-BBrdKmN8.cjs.map} +1 -1
  153. package/dist/{simple-email-field-98w0846B.mjs → simple-email-field-DHnUuabs.mjs} +2 -2
  154. package/dist/{simple-email-field-98w0846B.mjs.map → simple-email-field-DHnUuabs.mjs.map} +1 -1
  155. package/dist/{simple-number-field-otvv2xq-.cjs → simple-number-field-CZ-ycDza.cjs} +2 -2
  156. package/dist/{simple-number-field-otvv2xq-.cjs.map → simple-number-field-CZ-ycDza.cjs.map} +1 -1
  157. package/dist/{simple-number-field-zF3oqS8d.mjs → simple-number-field-DGaUnBOr.mjs} +2 -2
  158. package/dist/{simple-number-field-zF3oqS8d.mjs.map → simple-number-field-DGaUnBOr.mjs.map} +1 -1
  159. package/dist/{simple-password-field-D2UMmghM.cjs → simple-password-field-BUSJzB-t.cjs} +2 -2
  160. package/dist/{simple-password-field-D2UMmghM.cjs.map → simple-password-field-BUSJzB-t.cjs.map} +1 -1
  161. package/dist/{simple-password-field-CuC10c70.mjs → simple-password-field-BxYeEv-p.mjs} +2 -2
  162. package/dist/{simple-password-field-CuC10c70.mjs.map → simple-password-field-BxYeEv-p.mjs.map} +1 -1
  163. package/dist/{simple-radio-group-field-C2DDfIUs.cjs → simple-radio-group-field-CQTkbvt9.cjs} +2 -2
  164. package/dist/{simple-radio-group-field-C2DDfIUs.cjs.map → simple-radio-group-field-CQTkbvt9.cjs.map} +1 -1
  165. package/dist/{simple-radio-group-field-CfziNlLf.mjs → simple-radio-group-field-yJdq-reX.mjs} +2 -2
  166. package/dist/{simple-radio-group-field-CfziNlLf.mjs.map → simple-radio-group-field-yJdq-reX.mjs.map} +1 -1
  167. package/dist/{simple-select-field-CeNnXUHN.cjs → simple-select-field-CUFuptbH.cjs} +2 -2
  168. package/dist/{simple-select-field-CeNnXUHN.cjs.map → simple-select-field-CUFuptbH.cjs.map} +1 -1
  169. package/dist/{simple-select-field-DIaxhi1-.mjs → simple-select-field-Cp64m8Aa.mjs} +2 -2
  170. package/dist/{simple-select-field-DIaxhi1-.mjs.map → simple-select-field-Cp64m8Aa.mjs.map} +1 -1
  171. package/dist/{simple-text-field-LYWVIAfQ.cjs → simple-text-field-B2Z1E4sG.cjs} +2 -2
  172. package/dist/{simple-text-field-LYWVIAfQ.cjs.map → simple-text-field-B2Z1E4sG.cjs.map} +1 -1
  173. package/dist/{simple-text-field-D8jyznSd.mjs → simple-text-field-Dl2IOsO3.mjs} +2 -2
  174. package/dist/{simple-text-field-D8jyznSd.mjs.map → simple-text-field-Dl2IOsO3.mjs.map} +1 -1
  175. package/dist/{simple-textarea-field-p9qX_n7m.mjs → simple-textarea-field-CM9aHy-q.mjs} +2 -2
  176. package/dist/{simple-textarea-field-p9qX_n7m.mjs.map → simple-textarea-field-CM9aHy-q.mjs.map} +1 -1
  177. package/dist/{simple-textarea-field-DcEvaizE.cjs → simple-textarea-field-Cjjk9WOW.cjs} +2 -2
  178. package/dist/{simple-textarea-field-DcEvaizE.cjs.map → simple-textarea-field-Cjjk9WOW.cjs.map} +1 -1
  179. package/dist/{statistic-DwiUKz02.mjs → statistic-ClkqqDfk.mjs} +2 -2
  180. package/dist/statistic-ClkqqDfk.mjs.map +1 -0
  181. package/dist/{statistic-BHCSCw9Q.cjs → statistic-LL4uHlRb.cjs} +2 -2
  182. package/dist/statistic-LL4uHlRb.cjs.map +1 -0
  183. package/dist/{status-display-BKe0EupF.mjs → status-display-BUphOF18.mjs} +2 -2
  184. package/dist/{status-display-BKe0EupF.mjs.map → status-display-BUphOF18.mjs.map} +1 -1
  185. package/dist/{status-display-BRJX53bQ.cjs → status-display-o9inMVvb.cjs} +2 -2
  186. package/dist/{status-display-BRJX53bQ.cjs.map → status-display-o9inMVvb.cjs.map} +1 -1
  187. package/dist/summary-bar-CYfgdxrQ.mjs +2 -0
  188. package/dist/summary-bar-CYfgdxrQ.mjs.map +1 -0
  189. package/dist/summary-bar-Mb1B9Dnf.cjs +2 -0
  190. package/dist/summary-bar-Mb1B9Dnf.cjs.map +1 -0
  191. package/dist/{switch-field-n6a5SaEM.cjs → switch-field-CO5M4qiM.cjs} +2 -2
  192. package/dist/{switch-field-n6a5SaEM.cjs.map → switch-field-CO5M4qiM.cjs.map} +1 -1
  193. package/dist/{switch-field-CIoNsRWN.mjs → switch-field-IXQ1Blrd.mjs} +2 -2
  194. package/dist/{switch-field-CIoNsRWN.mjs.map → switch-field-IXQ1Blrd.mjs.map} +1 -1
  195. package/dist/tables-078i-X0d.cjs +2 -0
  196. package/dist/tables-078i-X0d.cjs.map +1 -0
  197. package/dist/tables-BGzwkdFO.mjs +2 -0
  198. package/dist/tables-BGzwkdFO.mjs.map +1 -0
  199. package/dist/{tanstack-form-CNrZQZhn.cjs → tanstack-form-BC61U3F-.cjs} +2 -2
  200. package/dist/{tanstack-form-CNrZQZhn.cjs.map → tanstack-form-BC61U3F-.cjs.map} +1 -1
  201. package/dist/{tanstack-form-PC9YNeeo.mjs → tanstack-form-DJMaMeUh.mjs} +2 -2
  202. package/dist/{tanstack-form-PC9YNeeo.mjs.map → tanstack-form-DJMaMeUh.mjs.map} +1 -1
  203. package/dist/{text-editor-field-gas5r-xy.cjs → text-editor-field-D_l4zp_y.cjs} +2 -2
  204. package/dist/{text-editor-field-gas5r-xy.cjs.map → text-editor-field-D_l4zp_y.cjs.map} +1 -1
  205. package/dist/{text-editor-field-fso-sw29.mjs → text-editor-field-DxLBaxTL.mjs} +2 -2
  206. package/dist/{text-editor-field-fso-sw29.mjs.map → text-editor-field-DxLBaxTL.mjs.map} +1 -1
  207. package/dist/{text-field-BMo-8rsq.cjs → text-field-B8xQe0U9.cjs} +2 -2
  208. package/dist/{text-field-BMo-8rsq.cjs.map → text-field-B8xQe0U9.cjs.map} +1 -1
  209. package/dist/{text-field-B67oTV62.mjs → text-field-BrxKYCui.mjs} +2 -2
  210. package/dist/{text-field-B67oTV62.mjs.map → text-field-BrxKYCui.mjs.map} +1 -1
  211. package/dist/{textarea-field-D70rGYIk.mjs → textarea-field-BoQtVUI-.mjs} +2 -2
  212. package/dist/{textarea-field-D70rGYIk.mjs.map → textarea-field-BoQtVUI-.mjs.map} +1 -1
  213. package/dist/{textarea-field-BUGcITwp.cjs → textarea-field-IZUGVQjJ.cjs} +2 -2
  214. package/dist/{textarea-field-BUGcITwp.cjs.map → textarea-field-IZUGVQjJ.cjs.map} +1 -1
  215. package/dist/{tooltip-DVK6xfZ1.cjs → tooltip-BcfELg8e.cjs} +3 -3
  216. package/dist/tooltip-BcfELg8e.cjs.map +1 -0
  217. package/dist/tooltip-TGmzPdoR.mjs +4 -0
  218. package/dist/tooltip-TGmzPdoR.mjs.map +1 -0
  219. package/package.json +5 -1
  220. package/dist/analysis-panel-BD2QvOth.mjs +0 -2
  221. package/dist/analysis-panel-BD2QvOth.mjs.map +0 -1
  222. package/dist/analysis-panel-UlC7cvO2.cjs.map +0 -1
  223. package/dist/combobox-field-D6fiCcvU.mjs +0 -2
  224. package/dist/combobox-field-D6fiCcvU.mjs.map +0 -1
  225. package/dist/combobox-field-DLpH6J9H.cjs +0 -2
  226. package/dist/combobox-field-DLpH6J9H.cjs.map +0 -1
  227. package/dist/email-display-D6ZgA_en.cjs +0 -2
  228. package/dist/email-display-D6ZgA_en.cjs.map +0 -1
  229. package/dist/email-display-m745lUts.mjs +0 -2
  230. package/dist/email-display-m745lUts.mjs.map +0 -1
  231. package/dist/permalink-CZ3g9daG.mjs +0 -2
  232. package/dist/permalink-CZ3g9daG.mjs.map +0 -1
  233. package/dist/permalink-DeeEKhfc.cjs +0 -2
  234. package/dist/permalink-DeeEKhfc.cjs.map +0 -1
  235. package/dist/phone-number-C43z68gT.mjs +0 -2
  236. package/dist/phone-number-C43z68gT.mjs.map +0 -1
  237. package/dist/phone-number-DhThJwd6.cjs +0 -2
  238. package/dist/phone-number-DhThJwd6.cjs.map +0 -1
  239. package/dist/section-form-B9iTs2we.cjs +0 -2
  240. package/dist/section-form-B9iTs2we.cjs.map +0 -1
  241. package/dist/section-form-B_AZr7jZ.mjs +0 -2
  242. package/dist/section-form-B_AZr7jZ.mjs.map +0 -1
  243. package/dist/statistic-BHCSCw9Q.cjs.map +0 -1
  244. package/dist/statistic-DwiUKz02.mjs.map +0 -1
  245. package/dist/summary-bar-ByYm7uWR.mjs +0 -2
  246. package/dist/summary-bar-ByYm7uWR.mjs.map +0 -1
  247. package/dist/summary-bar-DjdtmsIY.cjs +0 -2
  248. package/dist/summary-bar-DjdtmsIY.cjs.map +0 -1
  249. package/dist/tables-9d53sH9E.mjs +0 -2
  250. package/dist/tables-9d53sH9E.mjs.map +0 -1
  251. package/dist/tables-B1O9qy-m.cjs +0 -2
  252. package/dist/tables-B1O9qy-m.cjs.map +0 -1
  253. package/dist/tooltip-DVK6xfZ1.cjs.map +0 -1
  254. package/dist/tooltip-lvpW5dMi.mjs +0 -4
  255. package/dist/tooltip-lvpW5dMi.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"filter-Bb9_Blk3.cjs","names":["TagIcon","CalendarIcon","HashIcon","TypeIcon","ToggleLeftIcon","Label","Checkbox","Input","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","Button","Popover","PopoverTrigger","PopoverContent","Trash2Icon","useUITableFilterContext","ResizablePanel","Activity","DropdownMenu","DropdownMenuTrigger","ListFilterPlus","DropdownMenuContent","DropdownMenuItem","Separator","ListFilterIcon"],"sources":["../packages/components/features/tables/components/table/filter.tsx"],"sourcesContent":["/**\n * @file filter.tsx\n * Collapsible side-panel with column-visibility toggles and a dynamic filter builder.\n *\n * - \"Columns\" tab: toggle individual column visibility.\n * - \"Filters\" tab: \"Add Filter\" dropdown → active filter chips → per-filter Popover editor.\n */\nimport { Activity, useState } from 'react';\n\nimport { CalendarIcon, HashIcon, ListFilterIcon, ListFilterPlus, TagIcon, ToggleLeftIcon, Trash2Icon, TypeIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Button } from '@/components/ui/button';\nimport { Checkbox } from '@/components/ui/checkbox';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/components/ui/dropdown-menu';\nimport { Input } from '@/components/ui/input';\nimport { Label } from '@/components/ui/label';\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';\nimport { ResizablePanel } from '@/components/ui/resizable';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select';\nimport { Separator } from '@/components/ui/separator';\n\nimport { useUITableFilterContext } from '../../hooks/use-context';\nimport type {\n ActiveFilter,\n BooleanFilterValue,\n DateRangeFilterValue,\n FilterDefinition,\n FilterType,\n FilterValue,\n NumberFilterValue,\n SingleTagFilterValue,\n TagFilterValue,\n TextFilterValue,\n} from '../../types';\n\n// ── icons per filter type ──────────────────────────────────────────────────────\n\nconst TYPE_ICONS: Record<FilterType, React.ReactNode> = {\n tag: <TagIcon size={14} />,\n 'single-tag': <TagIcon size={14} />,\n 'date-range': <CalendarIcon size={14} />,\n number: <HashIcon size={14} />,\n text: <TypeIcon size={14} />,\n boolean: <ToggleLeftIcon size={14} />,\n};\n\n// ── operator options ───────────────────────────────────────────────────────────\n\nconst NUMBER_OPERATORS: { value: NumberFilterValue['operator']; label: string }[] = [\n { value: 'eq', label: 'Bằng (=)' },\n { value: 'ne', label: 'Không bằng (≠)' },\n { value: 'gt', label: 'Lớn hơn (>)' },\n { value: 'gte', label: 'Ít nhất (≥)' },\n { value: 'lt', label: 'Nhỏ hơn (<)' },\n { value: 'lte', label: 'Nhiều nhất (≤)' },\n { value: 'between', label: 'Trong khoảng' },\n];\n\nconst TEXT_OPERATORS: { value: TextFilterValue['operator']; label: string }[] = [\n { value: 'contains', label: 'Chứa' },\n { value: 'equals', label: 'Bằng' },\n { value: 'starts-with', label: 'Bắt đầu bằng' },\n { value: 'ends-with', label: 'Kết thúc bằng' },\n];\n\n// ── summary label ──────────────────────────────────────────────────────────────\n\nfunction formatFilterValue(value: FilterValue, def: FilterDefinition): string {\n switch (value.type) {\n case 'single-tag': {\n if (!value.value) return 'Chưa đặt';\n return def.options?.find(o => o.value === value.value)?.label ?? value.value;\n }\n case 'tag': {\n if (!value.values.length) return 'Chưa đặt';\n return value.values.map(v => def.options?.find(o => o.value === v)?.label ?? v).join(', ');\n }\n case 'date-range': {\n if (!value.from && !value.to) return 'Ngày không xác định';\n if (value.from && value.to) return `${value.from} → ${value.to}`;\n if (value.from) return `từ ${value.from}`;\n return `đến ${value.to}`;\n }\n case 'number': {\n const op = { eq: '=', ne: '≠', gt: '>', gte: '≥', lt: '<', lte: '≤', between: 'trong khoảng' }[value.operator];\n if (value.value === undefined) return op;\n if (value.operator === 'between') return `${op} ${value.value} – ${value.valueTo ?? '?'}`;\n return `${op} ${value.value}`;\n }\n case 'text': {\n const op = {\n contains: 'chứa',\n equals: 'là',\n 'starts-with': 'bắt đầu bằng',\n 'ends-with': 'kết thúc bằng',\n }[value.operator];\n return value.value ? `${op} \"${value.value}\"` : op;\n }\n case 'boolean':\n if (value.value === null) return 'Không xác định';\n return value.value ? 'Có' : 'Không';\n }\n}\n\n// ── filter editors ─────────────────────────────────────────────────────────────\n\nconst TagFilterEditor: React.FC<{\n value: TagFilterValue;\n definition: FilterDefinition;\n onChange: (v: TagFilterValue) => void;\n}> = ({ value, definition, onChange }) => (\n <div className=\"flex flex-col gap-1 p-3\">\n {(definition.options ?? []).length === 0 ? (\n <p className=\"text-xs text-text-positive-muted\">Không có tùy chọn</p>\n ) : (\n definition.options!.map(option => (\n <Label\n key={option.value}\n className={cn(\n 'flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors',\n value.values.includes(option.value) && 'bg-primary-muted hover:bg-primary-subtle'\n )}\n >\n <Checkbox\n checked={value.values.includes(option.value)}\n onCheckedChange={checked => {\n const next = checked ? [...value.values, option.value] : value.values.filter(v => v !== option.value);\n onChange({ type: 'tag', values: next });\n }}\n />\n <span className=\"text-sm\">{option.label}</span>\n </Label>\n ))\n )}\n </div>\n);\n\nconst SingleTagFilterEditor: React.FC<{\n value: SingleTagFilterValue;\n definition: FilterDefinition;\n onChange: (v: SingleTagFilterValue) => void;\n}> = ({ value, definition, onChange }) => (\n <div className=\"flex flex-col gap-1 p-3\">\n {(definition.options ?? []).length === 0 ? (\n <p className=\"text-xs text-text-positive-muted\">Không có tùy chọn</p>\n ) : (\n definition.options!.map(option => (\n <Label\n key={option.value}\n className={cn(\n 'flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors',\n value.value === option.value && 'bg-primary-muted hover:bg-primary-subtle'\n )}\n >\n <Checkbox\n checked={value.value === option.value}\n onCheckedChange={checked => {\n onChange({ type: 'single-tag', value: checked ? option.value : null });\n }}\n />\n <span className=\"text-sm\">{option.label}</span>\n </Label>\n ))\n )}\n </div>\n);\n\nconst DateRangeFilterEditor: React.FC<{\n value: DateRangeFilterValue;\n onChange: (v: DateRangeFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-3 p-3\">\n <div className=\"flex flex-col gap-1\">\n <span className=\"text-text-positive-muted text-xs\">Từ ngày</span>\n <Input type=\"date\" size=\"md\" value={value.from ?? ''} onValueChange={v => onChange({ ...value, from: v || undefined })} />\n </div>\n <div className=\"flex flex-col gap-1\">\n <span className=\"text-text-positive-muted text-xs\">Đến ngày</span>\n <Input type=\"date\" size=\"md\" value={value.to ?? ''} onValueChange={v => onChange({ ...value, to: v || undefined })} />\n </div>\n </div>\n);\n\nconst NumberFilterEditor: React.FC<{\n value: NumberFilterValue;\n onChange: (v: NumberFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-3 p-3\">\n <Select value={value.operator} onValueChange={op => onChange({ ...value, operator: op as NumberFilterValue['operator'] })}>\n <SelectTrigger size=\"sm\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {NUMBER_OPERATORS.map(op => (\n <SelectItem key={op.value} value={op.value}>\n {op.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <Input\n type=\"number\"\n size=\"md\"\n placeholder=\"Giá trị\"\n value={value.value ?? ''}\n onValueChange={v => onChange({ ...value, value: v ? Number(v) : undefined })}\n />\n {value.operator === 'between' && (\n <Input\n type=\"number\"\n size=\"md\"\n placeholder=\"Đến giá trị\"\n value={value.valueTo ?? ''}\n onValueChange={v => onChange({ ...value, valueTo: v ? Number(v) : undefined })}\n />\n )}\n </div>\n);\n\nconst TextFilterEditor: React.FC<{\n value: TextFilterValue;\n onChange: (v: TextFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-3 p-3\">\n <Select value={value.operator} onValueChange={op => onChange({ ...value, operator: op as TextFilterValue['operator'] })}>\n <SelectTrigger size=\"sm\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {TEXT_OPERATORS.map(op => (\n <SelectItem key={op.value} value={op.value}>\n {op.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <Input type=\"text\" size=\"md\" placeholder=\"Nhập văn bản...\" value={value.value} onValueChange={v => onChange({ ...value, value: v })} />\n </div>\n);\n\nconst BOOLEAN_OPTIONS = [\n { label: 'Có', value: true as boolean | null },\n { label: 'Không', value: false as boolean | null },\n { label: 'Không xác định', value: null as boolean | null },\n];\n\nconst BooleanFilterEditor: React.FC<{\n value: BooleanFilterValue;\n onChange: (v: BooleanFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-1 p-3\">\n {BOOLEAN_OPTIONS.map(({ label, value: v }) => (\n <Button\n key={label}\n type=\"button\"\n tabIndex={-1}\n variant=\"outline\"\n className={cn(\n 'rounded px-3 py-1.5 text-left text-sm transition-colors',\n value.value === v ? 'bg-primary-muted font-medium' : 'hover:bg-muted-bg-subtle'\n )}\n onClick={() => onChange({ type: 'boolean', value: v })}\n >\n {label}\n </Button>\n ))}\n </div>\n);\n\nfunction FilterEditor({ value, definition, onChange }: { value: FilterValue; definition: FilterDefinition; onChange: (v: FilterValue) => void }) {\n switch (value.type) {\n case 'tag':\n return <TagFilterEditor value={value} definition={definition} onChange={onChange} />;\n case 'single-tag':\n return <SingleTagFilterEditor value={value} definition={definition} onChange={onChange} />;\n case 'date-range':\n return <DateRangeFilterEditor value={value} onChange={onChange} />;\n case 'number':\n return <NumberFilterEditor value={value} onChange={onChange} />;\n case 'text':\n return <TextFilterEditor value={value} onChange={onChange} />;\n case 'boolean':\n return <BooleanFilterEditor value={value} onChange={onChange} />;\n }\n}\n\n// ── filter item chip ───────────────────────────────────────────────────────────\n\nconst FilterItem: React.FC<{\n filter: ActiveFilter;\n definition: FilterDefinition;\n onRemove: () => void;\n onUpdate: (value: FilterValue) => void;\n}> = ({ filter, definition, onRemove, onUpdate }) => (\n <div className=\"flex items-center gap-1\">\n <Popover>\n <PopoverTrigger asChild>\n <Button\n type=\"button\"\n variant=\"outline\"\n color=\"muted\"\n className=\"flex-1 bg-white max-w-[calc(100%-32px)] justify-start\"\n innerClassName=\"flex truncate gap-1.5\"\n >\n <span className=\"shrink-0 text-text-positive font-medium\">{definition.label}</span>\n <span className=\"truncate text-xs text-text-positive-weak\">{formatFilterValue(filter.value, definition)}</span>\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-64 p-0\" align=\"start\" side=\"bottom\">\n <div className=\"border-b border-border px-3 py-2\">\n <div className=\"flex items-center gap-1.5\">\n <span className=\"text-text-positive-muted\">{TYPE_ICONS[definition.type]}</span>\n <p className=\"font-medium\">{definition.label}</p>\n </div>\n </div>\n <FilterEditor value={filter.value} definition={definition} onChange={onUpdate} />\n </PopoverContent>\n </Popover>\n <Button type=\"button\" size=\"icon\" variant=\"soft\" color=\"danger\" className=\"shrink\" onClick={onRemove}>\n <Trash2Icon size={13} />\n </Button>\n </div>\n);\n\n// ── column visibility row ──────────────────────────────────────────────────────\n\n// const ColumnVisibility: React.FC<{\n// checked: boolean;\n// title: string;\n// onCheckedChange?: (checked: boolean) => void;\n// }> = ({ checked, title, onCheckedChange }) => (\n// <Label>\n// <Checkbox checked={checked} onCheckedChange={onCheckedChange} />\n// <p className=\"text-sm\">{title}</p>\n// </Label>\n// );\n\n// ── main component ─────────────────────────────────────────────────────────────\n\n/**\n * Collapsible side-panel that lets users toggle column visibility and build\n * row filters without leaving the table view.\n *\n * The panel collapses to a narrow icon strip when no tab is active and expands\n * to at least 64 units when the \"Columns\" or \"Filters\" tab is selected.\n *\n * Wire filter capability by passing `filterDefinitions` and `onFilterChange` to\n * the parent `UITableProvider`.\n *\n * @example\n * ```tsx\n * <UITableProvider\n * filterDefinitions={[\n * { id: 'status', label: 'Status', type: 'tag', options: [{ label: 'Active', value: 'active' }] },\n * { id: 'created', label: 'Created At', type: 'date-range' },\n * { id: 'amount', label: 'Amount', type: 'number' },\n * ]}\n * onFilterChange={filters => console.log(filters)}\n * >\n * <ResizablePanelGroup direction=\"horizontal\">\n * <ResizablePanel><UITable /></ResizablePanel>\n * <ResizableHandle />\n * <UITableFilter />\n * </ResizablePanelGroup>\n * </UITableProvider>\n * ```\n */\nexport const UITableFilter = () => {\n // const { table } = useUITableContext();\n const { filterDefinitions, activeFilters, addFilter, removeFilter, updateFilter } = useUITableFilterContext();\n\n const [tab, setTab] = useState<'columns' | 'filters' | null>(null);\n\n const availableDefinitions = filterDefinitions.filter(def => !activeFilters.some(f => f.definitionId === def.id));\n\n return (\n <ResizablePanel defaultSize={25} className={cn('bg-card', tab === null ? 'max-w-8!' : 'min-w-64')}>\n <div className=\"relative z-20 flex size-full bg-muted-bg-subtle\">\n <div className=\"min-w-0 flex-1 overflow-hidden\">\n {/* Columns tab */}\n {/*<Activity mode={tab === 'columns' ? 'visible' : 'hidden'}>\n <div className=\"flex size-full flex-col gap-2 p-4\">\n <p className=\"px-2 font-medium\">Columns Visibility</p>\n <Separator />\n <div className=\"flex flex-col gap-4 pt-4\">\n {table.getAllColumns().map(column => {\n if (['select', 'actions'].includes(column.id)) return null;\n return (\n <ColumnVisibility\n key={column.id}\n checked={column.getIsVisible()}\n title={String(column.columnDef.header)}\n onCheckedChange={value => column.toggleVisibility(!!value)}\n />\n );\n })}\n </div>\n </div>\n </Activity>*/}\n\n {/* Filters tab */}\n <Activity mode={tab === 'filters' ? 'visible' : 'hidden'}>\n <div className=\"flex size-full flex-col gap-2 p-4\">\n <div className=\"flex items-center justify-between gap-2\">\n <p className=\"font-medium\">Bộ lọc</p>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" color=\"muted\" disabled={availableDefinitions.length === 0}>\n <ListFilterPlus size={13} />\n Thêm bộ lọc\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {availableDefinitions.map(def => (\n <DropdownMenuItem key={def.id} className=\"flex items-center gap-2\" onClick={() => addFilter(def.id)}>\n {TYPE_ICONS[def.type]}\n {def.label}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n <Separator />\n {activeFilters.length === 0 ? (\n <p className=\"py-6 text-center text-xs text-text-positive-muted\">Không có bộ lọc nào</p>\n ) : (\n <div className=\"flex flex-col gap-2 pt-1\">\n {activeFilters.map(filter => {\n const def = filterDefinitions.find(d => d.id === filter.definitionId);\n if (!def) return null;\n return (\n <FilterItem\n key={filter.id}\n filter={filter}\n definition={def}\n onRemove={() => removeFilter(filter.id)}\n onUpdate={value => updateFilter(filter.id, value)}\n />\n );\n })}\n </div>\n )}\n </div>\n </Activity>\n </div>\n\n {/* Vertical tab strip */}\n <div className=\"flex h-full flex-col border-l border-border bg-muted-bg-subtle text-sm\">\n {/*<button\n type=\"button\"\n className={cn('flex h-32 cursor-pointer flex-col items-center gap-y-2 p-2 py-4', tab === 'columns' && 'bg-card')}\n onClick={() => setTab(tab === 'columns' ? null : 'columns')}\n >\n <Columns4Icon size={18} />\n <span className=\"text-nowrap [writing-mode:vertical-lr]\">Columns</span>\n </button>\n <Separator />*/}\n <button\n type=\"button\"\n className={cn('relative flex h-32 cursor-pointer flex-col items-center gap-y-2 p-2 py-4', tab === 'filters' && 'bg-card')}\n onClick={() => setTab(tab === 'filters' ? null : 'filters')}\n >\n <ListFilterIcon size={18} />\n {activeFilters.length > 0 && (\n <span className=\"absolute top-2 right-1.5 flex h-4 w-4 items-center justify-center rounded-full bg-primary text-[10px] leading-none text-primary-foreground\">\n {activeFilters.length}\n </span>\n )}\n <span className=\"text-nowrap [writing-mode:vertical-lr]\">Bộ lọc</span>\n </button>\n <Separator />\n </div>\n </div>\n </ResizablePanel>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"filter-DqedvThM.cjs","names":["TagIcon","CalendarIcon","HashIcon","TypeIcon","ToggleLeftIcon","Label","Checkbox","Input","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","Button","Popover","PopoverTrigger","PopoverContent","Trash2Icon","useUITableFilterContext","ResizablePanel","Activity","DropdownMenu","DropdownMenuTrigger","ListFilterPlus","DropdownMenuContent","DropdownMenuItem","Separator","ListFilterIcon"],"sources":["../packages/components/features/tables/components/table/filter.tsx"],"sourcesContent":["/**\n * @file filter.tsx\n * Collapsible side-panel with column-visibility toggles and a dynamic filter builder.\n *\n * - \"Columns\" tab: toggle individual column visibility.\n * - \"Filters\" tab: \"Add Filter\" dropdown → active filter chips → per-filter Popover editor.\n */\nimport { Activity, useState } from 'react';\n\nimport { CalendarIcon, HashIcon, ListFilterIcon, ListFilterPlus, TagIcon, ToggleLeftIcon, Trash2Icon, TypeIcon } from 'lucide-react';\n\nimport { cn } from '@customafk/react-toolkit/utils';\n\nimport { Button } from '@/components/ui/button';\nimport { Checkbox } from '@/components/ui/checkbox';\nimport { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/components/ui/dropdown-menu';\nimport { Input } from '@/components/ui/input';\nimport { Label } from '@/components/ui/label';\nimport { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';\nimport { ResizablePanel } from '@/components/ui/resizable';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select';\nimport { Separator } from '@/components/ui/separator';\n\nimport { useUITableFilterContext } from '../../hooks/use-context';\nimport type {\n ActiveFilter,\n BooleanFilterValue,\n DateRangeFilterValue,\n FilterDefinition,\n FilterType,\n FilterValue,\n NumberFilterValue,\n SingleTagFilterValue,\n TagFilterValue,\n TextFilterValue,\n} from '../../types';\n\n// ── icons per filter type ──────────────────────────────────────────────────────\n\nconst TYPE_ICONS: Record<FilterType, React.ReactNode> = {\n tag: <TagIcon size={14} />,\n 'single-tag': <TagIcon size={14} />,\n 'date-range': <CalendarIcon size={14} />,\n number: <HashIcon size={14} />,\n text: <TypeIcon size={14} />,\n boolean: <ToggleLeftIcon size={14} />,\n};\n\n// ── operator options ───────────────────────────────────────────────────────────\n\nconst NUMBER_OPERATORS: { value: NumberFilterValue['operator']; label: string }[] = [\n { value: 'eq', label: 'Bằng (=)' },\n { value: 'ne', label: 'Không bằng (≠)' },\n { value: 'gt', label: 'Lớn hơn (>)' },\n { value: 'gte', label: 'Ít nhất (≥)' },\n { value: 'lt', label: 'Nhỏ hơn (<)' },\n { value: 'lte', label: 'Nhiều nhất (≤)' },\n { value: 'between', label: 'Trong khoảng' },\n];\n\nconst TEXT_OPERATORS: { value: TextFilterValue['operator']; label: string }[] = [\n { value: 'contains', label: 'Chứa' },\n { value: 'equals', label: 'Bằng' },\n { value: 'starts-with', label: 'Bắt đầu bằng' },\n { value: 'ends-with', label: 'Kết thúc bằng' },\n];\n\n// ── summary label ──────────────────────────────────────────────────────────────\n\nfunction formatFilterValue(value: FilterValue, def: FilterDefinition): string {\n switch (value.type) {\n case 'single-tag': {\n if (!value.value) return 'Chưa đặt';\n return def.options?.find(o => o.value === value.value)?.label ?? value.value;\n }\n case 'tag': {\n if (!value.values.length) return 'Chưa đặt';\n return value.values.map(v => def.options?.find(o => o.value === v)?.label ?? v).join(', ');\n }\n case 'date-range': {\n if (!value.from && !value.to) return 'Ngày không xác định';\n if (value.from && value.to) return `${value.from} → ${value.to}`;\n if (value.from) return `từ ${value.from}`;\n return `đến ${value.to}`;\n }\n case 'number': {\n const op = { eq: '=', ne: '≠', gt: '>', gte: '≥', lt: '<', lte: '≤', between: 'trong khoảng' }[value.operator];\n if (value.value === undefined) return op;\n if (value.operator === 'between') return `${op} ${value.value} – ${value.valueTo ?? '?'}`;\n return `${op} ${value.value}`;\n }\n case 'text': {\n const op = {\n contains: 'chứa',\n equals: 'là',\n 'starts-with': 'bắt đầu bằng',\n 'ends-with': 'kết thúc bằng',\n }[value.operator];\n return value.value ? `${op} \"${value.value}\"` : op;\n }\n case 'boolean':\n if (value.value === null) return 'Không xác định';\n return value.value ? 'Có' : 'Không';\n }\n}\n\n// ── filter editors ─────────────────────────────────────────────────────────────\n\nconst TagFilterEditor: React.FC<{\n value: TagFilterValue;\n definition: FilterDefinition;\n onChange: (v: TagFilterValue) => void;\n}> = ({ value, definition, onChange }) => (\n <div className=\"flex flex-col gap-1 p-3\">\n {(definition.options ?? []).length === 0 ? (\n <p className=\"text-xs text-text-positive-muted\">Không có tùy chọn</p>\n ) : (\n definition.options!.map(option => (\n <Label\n key={option.value}\n className={cn(\n 'flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors',\n value.values.includes(option.value) && 'bg-primary-muted hover:bg-primary-subtle'\n )}\n >\n <Checkbox\n checked={value.values.includes(option.value)}\n onCheckedChange={checked => {\n const next = checked ? [...value.values, option.value] : value.values.filter(v => v !== option.value);\n onChange({ type: 'tag', values: next });\n }}\n />\n <span className=\"text-sm\">{option.label}</span>\n </Label>\n ))\n )}\n </div>\n);\n\nconst SingleTagFilterEditor: React.FC<{\n value: SingleTagFilterValue;\n definition: FilterDefinition;\n onChange: (v: SingleTagFilterValue) => void;\n}> = ({ value, definition, onChange }) => (\n <div className=\"flex flex-col gap-1 p-3\">\n {(definition.options ?? []).length === 0 ? (\n <p className=\"text-xs text-text-positive-muted\">Không có tùy chọn</p>\n ) : (\n definition.options!.map(option => (\n <Label\n key={option.value}\n className={cn(\n 'flex items-center gap-2 bg-secondary-bg-subtle hover:bg-secondary-muted px-4 py-2 rounded transition-colors',\n value.value === option.value && 'bg-primary-muted hover:bg-primary-subtle'\n )}\n >\n <Checkbox\n checked={value.value === option.value}\n onCheckedChange={checked => {\n onChange({ type: 'single-tag', value: checked ? option.value : null });\n }}\n />\n <span className=\"text-sm\">{option.label}</span>\n </Label>\n ))\n )}\n </div>\n);\n\nconst DateRangeFilterEditor: React.FC<{\n value: DateRangeFilterValue;\n onChange: (v: DateRangeFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-3 p-3\">\n <div className=\"flex flex-col gap-1\">\n <span className=\"text-text-positive-muted text-xs\">Từ ngày</span>\n <Input type=\"date\" size=\"md\" value={value.from ?? ''} onValueChange={v => onChange({ ...value, from: v || undefined })} />\n </div>\n <div className=\"flex flex-col gap-1\">\n <span className=\"text-text-positive-muted text-xs\">Đến ngày</span>\n <Input type=\"date\" size=\"md\" value={value.to ?? ''} onValueChange={v => onChange({ ...value, to: v || undefined })} />\n </div>\n </div>\n);\n\nconst NumberFilterEditor: React.FC<{\n value: NumberFilterValue;\n onChange: (v: NumberFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-3 p-3\">\n <Select value={value.operator} onValueChange={op => onChange({ ...value, operator: op as NumberFilterValue['operator'] })}>\n <SelectTrigger size=\"sm\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {NUMBER_OPERATORS.map(op => (\n <SelectItem key={op.value} value={op.value}>\n {op.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <Input\n type=\"number\"\n size=\"md\"\n placeholder=\"Giá trị\"\n value={value.value ?? ''}\n onValueChange={v => onChange({ ...value, value: v ? Number(v) : undefined })}\n />\n {value.operator === 'between' && (\n <Input\n type=\"number\"\n size=\"md\"\n placeholder=\"Đến giá trị\"\n value={value.valueTo ?? ''}\n onValueChange={v => onChange({ ...value, valueTo: v ? Number(v) : undefined })}\n />\n )}\n </div>\n);\n\nconst TextFilterEditor: React.FC<{\n value: TextFilterValue;\n onChange: (v: TextFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-3 p-3\">\n <Select value={value.operator} onValueChange={op => onChange({ ...value, operator: op as TextFilterValue['operator'] })}>\n <SelectTrigger size=\"sm\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {TEXT_OPERATORS.map(op => (\n <SelectItem key={op.value} value={op.value}>\n {op.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n <Input type=\"text\" size=\"md\" placeholder=\"Nhập văn bản...\" value={value.value} onValueChange={v => onChange({ ...value, value: v })} />\n </div>\n);\n\nconst BOOLEAN_OPTIONS = [\n { label: 'Có', value: true as boolean | null },\n { label: 'Không', value: false as boolean | null },\n { label: 'Không xác định', value: null as boolean | null },\n];\n\nconst BooleanFilterEditor: React.FC<{\n value: BooleanFilterValue;\n onChange: (v: BooleanFilterValue) => void;\n}> = ({ value, onChange }) => (\n <div className=\"flex flex-col gap-1 p-3\">\n {BOOLEAN_OPTIONS.map(({ label, value: v }) => (\n <Button\n key={label}\n type=\"button\"\n tabIndex={-1}\n variant=\"outline\"\n className={cn(\n 'rounded px-3 py-1.5 text-left text-sm transition-colors',\n value.value === v ? 'bg-primary-muted font-medium' : 'hover:bg-muted-bg-subtle'\n )}\n onClick={() => onChange({ type: 'boolean', value: v })}\n >\n {label}\n </Button>\n ))}\n </div>\n);\n\nfunction FilterEditor({ value, definition, onChange }: { value: FilterValue; definition: FilterDefinition; onChange: (v: FilterValue) => void }) {\n switch (value.type) {\n case 'tag':\n return <TagFilterEditor value={value} definition={definition} onChange={onChange} />;\n case 'single-tag':\n return <SingleTagFilterEditor value={value} definition={definition} onChange={onChange} />;\n case 'date-range':\n return <DateRangeFilterEditor value={value} onChange={onChange} />;\n case 'number':\n return <NumberFilterEditor value={value} onChange={onChange} />;\n case 'text':\n return <TextFilterEditor value={value} onChange={onChange} />;\n case 'boolean':\n return <BooleanFilterEditor value={value} onChange={onChange} />;\n }\n}\n\n// ── filter item chip ───────────────────────────────────────────────────────────\n\nconst FilterItem: React.FC<{\n filter: ActiveFilter;\n definition: FilterDefinition;\n onRemove: () => void;\n onUpdate: (value: FilterValue) => void;\n}> = ({ filter, definition, onRemove, onUpdate }) => (\n <div className=\"flex items-center gap-1\">\n <Popover>\n <PopoverTrigger asChild>\n <Button\n type=\"button\"\n variant=\"outline\"\n color=\"muted\"\n className=\"flex-1 bg-white max-w-[calc(100%-32px)] justify-start\"\n innerClassName=\"flex truncate gap-1.5\"\n >\n <span className=\"shrink-0 text-text-positive font-medium\">{definition.label}</span>\n <span className=\"truncate text-xs text-text-positive-weak\">{formatFilterValue(filter.value, definition)}</span>\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-64 p-0\" align=\"start\" side=\"bottom\">\n <div className=\"border-b border-border px-3 py-2\">\n <div className=\"flex items-center gap-1.5\">\n <span className=\"text-text-positive-muted\">{TYPE_ICONS[definition.type]}</span>\n <p className=\"font-medium\">{definition.label}</p>\n </div>\n </div>\n <FilterEditor value={filter.value} definition={definition} onChange={onUpdate} />\n </PopoverContent>\n </Popover>\n <Button type=\"button\" size=\"icon\" variant=\"soft\" color=\"danger\" className=\"shrink\" onClick={onRemove}>\n <Trash2Icon size={13} />\n </Button>\n </div>\n);\n\n// ── column visibility row ──────────────────────────────────────────────────────\n\n// const ColumnVisibility: React.FC<{\n// checked: boolean;\n// title: string;\n// onCheckedChange?: (checked: boolean) => void;\n// }> = ({ checked, title, onCheckedChange }) => (\n// <Label>\n// <Checkbox checked={checked} onCheckedChange={onCheckedChange} />\n// <p className=\"text-sm\">{title}</p>\n// </Label>\n// );\n\n// ── main component ─────────────────────────────────────────────────────────────\n\n/**\n * Collapsible side-panel that lets users toggle column visibility and build\n * row filters without leaving the table view.\n *\n * The panel collapses to a narrow icon strip when no tab is active and expands\n * to at least 64 units when the \"Columns\" or \"Filters\" tab is selected.\n *\n * Wire filter capability by passing `filterDefinitions` and `onFilterChange` to\n * the parent `UITableProvider`.\n *\n * @example\n * ```tsx\n * <UITableProvider\n * filterDefinitions={[\n * { id: 'status', label: 'Status', type: 'tag', options: [{ label: 'Active', value: 'active' }] },\n * { id: 'created', label: 'Created At', type: 'date-range' },\n * { id: 'amount', label: 'Amount', type: 'number' },\n * ]}\n * onFilterChange={filters => console.log(filters)}\n * >\n * <ResizablePanelGroup direction=\"horizontal\">\n * <ResizablePanel><UITable /></ResizablePanel>\n * <ResizableHandle />\n * <UITableFilter />\n * </ResizablePanelGroup>\n * </UITableProvider>\n * ```\n */\nexport const UITableFilter = () => {\n // const { table } = useUITableContext();\n const { filterDefinitions, activeFilters, addFilter, removeFilter, updateFilter } = useUITableFilterContext();\n\n const [tab, setTab] = useState<'columns' | 'filters' | null>(null);\n\n const availableDefinitions = filterDefinitions.filter(def => !activeFilters.some(f => f.definitionId === def.id));\n\n return (\n <ResizablePanel defaultSize={25} className={cn('bg-card', tab === null ? 'max-w-8!' : 'min-w-64')}>\n <div className=\"relative z-20 flex size-full bg-muted-bg-subtle\">\n <div className=\"min-w-0 flex-1 overflow-hidden\">\n {/* Columns tab */}\n {/*<Activity mode={tab === 'columns' ? 'visible' : 'hidden'}>\n <div className=\"flex size-full flex-col gap-2 p-4\">\n <p className=\"px-2 font-medium\">Columns Visibility</p>\n <Separator />\n <div className=\"flex flex-col gap-4 pt-4\">\n {table.getAllColumns().map(column => {\n if (['select', 'actions'].includes(column.id)) return null;\n return (\n <ColumnVisibility\n key={column.id}\n checked={column.getIsVisible()}\n title={String(column.columnDef.header)}\n onCheckedChange={value => column.toggleVisibility(!!value)}\n />\n );\n })}\n </div>\n </div>\n </Activity>*/}\n\n {/* Filters tab */}\n <Activity mode={tab === 'filters' ? 'visible' : 'hidden'}>\n <div className=\"flex size-full flex-col gap-2 p-4\">\n <div className=\"flex items-center justify-between gap-2\">\n <p className=\"font-medium\">Bộ lọc</p>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" color=\"muted\" disabled={availableDefinitions.length === 0}>\n <ListFilterPlus size={13} />\n Thêm bộ lọc\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\">\n {availableDefinitions.map(def => (\n <DropdownMenuItem key={def.id} className=\"flex items-center gap-2\" onClick={() => addFilter(def.id)}>\n {TYPE_ICONS[def.type]}\n {def.label}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n <Separator />\n {activeFilters.length === 0 ? (\n <p className=\"py-6 text-center text-xs text-text-positive-muted\">Không có bộ lọc nào</p>\n ) : (\n <div className=\"flex flex-col gap-2 pt-1\">\n {activeFilters.map(filter => {\n const def = filterDefinitions.find(d => d.id === filter.definitionId);\n if (!def) return null;\n return (\n <FilterItem\n key={filter.id}\n filter={filter}\n definition={def}\n onRemove={() => removeFilter(filter.id)}\n onUpdate={value => updateFilter(filter.id, value)}\n />\n );\n })}\n </div>\n )}\n </div>\n </Activity>\n </div>\n\n {/* Vertical tab strip */}\n <div className=\"flex h-full flex-col border-l border-border bg-muted-bg-subtle text-sm\">\n {/*<button\n type=\"button\"\n className={cn('flex h-32 cursor-pointer flex-col items-center gap-y-2 p-2 py-4', tab === 'columns' && 'bg-card')}\n onClick={() => setTab(tab === 'columns' ? null : 'columns')}\n >\n <Columns4Icon size={18} />\n <span className=\"text-nowrap [writing-mode:vertical-lr]\">Columns</span>\n </button>\n <Separator />*/}\n <button\n type=\"button\"\n className={cn('relative flex h-32 cursor-pointer flex-col items-center gap-y-2 p-2 py-4', tab === 'filters' && 'bg-card')}\n onClick={() => setTab(tab === 'filters' ? null : 'filters')}\n >\n <ListFilterIcon size={18} />\n {activeFilters.length > 0 && (\n <span className=\"absolute top-2 right-1.5 flex h-4 w-4 items-center justify-center rounded-full bg-primary text-[10px] leading-none text-primary-foreground\">\n {activeFilters.length}\n </span>\n )}\n <span className=\"text-nowrap [writing-mode:vertical-lr]\">Bộ lọc</span>\n </button>\n <Separator />\n </div>\n </div>\n </ResizablePanel>\n );\n};\n"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { VariantProps } from "class-variance-authority";
3
3
  //#region packages/components/layouts/flex.d.ts
4
4
  declare const flexVariants: (props?: ({
5
5
  vertical?: boolean | null | undefined;
6
- width?: "max" | "min" | "full" | "auto" | "fit" | "screen" | "null" | null | undefined;
6
+ width?: "auto" | "max" | "min" | "full" | "fit" | "screen" | "null" | null | undefined;
7
7
  wrap?: boolean | null | undefined;
8
8
  margin?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
9
9
  padding?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
@@ -111,4 +111,4 @@ declare const Flex: import("react").MemoExoticComponent<({
111
111
  }: React.PropsWithChildren<Props>) => import("react").JSX.Element>;
112
112
  //#endregion
113
113
  export { Flex as t };
114
- //# sourceMappingURL=flex-bw7U4hXn.d.cts.map
114
+ //# sourceMappingURL=flex-CT71VV-I.d.cts.map
@@ -3,7 +3,7 @@ import { VariantProps } from "class-variance-authority";
3
3
  //#region packages/components/layouts/flex.d.ts
4
4
  declare const flexVariants: (props?: ({
5
5
  vertical?: boolean | null | undefined;
6
- width?: "max" | "min" | "full" | "auto" | "fit" | "screen" | "null" | null | undefined;
6
+ width?: "auto" | "max" | "min" | "full" | "fit" | "screen" | "null" | null | undefined;
7
7
  wrap?: boolean | null | undefined;
8
8
  margin?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
9
9
  padding?: "sm" | "md" | "lg" | "xl" | "none" | null | undefined;
@@ -111,4 +111,4 @@ declare const Flex: import("react").MemoExoticComponent<({
111
111
  }: React.PropsWithChildren<Props>) => import("react").JSX.Element>;
112
112
  //#endregion
113
113
  export { Flex as t };
114
- //# sourceMappingURL=flex-bw7U4hXn.d.mts.map
114
+ //# sourceMappingURL=flex-CT71VV-I.d.mts.map
@@ -139,7 +139,8 @@ type ComboboxFieldProps = {
139
139
  required?: boolean; /** When `true`, disables the combobox. Also disabled automatically while the form is submitting. */
140
140
  disabled?: boolean; /** When `true`, shows a button to clear the current selection. Defaults to `false`. */
141
141
  clearable?: boolean; /** When `false`, suppresses inline validation error messages. Defaults to `true`. */
142
- showErrorMessage?: boolean;
142
+ showErrorMessage?: boolean; /** When `true`, forces the combobox to open in a modal dialog instead of a popover. Defaults to `false`. */
143
+ modal?: boolean;
143
144
  };
144
145
  /** Props for {@link RadioGroupField} — a list of mutually exclusive radio buttons. */
145
146
  type RadioGroupFieldProps = {
@@ -2170,6 +2171,7 @@ declare const TanStackContainerForm: ComponentType<{
2170
2171
  }>;
2171
2172
  declare const TanStackSectionForm: ComponentType<{
2172
2173
  title: string;
2174
+ icon?: React.ReactNode;
2173
2175
  } & {
2174
2176
  children?: import("react").ReactNode | undefined;
2175
2177
  }>;
@@ -2403,6 +2405,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2403
2405
  }>;
2404
2406
  readonly TanStackSectionForm: ComponentType<{
2405
2407
  title: string;
2408
+ icon?: React.ReactNode;
2406
2409
  } & {
2407
2410
  children?: import("react").ReactNode | undefined;
2408
2411
  }>;
@@ -2576,6 +2579,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2576
2579
  }>;
2577
2580
  readonly TanStackSectionForm: ComponentType<{
2578
2581
  title: string;
2582
+ icon?: React.ReactNode;
2579
2583
  } & {
2580
2584
  children?: import("react").ReactNode | undefined;
2581
2585
  }>;
@@ -2747,6 +2751,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2747
2751
  }>;
2748
2752
  readonly TanStackSectionForm: ComponentType<{
2749
2753
  title: string;
2754
+ icon?: React.ReactNode;
2750
2755
  } & {
2751
2756
  children?: import("react").ReactNode | undefined;
2752
2757
  }>;
@@ -2922,6 +2927,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2922
2927
  }>;
2923
2928
  readonly TanStackSectionForm: ComponentType<{
2924
2929
  title: string;
2930
+ icon?: React.ReactNode;
2925
2931
  } & {
2926
2932
  children?: import("react").ReactNode | undefined;
2927
2933
  }>;
@@ -3093,6 +3099,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
3093
3099
  }>;
3094
3100
  readonly TanStackSectionForm: ComponentType<{
3095
3101
  title: string;
3102
+ icon?: React.ReactNode;
3096
3103
  } & {
3097
3104
  children?: import("react").ReactNode | undefined;
3098
3105
  }>;
@@ -3263,6 +3270,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
3263
3270
  }>;
3264
3271
  readonly TanStackSectionForm: ComponentType<{
3265
3272
  title: string;
3273
+ icon?: React.ReactNode;
3266
3274
  } & {
3267
3275
  children?: import("react").ReactNode | undefined;
3268
3276
  }>;
@@ -3309,4 +3317,4 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
3309
3317
  }>) => ReturnType<import("react").FunctionComponent>;
3310
3318
  //#endregion
3311
3319
  export { EmailFieldProps as $, TanStackActionSubmit as A, TextField as B, SimpleNumberField as C, SimpleTextField as D, SimpleSelectField as E, TanStackFieldGroup as F, useTanStackFieldContext as G, useTanStackForm as H, TanStackPopoverForm as I, BooleanFieldValue as J, useTanStackFormContext as K, TanStackSectionForm as L, TanStackCardForm as M, TanStackContainerForm as N, SimpleTextareaField as O, TanStackDialogForm as P, DateFieldValue as Q, TanStackTitleField as R, SimpleEmailField as S, SimpleRadioGroupField as T, withTanStackFieldGroup as U, TextareaField as V, withTanStackForm as W, ComboboxFieldProps as X, CheckboxFieldProps as Y, DateFieldProps as Z, SelectField as _, DateField as a, NumberFieldValue as at, SimpleComboboxField as b, FieldContent as c, RadioOption as ct, FieldGroup as d, SimpleTextFieldProps as dt, FieldOrientation as et, FieldLabel as f, SwitchFieldProps as ft, RadioGroupField as g, TextareaFieldProps as gt, PasswordField as h, TextFieldValue as ht, ComboboxField as i, NumberFieldProps as it, TanStackActionsForm as j, SwitchField as k, FieldContentMain as l, SelectFieldProps as lt, NumberField as m, TextFieldProps as mt, ArrayHeaderRow as n, FieldType as nt, EmailField as o, PasswordFieldProps as ot, FieldSeparator as p, TextEditorFieldProps as pt, AnyFieldProps as q, CheckboxField as r, MultiSelectFieldValue as rt, Field as s, RadioGroupFieldProps as st, ArrayCol as t, FieldRounding as tt, FieldError as u, SelectOption as ut, SimpleArrayField as v, SimplePasswordField as w, SimpleDateField as x, SimpleBooleanField as y, TextEditorField as z };
3312
- //# sourceMappingURL=index-DDROD2y9.d.cts.map
3320
+ //# sourceMappingURL=index-CgP5OCy0.d.cts.map
@@ -139,7 +139,8 @@ type ComboboxFieldProps = {
139
139
  required?: boolean; /** When `true`, disables the combobox. Also disabled automatically while the form is submitting. */
140
140
  disabled?: boolean; /** When `true`, shows a button to clear the current selection. Defaults to `false`. */
141
141
  clearable?: boolean; /** When `false`, suppresses inline validation error messages. Defaults to `true`. */
142
- showErrorMessage?: boolean;
142
+ showErrorMessage?: boolean; /** When `true`, forces the combobox to open in a modal dialog instead of a popover. Defaults to `false`. */
143
+ modal?: boolean;
143
144
  };
144
145
  /** Props for {@link RadioGroupField} — a list of mutually exclusive radio buttons. */
145
146
  type RadioGroupFieldProps = {
@@ -2170,6 +2171,7 @@ declare const TanStackContainerForm: ComponentType<{
2170
2171
  }>;
2171
2172
  declare const TanStackSectionForm: ComponentType<{
2172
2173
  title: string;
2174
+ icon?: React.ReactNode;
2173
2175
  } & {
2174
2176
  children?: import("react").ReactNode | undefined;
2175
2177
  }>;
@@ -2403,6 +2405,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2403
2405
  }>;
2404
2406
  readonly TanStackSectionForm: ComponentType<{
2405
2407
  title: string;
2408
+ icon?: React.ReactNode;
2406
2409
  } & {
2407
2410
  children?: import("react").ReactNode | undefined;
2408
2411
  }>;
@@ -2576,6 +2579,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2576
2579
  }>;
2577
2580
  readonly TanStackSectionForm: ComponentType<{
2578
2581
  title: string;
2582
+ icon?: React.ReactNode;
2579
2583
  } & {
2580
2584
  children?: import("react").ReactNode | undefined;
2581
2585
  }>;
@@ -2747,6 +2751,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2747
2751
  }>;
2748
2752
  readonly TanStackSectionForm: ComponentType<{
2749
2753
  title: string;
2754
+ icon?: React.ReactNode;
2750
2755
  } & {
2751
2756
  children?: import("react").ReactNode | undefined;
2752
2757
  }>;
@@ -2922,6 +2927,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
2922
2927
  }>;
2923
2928
  readonly TanStackSectionForm: ComponentType<{
2924
2929
  title: string;
2930
+ icon?: React.ReactNode;
2925
2931
  } & {
2926
2932
  children?: import("react").ReactNode | undefined;
2927
2933
  }>;
@@ -3093,6 +3099,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
3093
3099
  }>;
3094
3100
  readonly TanStackSectionForm: ComponentType<{
3095
3101
  title: string;
3102
+ icon?: React.ReactNode;
3096
3103
  } & {
3097
3104
  children?: import("react").ReactNode | undefined;
3098
3105
  }>;
@@ -3263,6 +3270,7 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
3263
3270
  }>;
3264
3271
  readonly TanStackSectionForm: ComponentType<{
3265
3272
  title: string;
3273
+ icon?: React.ReactNode;
3266
3274
  } & {
3267
3275
  children?: import("react").ReactNode | undefined;
3268
3276
  }>;
@@ -3309,4 +3317,4 @@ declare const useTanStackForm: <TFormData, TOnMount extends FormValidateOrFn<TFo
3309
3317
  }>) => ReturnType<import("react").FunctionComponent>;
3310
3318
  //#endregion
3311
3319
  export { EmailFieldProps as $, TanStackActionSubmit as A, TextField as B, SimpleNumberField as C, SimpleTextField as D, SimpleSelectField as E, TanStackFieldGroup as F, useTanStackFieldContext as G, useTanStackForm as H, TanStackPopoverForm as I, BooleanFieldValue as J, useTanStackFormContext as K, TanStackSectionForm as L, TanStackCardForm as M, TanStackContainerForm as N, SimpleTextareaField as O, TanStackDialogForm as P, DateFieldValue as Q, TanStackTitleField as R, SimpleEmailField as S, SimpleRadioGroupField as T, withTanStackFieldGroup as U, TextareaField as V, withTanStackForm as W, ComboboxFieldProps as X, CheckboxFieldProps as Y, DateFieldProps as Z, SelectField as _, DateField as a, NumberFieldValue as at, SimpleComboboxField as b, FieldContent as c, RadioOption as ct, FieldGroup as d, SimpleTextFieldProps as dt, FieldOrientation as et, FieldLabel as f, SwitchFieldProps as ft, RadioGroupField as g, TextareaFieldProps as gt, PasswordField as h, TextFieldValue as ht, ComboboxField as i, NumberFieldProps as it, TanStackActionsForm as j, SwitchField as k, FieldContentMain as l, SelectFieldProps as lt, NumberField as m, TextFieldProps as mt, ArrayHeaderRow as n, FieldType as nt, EmailField as o, PasswordFieldProps as ot, FieldSeparator as p, TextEditorFieldProps as pt, AnyFieldProps as q, CheckboxField as r, MultiSelectFieldValue as rt, Field as s, RadioGroupFieldProps as st, ArrayCol as t, FieldRounding as tt, FieldError as u, SelectOption as ut, SimpleArrayField as v, SimplePasswordField as w, SimpleDateField as x, SimpleBooleanField as y, TextEditorField as z };
3312
- //# sourceMappingURL=index-DDROD2y9.d.mts.map
3320
+ //# sourceMappingURL=index-CgP5OCy0.d.mts.map
@@ -54,7 +54,8 @@ type TUITableHeadCellOption = {
54
54
  };
55
55
  /** Props for `UITableHeadCellSelect` — the "select all rows" header checkbox cell. */
56
56
  type TUITableHeadCellSelect = React.ComponentProps<'th'> & {
57
- /** Whether the column is pinned to a side (the select cell is always sticky). */isPinned?: ColumnPinningPosition; /** Reflects `table.getIsAllRowsSelected()` to set the checkbox state. */
57
+ /** Whether the column is pinned to a side (the select cell is always sticky). */isPinned?: ColumnPinningPosition; /** Whether this is the last left-pinned column; renders a trailing edge shadow so users can see it's pinned over scrollable content. */
58
+ isLastCell?: boolean; /** Reflects `table.getIsAllRowsSelected()` to set the checkbox state. */
58
59
  isAllRowsSelected?: boolean; /** Calls `table.toggleAllRowsSelected` when the checkbox value changes. */
59
60
  onToggleAllRowsSelected?: (value?: boolean) => void;
60
61
  };
@@ -88,7 +89,8 @@ type TUITableRow = React.ComponentProps<'tr'> & {
88
89
  };
89
90
  /** Props for `UITableCellSelect` — the per-row selection checkbox `<td>`. */
90
91
  type TUITableCellSelect = React.ComponentProps<'td'> & {
91
- /** Pinning position; the select cell is always rendered sticky regardless. */isPinned?: ColumnPinningPosition; /** Whether the checkbox should appear checked. */
92
+ /** Pinning position; the select cell is always rendered sticky regardless. */isPinned?: ColumnPinningPosition; /** Whether this is the last left-pinned column; renders a trailing edge shadow so users can see it's pinned over scrollable content. */
93
+ isLastCell?: boolean; /** Whether the checkbox should appear checked. */
92
94
  isSelected?: boolean; /** Calls `row.toggleSelected` when the checkbox value changes. */
93
95
  onToggleRowSelected?: (value?: boolean) => void;
94
96
  };
@@ -157,6 +159,11 @@ type TTableAnalysisContext = {
157
159
  /** Whether the analysis panel is currently expanded. */isOpen: boolean; /** Toggles the analysis panel open/closed. */
158
160
  toggle: () => void;
159
161
  };
162
+ /** Context value provided by the summary bar visibility toggle state. */
163
+ type TTableSummaryContext = {
164
+ /** Whether `UITableSummaryBar` is currently visible. */isOpen: boolean; /** Toggles the summary bar's visibility. */
165
+ toggle: () => void;
166
+ };
160
167
  /** A single cell in a CSV export row. */
161
168
  type CsvCell = {
162
169
  /** Column header label for this cell. */label: string; /** Cell value — numbers render right-aligned in spreadsheet editors. */
@@ -195,7 +202,8 @@ type TTableInnerWrapperContext = {
195
202
  type TTableInnerTableContext = {
196
203
  /** The TanStack `Table` instance (typed as `AnyEntity` for the context boundary). */table: Table<AnyEntity>; /** Stable `useId`-generated id on the `<table>` element. */
197
204
  innerTableId: string; /** Pre-computed sum of all column sizes used as the `<table>` `minWidth`. */
198
- totalSize: number;
205
+ totalSize: number; /** Ref attached to the inner `<table>` DOM element, shared with descendants that need direct DOM access. */
206
+ tableRef: React.RefObject<HTMLTableElement | null>;
199
207
  };
200
208
  /** Context value provided by `UITableHeadRowProvider`. */
201
209
  type TTableHeadRowContext = {
@@ -497,19 +505,16 @@ declare const UITableMoreButton: ComponentType<{
497
505
  label: string;
498
506
  onClick: (id: string) => void;
499
507
  }[];
500
- onClick?: () => void;
501
508
  }>;
502
509
  declare const UITableNameDisplay: ComponentType<{
503
510
  name?: string | null | undefined;
504
511
  }>;
505
512
  declare const UITablePermalink: ComponentType<{
506
- href: string;
513
+ href: string | null | undefined;
507
514
  label?: string;
508
515
  }>;
509
516
  declare const UITablePhoneNumberDisplay: ComponentType<{
510
- value: string;
511
- } & {
512
- children?: import("react").ReactNode | undefined;
517
+ value: string | null | undefined;
513
518
  }>;
514
519
  declare const UITableProgressDisplay: ComponentType<{
515
520
  value: number | null | undefined;
@@ -569,5 +574,5 @@ declare const UITableTooltipActions: ComponentType<{
569
574
  onDownload?: () => void;
570
575
  }>;
571
576
  //#endregion
572
- export { FilterType as $, UITableLoadMore as A, TableProviderProps as At, UITableEmptyDisplay as B, UITableTooltipActions as C, TUITableHeadCellSelect as Ct, UITableContainer as D, TUITableLoadMore as Dt, UITableProvider as E, TUITableInnerWrapper as Et, UITableHeadCellOption as F, ActiveFilter as G, UITableCellActions as H, UITableHeadCell as I, ColumnAggregationType as J, BooleanFilterValue as K, UITableHead as L, UITableInnerTable as M, TextFilterValue as Mt, UITableHeadRow as N, UITableEmpty as Nt, UITableWrapper as O, TUITableRow as Ot, UITableHeadCellSelect as P, FilterOption as Q, UITableFooterRow as R, UITableTooltip as S, TUITableHeadCellOption as St, UITableUserDataDisplay as T, TUITableInnerTable as Tt, UITableCell as U, UITableCellSelect as V, UITableBody as W, DateRangeFilterValue as X, CsvCell as Y, FilterDefinition as Z, UITableRemoveButton as _, TUITableColumn as _t, UITableCurrencyDisplay as a, TTableAnalysisContext as at, UITableSummaryBar as b, TUITableHead as bt, UITableEditButton as c, TTableFilterContext as ct, UITableListDisplay as d, TTableInnerWrapperContext as dt, FilterValue as et, UITableMoreButton as f, TTableRowContext as ft, UITableProgressDisplay as g, TUITableCellSelect as gt, UITablePhoneNumberDisplay as h, TUITableCellActions as ht, UITableBooleanDisplay as i, SummaryItem as it, UITableInnerWrapper as j, TagFilterValue as jt, UITableRow as k, TUITableWrapper as kt, UITableEmailDisplay as l, TTableHeadRowContext as lt, UITablePermalink as m, TUITableCell as mt, UITableAvatarNameDisplay as n, RowData as nt, UITableDateDisplay as o, TTableBodyContext as ot, UITableNameDisplay as p, TUITableBody as pt, ColumnAggregation as q, UITableBadgeDisplay as r, SingleTagFilterValue as rt, UITableDescriptionDisplay as s, TTableContext as st, UITableAnalysisPanel as t, NumberFilterValue as tt, UITableFilter as u, TTableInnerTableContext as ut, UITableStatisticDisplay as v, TUITableEmptyDisplay as vt, UITableTooltipFilter as w, TUITableHeadRow as wt, UITableToggleButton as x, TUITableHeadCell as xt, UITableStatusDisplay as y, TUITableFooter as yt, UITableFooter as z };
573
- //# sourceMappingURL=index-BRE7tL8d.d.cts.map
577
+ export { FilterType as $, UITableLoadMore as A, TUITableWrapper as At, UITableEmptyDisplay as B, UITableTooltipActions as C, TUITableHeadCellOption as Ct, UITableContainer as D, TUITableInnerWrapper as Dt, UITableProvider as E, TUITableInnerTable as Et, UITableHeadCellOption as F, ActiveFilter as G, UITableCellActions as H, UITableHeadCell as I, ColumnAggregationType as J, BooleanFilterValue as K, UITableHead as L, UITableInnerTable as M, TagFilterValue as Mt, UITableHeadRow as N, TextFilterValue as Nt, UITableWrapper as O, TUITableLoadMore as Ot, UITableHeadCellSelect as P, UITableEmpty as Pt, FilterOption as Q, UITableFooterRow as R, UITableTooltip as S, TUITableHeadCell as St, UITableUserDataDisplay as T, TUITableHeadRow as Tt, UITableCell as U, UITableCellSelect as V, UITableBody as W, DateRangeFilterValue as X, CsvCell as Y, FilterDefinition as Z, UITableRemoveButton as _, TUITableCellSelect as _t, UITableCurrencyDisplay as a, TTableAnalysisContext as at, UITableSummaryBar as b, TUITableFooter as bt, UITableEditButton as c, TTableFilterContext as ct, UITableListDisplay as d, TTableInnerWrapperContext as dt, FilterValue as et, UITableMoreButton as f, TTableRowContext as ft, UITableProgressDisplay as g, TUITableCellActions as gt, UITablePhoneNumberDisplay as h, TUITableCell as ht, UITableBooleanDisplay as i, SummaryItem as it, UITableInnerWrapper as j, TableProviderProps as jt, UITableRow as k, TUITableRow as kt, UITableEmailDisplay as l, TTableHeadRowContext as lt, UITablePermalink as m, TUITableBody as mt, UITableAvatarNameDisplay as n, RowData as nt, UITableDateDisplay as o, TTableBodyContext as ot, UITableNameDisplay as p, TTableSummaryContext as pt, ColumnAggregation as q, UITableBadgeDisplay as r, SingleTagFilterValue as rt, UITableDescriptionDisplay as s, TTableContext as st, UITableAnalysisPanel as t, NumberFilterValue as tt, UITableFilter as u, TTableInnerTableContext as ut, UITableStatisticDisplay as v, TUITableColumn as vt, UITableTooltipFilter as w, TUITableHeadCellSelect as wt, UITableToggleButton as x, TUITableHead as xt, UITableStatusDisplay as y, TUITableEmptyDisplay as yt, UITableFooter as z };
578
+ //# sourceMappingURL=index-FEMPGfwO.d.cts.map
@@ -54,7 +54,8 @@ type TUITableHeadCellOption = {
54
54
  };
55
55
  /** Props for `UITableHeadCellSelect` — the "select all rows" header checkbox cell. */
56
56
  type TUITableHeadCellSelect = React.ComponentProps<'th'> & {
57
- /** Whether the column is pinned to a side (the select cell is always sticky). */isPinned?: ColumnPinningPosition; /** Reflects `table.getIsAllRowsSelected()` to set the checkbox state. */
57
+ /** Whether the column is pinned to a side (the select cell is always sticky). */isPinned?: ColumnPinningPosition; /** Whether this is the last left-pinned column; renders a trailing edge shadow so users can see it's pinned over scrollable content. */
58
+ isLastCell?: boolean; /** Reflects `table.getIsAllRowsSelected()` to set the checkbox state. */
58
59
  isAllRowsSelected?: boolean; /** Calls `table.toggleAllRowsSelected` when the checkbox value changes. */
59
60
  onToggleAllRowsSelected?: (value?: boolean) => void;
60
61
  };
@@ -88,7 +89,8 @@ type TUITableRow = React.ComponentProps<'tr'> & {
88
89
  };
89
90
  /** Props for `UITableCellSelect` — the per-row selection checkbox `<td>`. */
90
91
  type TUITableCellSelect = React.ComponentProps<'td'> & {
91
- /** Pinning position; the select cell is always rendered sticky regardless. */isPinned?: ColumnPinningPosition; /** Whether the checkbox should appear checked. */
92
+ /** Pinning position; the select cell is always rendered sticky regardless. */isPinned?: ColumnPinningPosition; /** Whether this is the last left-pinned column; renders a trailing edge shadow so users can see it's pinned over scrollable content. */
93
+ isLastCell?: boolean; /** Whether the checkbox should appear checked. */
92
94
  isSelected?: boolean; /** Calls `row.toggleSelected` when the checkbox value changes. */
93
95
  onToggleRowSelected?: (value?: boolean) => void;
94
96
  };
@@ -157,6 +159,11 @@ type TTableAnalysisContext = {
157
159
  /** Whether the analysis panel is currently expanded. */isOpen: boolean; /** Toggles the analysis panel open/closed. */
158
160
  toggle: () => void;
159
161
  };
162
+ /** Context value provided by the summary bar visibility toggle state. */
163
+ type TTableSummaryContext = {
164
+ /** Whether `UITableSummaryBar` is currently visible. */isOpen: boolean; /** Toggles the summary bar's visibility. */
165
+ toggle: () => void;
166
+ };
160
167
  /** A single cell in a CSV export row. */
161
168
  type CsvCell = {
162
169
  /** Column header label for this cell. */label: string; /** Cell value — numbers render right-aligned in spreadsheet editors. */
@@ -195,7 +202,8 @@ type TTableInnerWrapperContext = {
195
202
  type TTableInnerTableContext = {
196
203
  /** The TanStack `Table` instance (typed as `AnyEntity` for the context boundary). */table: Table<AnyEntity>; /** Stable `useId`-generated id on the `<table>` element. */
197
204
  innerTableId: string; /** Pre-computed sum of all column sizes used as the `<table>` `minWidth`. */
198
- totalSize: number;
205
+ totalSize: number; /** Ref attached to the inner `<table>` DOM element, shared with descendants that need direct DOM access. */
206
+ tableRef: React.RefObject<HTMLTableElement | null>;
199
207
  };
200
208
  /** Context value provided by `UITableHeadRowProvider`. */
201
209
  type TTableHeadRowContext = {
@@ -497,19 +505,16 @@ declare const UITableMoreButton: ComponentType<{
497
505
  label: string;
498
506
  onClick: (id: string) => void;
499
507
  }[];
500
- onClick?: () => void;
501
508
  }>;
502
509
  declare const UITableNameDisplay: ComponentType<{
503
510
  name?: string | null | undefined;
504
511
  }>;
505
512
  declare const UITablePermalink: ComponentType<{
506
- href: string;
513
+ href: string | null | undefined;
507
514
  label?: string;
508
515
  }>;
509
516
  declare const UITablePhoneNumberDisplay: ComponentType<{
510
- value: string;
511
- } & {
512
- children?: import("react").ReactNode | undefined;
517
+ value: string | null | undefined;
513
518
  }>;
514
519
  declare const UITableProgressDisplay: ComponentType<{
515
520
  value: number | null | undefined;
@@ -569,5 +574,5 @@ declare const UITableTooltipActions: ComponentType<{
569
574
  onDownload?: () => void;
570
575
  }>;
571
576
  //#endregion
572
- export { FilterType as $, UITableLoadMore as A, TableProviderProps as At, UITableEmptyDisplay as B, UITableTooltipActions as C, TUITableHeadCellSelect as Ct, UITableContainer as D, TUITableLoadMore as Dt, UITableProvider as E, TUITableInnerWrapper as Et, UITableHeadCellOption as F, ActiveFilter as G, UITableCellActions as H, UITableHeadCell as I, ColumnAggregationType as J, BooleanFilterValue as K, UITableHead as L, UITableInnerTable as M, TextFilterValue as Mt, UITableHeadRow as N, UITableEmpty as Nt, UITableWrapper as O, TUITableRow as Ot, UITableHeadCellSelect as P, FilterOption as Q, UITableFooterRow as R, UITableTooltip as S, TUITableHeadCellOption as St, UITableUserDataDisplay as T, TUITableInnerTable as Tt, UITableCell as U, UITableCellSelect as V, UITableBody as W, DateRangeFilterValue as X, CsvCell as Y, FilterDefinition as Z, UITableRemoveButton as _, TUITableColumn as _t, UITableCurrencyDisplay as a, TTableAnalysisContext as at, UITableSummaryBar as b, TUITableHead as bt, UITableEditButton as c, TTableFilterContext as ct, UITableListDisplay as d, TTableInnerWrapperContext as dt, FilterValue as et, UITableMoreButton as f, TTableRowContext as ft, UITableProgressDisplay as g, TUITableCellSelect as gt, UITablePhoneNumberDisplay as h, TUITableCellActions as ht, UITableBooleanDisplay as i, SummaryItem as it, UITableInnerWrapper as j, TagFilterValue as jt, UITableRow as k, TUITableWrapper as kt, UITableEmailDisplay as l, TTableHeadRowContext as lt, UITablePermalink as m, TUITableCell as mt, UITableAvatarNameDisplay as n, RowData as nt, UITableDateDisplay as o, TTableBodyContext as ot, UITableNameDisplay as p, TUITableBody as pt, ColumnAggregation as q, UITableBadgeDisplay as r, SingleTagFilterValue as rt, UITableDescriptionDisplay as s, TTableContext as st, UITableAnalysisPanel as t, NumberFilterValue as tt, UITableFilter as u, TTableInnerTableContext as ut, UITableStatisticDisplay as v, TUITableEmptyDisplay as vt, UITableTooltipFilter as w, TUITableHeadRow as wt, UITableToggleButton as x, TUITableHeadCell as xt, UITableStatusDisplay as y, TUITableFooter as yt, UITableFooter as z };
573
- //# sourceMappingURL=index-DvoLzsh0.d.mts.map
577
+ export { FilterType as $, UITableLoadMore as A, TUITableWrapper as At, UITableEmptyDisplay as B, UITableTooltipActions as C, TUITableHeadCellOption as Ct, UITableContainer as D, TUITableInnerWrapper as Dt, UITableProvider as E, TUITableInnerTable as Et, UITableHeadCellOption as F, ActiveFilter as G, UITableCellActions as H, UITableHeadCell as I, ColumnAggregationType as J, BooleanFilterValue as K, UITableHead as L, UITableInnerTable as M, TagFilterValue as Mt, UITableHeadRow as N, TextFilterValue as Nt, UITableWrapper as O, TUITableLoadMore as Ot, UITableHeadCellSelect as P, UITableEmpty as Pt, FilterOption as Q, UITableFooterRow as R, UITableTooltip as S, TUITableHeadCell as St, UITableUserDataDisplay as T, TUITableHeadRow as Tt, UITableCell as U, UITableCellSelect as V, UITableBody as W, DateRangeFilterValue as X, CsvCell as Y, FilterDefinition as Z, UITableRemoveButton as _, TUITableCellSelect as _t, UITableCurrencyDisplay as a, TTableAnalysisContext as at, UITableSummaryBar as b, TUITableFooter as bt, UITableEditButton as c, TTableFilterContext as ct, UITableListDisplay as d, TTableInnerWrapperContext as dt, FilterValue as et, UITableMoreButton as f, TTableRowContext as ft, UITableProgressDisplay as g, TUITableCellActions as gt, UITablePhoneNumberDisplay as h, TUITableCell as ht, UITableBooleanDisplay as i, SummaryItem as it, UITableInnerWrapper as j, TableProviderProps as jt, UITableRow as k, TUITableRow as kt, UITableEmailDisplay as l, TTableHeadRowContext as lt, UITablePermalink as m, TUITableBody as mt, UITableAvatarNameDisplay as n, RowData as nt, UITableDateDisplay as o, TTableBodyContext as ot, UITableNameDisplay as p, TTableSummaryContext as pt, ColumnAggregation as q, UITableBadgeDisplay as r, SingleTagFilterValue as rt, UITableDescriptionDisplay as s, TTableContext as st, UITableAnalysisPanel as t, NumberFilterValue as tt, UITableFilter as u, TTableInnerTableContext as ut, UITableStatisticDisplay as v, TUITableColumn as vt, UITableTooltipFilter as w, TUITableHeadCellSelect as wt, UITableToggleButton as x, TUITableHead as xt, UITableStatusDisplay as y, TUITableEmptyDisplay as yt, UITableFooter as z };
578
+ //# sourceMappingURL=index-_GTjwUdG.d.mts.map
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./ui/button.cjs"),t=require("./typography/paragraph.cjs"),n=require("./ui/card.cjs"),ee=require("./ui/skeleton.cjs"),te=require("./ui/image.cjs"),ne=require("./cards/grid-product-card.cjs"),re=require("./cards/product-card.cjs"),ie=require("./cards/simple-card.cjs"),ae=require("./layouts/flex.cjs"),oe=require("./data-display/country.cjs"),r=require("./data-display/data-list.cjs"),se=require("./date-B3cozmfV.cjs"),i=require("./ui/badge.cjs"),a=require("./ui/tooltip.cjs"),ce=require("./data-display/date-tooltip.cjs"),le=require("./data-display/empty.cjs"),ue=require("./data-display/name.cjs"),de=require("./data-display/phone-number.cjs"),fe=require("./data-display/role-badge.cjs"),o=require("./data-display/statistic.cjs"),s=require("./ui/avatar.cjs"),pe=require("./data-display/user.cjs"),c=require("./ui/alert-dialog.cjs"),me=require("./dialogs/confirm-dialog.cjs"),he=require("./typography/title.cjs"),l=require("./ui/sheet.cjs"),ge=require("./dialogs/detail-dialog/index.cjs"),_e=require("./dialogs/error-dialog.cjs"),u=require("./ui/dialog.cjs"),ve=require("./dialogs/loading-dialog.cjs"),d=require("./features/charts/index.cjs"),f=require("./features/descriptions/index.cjs"),p=require("./ui/command.cjs"),ye=require("./search-modal-CMhsIxae.cjs"),m=require("./tables-B1O9qy-m.cjs"),be=require("./ui/checkbox.cjs"),h=require("./ui/dropdown-menu.cjs"),xe=require("./ui/spinner.cjs"),g=require("./ui/resizable.cjs"),_=require("./tanstack-form-CNrZQZhn.cjs"),v=require("./ui/popover.cjs"),y=require("./text-editor-CfQk5dIx.cjs"),Se=require("./ui/input.cjs"),Ce=require("./ui/separator.cjs"),we=require("./cms-layout-CGGJqbr0.cjs"),b=require("./payment-layout-Cb-Q8KD2.cjs"),x=require("./layouts/grid.cjs"),S=require("./pages/FeatureDeveloping.cjs"),C=require("./pages/FeatureFixing.cjs"),w=require("./pages/NotAuthorized.cjs"),T=require("./pages/NotFound.cjs"),E=require("./alert-D31c6DLq.cjs"),D=require("./ui/label.cjs"),O=require("./pages/LoginPage.cjs"),k=require("./pages/RegisterPage.cjs"),A=require("./ui/input-otp.cjs"),Te=require("./pages/VerifyEmailPage.cjs"),Ee=require("./systems/google.cjs"),De=require("./ui/buttons/add-new.cjs"),Oe=require("./ui/buttons/edit.cjs"),ke=require("./ui/buttons/refresh.cjs"),Ae=require("./ui/buttons/trash.cjs"),je=require("./ui/buttons/upload-image.cjs"),Me=require("./ui/inputs/search-input.cjs"),Ne=require("./ui/aspect-ratio.cjs"),j=require("./ui/breadcrumb.cjs"),M=require("./ui/button-group.cjs"),N=require("./ui/calendar.cjs"),P=require("./ui/carousel.cjs"),F=require("./ui/chart.cjs"),I=require("./ui/collapsible.cjs"),L=require("./ui/context-menu.cjs"),R=require("./ui/drawer.cjs"),z=require("./ui/empty.cjs"),Pe=require("./ui/progress.cjs"),Fe=require("./ui/file-uploader.cjs"),B=require("./ui/form.cjs"),V=require("./ui/hover-card.cjs"),H=require("./ui/item.cjs"),U=require("./ui/menubar.cjs"),W=require("./ui/multi-select.cjs"),G=require("./ui/navigation-menu.cjs"),K=require("./ui/pagination.cjs"),q=require("./ui/radio-group.cjs"),J=require("./ui/scroll-area.cjs"),Y=require("./ui/select.cjs"),Ie=require("./ui/slider.cjs"),Le=require("./ui/sonner.cjs"),Re=require("./ui/switch.cjs"),X=require("./ui/table.cjs"),Z=require("./ui/tabs.cjs"),ze=require("./ui/textarea.cjs"),Q=require("./ui/toggle.cjs"),$=require("./ui/toggle-group.cjs");let Be=require("sonner");exports.ActivityHeatmapChart=d.ActivityHeatmapChart,exports.AddNewBtn=De.AddNewBtn,exports.Alert=E.t,exports.AlertDescription=E.n,exports.AlertDialog=c.AlertDialog,exports.AlertDialogAction=c.AlertDialogAction,exports.AlertDialogCancel=c.AlertDialogCancel,exports.AlertDialogContent=c.AlertDialogContent,exports.AlertDialogDescription=c.AlertDialogDescription,exports.AlertDialogFooter=c.AlertDialogFooter,exports.AlertDialogHeader=c.AlertDialogHeader,exports.AlertDialogOverlay=c.AlertDialogOverlay,exports.AlertDialogPortal=c.AlertDialogPortal,exports.AlertDialogTitle=c.AlertDialogTitle,exports.AlertDialogTrigger=c.AlertDialogTrigger,exports.AlertTitle=E.r,exports.ArrayCol=_.t,exports.ArrayHeaderRow=_.n,exports.AspectRatio=Ne.AspectRatio,exports.Avatar=s.Avatar,exports.AvatarFallback=s.AvatarFallback,exports.AvatarImage=s.AvatarImage,exports.Badge=i.Badge,exports.Breadcrumb=j.Breadcrumb,exports.BreadcrumbEllipsis=j.BreadcrumbEllipsis,exports.BreadcrumbItem=j.BreadcrumbItem,exports.BreadcrumbLink=j.BreadcrumbLink,exports.BreadcrumbList=j.BreadcrumbList,exports.BreadcrumbPage=j.BreadcrumbPage,exports.BreadcrumbSeparator=j.BreadcrumbSeparator,exports.Button=e.Button,exports.ButtonGroup=M.ButtonGroup,exports.ButtonGroupSeparator=M.ButtonGroupSeparator,exports.ButtonGroupText=M.ButtonGroupText,exports.CMSLayout=we.t,exports.Calendar=N.Calendar,exports.CalendarDayButton=N.CalendarDayButton,exports.CandlestickChart=d.CandlestickChart,exports.Card=n.Card,exports.CardAction=n.CardAction,exports.CardContent=n.CardContent,exports.CardDescription=n.CardDescription,exports.CardFooter=n.CardFooter,exports.CardHeader=n.CardHeader,exports.CardTitle=n.CardTitle,exports.Carousel=P.Carousel,exports.CarouselContent=P.CarouselContent,exports.CarouselItem=P.CarouselItem,exports.CarouselNext=P.CarouselNext,exports.CarouselPrevious=P.CarouselPrevious,exports.ChartContainer=F.ChartContainer,exports.ChartLegend=F.ChartLegend,exports.ChartLegendContent=F.ChartLegendContent,exports.ChartStyle=F.ChartStyle,exports.ChartTooltip=F.ChartTooltip,exports.ChartTooltipContent=F.ChartTooltipContent,exports.Checkbox=be.Checkbox,exports.CheckboxField=_.r,exports.Collapsible=I.Collapsible,exports.CollapsibleContent=I.CollapsibleContent,exports.CollapsibleTrigger=I.CollapsibleTrigger,exports.ComboboxField=_.i,exports.Command=p.Command,exports.CommandDialog=p.CommandDialog,exports.CommandEmpty=p.CommandEmpty,exports.CommandGroup=p.CommandGroup,exports.CommandInput=p.CommandInput,exports.CommandItem=p.CommandItem,exports.CommandList=p.CommandList,exports.CommandSeparator=p.CommandSeparator,exports.CommandShortcut=p.CommandShortcut,exports.ConfirmDialog=me.ConfirmDialog,exports.ContextMenu=L.ContextMenu,exports.ContextMenuCheckboxItem=L.ContextMenuCheckboxItem,exports.ContextMenuContent=L.ContextMenuContent,exports.ContextMenuGroup=L.ContextMenuGroup,exports.ContextMenuItem=L.ContextMenuItem,exports.ContextMenuLabel=L.ContextMenuLabel,exports.ContextMenuPortal=L.ContextMenuPortal,exports.ContextMenuRadioGroup=L.ContextMenuRadioGroup,exports.ContextMenuRadioItem=L.ContextMenuRadioItem,exports.ContextMenuSeparator=L.ContextMenuSeparator,exports.ContextMenuShortcut=L.ContextMenuShortcut,exports.ContextMenuSub=L.ContextMenuSub,exports.ContextMenuSubContent=L.ContextMenuSubContent,exports.ContextMenuSubTrigger=L.ContextMenuSubTrigger,exports.ContextMenuTrigger=L.ContextMenuTrigger,exports.ConversionFunnelChart=d.ConversionFunnelChart,exports.CorrelationScatterChart=d.CorrelationScatterChart,exports.CountryDisplay=oe.CountryDisplay,exports.DataList=r.DataList,exports.DataListItem=r.DataListItem,exports.DateDisplay=se.t,exports.DateField=_.a,exports.DateTooltip=ce.DateTooltip,exports.Description=f.Description,exports.DescriptionBadge=f.DescriptionBadge,exports.DescriptionBoolean=f.DescriptionBoolean,exports.DescriptionCopy=f.DescriptionCopy,exports.DescriptionDate=f.DescriptionDate,exports.DescriptionEmpty=f.DescriptionEmpty,exports.DescriptionHeader=f.DescriptionHeader,exports.DescriptionImages=f.DescriptionImages,exports.DescriptionItem=f.DescriptionItem,exports.DescriptionLink=f.DescriptionLink,exports.DescriptionLongText=f.DescriptionLongText,exports.DescriptionName=f.DescriptionName,exports.DescriptionNumberPhone=f.DescriptionNumberPhone,exports.DescriptionSection=f.DescriptionSection,exports.DescriptionStatistic=f.DescriptionStatistic,exports.DescriptionStatus=f.DescriptionStatus,exports.DescriptionTagList=f.DescriptionTagList,exports.DescriptionUser=f.DescriptionUser,exports.DetailDialog=ge.DetailDialog,exports.Dialog=u.Dialog,exports.DialogClose=u.DialogClose,exports.DialogContent=u.DialogContent,exports.DialogDescription=u.DialogDescription,exports.DialogFooter=u.DialogFooter,exports.DialogHeader=u.DialogHeader,exports.DialogOverlay=u.DialogOverlay,exports.DialogPortal=u.DialogPortal,exports.DialogTitle=u.DialogTitle,exports.DialogTrigger=u.DialogTrigger,exports.DonutChart=d.DonutChart,exports.Drawer=R.Drawer,exports.DrawerClose=R.DrawerClose,exports.DrawerContent=R.DrawerContent,exports.DrawerDescription=R.DrawerDescription,exports.DrawerFooter=R.DrawerFooter,exports.DrawerHeader=R.DrawerHeader,exports.DrawerOverlay=R.DrawerOverlay,exports.DrawerPortal=R.DrawerPortal,exports.DrawerTitle=R.DrawerTitle,exports.DrawerTrigger=R.DrawerTrigger,exports.DropdownMenu=h.DropdownMenu,exports.DropdownMenuCheckboxItem=h.DropdownMenuCheckboxItem,exports.DropdownMenuContent=h.DropdownMenuContent,exports.DropdownMenuGroup=h.DropdownMenuGroup,exports.DropdownMenuItem=h.DropdownMenuItem,exports.DropdownMenuLabel=h.DropdownMenuLabel,exports.DropdownMenuPortal=h.DropdownMenuPortal,exports.DropdownMenuRadioGroup=h.DropdownMenuRadioGroup,exports.DropdownMenuRadioItem=h.DropdownMenuRadioItem,exports.DropdownMenuSeparator=h.DropdownMenuSeparator,exports.DropdownMenuShortcut=h.DropdownMenuShortcut,exports.DropdownMenuSub=h.DropdownMenuSub,exports.DropdownMenuSubContent=h.DropdownMenuSubContent,exports.DropdownMenuSubTrigger=h.DropdownMenuSubTrigger,exports.DropdownMenuTrigger=h.DropdownMenuTrigger,exports.EditBtn=Oe.EditBtn,exports.EmailField=_.o,exports.Empty=z.Empty,exports.EmptyContent=z.EmptyContent,exports.EmptyDescription=z.EmptyDescription,exports.EmptyDisplay=le.EmptyDisplay,exports.EmptyHeader=z.EmptyHeader,exports.EmptyMedia=z.EmptyMedia,exports.EmptyTitle=z.EmptyTitle,exports.ErrorDialog=_e.ErrorDialog,exports.FeatureDeveloping=S.FeatureDeveloping,exports.FeatureFixing=C.FeatureFixing,exports.Field=_.s,exports.FieldContent=_.c,exports.FieldContentMain=_.l,exports.FieldError=_.u,exports.FieldGroup=_.d,exports.FieldLabel=_.f,exports.FieldSeparator=_.p,exports.FileUploader=Fe.FileUploader,exports.Flex=ae.Flex,exports.Form=B.Form,exports.FormControl=B.FormControl,exports.FormDescription=B.FormDescription,exports.FormField=B.FormField,exports.FormItem=B.FormItem,exports.FormLabel=B.FormLabel,exports.FormMessage=B.FormMessage,exports.GainLossBarChart=d.GainLossBarChart,exports.Google=Ee.Google,exports.Grid=x.Grid,exports.GridProductCard=ne.GridProductCard,exports.HoverCard=V.HoverCard,exports.HoverCardContent=V.HoverCardContent,exports.HoverCardTrigger=V.HoverCardTrigger,exports.Image=te.Image,exports.IndexedPerformanceLineChart=d.IndexedPerformanceLineChart,exports.Input=Se.Input,exports.InputOTP=A.InputOTP,exports.InputOTPGroup=A.InputOTPGroup,exports.InputOTPSeparator=A.InputOTPSeparator,exports.InputOTPSlot=A.InputOTPSlot,exports.Item=H.Item,exports.ItemActions=H.ItemActions,exports.ItemContent=H.ItemContent,exports.ItemDescription=H.ItemDescription,exports.ItemFooter=H.ItemFooter,exports.ItemGroup=H.ItemGroup,exports.ItemHeader=H.ItemHeader,exports.ItemMedia=H.ItemMedia,exports.ItemSeparator=H.ItemSeparator,exports.ItemTitle=H.ItemTitle,exports.Label=D.Label,exports.LoadingDialog=ve.LoadingDialog,exports.LoginPage=O.LoginPage,exports.Menubar=U.Menubar,exports.MenubarCheckboxItem=U.MenubarCheckboxItem,exports.MenubarContent=U.MenubarContent,exports.MenubarGroup=U.MenubarGroup,exports.MenubarItem=U.MenubarItem,exports.MenubarLabel=U.MenubarLabel,exports.MenubarMenu=U.MenubarMenu,exports.MenubarPortal=U.MenubarPortal,exports.MenubarRadioGroup=U.MenubarRadioGroup,exports.MenubarRadioItem=U.MenubarRadioItem,exports.MenubarSeparator=U.MenubarSeparator,exports.MenubarShortcut=U.MenubarShortcut,exports.MenubarSub=U.MenubarSub,exports.MenubarSubContent=U.MenubarSubContent,exports.MenubarSubTrigger=U.MenubarSubTrigger,exports.MenubarTrigger=U.MenubarTrigger,exports.MetricRadarChart=d.MetricRadarChart,exports.MirroredBarChart=d.MirroredBarChart,exports.MultipleSelector=W.MultipleSelector,exports.NameDisplay=ue.NameDisplay,exports.NavigationMenu=G.NavigationMenu,exports.NavigationMenuContent=G.NavigationMenuContent,exports.NavigationMenuIndicator=G.NavigationMenuIndicator,exports.NavigationMenuItem=G.NavigationMenuItem,exports.NavigationMenuLink=G.NavigationMenuLink,exports.NavigationMenuList=G.NavigationMenuList,exports.NavigationMenuTrigger=G.NavigationMenuTrigger,exports.NavigationMenuViewport=G.NavigationMenuViewport,exports.NotAuthorized=w.NotAuthorized,exports.NotFound=T.NotFound,exports.NumberField=_.m,exports.OrdersBarChart=d.OrdersBarChart,exports.Pagination=K.Pagination,exports.PaginationContent=K.PaginationContent,exports.PaginationEllipsis=K.PaginationEllipsis,exports.PaginationItem=K.PaginationItem,exports.PaginationLink=K.PaginationLink,exports.PaginationNext=K.PaginationNext,exports.PaginationPrevious=K.PaginationPrevious,exports.Paragraph=t.Paragraph,exports.PasswordField=_.h,exports.PaymentLayout=b.t,exports.PhoneNumberDisplay=de.PhoneNumberDisplay,exports.Popover=v.Popover,exports.PopoverAnchor=v.PopoverAnchor,exports.PopoverClose=v.PopoverClose,exports.PopoverContent=v.PopoverContent,exports.PopoverTrigger=v.PopoverTrigger,exports.PortfolioAllocationTreemap=d.PortfolioAllocationTreemap,exports.PriceRangeAreaChart=d.PriceRangeAreaChart,exports.ProductCard=re.ProductCard,exports.Progress=Pe.Progress,exports.RadioGroup=q.RadioGroup,exports.RadioGroupField=_.g,exports.RadioGroupItem=q.RadioGroupItem,exports.RefreshBtn=ke.RefreshBtn,exports.RegisterPage=k.RegisterPage,exports.ResizableHandle=g.ResizableHandle,exports.ResizablePanel=g.ResizablePanel,exports.ResizablePanelGroup=g.ResizablePanelGroup,exports.RevenueAreaChart=d.RevenueAreaChart,exports.RevenueOrdersComposedChart=d.RevenueOrdersComposedChart,exports.RoleBadge=fe.RoleBadge,exports.SalesTargetRadialChart=d.SalesTargetRadialChart,exports.SankeyFlowChart=d.SankeyFlowChart,exports.ScrollArea=J.ScrollArea,exports.ScrollBar=J.ScrollBar,exports.SearchInput=Me.SearchInput,exports.SearchModal=ye.t,exports.Select=Y.Select,exports.SelectContent=Y.SelectContent,exports.SelectField=_._,exports.SelectGroup=Y.SelectGroup,exports.SelectItem=Y.SelectItem,exports.SelectLabel=Y.SelectLabel,exports.SelectSeparator=Y.SelectSeparator,exports.SelectTrigger=Y.SelectTrigger,exports.SelectValue=Y.SelectValue,exports.Separator=Ce.Separator,exports.Sheet=l.Sheet,exports.SheetClose=l.SheetClose,exports.SheetContent=l.SheetContent,exports.SheetDescription=l.SheetDescription,exports.SheetFooter=l.SheetFooter,exports.SheetHeader=l.SheetHeader,exports.SheetTitle=l.SheetTitle,exports.SheetTrigger=l.SheetTrigger,exports.SimpleArrayField=_.v,exports.SimpleBooleanField=_.y,exports.SimpleCard=ie.SimpleCard,exports.SimpleComboboxField=_.b,exports.SimpleDateField=_.x,exports.SimpleEmailField=_.S,exports.SimpleNumberField=_.C,exports.SimplePasswordField=_.w,exports.SimpleRadioGroupField=_.T,exports.SimpleSelectField=_.E,exports.SimpleTextField=_.D,exports.SimpleTextareaField=_.O,exports.Skeleton=ee.Skeleton,exports.Slider=Ie.Slider,exports.SparklineChart=d.SparklineChart,exports.Spinner=xe.Spinner,exports.StackedAreaChart=d.StackedAreaChart,exports.Statistic=o.Statistic,exports.Switch=Re.Switch,exports.SwitchField=_.k,exports.Table=X.Table,exports.TableBody=X.TableBody,exports.TableCaption=X.TableCaption,exports.TableCell=X.TableCell,exports.TableFooter=X.TableFooter,exports.TableHead=X.TableHead,exports.TableHeader=X.TableHeader,exports.TableRow=X.TableRow,exports.Tabs=Z.Tabs,exports.TabsContent=Z.TabsContent,exports.TabsList=Z.TabsList,exports.TabsTrigger=Z.TabsTrigger,exports.TanStackActionSubmit=_.A,exports.TanStackActionsForm=_.j,exports.TanStackCardForm=_.M,exports.TanStackContainerForm=_.N,exports.TanStackDialogForm=_.P,exports.TanStackFieldGroup=_.F,exports.TanStackPopoverForm=_.I,exports.TanStackSectionForm=_.L,exports.TanStackTitleField=_.R,exports.TextEditor=y.t,exports.TextEditorField=_.z,exports.TextEditorToolbar=y.n,exports.TextField=_.B,exports.Textarea=ze.Textarea,exports.TextareaField=_.V,exports.Title=he.Title,exports.Toaster=Le.Toaster,exports.Toggle=Q.Toggle,exports.ToggleGroup=$.ToggleGroup,exports.ToggleGroupItem=$.ToggleGroupItem,exports.Tooltip=a.Tooltip,exports.TooltipContent=a.TooltipContent,exports.TooltipProvider=a.TooltipProvider,exports.TooltipTrigger=a.TooltipTrigger,exports.TopProductsBarChart=d.TopProductsBarChart,exports.TrashBtn=Ae.TrashBtn,exports.UITableAnalysisPanel=m.t,exports.UITableAvatarNameDisplay=m.n,exports.UITableBadgeDisplay=m.r,exports.UITableBody=m.W,exports.UITableBooleanDisplay=m.i,exports.UITableCell=m.U,exports.UITableCellActions=m.H,exports.UITableCellSelect=m.V,exports.UITableContainer=m.D,exports.UITableCurrencyDisplay=m.a,exports.UITableDateDisplay=m.o,exports.UITableDescriptionDisplay=m.s,exports.UITableEditButton=m.c,exports.UITableEmailDisplay=m.l,exports.UITableEmpty=m.Y,exports.UITableEmptyDisplay=m.B,exports.UITableFilter=m.u,exports.UITableFooter=m.z,exports.UITableFooterRow=m.R,exports.UITableHead=m.L,exports.UITableHeadCell=m.F,exports.UITableHeadCellOption=m.I,exports.UITableHeadCellSelect=m.P,exports.UITableHeadRow=m.N,exports.UITableInnerTable=m.M,exports.UITableInnerWrapper=m.j,exports.UITableListDisplay=m.d,exports.UITableLoadMore=m.A,exports.UITableMoreButton=m.f,exports.UITableNameDisplay=m.p,exports.UITablePermalink=m.m,exports.UITablePhoneNumberDisplay=m.h,exports.UITableProgressDisplay=m.g,exports.UITableProvider=m.E,exports.UITableRemoveButton=m._,exports.UITableRow=m.k,exports.UITableStatisticDisplay=m.v,exports.UITableStatusDisplay=m.y,exports.UITableSummaryBar=m.b,exports.UITableToggleButton=m.x,exports.UITableTooltip=m.S,exports.UITableTooltipActions=m.C,exports.UITableTooltipFilter=m.w,exports.UITableUserDataDisplay=m.T,exports.UITableWrapper=m.O,exports.UploadImageBtn=je.UploadImageBtn,exports.UserDataDisplay=pe.UserDataDisplay,exports.VerifyEmailPage=Te.VerifyEmailPage,exports.VolumeBarChart=d.VolumeBarChart,exports.WaterfallChart=d.WaterfallChart,exports.badgeVariants=i.badgeVariants,exports.buttonGroupVariants=M.buttonGroupVariants,exports.computeIndexedSeries=d.computeIndexedSeries,exports.formatCompactNumber=d.formatCompactNumber,exports.formatCurrency=d.formatCurrency,exports.formatPercent=d.formatPercent,exports.formatSignedPercent=d.formatSignedPercent,exports.getChartColor=d.getChartColor,exports.getDirectionColor=d.getDirectionColor,exports.navigationMenuTriggerStyle=G.navigationMenuTriggerStyle,exports.paragraphVariants=t.paragraphVariants,exports.toDateLabel=d.toDateLabel,exports.toast=Be.toast,exports.toggleVariants=Q.toggleVariants,exports.useChart=F.useChart,exports.useDebounce=W.useDebounce,exports.useFormField=B.useFormField,exports.useTanStackFieldContext=_.G,exports.useTanStackForm=_.H,exports.useTanStackFormContext=_.K,exports.withTanStackFieldGroup=_.U,exports.withTanStackForm=_.W;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./ui/button.cjs"),t=require("./typography/paragraph.cjs"),n=require("./ui/card.cjs"),ee=require("./ui/skeleton.cjs"),te=require("./ui/image.cjs"),ne=require("./cards/grid-product-card.cjs"),re=require("./cards/product-card.cjs"),ie=require("./cards/simple-card.cjs"),ae=require("./layouts/flex.cjs"),oe=require("./data-display/country.cjs"),r=require("./data-display/data-list.cjs"),se=require("./date-B3cozmfV.cjs"),i=require("./ui/badge.cjs"),a=require("./ui/tooltip.cjs"),ce=require("./data-display/date-tooltip.cjs"),le=require("./data-display/empty.cjs"),ue=require("./data-display/name.cjs"),de=require("./data-display/phone-number.cjs"),fe=require("./data-display/role-badge.cjs"),o=require("./data-display/statistic.cjs"),s=require("./ui/avatar.cjs"),pe=require("./data-display/user.cjs"),c=require("./ui/alert-dialog.cjs"),me=require("./dialogs/confirm-dialog.cjs"),he=require("./typography/title.cjs"),l=require("./ui/sheet.cjs"),ge=require("./dialogs/detail-dialog/index.cjs"),_e=require("./dialogs/error-dialog.cjs"),u=require("./ui/dialog.cjs"),ve=require("./dialogs/loading-dialog.cjs"),d=require("./features/charts/index.cjs"),f=require("./features/descriptions/index.cjs"),p=require("./ui/command.cjs"),ye=require("./search-modal-CMhsIxae.cjs"),m=require("./tables-078i-X0d.cjs"),be=require("./ui/checkbox.cjs"),h=require("./ui/dropdown-menu.cjs"),xe=require("./ui/spinner.cjs"),g=require("./ui/resizable.cjs"),_=require("./tanstack-form-BC61U3F-.cjs"),v=require("./ui/popover.cjs"),y=require("./text-editor-CfQk5dIx.cjs"),Se=require("./ui/input.cjs"),Ce=require("./ui/separator.cjs"),we=require("./cms-layout-CGGJqbr0.cjs"),b=require("./payment-layout-Cb-Q8KD2.cjs"),x=require("./layouts/grid.cjs"),S=require("./pages/FeatureDeveloping.cjs"),C=require("./pages/FeatureFixing.cjs"),w=require("./pages/NotAuthorized.cjs"),T=require("./pages/NotFound.cjs"),E=require("./alert-D31c6DLq.cjs"),D=require("./ui/label.cjs"),O=require("./pages/LoginPage.cjs"),k=require("./pages/RegisterPage.cjs"),A=require("./ui/input-otp.cjs"),Te=require("./pages/VerifyEmailPage.cjs"),Ee=require("./systems/google.cjs"),De=require("./ui/buttons/add-new.cjs"),Oe=require("./ui/buttons/edit.cjs"),ke=require("./ui/buttons/refresh.cjs"),Ae=require("./ui/buttons/trash.cjs"),je=require("./ui/buttons/upload-image.cjs"),Me=require("./ui/inputs/search-input.cjs"),Ne=require("./ui/aspect-ratio.cjs"),j=require("./ui/breadcrumb.cjs"),M=require("./ui/button-group.cjs"),N=require("./ui/calendar.cjs"),P=require("./ui/carousel.cjs"),F=require("./ui/chart.cjs"),I=require("./ui/collapsible.cjs"),L=require("./ui/context-menu.cjs"),R=require("./ui/drawer.cjs"),z=require("./ui/empty.cjs"),Pe=require("./ui/progress.cjs"),Fe=require("./ui/file-uploader.cjs"),B=require("./ui/form.cjs"),V=require("./ui/hover-card.cjs"),H=require("./ui/item.cjs"),U=require("./ui/menubar.cjs"),W=require("./ui/multi-select.cjs"),G=require("./ui/navigation-menu.cjs"),K=require("./ui/pagination.cjs"),q=require("./ui/radio-group.cjs"),J=require("./ui/scroll-area.cjs"),Y=require("./ui/select.cjs"),Ie=require("./ui/slider.cjs"),Le=require("./ui/sonner.cjs"),Re=require("./ui/switch.cjs"),X=require("./ui/table.cjs"),Z=require("./ui/tabs.cjs"),ze=require("./ui/textarea.cjs"),Q=require("./ui/toggle.cjs"),$=require("./ui/toggle-group.cjs");let Be=require("sonner");exports.ActivityHeatmapChart=d.ActivityHeatmapChart,exports.AddNewBtn=De.AddNewBtn,exports.Alert=E.t,exports.AlertDescription=E.n,exports.AlertDialog=c.AlertDialog,exports.AlertDialogAction=c.AlertDialogAction,exports.AlertDialogCancel=c.AlertDialogCancel,exports.AlertDialogContent=c.AlertDialogContent,exports.AlertDialogDescription=c.AlertDialogDescription,exports.AlertDialogFooter=c.AlertDialogFooter,exports.AlertDialogHeader=c.AlertDialogHeader,exports.AlertDialogOverlay=c.AlertDialogOverlay,exports.AlertDialogPortal=c.AlertDialogPortal,exports.AlertDialogTitle=c.AlertDialogTitle,exports.AlertDialogTrigger=c.AlertDialogTrigger,exports.AlertTitle=E.r,exports.ArrayCol=_.t,exports.ArrayHeaderRow=_.n,exports.AspectRatio=Ne.AspectRatio,exports.Avatar=s.Avatar,exports.AvatarFallback=s.AvatarFallback,exports.AvatarImage=s.AvatarImage,exports.Badge=i.Badge,exports.Breadcrumb=j.Breadcrumb,exports.BreadcrumbEllipsis=j.BreadcrumbEllipsis,exports.BreadcrumbItem=j.BreadcrumbItem,exports.BreadcrumbLink=j.BreadcrumbLink,exports.BreadcrumbList=j.BreadcrumbList,exports.BreadcrumbPage=j.BreadcrumbPage,exports.BreadcrumbSeparator=j.BreadcrumbSeparator,exports.Button=e.Button,exports.ButtonGroup=M.ButtonGroup,exports.ButtonGroupSeparator=M.ButtonGroupSeparator,exports.ButtonGroupText=M.ButtonGroupText,exports.CMSLayout=we.t,exports.Calendar=N.Calendar,exports.CalendarDayButton=N.CalendarDayButton,exports.CandlestickChart=d.CandlestickChart,exports.Card=n.Card,exports.CardAction=n.CardAction,exports.CardContent=n.CardContent,exports.CardDescription=n.CardDescription,exports.CardFooter=n.CardFooter,exports.CardHeader=n.CardHeader,exports.CardTitle=n.CardTitle,exports.Carousel=P.Carousel,exports.CarouselContent=P.CarouselContent,exports.CarouselItem=P.CarouselItem,exports.CarouselNext=P.CarouselNext,exports.CarouselPrevious=P.CarouselPrevious,exports.ChartContainer=F.ChartContainer,exports.ChartLegend=F.ChartLegend,exports.ChartLegendContent=F.ChartLegendContent,exports.ChartStyle=F.ChartStyle,exports.ChartTooltip=F.ChartTooltip,exports.ChartTooltipContent=F.ChartTooltipContent,exports.Checkbox=be.Checkbox,exports.CheckboxField=_.r,exports.Collapsible=I.Collapsible,exports.CollapsibleContent=I.CollapsibleContent,exports.CollapsibleTrigger=I.CollapsibleTrigger,exports.ComboboxField=_.i,exports.Command=p.Command,exports.CommandDialog=p.CommandDialog,exports.CommandEmpty=p.CommandEmpty,exports.CommandGroup=p.CommandGroup,exports.CommandInput=p.CommandInput,exports.CommandItem=p.CommandItem,exports.CommandList=p.CommandList,exports.CommandSeparator=p.CommandSeparator,exports.CommandShortcut=p.CommandShortcut,exports.ConfirmDialog=me.ConfirmDialog,exports.ContextMenu=L.ContextMenu,exports.ContextMenuCheckboxItem=L.ContextMenuCheckboxItem,exports.ContextMenuContent=L.ContextMenuContent,exports.ContextMenuGroup=L.ContextMenuGroup,exports.ContextMenuItem=L.ContextMenuItem,exports.ContextMenuLabel=L.ContextMenuLabel,exports.ContextMenuPortal=L.ContextMenuPortal,exports.ContextMenuRadioGroup=L.ContextMenuRadioGroup,exports.ContextMenuRadioItem=L.ContextMenuRadioItem,exports.ContextMenuSeparator=L.ContextMenuSeparator,exports.ContextMenuShortcut=L.ContextMenuShortcut,exports.ContextMenuSub=L.ContextMenuSub,exports.ContextMenuSubContent=L.ContextMenuSubContent,exports.ContextMenuSubTrigger=L.ContextMenuSubTrigger,exports.ContextMenuTrigger=L.ContextMenuTrigger,exports.ConversionFunnelChart=d.ConversionFunnelChart,exports.CorrelationScatterChart=d.CorrelationScatterChart,exports.CountryDisplay=oe.CountryDisplay,exports.DataList=r.DataList,exports.DataListItem=r.DataListItem,exports.DateDisplay=se.t,exports.DateField=_.a,exports.DateTooltip=ce.DateTooltip,exports.Description=f.Description,exports.DescriptionBadge=f.DescriptionBadge,exports.DescriptionBoolean=f.DescriptionBoolean,exports.DescriptionCopy=f.DescriptionCopy,exports.DescriptionDate=f.DescriptionDate,exports.DescriptionEmpty=f.DescriptionEmpty,exports.DescriptionHeader=f.DescriptionHeader,exports.DescriptionImages=f.DescriptionImages,exports.DescriptionItem=f.DescriptionItem,exports.DescriptionLink=f.DescriptionLink,exports.DescriptionLongText=f.DescriptionLongText,exports.DescriptionName=f.DescriptionName,exports.DescriptionNumberPhone=f.DescriptionNumberPhone,exports.DescriptionSection=f.DescriptionSection,exports.DescriptionStatistic=f.DescriptionStatistic,exports.DescriptionStatus=f.DescriptionStatus,exports.DescriptionTagList=f.DescriptionTagList,exports.DescriptionUser=f.DescriptionUser,exports.DetailDialog=ge.DetailDialog,exports.Dialog=u.Dialog,exports.DialogClose=u.DialogClose,exports.DialogContent=u.DialogContent,exports.DialogDescription=u.DialogDescription,exports.DialogFooter=u.DialogFooter,exports.DialogHeader=u.DialogHeader,exports.DialogOverlay=u.DialogOverlay,exports.DialogPortal=u.DialogPortal,exports.DialogTitle=u.DialogTitle,exports.DialogTrigger=u.DialogTrigger,exports.DonutChart=d.DonutChart,exports.Drawer=R.Drawer,exports.DrawerClose=R.DrawerClose,exports.DrawerContent=R.DrawerContent,exports.DrawerDescription=R.DrawerDescription,exports.DrawerFooter=R.DrawerFooter,exports.DrawerHeader=R.DrawerHeader,exports.DrawerOverlay=R.DrawerOverlay,exports.DrawerPortal=R.DrawerPortal,exports.DrawerTitle=R.DrawerTitle,exports.DrawerTrigger=R.DrawerTrigger,exports.DropdownMenu=h.DropdownMenu,exports.DropdownMenuCheckboxItem=h.DropdownMenuCheckboxItem,exports.DropdownMenuContent=h.DropdownMenuContent,exports.DropdownMenuGroup=h.DropdownMenuGroup,exports.DropdownMenuItem=h.DropdownMenuItem,exports.DropdownMenuLabel=h.DropdownMenuLabel,exports.DropdownMenuPortal=h.DropdownMenuPortal,exports.DropdownMenuRadioGroup=h.DropdownMenuRadioGroup,exports.DropdownMenuRadioItem=h.DropdownMenuRadioItem,exports.DropdownMenuSeparator=h.DropdownMenuSeparator,exports.DropdownMenuShortcut=h.DropdownMenuShortcut,exports.DropdownMenuSub=h.DropdownMenuSub,exports.DropdownMenuSubContent=h.DropdownMenuSubContent,exports.DropdownMenuSubTrigger=h.DropdownMenuSubTrigger,exports.DropdownMenuTrigger=h.DropdownMenuTrigger,exports.EditBtn=Oe.EditBtn,exports.EmailField=_.o,exports.Empty=z.Empty,exports.EmptyContent=z.EmptyContent,exports.EmptyDescription=z.EmptyDescription,exports.EmptyDisplay=le.EmptyDisplay,exports.EmptyHeader=z.EmptyHeader,exports.EmptyMedia=z.EmptyMedia,exports.EmptyTitle=z.EmptyTitle,exports.ErrorDialog=_e.ErrorDialog,exports.FeatureDeveloping=S.FeatureDeveloping,exports.FeatureFixing=C.FeatureFixing,exports.Field=_.s,exports.FieldContent=_.c,exports.FieldContentMain=_.l,exports.FieldError=_.u,exports.FieldGroup=_.d,exports.FieldLabel=_.f,exports.FieldSeparator=_.p,exports.FileUploader=Fe.FileUploader,exports.Flex=ae.Flex,exports.Form=B.Form,exports.FormControl=B.FormControl,exports.FormDescription=B.FormDescription,exports.FormField=B.FormField,exports.FormItem=B.FormItem,exports.FormLabel=B.FormLabel,exports.FormMessage=B.FormMessage,exports.GainLossBarChart=d.GainLossBarChart,exports.Google=Ee.Google,exports.Grid=x.Grid,exports.GridProductCard=ne.GridProductCard,exports.HoverCard=V.HoverCard,exports.HoverCardContent=V.HoverCardContent,exports.HoverCardTrigger=V.HoverCardTrigger,exports.Image=te.Image,exports.IndexedPerformanceLineChart=d.IndexedPerformanceLineChart,exports.Input=Se.Input,exports.InputOTP=A.InputOTP,exports.InputOTPGroup=A.InputOTPGroup,exports.InputOTPSeparator=A.InputOTPSeparator,exports.InputOTPSlot=A.InputOTPSlot,exports.Item=H.Item,exports.ItemActions=H.ItemActions,exports.ItemContent=H.ItemContent,exports.ItemDescription=H.ItemDescription,exports.ItemFooter=H.ItemFooter,exports.ItemGroup=H.ItemGroup,exports.ItemHeader=H.ItemHeader,exports.ItemMedia=H.ItemMedia,exports.ItemSeparator=H.ItemSeparator,exports.ItemTitle=H.ItemTitle,exports.Label=D.Label,exports.LoadingDialog=ve.LoadingDialog,exports.LoginPage=O.LoginPage,exports.Menubar=U.Menubar,exports.MenubarCheckboxItem=U.MenubarCheckboxItem,exports.MenubarContent=U.MenubarContent,exports.MenubarGroup=U.MenubarGroup,exports.MenubarItem=U.MenubarItem,exports.MenubarLabel=U.MenubarLabel,exports.MenubarMenu=U.MenubarMenu,exports.MenubarPortal=U.MenubarPortal,exports.MenubarRadioGroup=U.MenubarRadioGroup,exports.MenubarRadioItem=U.MenubarRadioItem,exports.MenubarSeparator=U.MenubarSeparator,exports.MenubarShortcut=U.MenubarShortcut,exports.MenubarSub=U.MenubarSub,exports.MenubarSubContent=U.MenubarSubContent,exports.MenubarSubTrigger=U.MenubarSubTrigger,exports.MenubarTrigger=U.MenubarTrigger,exports.MetricRadarChart=d.MetricRadarChart,exports.MirroredBarChart=d.MirroredBarChart,exports.MultipleSelector=W.MultipleSelector,exports.NameDisplay=ue.NameDisplay,exports.NavigationMenu=G.NavigationMenu,exports.NavigationMenuContent=G.NavigationMenuContent,exports.NavigationMenuIndicator=G.NavigationMenuIndicator,exports.NavigationMenuItem=G.NavigationMenuItem,exports.NavigationMenuLink=G.NavigationMenuLink,exports.NavigationMenuList=G.NavigationMenuList,exports.NavigationMenuTrigger=G.NavigationMenuTrigger,exports.NavigationMenuViewport=G.NavigationMenuViewport,exports.NotAuthorized=w.NotAuthorized,exports.NotFound=T.NotFound,exports.NumberField=_.m,exports.OrdersBarChart=d.OrdersBarChart,exports.Pagination=K.Pagination,exports.PaginationContent=K.PaginationContent,exports.PaginationEllipsis=K.PaginationEllipsis,exports.PaginationItem=K.PaginationItem,exports.PaginationLink=K.PaginationLink,exports.PaginationNext=K.PaginationNext,exports.PaginationPrevious=K.PaginationPrevious,exports.Paragraph=t.Paragraph,exports.PasswordField=_.h,exports.PaymentLayout=b.t,exports.PhoneNumberDisplay=de.PhoneNumberDisplay,exports.Popover=v.Popover,exports.PopoverAnchor=v.PopoverAnchor,exports.PopoverClose=v.PopoverClose,exports.PopoverContent=v.PopoverContent,exports.PopoverTrigger=v.PopoverTrigger,exports.PortfolioAllocationTreemap=d.PortfolioAllocationTreemap,exports.PriceRangeAreaChart=d.PriceRangeAreaChart,exports.ProductCard=re.ProductCard,exports.Progress=Pe.Progress,exports.RadioGroup=q.RadioGroup,exports.RadioGroupField=_.g,exports.RadioGroupItem=q.RadioGroupItem,exports.RefreshBtn=ke.RefreshBtn,exports.RegisterPage=k.RegisterPage,exports.ResizableHandle=g.ResizableHandle,exports.ResizablePanel=g.ResizablePanel,exports.ResizablePanelGroup=g.ResizablePanelGroup,exports.RevenueAreaChart=d.RevenueAreaChart,exports.RevenueOrdersComposedChart=d.RevenueOrdersComposedChart,exports.RoleBadge=fe.RoleBadge,exports.SalesTargetRadialChart=d.SalesTargetRadialChart,exports.SankeyFlowChart=d.SankeyFlowChart,exports.ScrollArea=J.ScrollArea,exports.ScrollBar=J.ScrollBar,exports.SearchInput=Me.SearchInput,exports.SearchModal=ye.t,exports.Select=Y.Select,exports.SelectContent=Y.SelectContent,exports.SelectField=_._,exports.SelectGroup=Y.SelectGroup,exports.SelectItem=Y.SelectItem,exports.SelectLabel=Y.SelectLabel,exports.SelectSeparator=Y.SelectSeparator,exports.SelectTrigger=Y.SelectTrigger,exports.SelectValue=Y.SelectValue,exports.Separator=Ce.Separator,exports.Sheet=l.Sheet,exports.SheetClose=l.SheetClose,exports.SheetContent=l.SheetContent,exports.SheetDescription=l.SheetDescription,exports.SheetFooter=l.SheetFooter,exports.SheetHeader=l.SheetHeader,exports.SheetTitle=l.SheetTitle,exports.SheetTrigger=l.SheetTrigger,exports.SimpleArrayField=_.v,exports.SimpleBooleanField=_.y,exports.SimpleCard=ie.SimpleCard,exports.SimpleComboboxField=_.b,exports.SimpleDateField=_.x,exports.SimpleEmailField=_.S,exports.SimpleNumberField=_.C,exports.SimplePasswordField=_.w,exports.SimpleRadioGroupField=_.T,exports.SimpleSelectField=_.E,exports.SimpleTextField=_.D,exports.SimpleTextareaField=_.O,exports.Skeleton=ee.Skeleton,exports.Slider=Ie.Slider,exports.SparklineChart=d.SparklineChart,exports.Spinner=xe.Spinner,exports.StackedAreaChart=d.StackedAreaChart,exports.Statistic=o.Statistic,exports.Switch=Re.Switch,exports.SwitchField=_.k,exports.Table=X.Table,exports.TableBody=X.TableBody,exports.TableCaption=X.TableCaption,exports.TableCell=X.TableCell,exports.TableFooter=X.TableFooter,exports.TableHead=X.TableHead,exports.TableHeader=X.TableHeader,exports.TableRow=X.TableRow,exports.Tabs=Z.Tabs,exports.TabsContent=Z.TabsContent,exports.TabsList=Z.TabsList,exports.TabsTrigger=Z.TabsTrigger,exports.TanStackActionSubmit=_.A,exports.TanStackActionsForm=_.j,exports.TanStackCardForm=_.M,exports.TanStackContainerForm=_.N,exports.TanStackDialogForm=_.P,exports.TanStackFieldGroup=_.F,exports.TanStackPopoverForm=_.I,exports.TanStackSectionForm=_.L,exports.TanStackTitleField=_.R,exports.TextEditor=y.t,exports.TextEditorField=_.z,exports.TextEditorToolbar=y.n,exports.TextField=_.B,exports.Textarea=ze.Textarea,exports.TextareaField=_.V,exports.Title=he.Title,exports.Toaster=Le.Toaster,exports.Toggle=Q.Toggle,exports.ToggleGroup=$.ToggleGroup,exports.ToggleGroupItem=$.ToggleGroupItem,exports.Tooltip=a.Tooltip,exports.TooltipContent=a.TooltipContent,exports.TooltipProvider=a.TooltipProvider,exports.TooltipTrigger=a.TooltipTrigger,exports.TopProductsBarChart=d.TopProductsBarChart,exports.TrashBtn=Ae.TrashBtn,exports.UITableAnalysisPanel=m.t,exports.UITableAvatarNameDisplay=m.n,exports.UITableBadgeDisplay=m.r,exports.UITableBody=m.K,exports.UITableBooleanDisplay=m.i,exports.UITableCell=m.G,exports.UITableCellActions=m.W,exports.UITableCellSelect=m.U,exports.UITableContainer=m.D,exports.UITableCurrencyDisplay=m.a,exports.UITableDateDisplay=m.o,exports.UITableDescriptionDisplay=m.s,exports.UITableEditButton=m.c,exports.UITableEmailDisplay=m.l,exports.UITableEmpty=m.Q,exports.UITableEmptyDisplay=m.H,exports.UITableFilter=m.u,exports.UITableFooter=m.V,exports.UITableFooterRow=m.R,exports.UITableHead=m.L,exports.UITableHeadCell=m.F,exports.UITableHeadCellOption=m.I,exports.UITableHeadCellSelect=m.P,exports.UITableHeadRow=m.N,exports.UITableInnerTable=m.M,exports.UITableInnerWrapper=m.j,exports.UITableListDisplay=m.d,exports.UITableLoadMore=m.A,exports.UITableMoreButton=m.f,exports.UITableNameDisplay=m.p,exports.UITablePermalink=m.m,exports.UITablePhoneNumberDisplay=m.h,exports.UITableProgressDisplay=m.g,exports.UITableProvider=m.E,exports.UITableRemoveButton=m._,exports.UITableRow=m.k,exports.UITableStatisticDisplay=m.v,exports.UITableStatusDisplay=m.y,exports.UITableSummaryBar=m.b,exports.UITableToggleButton=m.x,exports.UITableTooltip=m.S,exports.UITableTooltipActions=m.C,exports.UITableTooltipFilter=m.w,exports.UITableUserDataDisplay=m.T,exports.UITableWrapper=m.O,exports.UploadImageBtn=je.UploadImageBtn,exports.UserDataDisplay=pe.UserDataDisplay,exports.VerifyEmailPage=Te.VerifyEmailPage,exports.VolumeBarChart=d.VolumeBarChart,exports.WaterfallChart=d.WaterfallChart,exports.badgeVariants=i.badgeVariants,exports.buttonGroupVariants=M.buttonGroupVariants,exports.computeIndexedSeries=d.computeIndexedSeries,exports.formatCompactNumber=d.formatCompactNumber,exports.formatCurrency=d.formatCurrency,exports.formatPercent=d.formatPercent,exports.formatSignedPercent=d.formatSignedPercent,exports.getChartColor=d.getChartColor,exports.getDirectionColor=d.getDirectionColor,exports.navigationMenuTriggerStyle=G.navigationMenuTriggerStyle,exports.paragraphVariants=t.paragraphVariants,exports.toDateLabel=d.toDateLabel,exports.toast=Be.toast,exports.toggleVariants=Q.toggleVariants,exports.useChart=F.useChart,exports.useDebounce=W.useDebounce,exports.useFormField=B.useFormField,exports.useTanStackFieldContext=_.G,exports.useTanStackForm=_.H,exports.useTanStackFormContext=_.K,exports.withTanStackFieldGroup=_.U,exports.withTanStackForm=_.W;