themelia-react-ui 2.0.6 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (912) hide show
  1. package/CHANGELOG.md +250 -0
  2. package/MIGRATION.md +746 -7
  3. package/README.md +27 -23
  4. package/dist/{accordion-0tQUZ20r.js → accordion-DNVqwEIC.js} +36 -36
  5. package/dist/accordion-DNVqwEIC.js.map +1 -0
  6. package/dist/action-menu-D5343RwT.js +286 -0
  7. package/dist/action-menu-D5343RwT.js.map +1 -0
  8. package/dist/ai-artifact-otrz9ZwS.js +1214 -0
  9. package/dist/ai-artifact-otrz9ZwS.js.map +1 -0
  10. package/dist/anchored-positioning-1U_eBFNx.js +9 -0
  11. package/dist/anchored-positioning-1U_eBFNx.js.map +1 -0
  12. package/dist/app-shell-CPN30Nb1.js +372 -0
  13. package/dist/app-shell-CPN30Nb1.js.map +1 -0
  14. package/dist/{attachment-BCpA4e7i.js → attachment-D2-fpfmv.js} +15 -15
  15. package/dist/{attachment-BCpA4e7i.js.map → attachment-D2-fpfmv.js.map} +1 -1
  16. package/dist/{auth-B0girIk_.js → auth-g_oUTDDC.js} +234 -241
  17. package/dist/auth-g_oUTDDC.js.map +1 -0
  18. package/dist/{avatar-B9Jnp-T-.js → avatar-Ca3Ihrq4.js} +4 -4
  19. package/dist/{avatar-B9Jnp-T-.js.map → avatar-Ca3Ihrq4.js.map} +1 -1
  20. package/dist/{badge-wWauMgAt.js → badge-oGiXblW7.js} +8 -9
  21. package/dist/badge-oGiXblW7.js.map +1 -0
  22. package/dist/base/accordion.js +1 -1
  23. package/dist/base/action-menu.js +1 -1
  24. package/dist/base/attachment.js +1 -1
  25. package/dist/base/avatar.js +1 -1
  26. package/dist/base/badge.js +1 -1
  27. package/dist/base/batch-action-bar.js +1 -1
  28. package/dist/base/buttons.js +2 -2
  29. package/dist/base/cards.js +3 -3
  30. package/dist/base/carousel.js +11 -11
  31. package/dist/base/carousel.js.map +1 -1
  32. package/dist/base/cascader.js +1 -1
  33. package/dist/base/chart.js +1 -1
  34. package/dist/base/choice-inputs.js +2 -2
  35. package/dist/base/code-block.js +1 -1
  36. package/dist/base/combobox.js +1 -1
  37. package/dist/base/command.js +1 -1
  38. package/dist/base/copyable.js +1 -1
  39. package/dist/base/date-pickers.js +2 -2
  40. package/dist/base/display.js +7 -7
  41. package/dist/base/feedback.js +4 -4
  42. package/dist/base/forms-numeric.js +2 -2
  43. package/dist/base/forms.js +2 -2
  44. package/dist/base/inline-edit.js +13 -13
  45. package/dist/base/inline-edit.js.map +1 -1
  46. package/dist/base/item.js +1 -1
  47. package/dist/base/media-gallery.js +203 -2
  48. package/dist/base/media-gallery.js.map +1 -0
  49. package/dist/base/metadata-list.js +1 -1
  50. package/dist/base/navigation.js +7 -7
  51. package/dist/base/popover-menu.js +1 -1
  52. package/dist/base/popover.js +1 -1
  53. package/dist/base/qr-code.js +32 -22
  54. package/dist/base/qr-code.js.map +1 -1
  55. package/dist/base/repeaters.js +91 -88
  56. package/dist/base/repeaters.js.map +1 -1
  57. package/dist/base/sidebar.js +2 -2
  58. package/dist/base/signature-pad.js +14 -14
  59. package/dist/base/signature-pad.js.map +1 -1
  60. package/dist/base/skeleton.js +1 -1
  61. package/dist/base/spinner.js +6 -12
  62. package/dist/base/spinner.js.map +1 -1
  63. package/dist/base/structure.js +1 -1
  64. package/dist/base/table.js +1 -1
  65. package/dist/base/text-inputs.js +3 -3
  66. package/dist/base/toaster.js +2 -2
  67. package/dist/base/tree.js +2 -2
  68. package/dist/base/upload-queue.js +303 -2
  69. package/dist/base/upload-queue.js.map +1 -0
  70. package/dist/base/upload.js +3 -4
  71. package/dist/base/value-inputs.js +1 -1
  72. package/dist/{batch-action-bar-BoqWIIpV.js → batch-action-bar-D6MZQNnC.js} +10 -10
  73. package/dist/{batch-action-bar-BoqWIIpV.js.map → batch-action-bar-D6MZQNnC.js.map} +1 -1
  74. package/dist/blocks/admin.js +242 -228
  75. package/dist/blocks/admin.js.map +1 -1
  76. package/dist/blocks/ai.js +395 -357
  77. package/dist/blocks/ai.js.map +1 -1
  78. package/dist/blocks/analytics/charts.js +1022 -0
  79. package/dist/blocks/analytics/charts.js.map +1 -0
  80. package/dist/blocks/analytics/usage-card.js +1 -1
  81. package/dist/blocks/analytics.js +171 -1365
  82. package/dist/blocks/analytics.js.map +1 -1
  83. package/dist/blocks/collaboration.js +1 -1
  84. package/dist/blocks/commerce/receipt.js +1 -1
  85. package/dist/blocks/commerce.js +1487 -1358
  86. package/dist/blocks/commerce.js.map +1 -1
  87. package/dist/blocks/data-display.js +2 -3
  88. package/dist/blocks/onboarding.js +91 -82
  89. package/dist/blocks/onboarding.js.map +1 -1
  90. package/dist/blocks/planning.js +25 -25
  91. package/dist/blocks/planning.js.map +1 -1
  92. package/dist/blocks/timelines.js +2 -2
  93. package/dist/{breadcrumbs-Bp9Ke7kd.js → breadcrumbs-CQ9JSlez.js} +52 -45
  94. package/dist/breadcrumbs-CQ9JSlez.js.map +1 -0
  95. package/dist/{button-ChBovTx0.js → button-rd6FiHfQ.js} +12 -8
  96. package/dist/button-rd6FiHfQ.js.map +1 -0
  97. package/dist/{buttons-DeW0bQeK.js → buttons-pZVgPTZn.js} +230 -246
  98. package/dist/buttons-pZVgPTZn.js.map +1 -0
  99. package/dist/{cards-CNXnmvV5.js → cards-CgWyqvgZ.js} +25 -22
  100. package/dist/{cards-CNXnmvV5.js.map → cards-CgWyqvgZ.js.map} +1 -1
  101. package/dist/cascader-Cf05pwaq.js +444 -0
  102. package/dist/cascader-Cf05pwaq.js.map +1 -0
  103. package/dist/{chart-I7ROnsl8.js → chart-CygRCyIZ.js} +5 -5
  104. package/dist/{chart-I7ROnsl8.js.map → chart-CygRCyIZ.js.map} +1 -1
  105. package/dist/{checkbox-MoyHIAPs.js → checkbox-Dy5_XBMZ.js} +4 -4
  106. package/dist/{checkbox-MoyHIAPs.js.map → checkbox-Dy5_XBMZ.js.map} +1 -1
  107. package/dist/{choice-inputs-DHGtx0QV.js → choice-inputs-oJEsrb5Y.js} +113 -114
  108. package/dist/choice-inputs-oJEsrb5Y.js.map +1 -0
  109. package/dist/{code-block-BSJyq9e-.js → code-block-BrLD7mCi.js} +44 -60
  110. package/dist/code-block-BrLD7mCi.js.map +1 -0
  111. package/dist/collapsible-CRCCg_bO.js +80 -0
  112. package/dist/collapsible-CRCCg_bO.js.map +1 -0
  113. package/dist/{collection-content-CSnwtOTH.js → collection-content-D7SoDlYd.js} +3 -3
  114. package/dist/{collection-content-CSnwtOTH.js.map → collection-content-D7SoDlYd.js.map} +1 -1
  115. package/dist/combobox-Dl6f6kHz.js +362 -0
  116. package/dist/combobox-Dl6f6kHz.js.map +1 -0
  117. package/dist/combobox-DrDXtSSt.js +929 -0
  118. package/dist/combobox-DrDXtSSt.js.map +1 -0
  119. package/dist/command-CjZ2VzKC.js +432 -0
  120. package/dist/command-CjZ2VzKC.js.map +1 -0
  121. package/dist/comments-C2MZyRmh.js +1214 -0
  122. package/dist/comments-C2MZyRmh.js.map +1 -0
  123. package/dist/components/base/accordion/accordion.d.ts +11 -3
  124. package/dist/components/base/action-menu/action-menu.d.ts +11 -3
  125. package/dist/components/base/buttons/button.d.ts +2 -2
  126. package/dist/components/base/buttons/index.d.ts +1 -1
  127. package/dist/components/base/buttons/loader-button.d.ts +6 -15
  128. package/dist/components/base/cards/index.d.ts +1 -1
  129. package/dist/components/base/cards/partials/card-body-context.d.ts +6 -0
  130. package/dist/components/base/cards/smart-card.d.ts +0 -2
  131. package/dist/components/base/cards/smart-card.types.d.ts +12 -10
  132. package/dist/components/base/cascader/cascader.d.ts +8 -2
  133. package/dist/components/base/cascader/cascader.types.d.ts +24 -2
  134. package/dist/components/base/cascader/index.d.ts +1 -1
  135. package/dist/components/base/choice-inputs/switch.d.ts +1 -1
  136. package/dist/components/base/code-block/use-code-copy.d.ts +2 -6
  137. package/dist/components/base/command/command.d.ts +1 -1
  138. package/dist/components/base/date-pickers/datepicker.types.d.ts +1 -3
  139. package/dist/components/base/display/dialog.d.ts +3 -9
  140. package/dist/components/base/display/index.d.ts +2 -3
  141. package/dist/components/base/display/separator.d.ts +1 -1
  142. package/dist/components/base/feedback/alert.d.ts +2 -1
  143. package/dist/components/base/feedback/empty.d.ts +10 -2
  144. package/dist/components/base/forms/workflow.d.ts +2 -2
  145. package/dist/components/base/forms-numeric/dimensions-input.d.ts +9 -17
  146. package/dist/components/base/forms-numeric/index.d.ts +3 -3
  147. package/dist/components/base/item/item.types.d.ts +6 -2
  148. package/dist/components/base/metadata-list/index.d.ts +1 -3
  149. package/dist/components/base/metadata-list/metadata-list.d.ts +4 -1
  150. package/dist/components/base/navigation/index.d.ts +2 -2
  151. package/dist/components/base/navigation/language-switcher.d.ts +7 -6
  152. package/dist/components/base/navigation/navigation-tabs.d.ts +8 -1
  153. package/dist/components/base/navigation/page-header/index.d.ts +1 -1
  154. package/dist/components/base/navigation/page-header/page-header.d.ts +13 -17
  155. package/dist/components/base/navigation/pagination.d.ts +5 -5
  156. package/dist/components/base/popover/popover.recipes.d.ts +0 -1
  157. package/dist/components/base/qr-code/qr-code.d.ts +4 -0
  158. package/dist/components/base/repeaters/index.d.ts +1 -1
  159. package/dist/components/base/repeaters/key-value-editor.d.ts +4 -0
  160. package/dist/components/base/sheet/sheet.d.ts +6 -15
  161. package/dist/components/base/sidebar/index.d.ts +1 -6
  162. package/dist/components/base/sidebar/sidebar.d.ts +38 -10
  163. package/dist/components/base/skeleton/skeleton.d.ts +1 -1
  164. package/dist/components/base/structure/structure.types.d.ts +11 -2
  165. package/dist/components/base/text-inputs/index.d.ts +1 -1
  166. package/dist/components/base/tree/index.d.ts +1 -0
  167. package/dist/components/base/tree/tree.d.ts +2 -2
  168. package/dist/components/base/tree/tree.types.d.ts +7 -1
  169. package/dist/components/base/upload/file-upload.validation.d.ts +37 -1
  170. package/dist/components/base/upload/image-upload.d.ts +2 -0
  171. package/dist/components/base/upload/index.d.ts +3 -9
  172. package/dist/components/base/value-inputs/date-time-input.d.ts +4 -0
  173. package/dist/components/base/value-inputs/slider.d.ts +5 -2
  174. package/dist/components/blocks/admin/action-surfaces/index.d.ts +17 -4
  175. package/dist/components/blocks/admin/api-key-list/api-key-list.types.d.ts +9 -3
  176. package/dist/components/blocks/admin/index.d.ts +1 -1
  177. package/dist/components/blocks/ai/ai-artifact/ai-artifact.d.ts +1 -1
  178. package/dist/components/blocks/ai/ai-artifact/types.d.ts +9 -4
  179. package/dist/components/blocks/ai/ai-chain-of-thought/ai-chain-of-thought.d.ts +1 -1
  180. package/dist/components/blocks/ai/ai-chain-of-thought/types.d.ts +11 -1
  181. package/dist/components/blocks/ai/ai-citation/ai-citation.d.ts +1 -1
  182. package/dist/components/blocks/ai/ai-citation/types.d.ts +6 -0
  183. package/dist/components/blocks/ai/ai-confirmation/ai-confirmation.d.ts +1 -1
  184. package/dist/components/blocks/ai/ai-confirmation/types.d.ts +21 -5
  185. package/dist/components/blocks/ai/ai-feedback/types.d.ts +7 -2
  186. package/dist/components/blocks/ai/ai-inline-citation/types.d.ts +9 -3
  187. package/dist/components/blocks/ai/ai-package-info/ai-package-info.d.ts +1 -1
  188. package/dist/components/blocks/ai/ai-package-info/types.d.ts +6 -0
  189. package/dist/components/blocks/ai/ai-sources/ai-sources.d.ts +1 -1
  190. package/dist/components/blocks/ai/ai-sources/types.d.ts +8 -2
  191. package/dist/components/blocks/ai/ai-task/ai-task.d.ts +1 -1
  192. package/dist/components/blocks/ai/ai-task/types.d.ts +10 -1
  193. package/dist/components/blocks/ai/ai-tool-call/ai-tool-call.d.ts +1 -1
  194. package/dist/components/blocks/ai/ai-tool-call/types.d.ts +6 -0
  195. package/dist/components/blocks/ai/ai.strings.d.ts +2 -0
  196. package/dist/components/blocks/analytics/activity-heatmap/types.d.ts +1 -1
  197. package/dist/components/blocks/analytics/analytics.strings.d.ts +2 -0
  198. package/dist/components/blocks/analytics/atoms/metric-trend-chip.d.ts +11 -1
  199. package/dist/components/blocks/analytics/chart-card/chart-card.d.ts +7 -5
  200. package/dist/components/blocks/analytics/charts/index.d.ts +27 -0
  201. package/dist/components/blocks/analytics/index.d.ts +17 -24
  202. package/dist/components/blocks/analytics/metric/metric.d.ts +5 -5
  203. package/dist/components/blocks/analytics/metric-grid/metric-grid.d.ts +2 -2
  204. package/dist/components/blocks/analytics/types.d.ts +12 -3
  205. package/dist/components/blocks/analytics/usage-card/usage-card.strings.d.ts +2 -0
  206. package/dist/components/blocks/commerce/address-card/address-card.d.ts +1 -1
  207. package/dist/components/blocks/commerce/address-card/types.d.ts +5 -16
  208. package/dist/components/blocks/commerce/booking-calendar-event-card/booking-calendar-event-card.d.ts +2 -2
  209. package/dist/components/blocks/commerce/booking-calendar-event-card/booking-calendar-event-card.types.d.ts +6 -4
  210. package/dist/components/blocks/commerce/cart-summary/cart-summary.d.ts +0 -2
  211. package/dist/components/blocks/commerce/cart-summary/index.d.ts +2 -2
  212. package/dist/components/blocks/commerce/cart-summary/types.d.ts +9 -11
  213. package/dist/components/blocks/commerce/coupon-input/coupon-input.d.ts +1 -1
  214. package/dist/components/blocks/commerce/coupon-input/types.d.ts +7 -3
  215. package/dist/components/blocks/commerce/discount-stack/discount-stack.d.ts +0 -2
  216. package/dist/components/blocks/commerce/discount-stack/index.d.ts +2 -2
  217. package/dist/components/blocks/commerce/discount-stack/types.d.ts +4 -6
  218. package/dist/components/blocks/commerce/fulfillment-group/fulfillment-group.d.ts +1 -1
  219. package/dist/components/blocks/commerce/fulfillment-group/types.d.ts +2 -0
  220. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-balance.d.ts +18 -0
  221. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-compact.d.ts +1 -1
  222. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-copy-button.d.ts +0 -1
  223. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-dark.d.ts +1 -1
  224. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-full.d.ts +1 -1
  225. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-illustrated.d.ts +1 -1
  226. package/dist/components/blocks/commerce/giftcard-card/partials/giftcard-minimal.d.ts +1 -1
  227. package/dist/components/blocks/commerce/giftcard-card/types.d.ts +16 -5
  228. package/dist/components/blocks/commerce/index.d.ts +8 -8
  229. package/dist/components/blocks/commerce/inventory-level/inventory-level.strings.d.ts +2 -0
  230. package/dist/components/blocks/commerce/inventory-level/types.d.ts +1 -1
  231. package/dist/components/blocks/commerce/inventory-section/types.d.ts +0 -5
  232. package/dist/components/blocks/commerce/invoice-line-items/types.d.ts +6 -3
  233. package/dist/components/blocks/commerce/loyalty-points/loyalty-points.d.ts +1 -1
  234. package/dist/components/blocks/commerce/loyalty-points/types.d.ts +11 -5
  235. package/dist/components/blocks/commerce/order-status/order-status.d.ts +1 -1
  236. package/dist/components/blocks/commerce/order-status/types.d.ts +8 -8
  237. package/dist/components/blocks/commerce/order-timeline/order-timeline.d.ts +1 -1
  238. package/dist/components/blocks/commerce/order-timeline/types.d.ts +3 -1
  239. package/dist/components/blocks/commerce/payment-method/index.d.ts +2 -2
  240. package/dist/components/blocks/commerce/payment-method/payment-method.d.ts +0 -8
  241. package/dist/components/blocks/commerce/payment-method/types.d.ts +0 -2
  242. package/dist/components/blocks/commerce/receipt/index.d.ts +1 -1
  243. package/dist/components/blocks/commerce/receipt/receipt-items.d.ts +1 -1
  244. package/dist/components/blocks/commerce/receipt/types.d.ts +10 -0
  245. package/dist/components/blocks/commerce/refund-status/index.d.ts +2 -2
  246. package/dist/components/blocks/commerce/refund-status/refund-status.d.ts +0 -2
  247. package/dist/components/blocks/commerce/refund-status/types.d.ts +0 -2
  248. package/dist/components/blocks/commerce/seo-listing/types.d.ts +7 -0
  249. package/dist/components/blocks/commerce/shared/code-entry.d.ts +39 -0
  250. package/dist/components/blocks/commerce/shared/order-status.d.ts +1 -1
  251. package/dist/components/blocks/commerce/subscription-summary/subscription-summary.d.ts +1 -1
  252. package/dist/components/blocks/commerce/subscription-summary/types.d.ts +10 -1
  253. package/dist/components/blocks/commerce/upcoming-booking/index.d.ts +2 -1
  254. package/dist/components/blocks/commerce/upcoming-booking/types.d.ts +8 -0
  255. package/dist/components/blocks/commerce/upcoming-booking/upcoming-booking.d.ts +2 -2
  256. package/dist/components/blocks/commerce/vendor-profile/types.d.ts +4 -5
  257. package/dist/components/blocks/commerce/voucher-entry/types.d.ts +6 -3
  258. package/dist/components/blocks/commerce/voucher-entry/voucher-entry.d.ts +1 -1
  259. package/dist/components/blocks/content-block-hooks.d.ts +22 -0
  260. package/dist/components/blocks/data-display/dense-info-card/dense-info.strings.d.ts +5 -1
  261. package/dist/components/blocks/data-display/dense-info-card/helpers.d.ts +3 -1
  262. package/dist/components/blocks/data-display/dense-info-card/index.d.ts +1 -1
  263. package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-classification.d.ts +1 -1
  264. package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-dashboard.d.ts +1 -1
  265. package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-financial.d.ts +1 -1
  266. package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-project.d.ts +1 -1
  267. package/dist/components/blocks/data-display/dense-info-card/partials/dense-info-score.d.ts +1 -1
  268. package/dist/components/blocks/data-display/dense-info-card/types.d.ts +12 -5
  269. package/dist/components/blocks/data-display/empty-state/empty-state.types.d.ts +6 -0
  270. package/dist/components/blocks/data-display/index.d.ts +0 -1
  271. package/dist/components/blocks/data-display/relationship-card-frame.d.ts +1 -1
  272. package/dist/components/blocks/onboarding/checklist/checklist.types.d.ts +5 -3
  273. package/dist/components/blocks/planning/task-card.types.d.ts +7 -3
  274. package/dist/components/blocks/timelines/changelog/types.d.ts +2 -2
  275. package/dist/components/blocks/timelines/index.d.ts +2 -2
  276. package/dist/components/blocks/timelines/milestones/types.d.ts +2 -2
  277. package/dist/components/blocks/timelines/shared/timeline.d.ts +6 -0
  278. package/dist/components/blocks/timelines/steps-card/index.d.ts +2 -1
  279. package/dist/components/blocks/timelines/steps-card/steps-card.d.ts +2 -2
  280. package/dist/components/blocks/timelines/steps-card/types.d.ts +13 -1
  281. package/dist/components/features/activities/activities.strings.d.ts +5 -3
  282. package/dist/components/features/activities/activities.types.d.ts +28 -11
  283. package/dist/components/features/activities/hooks/use-activity-feed.d.ts +6 -0
  284. package/dist/components/features/activities/index.d.ts +1 -1
  285. package/dist/components/features/activities/partials/activity-headline.d.ts +5 -0
  286. package/dist/components/features/activities/partials/activity-row.d.ts +12 -13
  287. package/dist/components/features/activities/partials/row-layers.d.ts +7 -0
  288. package/dist/components/features/activities/relative-time.d.ts +18 -0
  289. package/dist/components/features/ai-chat/ai-chat.d.ts +6 -2
  290. package/dist/components/features/ai-chat/ai-chat.strings.d.ts +41 -2
  291. package/dist/components/features/ai-chat/ai-chat.types.d.ts +6 -0
  292. package/dist/components/features/ai-chat/partials/ai-chat-attachments-strip.d.ts +5 -1
  293. package/dist/components/features/ai-chat/partials/ai-chat-prompt-input.d.ts +2 -2
  294. package/dist/components/features/ai-chat/partials/ai-chat-queue.d.ts +3 -1
  295. package/dist/components/features/ai-chat/partials/ai-chat-suggestions-row.d.ts +6 -1
  296. package/dist/components/features/appointment-calendar/appointment-calendar.d.ts +1 -1
  297. package/dist/components/features/appointment-calendar/appointment-calendar.types.d.ts +19 -5
  298. package/dist/components/features/appointment-calendar/index.d.ts +1 -1
  299. package/dist/components/features/appointment-calendar/partials/appointment-agenda.d.ts +18 -10
  300. package/dist/components/features/async-preview/async-preview.d.ts +2 -2
  301. package/dist/components/features/async-preview/async-preview.types.d.ts +30 -1
  302. package/dist/components/features/async-preview/preview-trigger-cell.d.ts +7 -2
  303. package/dist/components/features/combobox/async-resource-combobox.d.ts +2 -2
  304. package/dist/components/features/combobox/combobox.d.ts +12 -3
  305. package/dist/components/features/combobox/components/error-message.d.ts +3 -1
  306. package/dist/components/features/combobox/hooks/use-combobox-core.d.ts +2 -2
  307. package/dist/components/features/combobox/index.d.ts +1 -1
  308. package/dist/components/features/combobox/types.d.ts +47 -45
  309. package/dist/components/features/comments/comments.strings.d.ts +6 -5
  310. package/dist/components/features/comments/comments.types.d.ts +40 -26
  311. package/dist/components/features/comments/hooks/use-attachment-upload.d.ts +5 -1
  312. package/dist/components/features/comments/hooks/use-comments.d.ts +8 -1
  313. package/dist/components/features/data-view/data-view.strings.d.ts +9 -2
  314. package/dist/components/features/data-view/data-view.types.d.ts +15 -2
  315. package/dist/components/features/email-composer/email-html.d.ts +5 -0
  316. package/dist/components/features/email-composer/http.d.ts +2 -0
  317. package/dist/components/features/email-composer/strings.d.ts +17 -2
  318. package/dist/components/features/email-composer/types.d.ts +17 -2
  319. package/dist/components/features/email-composer/use-composer.d.ts +2 -78
  320. package/dist/components/features/event-calendar/event-calendar-day-cell.d.ts +1 -1
  321. package/dist/components/features/event-calendar/event-calendar-event-badge.d.ts +1 -1
  322. package/dist/components/features/event-calendar/event-calendar-header.d.ts +1 -1
  323. package/dist/components/features/event-calendar/event-calendar-legend.d.ts +2 -2
  324. package/dist/components/features/event-calendar/event-calendar.d.ts +1 -1
  325. package/dist/components/features/event-calendar/event-calendar.types.d.ts +126 -21
  326. package/dist/components/features/filters/facets/range-facet.d.ts +13 -8
  327. package/dist/components/features/filters/filter-context.d.ts +9 -0
  328. package/dist/components/features/filters/filters.strings.d.ts +36 -3
  329. package/dist/components/features/filters/filters.types.d.ts +72 -5
  330. package/dist/components/features/filters/hooks/use-filter-draft.d.ts +1 -0
  331. package/dist/components/features/filters/index.d.ts +2 -2
  332. package/dist/components/features/filters/operator-options.d.ts +25 -2
  333. package/dist/components/features/filters/partials/active-filter-item.d.ts +0 -13
  334. package/dist/components/features/filters/partials/async-options-status.d.ts +32 -0
  335. package/dist/components/features/filters/partials/filter-draft-footer.d.ts +11 -0
  336. package/dist/components/features/filters/partials/filter-operator-select.d.ts +4 -2
  337. package/dist/components/features/filters/partials/filter-pill.d.ts +5 -1
  338. package/dist/components/features/filters/partials/filter-tabs.d.ts +2 -1
  339. package/dist/components/features/filters/partials/regular-filter-content.d.ts +1 -1
  340. package/dist/components/features/filters/utils/filter-utils.d.ts +29 -4
  341. package/dist/components/features/global-search/global-search-dialog.d.ts +7 -1
  342. package/dist/components/features/global-search/global-search.d.ts +7 -1
  343. package/dist/components/features/global-search/global-search.strings.d.ts +19 -3
  344. package/dist/components/features/global-search/global-search.types.d.ts +30 -6
  345. package/dist/components/features/global-search/index.d.ts +1 -1
  346. package/dist/components/features/global-search/partials/global-search-idle-state.d.ts +6 -1
  347. package/dist/components/features/global-search/partials/global-search-input.d.ts +2 -0
  348. package/dist/components/features/kanban/index.d.ts +2 -2
  349. package/dist/components/features/kanban/kanban-context.d.ts +4 -0
  350. package/dist/components/features/kanban/kanban-keyboard.d.ts +7 -2
  351. package/dist/components/features/kanban/kanban.d.ts +10 -1
  352. package/dist/components/features/kanban/kanban.strings.d.ts +11 -2
  353. package/dist/components/features/kanban/kanban.types.d.ts +26 -0
  354. package/dist/components/features/map/map.d.ts +4 -0
  355. package/dist/components/features/map/place-autocomplete.d.ts +10 -1
  356. package/dist/components/features/media-library/hooks/use-media-library.d.ts +3 -1
  357. package/dist/components/features/media-library/media-library.d.ts +1 -1
  358. package/dist/components/features/media-library/media-library.strings.d.ts +33 -3
  359. package/dist/components/features/media-library/media-library.types.d.ts +47 -2
  360. package/dist/components/features/media-library/partials/media-library-partials.d.ts +1 -1
  361. package/dist/components/features/mentions/hooks/use-mentions-search.d.ts +7 -0
  362. package/dist/components/features/mentions/index.d.ts +1 -1
  363. package/dist/components/features/mentions/mentions.strings.d.ts +10 -2
  364. package/dist/components/features/mentions/partials/mention-chip.d.ts +1 -0
  365. package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts +8 -1
  366. package/dist/components/features/mentions/partials/mention-picker.d.ts +8 -1
  367. package/dist/components/features/mentions/partials/mention-search-error.d.ts +6 -0
  368. package/dist/components/features/mentions/utils/index.d.ts +0 -1
  369. package/dist/components/features/overlays/alert-dialog.d.ts +1 -1
  370. package/dist/components/features/overlays/dialog.d.ts +1 -1
  371. package/dist/components/features/overlays/drawer.d.ts +1 -1
  372. package/dist/components/features/overlays/index.d.ts +2 -2
  373. package/dist/components/features/overlays/overlays.strings.d.ts +2 -1
  374. package/dist/components/features/overlays/overlays.types.d.ts +27 -10
  375. package/dist/components/features/products/components/index.d.ts +0 -10
  376. package/dist/components/features/products/components/product-contract-overview.d.ts +1 -1
  377. package/dist/components/features/products/components/product-details-card.d.ts +1 -1
  378. package/dist/components/features/products/components/product-operations-card.d.ts +1 -1
  379. package/dist/components/features/products/components/product-option-action-menu.d.ts +1 -1
  380. package/dist/components/features/products/components/product-options-summary.d.ts +1 -1
  381. package/dist/components/features/products/components/product-policies-card.d.ts +1 -1
  382. package/dist/components/features/products/components/product-quote-preview-card.d.ts +1 -1
  383. package/dist/components/features/products/components/product-readiness-card.d.ts +1 -1
  384. package/dist/components/features/products/components/product-structure-card.d.ts +1 -1
  385. package/dist/components/features/products/components/product-variant-action-menu.d.ts +1 -1
  386. package/dist/components/features/products/components/product-variants-manager.d.ts +1 -1
  387. package/dist/components/features/products/components/product-variants-table.d.ts +1 -1
  388. package/dist/components/features/products/partials/product-surface.d.ts +15 -0
  389. package/dist/components/features/products/products.strings.d.ts +8 -0
  390. package/dist/components/features/products/products.types.d.ts +25 -7
  391. package/dist/components/features/questionnaire/questionnaire.types.d.ts +6 -4
  392. package/dist/components/features/resource/index.d.ts +2 -3
  393. package/dist/components/features/resource/resource.d.ts +2 -10
  394. package/dist/components/features/resource/resource.types.d.ts +7 -149
  395. package/dist/components/features/resource-assignment/partials/assignment-surface.d.ts +15 -0
  396. package/dist/components/features/resource-assignment/resource-assignment.strings.d.ts +6 -1
  397. package/dist/components/features/resource-assignment/resource-assignment.types.d.ts +6 -0
  398. package/dist/components/features/rich-text-editor/partials/caret-helpers.d.ts +5 -7
  399. package/dist/components/features/rich-text-editor/partials/html-helpers.d.ts +2 -3
  400. package/dist/components/features/rich-text-editor/partials/image-uploads.d.ts +6 -2
  401. package/dist/components/features/rich-text-editor/partials/index.d.ts +2 -3
  402. package/dist/components/features/rich-text-editor/partials/rich-text-editor-tiptap.d.ts +0 -1
  403. package/dist/components/features/rich-text-editor/partials/rich-text-editor-toolbar.d.ts +2 -3
  404. package/dist/components/features/rich-text-editor/rich-text-editor.types.d.ts +13 -1
  405. package/dist/components/features/schema-form/hooks/use-schema-form.d.ts +5 -0
  406. package/dist/components/features/schema-form/schema-form.d.ts +1 -1
  407. package/dist/components/features/schema-form/schema-form.types.d.ts +13 -5
  408. package/dist/components/features/suggestions/suggestions.strings.d.ts +14 -0
  409. package/dist/components/features/suggestions/suggestions.types.d.ts +12 -4
  410. package/dist/components/features/table/data-table.d.ts +1 -1
  411. package/dist/components/features/table/filter-bar.d.ts +1 -1
  412. package/dist/components/features/table/pagination.d.ts +1 -1
  413. package/dist/components/features/table/partials/cell-value.d.ts +1 -1
  414. package/dist/components/features/table/table-body.d.ts +1 -1
  415. package/dist/components/features/table/table-header.d.ts +1 -1
  416. package/dist/components/features/table/table-helpers.d.ts +31 -9
  417. package/dist/components/features/table/table-region.recipes.d.ts +11 -0
  418. package/dist/components/features/table/table-toolbar.d.ts +1 -1
  419. package/dist/components/features/table/table.strings.d.ts +1 -0
  420. package/dist/components/features/table/table.types.d.ts +74 -48
  421. package/dist/components/features/theme-tweaker/theme-provider-settings.d.ts +4 -0
  422. package/dist/components/features/theme-tweaker/theme-tweaker.strings.d.ts +10 -7
  423. package/dist/components/features/theme-tweaker/theme-tweaker.utils.d.ts +17 -0
  424. package/dist/components/layout/app-shell/app-shell.types.d.ts +46 -49
  425. package/dist/components/layout/app-shell/index.d.ts +2 -2
  426. package/dist/components/layout/app-shell/shell-regions.d.ts +9 -0
  427. package/dist/components/layout/app-shell/shell-skip-link.d.ts +9 -0
  428. package/dist/components/layout/app-shell/sidebar-inset-layout.d.ts +1 -1
  429. package/dist/components/layout/app-shell/stacked-layout.d.ts +1 -1
  430. package/dist/components/layout/app-shell/topbar-sidebar-layout.d.ts +1 -1
  431. package/dist/components/layout/auth/auth-shell.d.ts +1 -1
  432. package/dist/components/layout/auth/auth.types.d.ts +0 -5
  433. package/dist/components/layout/containers/inline-gutter-context.d.ts +7 -0
  434. package/dist/components/layout/containers/main-landmark-context.d.ts +6 -0
  435. package/dist/components/layout/header/header.types.d.ts +16 -6
  436. package/dist/components/layout/header/partials/header-global-search-trigger.d.ts +1 -1
  437. package/dist/components/layout/header/partials/header-notifications.d.ts +1 -1
  438. package/dist/components/layout/header/partials/header-search.d.ts +1 -1
  439. package/dist/components/layout/hooks/use-command-shortcut.d.ts +10 -1
  440. package/dist/components/layout/layout.types.d.ts +2 -2
  441. package/dist/components/layout/navigation/breadcrumb-progress/breadcrumb-progress.d.ts +1 -1
  442. package/dist/components/layout/navigation/breadcrumb-progress/types.d.ts +9 -0
  443. package/dist/components/layout/navigation/section-nav/section-nav.d.ts +8 -1
  444. package/dist/components/layout/page/index.d.ts +2 -3
  445. package/dist/components/layout/page/page.strings.d.ts +12 -0
  446. package/dist/components/layout/page/page.types.d.ts +7 -110
  447. package/dist/components/layout/page/partials/page-header.d.ts +1 -1
  448. package/dist/components/layout/settings/index.d.ts +1 -1
  449. package/dist/components/layout/settings/settings.d.ts +3 -5
  450. package/dist/components/layout/sidebar/app-sidebar.d.ts +1 -1
  451. package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts +1 -1
  452. package/dist/components/layout/sidebar/components/sidebar-navigation-footer.d.ts +1 -1
  453. package/dist/components/layout/sidebar/components/sidebar-navigation.d.ts +1 -1
  454. package/dist/components/layout/sidebar/index.d.ts +1 -1
  455. package/dist/components/layout/sidebar/sidebar-navigation-rail.d.ts +15 -7
  456. package/dist/components/layout/sidebar/sidebar.types.d.ts +10 -12
  457. package/dist/components/layout/sidebar/sidebar.utils.d.ts +4 -0
  458. package/dist/components/layout/workspace/workspace.strings.d.ts +2 -2
  459. package/dist/components/layout/workspace/workspace.types.d.ts +13 -7
  460. package/dist/components/primitives/date.d.ts +22 -3
  461. package/dist/components/primitives/file-size.d.ts +8 -2
  462. package/dist/components/primitives/index.d.ts +1 -1
  463. package/dist/components/primitives/initials.d.ts +3 -1
  464. package/dist/components/primitives/link.d.ts +8 -1
  465. package/dist/components/primitives/money.d.ts +1 -1
  466. package/dist/components/primitives/number.d.ts +2 -1
  467. package/dist/components/typography/heading.d.ts +9 -3
  468. package/dist/components/typography/index.d.ts +1 -1
  469. package/dist/components/typography/text-link.d.ts +10 -3
  470. package/dist/components/ui/badge.d.ts +2 -4
  471. package/dist/components/ui/breadcrumb.d.ts +2 -3
  472. package/dist/components/ui/button.d.ts +8 -2
  473. package/dist/components/ui/collapsible.d.ts +1 -4
  474. package/dist/components/ui/command.d.ts +20 -18
  475. package/dist/components/ui/dialog.d.ts +3 -9
  476. package/dist/components/ui/empty.d.ts +2 -2
  477. package/dist/components/ui/input-group.d.ts +3 -3
  478. package/dist/components/ui/item.d.ts +3 -3
  479. package/dist/components/ui/popover.d.ts +3 -7
  480. package/dist/components/ui/sheet.d.ts +4 -12
  481. package/dist/components/ui/sidebar-state.d.ts +6 -1
  482. package/dist/components/ui/sidebar.d.ts +7 -4
  483. package/dist/components/ui/tabs.d.ts +2 -2
  484. package/dist/components/ui/toggle-group.d.ts +3 -3
  485. package/dist/components/ui/toggle.d.ts +2 -2
  486. package/dist/components/ui/tooltip.d.ts +1 -3
  487. package/dist/{containers-CSdc32h9.js → containers-BdfLTP4w.js} +37 -32
  488. package/dist/containers-BdfLTP4w.js.map +1 -0
  489. package/dist/content-block-hooks-Z3iKjqd1.js +17 -0
  490. package/dist/content-block-hooks-Z3iKjqd1.js.map +1 -0
  491. package/dist/{copyable-3fdHfMR3.js → copyable-Bmr14W0d.js} +6 -6
  492. package/dist/{copyable-3fdHfMR3.js.map → copyable-Bmr14W0d.js.map} +1 -1
  493. package/dist/{data-display-Cmj-xZYl.js → data-display-CWe9SOYh.js} +264 -251
  494. package/dist/data-display-CWe9SOYh.js.map +1 -0
  495. package/dist/date-3qsCE1ID.js +209 -0
  496. package/dist/date-3qsCE1ID.js.map +1 -0
  497. package/dist/{date-picker-CyQlFYsP.js → date-picker-D1keJQIG.js} +129 -129
  498. package/dist/date-picker-D1keJQIG.js.map +1 -0
  499. package/dist/date-pickers-D8aJoeHc.js +185 -0
  500. package/dist/date-pickers-D8aJoeHc.js.map +1 -0
  501. package/dist/disclosure-panel-B0HFNZ9x.js.map +1 -1
  502. package/dist/{display-CT_N2a3w.js → display-VlmP1I0i.js} +23 -46
  503. package/dist/display-VlmP1I0i.js.map +1 -0
  504. package/dist/{dropdown-menu-C08iIugv.js → dropdown-menu-B8hjvbkS.js} +9 -9
  505. package/dist/{dropdown-menu-C08iIugv.js.map → dropdown-menu-B8hjvbkS.js.map} +1 -1
  506. package/dist/dropzone-CHBNK3de.js +116 -0
  507. package/dist/dropzone-CHBNK3de.js.map +1 -0
  508. package/dist/features/activities.js +682 -628
  509. package/dist/features/activities.js.map +1 -1
  510. package/dist/features/ai-chat.js +258 -226
  511. package/dist/features/ai-chat.js.map +1 -1
  512. package/dist/features/appointment-calendar.js +436 -340
  513. package/dist/features/appointment-calendar.js.map +1 -1
  514. package/dist/features/async-preview.js +351 -265
  515. package/dist/features/async-preview.js.map +1 -1
  516. package/dist/features/combobox.js +2 -2
  517. package/dist/features/comments.js +1 -1
  518. package/dist/features/data-view.js +212 -151
  519. package/dist/features/data-view.js.map +1 -1
  520. package/dist/features/email-composer/engine.js +1 -1
  521. package/dist/features/email-composer.js +344 -315
  522. package/dist/features/email-composer.js.map +1 -1
  523. package/dist/features/event-calendar.js +504 -355
  524. package/dist/features/event-calendar.js.map +1 -1
  525. package/dist/features/filters.js +2 -2
  526. package/dist/features/global-search.js +250 -206
  527. package/dist/features/global-search.js.map +1 -1
  528. package/dist/features/kanban.js +269 -189
  529. package/dist/features/kanban.js.map +1 -1
  530. package/dist/features/map.js +385 -371
  531. package/dist/features/map.js.map +1 -1
  532. package/dist/features/media-library.js +1571 -1199
  533. package/dist/features/media-library.js.map +1 -1
  534. package/dist/features/mentions.js +2 -2
  535. package/dist/features/overlays.js +2 -2
  536. package/dist/features/products.js +1780 -1691
  537. package/dist/features/products.js.map +1 -1
  538. package/dist/features/questionnaire.js +165 -152
  539. package/dist/features/questionnaire.js.map +1 -1
  540. package/dist/features/resource-assignment.js +223 -191
  541. package/dist/features/resource-assignment.js.map +1 -1
  542. package/dist/features/resource.js +55 -220
  543. package/dist/features/resource.js.map +1 -1
  544. package/dist/features/rich-text-editor.js +3 -3
  545. package/dist/features/schema-form.js +280 -228
  546. package/dist/features/schema-form.js.map +1 -1
  547. package/dist/features/suggestions.js +48 -39
  548. package/dist/features/suggestions.js.map +1 -1
  549. package/dist/features/table.js +2 -2
  550. package/dist/features/theme-tweaker.js +723 -633
  551. package/dist/features/theme-tweaker.js.map +1 -1
  552. package/dist/feedback-DmqmXKLn.js +254 -0
  553. package/dist/feedback-DmqmXKLn.js.map +1 -0
  554. package/dist/{field-affordance-recipes-D6H7tVJi.js → field-affordance-recipes-DfbMadot.js} +13 -9
  555. package/dist/field-affordance-recipes-DfbMadot.js.map +1 -0
  556. package/dist/{field-state-recipes-7sza8QbC.js → field-state-recipes-EtCxpEy3.js} +6 -2
  557. package/dist/field-state-recipes-EtCxpEy3.js.map +1 -0
  558. package/dist/filters-BviMRMLS.js +2692 -0
  559. package/dist/filters-BviMRMLS.js.map +1 -0
  560. package/dist/{focus-recipes-B653VaLq.js → focus-recipes-DSkiUvUp.js} +3 -3
  561. package/dist/focus-recipes-DSkiUvUp.js.map +1 -0
  562. package/dist/{form-field-CAPdwdnZ.js → form-field-BdfCwSoQ.js} +5 -5
  563. package/dist/{form-field-CAPdwdnZ.js.map → form-field-BdfCwSoQ.js.map} +1 -1
  564. package/dist/{form-sizing-CgcrUbLU.js → form-sizing-DE_dZw32.js} +3 -3
  565. package/dist/{form-sizing-CgcrUbLU.js.map → form-sizing-DE_dZw32.js.map} +1 -1
  566. package/dist/{forms-B3W8CH7-.js → forms-B8DzJnBN.js} +35 -35
  567. package/dist/forms-B8DzJnBN.js.map +1 -0
  568. package/dist/forms-numeric-DOBswjKj.js +992 -0
  569. package/dist/forms-numeric-DOBswjKj.js.map +1 -0
  570. package/dist/{header-ZIIsRKxP.js → header-Cq3G0ZRP.js} +100 -95
  571. package/dist/header-Cq3G0ZRP.js.map +1 -0
  572. package/dist/{hooks-BitHSh-Y.js → hooks-DHfeSMAO.js} +34 -14
  573. package/dist/hooks-DHfeSMAO.js.map +1 -0
  574. package/dist/{http-D_6rOnzU.js → http-Cu-GPpss.js} +61 -35
  575. package/dist/http-Cu-GPpss.js.map +1 -0
  576. package/dist/{icon-badge-npxF1SLX.js → icon-badge-B0Kq7wom.js} +3 -3
  577. package/dist/{icon-badge-npxF1SLX.js.map → icon-badge-B0Kq7wom.js.map} +1 -1
  578. package/dist/index.js +6 -6
  579. package/dist/inline-gutter-context-CSqmrMFZ.js +11 -0
  580. package/dist/inline-gutter-context-CSqmrMFZ.js.map +1 -0
  581. package/dist/{input-DIREVYHs.js → input-2YrgTUrz.js} +3 -3
  582. package/dist/{input-DIREVYHs.js.map → input-2YrgTUrz.js.map} +1 -1
  583. package/dist/{input-7KAc7XQL.js → input-DfJyrjoR.js} +6 -6
  584. package/dist/{input-7KAc7XQL.js.map → input-DfJyrjoR.js.map} +1 -1
  585. package/dist/{interaction-recipes-4wZ2tvfb.js → interaction-recipes-DmuS1ase.js} +2 -2
  586. package/dist/{interaction-recipes-4wZ2tvfb.js.map → interaction-recipes-DmuS1ase.js.map} +1 -1
  587. package/dist/item-GJ9mvCcg.js +279 -0
  588. package/dist/item-GJ9mvCcg.js.map +1 -0
  589. package/dist/layout/app-shell.js +1 -1
  590. package/dist/layout/auth.js +1 -1
  591. package/dist/layout/containers.js +1 -1
  592. package/dist/layout/header.js +1 -1
  593. package/dist/layout/hooks.js +1 -1
  594. package/dist/layout/navigation.js +1 -1
  595. package/dist/layout/page.js +2 -2
  596. package/dist/layout/settings.js +2 -2
  597. package/dist/layout/sidebar.js +3 -3
  598. package/dist/layout/workspace.js +1 -1
  599. package/dist/layout.js +12 -12
  600. package/dist/{layout.types-E_GAApzO.js → layout.types-DbtnyAtd.js} +11 -8
  601. package/dist/layout.types-DbtnyAtd.js.map +1 -0
  602. package/dist/lib/anchored-positioning.d.ts +11 -0
  603. package/dist/lib/field-affordance-recipes.d.ts +10 -0
  604. package/dist/lib/field-state-recipes.d.ts +6 -0
  605. package/dist/lib/focus-recipes.d.ts +7 -0
  606. package/dist/lib/format.d.ts +25 -0
  607. package/dist/lib/money-format.d.ts +6 -0
  608. package/dist/lib/motion-recipes.d.ts +6 -0
  609. package/dist/lib/surface-recipes.d.ts +32 -2
  610. package/dist/lib/theme-scope.d.ts +17 -1
  611. package/dist/lib/token-merge.generated.d.ts +13 -19
  612. package/dist/lib/ui-provider/index.d.ts +1 -1
  613. package/dist/lib/ui-provider/types.d.ts +5 -0
  614. package/dist/lib/use-controllable-state.d.ts +16 -0
  615. package/dist/lib/use-copy-feedback.d.ts +15 -0
  616. package/dist/lib/utils.js +1 -1
  617. package/dist/lib/variant-props.d.ts +9 -0
  618. package/dist/main-landmark-context-BAsyqp2I.js +11 -0
  619. package/dist/main-landmark-context-BAsyqp2I.js.map +1 -0
  620. package/dist/mentions-zz0ewNIq.js +670 -0
  621. package/dist/mentions-zz0ewNIq.js.map +1 -0
  622. package/dist/{message-BJHnn43M.js → message-BiiVrRrm.js} +10 -7
  623. package/dist/{message-BJHnn43M.js.map → message-BiiVrRrm.js.map} +1 -1
  624. package/dist/{metadata-list-XkqZ_UXH.js → metadata-list-G85roWjS.js} +13 -12
  625. package/dist/metadata-list-G85roWjS.js.map +1 -0
  626. package/dist/{motion-recipes-DitYv6P2.js → motion-recipes-CUc_aHuG.js} +7 -4
  627. package/dist/motion-recipes-CUc_aHuG.js.map +1 -0
  628. package/dist/navigation-C0Be5C3i.js +304 -0
  629. package/dist/navigation-C0Be5C3i.js.map +1 -0
  630. package/dist/{navigation-Bt-v7rWP.js → navigation-CmqaQR_G.js} +99 -103
  631. package/dist/navigation-CmqaQR_G.js.map +1 -0
  632. package/dist/number-NFWKIoiK.js +340 -0
  633. package/dist/number-NFWKIoiK.js.map +1 -0
  634. package/dist/{overflow-tab-bar-BQCA2Zn2.js → overflow-tab-bar-DV7HE_3t.js} +8 -8
  635. package/dist/{overflow-tab-bar-BQCA2Zn2.js.map → overflow-tab-bar-DV7HE_3t.js.map} +1 -1
  636. package/dist/overlays-D-gAIfPF.js +1018 -0
  637. package/dist/overlays-D-gAIfPF.js.map +1 -0
  638. package/dist/page-D4pQhgSq.js +216 -0
  639. package/dist/page-D4pQhgSq.js.map +1 -0
  640. package/dist/{page-header-commands-DIKspJfx.js → page-header-commands-elelNOfd.js} +29 -29
  641. package/dist/{page-header-commands-DIKspJfx.js.map → page-header-commands-elelNOfd.js.map} +1 -1
  642. package/dist/{pagination-Br8TdV9A.js → pagination-BuSWw1US.js} +22 -23
  643. package/dist/pagination-BuSWw1US.js.map +1 -0
  644. package/dist/{popover-k8TdUcAt.js → popover-BpMxbqEK.js} +73 -69
  645. package/dist/popover-BpMxbqEK.js.map +1 -0
  646. package/dist/{popover-menu-yn-o0kyA.js → popover-menu-CO-_iiuz.js} +7 -7
  647. package/dist/{popover-menu-yn-o0kyA.js.map → popover-menu-CO-_iiuz.js.map} +1 -1
  648. package/dist/{popover.recipes-DJ0AkUan.js → popover.recipes-BqkdvlZn.js} +3 -4
  649. package/dist/{popover.recipes-DJ0AkUan.js.map → popover.recipes-BqkdvlZn.js.map} +1 -1
  650. package/dist/{portal-recipes-DyUXqUtD.js → portal-recipes-BPeS4rGB.js} +2 -2
  651. package/dist/{portal-recipes-DyUXqUtD.js.map → portal-recipes-BPeS4rGB.js.map} +1 -1
  652. package/dist/primitives-BlC1lXBr.js +447 -0
  653. package/dist/primitives-BlC1lXBr.js.map +1 -0
  654. package/dist/primitives.js +4 -4
  655. package/dist/{progress-DZFXXzPs.js → progress-RARK8AjB.js} +5 -5
  656. package/dist/{progress-DZFXXzPs.js.map → progress-RARK8AjB.js.map} +1 -1
  657. package/dist/receipt-CUf2Vegp.js +114 -0
  658. package/dist/receipt-CUf2Vegp.js.map +1 -0
  659. package/dist/{rich-text-BnTzZjIo.js → rich-text-Cypm9__d.js} +7 -8
  660. package/dist/{rich-text-BnTzZjIo.js.map → rich-text-Cypm9__d.js.map} +1 -1
  661. package/dist/rich-text-editor-Z6cQepsA.js +919 -0
  662. package/dist/rich-text-editor-Z6cQepsA.js.map +1 -0
  663. package/dist/rich-text-editor-toolbar-DYbRJARB.js +100 -0
  664. package/dist/rich-text-editor-toolbar-DYbRJARB.js.map +1 -0
  665. package/dist/rich-text-tree-DdKHIJx4.js +154 -0
  666. package/dist/rich-text-tree-DdKHIJx4.js.map +1 -0
  667. package/dist/safe-image-src-C6kQSMBZ.js +17 -0
  668. package/dist/safe-image-src-C6kQSMBZ.js.map +1 -0
  669. package/dist/{scroll-area-Bj6CRUif.js → scroll-area-B9HKbji0.js} +3 -3
  670. package/dist/{scroll-area-Bj6CRUif.js.map → scroll-area-B9HKbji0.js.map} +1 -1
  671. package/dist/{separator-DM6gs2vu.js → separator-DaDe26sf.js} +3 -3
  672. package/dist/separator-DaDe26sf.js.map +1 -0
  673. package/dist/{separator-B9ewiCGO.js → separator-KGsNXt2J.js} +2 -2
  674. package/dist/{separator-B9ewiCGO.js.map → separator-KGsNXt2J.js.map} +1 -1
  675. package/dist/services/actions/action-adapters.d.ts +5 -2
  676. package/dist/services/actions/index.d.ts +1 -1
  677. package/dist/services/actions.js +2 -2
  678. package/dist/services/actions.js.map +1 -1
  679. package/dist/settings-D5j_RJvT.js +160 -0
  680. package/dist/settings-D5j_RJvT.js.map +1 -0
  681. package/dist/sheet-B6j_BE9O.js +241 -0
  682. package/dist/sheet-B6j_BE9O.js.map +1 -0
  683. package/dist/{sidebar-CmD6a-HK.js → sidebar-C-iQ_TJP.js} +377 -351
  684. package/dist/sidebar-C-iQ_TJP.js.map +1 -0
  685. package/dist/sidebar-D5VO2W8S.js +715 -0
  686. package/dist/sidebar-D5VO2W8S.js.map +1 -0
  687. package/dist/{skeleton-DDgdhmu9.js → skeleton-Cab_KgVo.js} +12 -12
  688. package/dist/skeleton-Cab_KgVo.js.map +1 -0
  689. package/dist/{smart-card-B6vLxqa_.js → smart-card-C59z6KFO.js} +217 -210
  690. package/dist/smart-card-C59z6KFO.js.map +1 -0
  691. package/dist/{structure-DZJ2wbAU.js → structure-DElaQwwN.js} +2 -2
  692. package/dist/{structure-DZJ2wbAU.js.map → structure-DElaQwwN.js.map} +1 -1
  693. package/dist/style.css +1 -1
  694. package/dist/{surface-recipes-C8mNycaY.js → surface-recipes-DV6rrOFq.js} +10 -2
  695. package/dist/surface-recipes-DV6rrOFq.js.map +1 -0
  696. package/dist/{table-CXSPHH25.js → table-CSRUgpdK.js} +62 -61
  697. package/dist/table-CSRUgpdK.js.map +1 -0
  698. package/dist/table-DdXDBsR_.js +1657 -0
  699. package/dist/table-DdXDBsR_.js.map +1 -0
  700. package/dist/{tabs-C4Kr_hCr.js → tabs-WnHfV2pM.js} +27 -27
  701. package/dist/tabs-WnHfV2pM.js.map +1 -0
  702. package/dist/{text-inputs-jdkS3ReG.js → text-inputs-ljyBYaCd.js} +112 -112
  703. package/dist/text-inputs-ljyBYaCd.js.map +1 -0
  704. package/dist/theme.css +21 -5
  705. package/dist/timelines-mOmS9Eh3.js +479 -0
  706. package/dist/timelines-mOmS9Eh3.js.map +1 -0
  707. package/dist/tooltip-yjX-Uv-p.js +112 -0
  708. package/dist/tooltip-yjX-Uv-p.js.map +1 -0
  709. package/dist/{tree-CeYVzdFE.js → tree-YpkxUG2Z.js} +80 -72
  710. package/dist/tree-YpkxUG2Z.js.map +1 -0
  711. package/dist/typography/rich-text.js +1 -1
  712. package/dist/{typography-C7-YMW1S.js → typography-C0dELqYV.js} +46 -40
  713. package/dist/typography-C0dELqYV.js.map +1 -0
  714. package/dist/typography.js +1 -1
  715. package/dist/{ui-provider-C-74NVLc.js → ui-provider-Bu1S-o96.js} +4 -3
  716. package/dist/ui-provider-Bu1S-o96.js.map +1 -0
  717. package/dist/ui-provider.js +2 -2
  718. package/dist/{upload-Hdm5gObf.js → upload-DMuMYJFT.js} +276 -268
  719. package/dist/upload-DMuMYJFT.js.map +1 -0
  720. package/dist/{usage-card-9s8hLDfn.js → usage-card-DDPki5P1.js} +57 -54
  721. package/dist/usage-card-DDPki5P1.js.map +1 -0
  722. package/dist/use-controllable-state-BlP8SyBI.js +13 -0
  723. package/dist/use-controllable-state-BlP8SyBI.js.map +1 -0
  724. package/dist/use-copy-feedback-CzcaqlLf.js +28 -0
  725. package/dist/use-copy-feedback-CzcaqlLf.js.map +1 -0
  726. package/dist/use-metric-format-options-Dk4rC1NO.js +251 -0
  727. package/dist/use-metric-format-options-Dk4rC1NO.js.map +1 -0
  728. package/dist/{utils-DhuoqFy4.js → utils-BVbAG2J6.js} +98 -76
  729. package/dist/utils-BVbAG2J6.js.map +1 -0
  730. package/dist/value-inputs-h5MwjGCo.js +982 -0
  731. package/dist/value-inputs-h5MwjGCo.js.map +1 -0
  732. package/dist/value-typography-D15uwfj-.js +154 -0
  733. package/dist/value-typography-D15uwfj-.js.map +1 -0
  734. package/dist/workspace-DIryPqBt.js +400 -0
  735. package/dist/workspace-DIryPqBt.js.map +1 -0
  736. package/docs/consumer-skill/SKILL.md +7 -0
  737. package/docs/consumer-skill/agents/themelia-ui-designer.md +11 -2
  738. package/docs/consumer-skill/examples/analytics.tsx +1 -1
  739. package/docs/consumer-skill/examples/app-layout.tsx +3 -3
  740. package/docs/consumer-skill/examples/commerce-lines.tsx +7 -5
  741. package/docs/consumer-skill/examples/detail.tsx +3 -2
  742. package/docs/consumer-skill/examples/email-composer.tsx +1 -1
  743. package/docs/consumer-skill/examples/index-table.tsx +2 -2
  744. package/docs/consumer-skill/examples/scoped-directory.tsx +7 -6
  745. package/docs/consumer-skill/references/agents-md.md +20 -16
  746. package/docs/consumer-skill/references/analytics.md +20 -6
  747. package/docs/consumer-skill/references/building-views.md +213 -0
  748. package/docs/consumer-skill/references/catalogue.md +617 -0
  749. package/docs/consumer-skill/references/component-contracts.json +10202 -18084
  750. package/docs/consumer-skill/references/composition.md +21 -17
  751. package/docs/consumer-skill/references/discovery.md +8 -5
  752. package/docs/consumer-skill/references/installation.md +10 -4
  753. package/docs/consumer-skill/references/integration.md +5 -5
  754. package/docs/consumer-skill/references/product-composition.md +2 -2
  755. package/docs/consumer-skill/references/public-api.json +580 -633
  756. package/docs/consumer-skill/references/review.md +6 -4
  757. package/docs/consumer-skill/references/screen-archetypes.md +2 -2
  758. package/docs/consumer-skill/references/theming.md +1 -1
  759. package/docs/consumer-skill/references/tokens.json +4 -4
  760. package/docs/consumer-skill/references/workflows.md +7 -7
  761. package/docs/consumer-skill/scripts/composition-policy.mjs +40 -20
  762. package/docs/consumer-skill/scripts/composition.mjs +4 -1
  763. package/docs/consumer-skill/scripts/discovery.mjs +3 -1
  764. package/docs/consumer-skill/scripts/setup-skills.mjs +31 -4
  765. package/docs/consumer-skills/themelia-components/SKILL.md +8 -4
  766. package/docs/consumer-skills/themelia-composition/SKILL.md +7 -3
  767. package/docs/consumer-skills/themelia-design/SKILL.md +7 -1
  768. package/docs/consumer-skills/themelia-tokenization/SKILL.md +1 -1
  769. package/package.json +9 -12
  770. package/templates/README.md +3 -2
  771. package/templates/admin-shell-template.tsx +49 -9
  772. package/templates/analytics-operations-template.tsx +20 -24
  773. package/templates/customers-template.tsx +12 -9
  774. package/templates/index.ts +2 -8
  775. package/templates/orders-template.tsx +28 -24
  776. package/templates/products-template.tsx +14 -4
  777. package/templates/user-permissions-template.tsx +11 -14
  778. package/dist/accordion-0tQUZ20r.js.map +0 -1
  779. package/dist/action-menu-C0gjzLyE.js +0 -284
  780. package/dist/action-menu-C0gjzLyE.js.map +0 -1
  781. package/dist/ai-artifact-CGGpQryR.js +0 -1200
  782. package/dist/ai-artifact-CGGpQryR.js.map +0 -1
  783. package/dist/anchored-positioning-DPnKTvNs.js +0 -6
  784. package/dist/anchored-positioning-DPnKTvNs.js.map +0 -1
  785. package/dist/app-shell-EHuuRDGy.js +0 -321
  786. package/dist/app-shell-EHuuRDGy.js.map +0 -1
  787. package/dist/auth-B0girIk_.js.map +0 -1
  788. package/dist/badge-wWauMgAt.js.map +0 -1
  789. package/dist/base/sheet.js +0 -3
  790. package/dist/breadcrumbs-Bp9Ke7kd.js.map +0 -1
  791. package/dist/button-ChBovTx0.js.map +0 -1
  792. package/dist/buttons-DeW0bQeK.js.map +0 -1
  793. package/dist/cascader-CrAl9zD5.js +0 -439
  794. package/dist/cascader-CrAl9zD5.js.map +0 -1
  795. package/dist/choice-inputs-DHGtx0QV.js.map +0 -1
  796. package/dist/code-block-BSJyq9e-.js.map +0 -1
  797. package/dist/collapsible-BzJ91LUG.js +0 -81
  798. package/dist/collapsible-BzJ91LUG.js.map +0 -1
  799. package/dist/combobox-Bcvu5J8O.js +0 -363
  800. package/dist/combobox-Bcvu5J8O.js.map +0 -1
  801. package/dist/combobox-C2JiSQPc.js +0 -915
  802. package/dist/combobox-C2JiSQPc.js.map +0 -1
  803. package/dist/command-9e52NPgK.js +0 -425
  804. package/dist/command-9e52NPgK.js.map +0 -1
  805. package/dist/comments-BsgErEqd.js +0 -1174
  806. package/dist/comments-BsgErEqd.js.map +0 -1
  807. package/dist/components/base/buttons/tooltip-button.d.ts +0 -7
  808. package/dist/components/base/display/content-block.d.ts +0 -75
  809. package/dist/components/base/display/content-block.strings.d.ts +0 -5
  810. package/dist/components/base/sheet/index.d.ts +0 -29
  811. package/dist/components/blocks/ai/use-copy-feedback.d.ts +0 -6
  812. package/dist/components/blocks/data-display/metadata/index.d.ts +0 -30
  813. package/dist/components/features/mentions/utils/split-html-by-mentions.d.ts +0 -10
  814. package/dist/components/features/resource/resource.strings.d.ts +0 -12
  815. package/dist/components/features/rich-text-editor/partials/rich-text-editor-fallback.d.ts +0 -8
  816. package/dist/components/features/sync/index.d.ts +0 -26
  817. package/dist/components/features/sync/sync-range-dialog-form.d.ts +0 -5
  818. package/dist/components/features/sync/sync.strings.d.ts +0 -18
  819. package/dist/components/features/sync/sync.types.d.ts +0 -44
  820. package/dist/components/layout/page/partials/page-actions.d.ts +0 -3
  821. package/dist/components/ui/slot.d.ts +0 -6
  822. package/dist/containers-CSdc32h9.js.map +0 -1
  823. package/dist/data-display-Cmj-xZYl.js.map +0 -1
  824. package/dist/date-Br0FicVv.js +0 -144
  825. package/dist/date-Br0FicVv.js.map +0 -1
  826. package/dist/date-picker-CyQlFYsP.js.map +0 -1
  827. package/dist/date-pickers-tj2MXmXd.js +0 -185
  828. package/dist/date-pickers-tj2MXmXd.js.map +0 -1
  829. package/dist/display-CT_N2a3w.js.map +0 -1
  830. package/dist/features/sync.js +0 -142
  831. package/dist/features/sync.js.map +0 -1
  832. package/dist/feedback-Dzo1xtAU.js +0 -246
  833. package/dist/feedback-Dzo1xtAU.js.map +0 -1
  834. package/dist/field-affordance-recipes-D6H7tVJi.js.map +0 -1
  835. package/dist/field-state-recipes-7sza8QbC.js.map +0 -1
  836. package/dist/filters-Dl80yYtN.js +0 -2415
  837. package/dist/filters-Dl80yYtN.js.map +0 -1
  838. package/dist/focus-recipes-B653VaLq.js.map +0 -1
  839. package/dist/forms-B3W8CH7-.js.map +0 -1
  840. package/dist/forms-numeric-CwjQJe-O.js +0 -991
  841. package/dist/forms-numeric-CwjQJe-O.js.map +0 -1
  842. package/dist/header-ZIIsRKxP.js.map +0 -1
  843. package/dist/hooks-BitHSh-Y.js.map +0 -1
  844. package/dist/http-D_6rOnzU.js.map +0 -1
  845. package/dist/item-FfWnaYST.js +0 -278
  846. package/dist/item-FfWnaYST.js.map +0 -1
  847. package/dist/layout.types-E_GAApzO.js.map +0 -1
  848. package/dist/media-gallery-C81DAnKI.js +0 -203
  849. package/dist/media-gallery-C81DAnKI.js.map +0 -1
  850. package/dist/mentions-qOnedSt4.js +0 -639
  851. package/dist/mentions-qOnedSt4.js.map +0 -1
  852. package/dist/metadata-list-XkqZ_UXH.js.map +0 -1
  853. package/dist/motion-recipes-DitYv6P2.js.map +0 -1
  854. package/dist/navigation-BgtPJAhi.js +0 -288
  855. package/dist/navigation-BgtPJAhi.js.map +0 -1
  856. package/dist/navigation-Bt-v7rWP.js.map +0 -1
  857. package/dist/number-CYqBcrSj.js +0 -346
  858. package/dist/number-CYqBcrSj.js.map +0 -1
  859. package/dist/overlays-CC8zI3Du.js +0 -1017
  860. package/dist/overlays-CC8zI3Du.js.map +0 -1
  861. package/dist/page-BoQ1VaFJ.js +0 -331
  862. package/dist/page-BoQ1VaFJ.js.map +0 -1
  863. package/dist/pagination-Br8TdV9A.js.map +0 -1
  864. package/dist/popover-k8TdUcAt.js.map +0 -1
  865. package/dist/primitives-BkkQjYl7.js +0 -385
  866. package/dist/primitives-BkkQjYl7.js.map +0 -1
  867. package/dist/receipt-C7LhOg7Q.js +0 -116
  868. package/dist/receipt-C7LhOg7Q.js.map +0 -1
  869. package/dist/rich-text-editor-CAurDwT5.js +0 -1273
  870. package/dist/rich-text-editor-CAurDwT5.js.map +0 -1
  871. package/dist/rich-text-editor-toolbar-DbXig7Jk.js +0 -99
  872. package/dist/rich-text-editor-toolbar-DbXig7Jk.js.map +0 -1
  873. package/dist/rich-text-tree-BqyQ_7-R.js +0 -66
  874. package/dist/rich-text-tree-BqyQ_7-R.js.map +0 -1
  875. package/dist/sanitize-html-BWkH4dLM.js +0 -105
  876. package/dist/sanitize-html-BWkH4dLM.js.map +0 -1
  877. package/dist/separator-DM6gs2vu.js.map +0 -1
  878. package/dist/settings-DZPHgpx4.js +0 -155
  879. package/dist/settings-DZPHgpx4.js.map +0 -1
  880. package/dist/sheet-C4DHsgLk.js +0 -250
  881. package/dist/sheet-C4DHsgLk.js.map +0 -1
  882. package/dist/sidebar-C8BnDwTH.js +0 -709
  883. package/dist/sidebar-C8BnDwTH.js.map +0 -1
  884. package/dist/sidebar-CmD6a-HK.js.map +0 -1
  885. package/dist/skeleton-DDgdhmu9.js.map +0 -1
  886. package/dist/slot-CLF9kLrS.js +0 -16
  887. package/dist/slot-CLF9kLrS.js.map +0 -1
  888. package/dist/smart-card-B6vLxqa_.js.map +0 -1
  889. package/dist/surface-recipes-C8mNycaY.js.map +0 -1
  890. package/dist/table-CBonSdTp.js +0 -1584
  891. package/dist/table-CBonSdTp.js.map +0 -1
  892. package/dist/table-CXSPHH25.js.map +0 -1
  893. package/dist/tabs-C4Kr_hCr.js.map +0 -1
  894. package/dist/text-inputs-jdkS3ReG.js.map +0 -1
  895. package/dist/timelines-CoPwdJP0.js +0 -458
  896. package/dist/timelines-CoPwdJP0.js.map +0 -1
  897. package/dist/tooltip-31NwIpTo.js +0 -113
  898. package/dist/tooltip-31NwIpTo.js.map +0 -1
  899. package/dist/tree-CeYVzdFE.js.map +0 -1
  900. package/dist/typography-C7-YMW1S.js.map +0 -1
  901. package/dist/ui-provider-C-74NVLc.js.map +0 -1
  902. package/dist/upload-Hdm5gObf.js.map +0 -1
  903. package/dist/upload-queue-D0sYPuqo.js +0 -409
  904. package/dist/upload-queue-D0sYPuqo.js.map +0 -1
  905. package/dist/usage-card-9s8hLDfn.js.map +0 -1
  906. package/dist/utils-DhuoqFy4.js.map +0 -1
  907. package/dist/value-inputs-D3aPgq9H.js +0 -980
  908. package/dist/value-inputs-D3aPgq9H.js.map +0 -1
  909. package/dist/value-typography-uSzzG9Gf.js +0 -122
  910. package/dist/value-typography-uSzzG9Gf.js.map +0 -1
  911. package/dist/workspace-CC8Vchiu.js +0 -411
  912. package/dist/workspace-CC8Vchiu.js.map +0 -1
@@ -0,0 +1,1657 @@
1
+ "use client";
2
+ import { C as e, f as t } from "./ui-provider-Bu1S-o96.js";
3
+ import { t as n } from "./utils-BVbAG2J6.js";
4
+ import { c as r, o as i, t as a } from "./typography-C0dELqYV.js";
5
+ import { t as o } from "./focus-recipes-DSkiUvUp.js";
6
+ import { n as s } from "./buttons-pZVgPTZn.js";
7
+ import { t as c } from "./structure-DElaQwwN.js";
8
+ import { c as l, o as u } from "./surface-recipes-DV6rrOFq.js";
9
+ import { i as d } from "./popover.recipes-BqkdvlZn.js";
10
+ import { n as f, t as p } from "./action-menu-D5343RwT.js";
11
+ import { r as m } from "./skeleton-Cab_KgVo.js";
12
+ import { t as h } from "./interaction-recipes-DmuS1ase.js";
13
+ import { _ as g, c as _, d as v, g as y, h as b, i as x, l as S, m as C, o as w, p as T, s as E, u as D } from "./primitives-BlC1lXBr.js";
14
+ import { t as ee } from "./initials-format-CDoQEOd_.js";
15
+ import { n as O, r as te, t as ne } from "./number-NFWKIoiK.js";
16
+ import { a as re, i as ie, r as ae, s as oe, t as se } from "./date-3qsCE1ID.js";
17
+ import { i as ce, n as le, s as ue } from "./avatar-Ca3Ihrq4.js";
18
+ import { t as k } from "./badge-oGiXblW7.js";
19
+ import { t as de } from "./batch-action-bar-D6MZQNnC.js";
20
+ import { t as fe } from "./separator-DaDe26sf.js";
21
+ import { t as pe } from "./input-DfJyrjoR.js";
22
+ import { t as me } from "./checkbox-Dy5_XBMZ.js";
23
+ import { r as A, t as he } from "./control-group-recipes-fMuFo0H7.js";
24
+ import { a as ge, c as _e, i as ve, n as ye, o as be, r as xe, s as Se, t as Ce } from "./pagination-BuSWw1US.js";
25
+ import { c as j, i as M, n as we, o as Te, s as Ee, t as De } from "./table-CSRUgpdK.js";
26
+ import { s as Oe } from "./data-display-CWe9SOYh.js";
27
+ import ke, { createContext as Ae, isValidElement as je, useCallback as N, useContext as P, useEffect as F, useLayoutEffect as Me, useMemo as I, useRef as L, useState as R } from "react";
28
+ import { Fragment as Ne, jsx as z, jsxs as B } from "react/jsx-runtime";
29
+ import { ArrowDown as Pe, ArrowUp as Fe, Calendar as Ie, ChevronLeft as Le, ChevronRight as Re, ChevronsUpDown as ze, Mail as Be, Maximize2 as V, Minimize2 as Ve, PackageOpen as He, Settings2 as H } from "lucide-react";
30
+ import { flexRender as Ue, getCoreRowModel as We, getFilteredRowModel as Ge, getSortedRowModel as Ke, useReactTable as qe } from "@tanstack/react-table";
31
+ //#region src/components/features/table/hooks.ts
32
+ var U = 300;
33
+ function Je(e) {
34
+ return e ? e.querySelector("[data-slot=\"table-container\"]") : null;
35
+ }
36
+ function Ye(e, t = {}) {
37
+ let { stepPx: n = U, deps: r = [] } = t, [i, a] = R(!1), [o, s] = R(!1), c = L(0), l = N(() => {
38
+ let t = Je(e.current);
39
+ if (!t) {
40
+ a(!1), s(!1);
41
+ return;
42
+ }
43
+ let { scrollLeft: n, scrollWidth: r, clientWidth: i } = t;
44
+ a(n > 1), s(n + i < r - 1);
45
+ }, [e]);
46
+ F(() => {
47
+ let t, n = window.setTimeout(() => {
48
+ l();
49
+ let n = Je(e.current);
50
+ if (!n) return;
51
+ let r = () => {
52
+ cancelAnimationFrame(c.current), c.current = requestAnimationFrame(l);
53
+ };
54
+ n.addEventListener("scroll", r, { passive: !0 });
55
+ let i = new ResizeObserver(l);
56
+ i.observe(n), n.firstElementChild && i.observe(n.firstElementChild), t = () => {
57
+ n.removeEventListener("scroll", r), cancelAnimationFrame(c.current), i.disconnect();
58
+ };
59
+ }, 0);
60
+ return () => {
61
+ window.clearTimeout(n), t?.();
62
+ };
63
+ }, [
64
+ e,
65
+ l,
66
+ ...r
67
+ ]);
68
+ let u = N((t) => {
69
+ Je(e.current)?.scrollBy({
70
+ left: t,
71
+ behavior: "smooth"
72
+ });
73
+ }, [e]);
74
+ return {
75
+ canScrollLeft: i,
76
+ canScrollRight: o,
77
+ scrollBy: u,
78
+ scrollLeft: N(() => u(-n), [u, n]),
79
+ scrollRight: N(() => u(n), [u, n])
80
+ };
81
+ }
82
+ var Xe = /* @__PURE__ */ new Set([
83
+ "",
84
+ "true",
85
+ "plaintext-only"
86
+ ]), Ze = [
87
+ "a[href]",
88
+ "button:not([disabled])",
89
+ "input:not([disabled])",
90
+ "select:not([disabled])",
91
+ "textarea:not([disabled])",
92
+ "summary",
93
+ "[contenteditable]",
94
+ "[tabindex]:not([tabindex=\"-1\"])"
95
+ ].join(",");
96
+ function W(e) {
97
+ let t = [e];
98
+ for (let n = 0; n < t.length; n++) for (let r of t[n].querySelectorAll("[aria-controls]:not([aria-expanded=\"false\"])")) for (let n of (r.getAttribute("aria-controls") ?? "").split(/\s+/)) {
99
+ let r = e.ownerDocument.getElementById(n);
100
+ r && !t.includes(r) && t.push(r);
101
+ }
102
+ return t;
103
+ }
104
+ function Qe(e, t, n) {
105
+ let r = L(n);
106
+ r.current = n, F(() => {
107
+ if (!e || typeof document > "u") return;
108
+ let n = document.activeElement, i = document.body.style.overflow;
109
+ document.body.style.overflow = "hidden";
110
+ let a, o = !0, s = (e, t) => t instanceof Node && W(e).some((e) => e.contains(t)), c = (e) => Array.from(e.querySelectorAll(Ze)).filter((e) => (e.tabIndex >= 0 || Xe.has(e.getAttribute("contenteditable")?.toLowerCase() ?? "false") && !e.hasAttribute("tabindex") && !e.parentElement?.isContentEditable) && !e.matches(":disabled") && !e.closest("[inert], [hidden]") && !["hidden", "collapse"].includes(getComputedStyle(e).visibility) && (e.offsetParent !== null || e === document.activeElement)), l = (e, t) => {
111
+ let n = e?.closest("[role=\"dialog\"], [role=\"alertdialog\"], [aria-modal=\"true\"]");
112
+ return !!n && n !== t;
113
+ }, u = (e) => {
114
+ let n = t.current;
115
+ if (!n || e.defaultPrevented || e.isComposing || l(document.activeElement, n)) return;
116
+ if (a = e.key === "Tab" ? e.shiftKey ? "backward" : "forward" : void 0, e.key === "Escape") {
117
+ e.preventDefault(), e.stopPropagation(), r.current();
118
+ return;
119
+ }
120
+ if (e.key !== "Tab") return;
121
+ let i = document.activeElement;
122
+ if (i && !n.contains(i) && s(n, i)) return;
123
+ let o = c(n);
124
+ if (o.length === 0) return;
125
+ let u = o[0], d = o[o.length - 1], f = i instanceof Node && n.contains(i);
126
+ e.shiftKey && (!f || i === u) ? (e.preventDefault(), d.focus()) : !e.shiftKey && (!f || i === d) && (e.preventDefault(), u.focus());
127
+ }, d = () => {
128
+ a && queueMicrotask(() => {
129
+ let e = t.current;
130
+ if (!o || !e || !a || s(e, document.activeElement) || l(document.activeElement, e)) return;
131
+ let n = c(e);
132
+ (a === "backward" ? n.at(-1) : n[0])?.focus();
133
+ });
134
+ }, f = () => {
135
+ a = void 0;
136
+ }, p = t.current;
137
+ return window.addEventListener("keydown", u), window.addEventListener("focusin", d), window.addEventListener("pointerdown", f, !0), () => {
138
+ o = !1, window.removeEventListener("keydown", u), window.removeEventListener("focusin", d), window.removeEventListener("pointerdown", f, !0), document.body.style.overflow = i;
139
+ let e = document.activeElement;
140
+ (p && s(p, e) || e === document.body) && n?.isConnected && n.focus();
141
+ };
142
+ }, [e, t]);
143
+ }
144
+ //#endregion
145
+ //#region src/components/features/table/table-region.recipes.ts
146
+ var $e = "px-surface [.card--content:not([data-padding=none])_&:not(.card--content[data-padding=none]_*)]:px-0", et = (e) => {
147
+ let t = e.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/[_.-]+/g, " ").replace(/\s+/g, " ").trim().toLowerCase();
148
+ return t ? t.charAt(0).toUpperCase() + t.slice(1) : "Column";
149
+ }, G = {
150
+ loading: { label: "Loading records" },
151
+ emptyState: {
152
+ message: "No results found.",
153
+ ariaLabel: "Empty state"
154
+ },
155
+ actions: {
156
+ triggerLabel: "Actions",
157
+ srLabel: "Row actions menu",
158
+ menuLabel: "More actions"
159
+ },
160
+ filter: {
161
+ searchPlaceholder: "Filter...",
162
+ columnsButton: "Columns"
163
+ },
164
+ columnVisibility: {
165
+ title: "Toggle columns",
166
+ triggerLabel: "Columns",
167
+ formatLabel: (e, t) => t && t.trim().length > 0 ? t : et(e)
168
+ },
169
+ toolbar: {
170
+ scrollLeft: "Scroll left",
171
+ scrollRight: "Scroll right",
172
+ columns: "Toggle columns",
173
+ enterFullscreen: "Enter full screen",
174
+ exitFullscreen: "Exit full screen"
175
+ },
176
+ pagination: {
177
+ showing: "Showing",
178
+ to: "to",
179
+ of: "of",
180
+ entries: "results",
181
+ previous: "Previous",
182
+ next: "Next",
183
+ previousLabel: "Go to previous page",
184
+ nextLabel: "Go to next page",
185
+ morePages: "More pages",
186
+ page: "Page",
187
+ rowsPerPage: "Rows per page",
188
+ ariaLabel: "Pagination navigation"
189
+ },
190
+ selection: {
191
+ summary: (e, t) => `${e} of ${t} row${t === 1 ? "" : "s"} selected.`,
192
+ row: (e) => `Select row ${e + 1}`,
193
+ selectAll: "Select all rows",
194
+ columnLabel: "Selection",
195
+ clear: "Clear selection",
196
+ label: "Batch actions"
197
+ },
198
+ accessibility: {
199
+ scrollRegion: "Table scroll area",
200
+ fullscreenRegion: "Table, full screen",
201
+ sortColumn: (e) => `Sort ${e}`,
202
+ sortPriority: (e, t, n) => `${e === "asc" ? "Ascending" : "Descending"}, sort priority ${t} of ${n}.`,
203
+ resizeColumn: (e) => `Resize ${e}`
204
+ }
205
+ }, K = (e, t) => ({
206
+ ...e,
207
+ ...t
208
+ }), tt = (e) => e ? {
209
+ loading: K(G.loading, e.loading),
210
+ emptyState: K(G.emptyState, e.emptyState),
211
+ actions: {
212
+ ...K(G.actions, e.actions),
213
+ ...e.actions?.triggerLabel !== void 0 && e.actions.menuLabel === void 0 ? { menuLabel: e.actions.triggerLabel } : {}
214
+ },
215
+ filter: K(G.filter, e.filter),
216
+ columnVisibility: K(G.columnVisibility, e.columnVisibility),
217
+ toolbar: K(G.toolbar, e.toolbar),
218
+ pagination: K(G.pagination, e.pagination),
219
+ selection: K(G.selection, e.selection),
220
+ accessibility: K(G.accessibility, e.accessibility)
221
+ } : G;
222
+ //#endregion
223
+ //#region src/components/features/table/pagination.tsx
224
+ function nt(e, t) {
225
+ if (t <= 7) return Array.from({ length: t }, (e, t) => t + 1);
226
+ let n = [1];
227
+ e > 3 && n.push("ellipsis");
228
+ let r = Math.max(2, e - 1), i = Math.min(t - 1, e + 1);
229
+ for (let e = r; e <= i; e++) n.push(e);
230
+ return e < t - 2 && n.push("ellipsis"), n.push(t), n;
231
+ }
232
+ function rt(e, t, n) {
233
+ let r = new URLSearchParams();
234
+ return r.set(n, String(t)), `${e}${e.includes("?") ? "&" : "?"}${r.toString()}`;
235
+ }
236
+ function it(e) {
237
+ return e.button !== 0 || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey;
238
+ }
239
+ function at({ pagination: e, onPageChange: t, labels: r = {}, pageQueryKey: i, className: a }) {
240
+ let o = {
241
+ ...G.pagination,
242
+ ...r
243
+ }, s = {
244
+ navigationLabel: o.ariaLabel,
245
+ previous: o.previous,
246
+ next: o.next,
247
+ previousLabel: o.previousLabel ?? _e.previousLabel,
248
+ nextLabel: o.nextLabel ?? _e.nextLabel,
249
+ morePages: o.morePages ?? _e.morePages
250
+ }, c = i ?? "page", l = Math.min((e.current_page - 1) * e.per_page + 1, e.total), u = Math.min(e.current_page * e.per_page, e.total), d = N((n, r, i) => {
251
+ i && it(n) || (n.preventDefault(), i && t?.(r, i, e.path || ""));
252
+ }, [t, e.path]), f = e.prev_page_url !== null, p = e.next_page_url !== null, m = nt(e.current_page, e.last_page);
253
+ return /* @__PURE__ */ B("div", {
254
+ className: n("pagination--component", "flex flex-col items-start gap-space-md py-row-y-lg sm:flex-row sm:items-center sm:justify-between sm:gap-0", $e, a),
255
+ children: [/* @__PURE__ */ B(y, {
256
+ size: "xs",
257
+ className: "tabular-nums tracking-tight",
258
+ children: [
259
+ /* @__PURE__ */ z(ne, {
260
+ value: l,
261
+ size: "xs",
262
+ weight: "medium",
263
+ align: "left"
264
+ }),
265
+ "–",
266
+ /* @__PURE__ */ z(ne, {
267
+ value: u,
268
+ size: "xs",
269
+ weight: "medium",
270
+ align: "left"
271
+ }),
272
+ " ",
273
+ o.of,
274
+ " ",
275
+ /* @__PURE__ */ z(ne, {
276
+ value: e.total,
277
+ size: "xs",
278
+ weight: "medium",
279
+ align: "left"
280
+ }),
281
+ " ",
282
+ o.entries
283
+ ]
284
+ }), /* @__PURE__ */ z(Se, {
285
+ strings: s,
286
+ className: "mx-0 w-full justify-start sm:w-auto sm:justify-center",
287
+ children: /* @__PURE__ */ B(Ce, {
288
+ className: "gap-0 sm:gap-space-2xs",
289
+ children: [
290
+ /* @__PURE__ */ z(xe, { children: /* @__PURE__ */ z(be, {
291
+ size: "sm",
292
+ text: o.previous,
293
+ href: e.prev_page_url ?? "#",
294
+ onClick: (t) => {
295
+ d(t, e.current_page - 1, e.prev_page_url);
296
+ },
297
+ "aria-disabled": !f,
298
+ className: "h-action-sm text-pxs"
299
+ }) }),
300
+ m.map((t, n) => {
301
+ let r = t === "ellipsis", i = r ? `ellipsis-${e.current_page}-${n}` : `page-${t}`, a = r ? null : rt(e.path, t, c);
302
+ return /* @__PURE__ */ z(xe, { children: r ? /* @__PURE__ */ z(ye, { size: "sm" }) : /* @__PURE__ */ z(ve, {
303
+ size: "sm",
304
+ href: a ?? "#",
305
+ active: t === e.current_page,
306
+ onClick: (e) => d(e, t, a),
307
+ className: "size-action-sm text-pxs",
308
+ children: t
309
+ }) }, i);
310
+ }),
311
+ /* @__PURE__ */ z(xe, { children: /* @__PURE__ */ z(ge, {
312
+ size: "sm",
313
+ text: o.next,
314
+ href: e.next_page_url ?? "#",
315
+ onClick: (t) => {
316
+ d(t, e.current_page + 1, e.next_page_url);
317
+ },
318
+ "aria-disabled": !p,
319
+ className: "h-action-sm text-pxs"
320
+ }) })
321
+ ]
322
+ })
323
+ })]
324
+ });
325
+ }
326
+ at.displayName = "Pagination";
327
+ //#endregion
328
+ //#region src/components/features/table/table-actions.tsx
329
+ function ot(e) {
330
+ let { row: t, actions: r, menuLabel: i, displayMode: a = "menu", responsiveBreakpoint: o = 1040, strings: s } = e, c = s ?? G, l = i ?? c.actions.menuLabel ?? c.actions.triggerLabel, u = I(() => {
331
+ let e = typeof r == "function" ? r(t) : r;
332
+ return Array.isArray(e) ? e : [];
333
+ }, [r, t]), d = I(() => {
334
+ let e = (e) => typeof e == "function" ? e(t) : e;
335
+ return u.flatMap((t) => {
336
+ let n = e(t.visible) ?? !0;
337
+ return n ? [{
338
+ ...t,
339
+ visible: n,
340
+ disabled: e(t.disabled) ?? !1
341
+ }] : [];
342
+ });
343
+ }, [u, t]), m = d.length > 0, [h, g] = R(!1), _ = d.filter((e) => e.tone !== "destructive"), v = d.filter((e) => e.tone === "destructive"), y = [..._, ...v];
344
+ if (F(() => {
345
+ if (a !== "auto" || !m) {
346
+ g(!1);
347
+ return;
348
+ }
349
+ let e = () => {
350
+ try {
351
+ g(window.innerWidth <= o);
352
+ } catch {
353
+ g(!1);
354
+ }
355
+ };
356
+ return e(), window.addEventListener("resize", e), () => window.removeEventListener("resize", e);
357
+ }, [
358
+ a,
359
+ m,
360
+ o
361
+ ]), !m) return null;
362
+ let b = a === "auto" ? h ? "menu" : "inline" : a, x = y.map((e, n) => ({
363
+ id: e.id || `${e.label}-${n}`,
364
+ label: e.label,
365
+ icon: e.icon,
366
+ disabled: !!e.disabled,
367
+ tone: e.tone,
368
+ buttonStyle: e.buttonStyle,
369
+ onClick: () => e.onClick?.(t)
370
+ }));
371
+ return b === "inline" ? /* @__PURE__ */ z(p, {
372
+ actions: x,
373
+ className: n("table-actions--component")
374
+ }) : /* @__PURE__ */ z(f, {
375
+ actions: x,
376
+ srText: l || c.actions.srLabel,
377
+ closeOnSelect: !0,
378
+ align: "end"
379
+ });
380
+ }
381
+ ot.displayName = "DataTableActions";
382
+ //#endregion
383
+ //#region src/components/features/table/table-helpers.tsx
384
+ function st(e) {
385
+ return e.options.meta?.themeliaDataTable;
386
+ }
387
+ function ct(e, t, n, r) {
388
+ if (typeof e != "function") {
389
+ t(e), n?.(e);
390
+ return;
391
+ }
392
+ let i = e;
393
+ if (r !== void 0) {
394
+ let e = i(r);
395
+ t(e), n?.(e);
396
+ return;
397
+ }
398
+ let a = !1;
399
+ t((e) => {
400
+ let t = i(e);
401
+ return a || (a = !0, n?.(t)), t;
402
+ });
403
+ }
404
+ var lt = (e, t, n, r) => ct(e, t, n, r), ut = (e, t, n, r) => ct(e, t, n, r), q = (e, t, n, r) => ct(e, t, n, r), J = (e, t, n, r) => {
405
+ let i = "";
406
+ return r && (i += "bg-muted "), typeof n == "function" ? i += n(e, t) + " " : n && (i += n + " "), i.trim();
407
+ }, dt = "selection", ft = "sticky z-10 bg-card", pt = "shadow-[1px_0_0_0_var(--border)] rtl:shadow-[-1px_0_0_0_var(--border)]";
408
+ function mt(e, t, n) {
409
+ if (!n) return;
410
+ let r = e[0] === dt;
411
+ if (t === 0) return r ? "selection" : "first";
412
+ if (t === 1 && r) return "first";
413
+ }
414
+ function ht(e, t) {
415
+ return e ? e === "selection" ? `${ft} start-0` : `${ft} ${pt} ${t ? "start-(--data-table-selection-width)" : "start-0"}` : "";
416
+ }
417
+ var Y = (e, t, n, r, i) => {
418
+ let a = "";
419
+ return typeof n == "string" ? a = n : n && (a = n(e, t)), r && i ? `${a} sticky start-0 z-10 bg-card shadow-[1px_0_0_0_var(--border)] rtl:shadow-[-1px_0_0_0_var(--border)]` : a;
420
+ }, gt = (e) => e.getSelectedRowModel().rows.map((e) => e.original), _t = /* @__PURE__ */ new WeakMap();
421
+ function vt(e, t) {
422
+ if (!e) return t.index;
423
+ let n = e.getRowModel().rows, r = _t.get(n);
424
+ return r || (r = new Map(n.map((e, t) => [e.id, t])), _t.set(n, r)), r.get(t.id) ?? t.index;
425
+ }
426
+ var yt = (e, t = G, n) => /* @__PURE__ */ z("div", {
427
+ className: "flex items-center pe-space-sm",
428
+ children: /* @__PURE__ */ z(me, {
429
+ className: "size-icon cursor-pointer disabled:cursor-not-allowed disabled:opacity-50",
430
+ checked: e.getIsSelected(),
431
+ disabled: !e.getCanSelect(),
432
+ onCheckedChange: (t) => e.toggleSelected(t === !0),
433
+ onClick: (e) => e.stopPropagation(),
434
+ "aria-label": t.selection.row(vt(n, e), e.original)
435
+ })
436
+ }), bt = (e, t = G) => e.options.enableMultiRowSelection === !1 ? /* @__PURE__ */ z("span", {
437
+ className: "sr-only",
438
+ children: t.selection.columnLabel ?? G.selection.columnLabel
439
+ }) : /* @__PURE__ */ z("div", {
440
+ className: "flex items-center pe-space-sm",
441
+ children: /* @__PURE__ */ z(me, {
442
+ className: "size-icon cursor-pointer",
443
+ checked: e.getIsAllPageRowsSelected(),
444
+ indeterminate: e.getIsSomePageRowsSelected() && !e.getIsAllPageRowsSelected(),
445
+ onCheckedChange: (t) => e.toggleAllPageRowsSelected(t === !0),
446
+ "aria-label": t.selection.selectAll
447
+ })
448
+ });
449
+ function xt({ table: e }) {
450
+ return bt(e, st(e)?.strings);
451
+ }
452
+ function St({ table: e, row: t }) {
453
+ return yt(t, st(e)?.strings, e);
454
+ }
455
+ var Ct = (e, t) => [{
456
+ id: "selection",
457
+ header: t ? ({ table: e }) => bt(e, t) : xt,
458
+ cell: t ? ({ table: e, row: n }) => yt(n, t, e) : St,
459
+ enableSorting: !1,
460
+ enableResizing: !1,
461
+ enableHiding: !1,
462
+ size: 40
463
+ }, ...e], wt = [
464
+ "button, a[href], input, select, textarea, summary, label, [tabindex]",
465
+ "[role=\"button\"], [role=\"link\"], [role=\"checkbox\"], [role=\"switch\"], [role=\"radio\"]",
466
+ "[role=\"menuitem\"], [role=\"menuitemcheckbox\"], [role=\"menuitemradio\"], [role=\"tab\"]",
467
+ "[role=\"combobox\"], [role=\"textbox\"], [role=\"slider\"], [role=\"spinbutton\"]",
468
+ "[contenteditable]:not([contenteditable=\"false\"])"
469
+ ].join(",");
470
+ function Tt({ loading: e = !1, loadingRows: t = 6, table: r, onRowClick: i, emptyStateAction: a, cellClassName: s = "", rowClassName: c = "", stickyFirstColumn: l = !1, striped: u = !1, strings: d }) {
471
+ let f = r.getRowModel().rows, p = d?.emptyState.message ?? G.emptyState.message;
472
+ if (e) {
473
+ let e = Number.isFinite(t) ? Math.max(1, Math.min(20, Math.floor(t))) : 6, i = r.getVisibleLeafColumns(), a = i.map((e) => e.id);
474
+ return /* @__PURE__ */ z(we, {
475
+ className: "table-body--component",
476
+ "data-loading": "true",
477
+ children: Array.from({ length: e }, (e, t) => /* @__PURE__ */ z(j, {
478
+ "aria-hidden": "true",
479
+ className: "hover:bg-transparent",
480
+ children: i.map((e, t) => {
481
+ let r = mt(a, t, l);
482
+ return /* @__PURE__ */ z(M, {
483
+ "data-pinned": r,
484
+ className: n(Y(e.id, null, s), ht(r, t > 0)),
485
+ children: /* @__PURE__ */ z(m, { className: "h-4 w-full" })
486
+ }, e.id);
487
+ })
488
+ }, t))
489
+ });
490
+ }
491
+ return f.length ? /* @__PURE__ */ z(we, { children: f.map((e, t) => {
492
+ let r = e.getIsSelected(), a = e.getVisibleCells(), d = a.map((e) => e.column.id), f = J(e, t, c, r), p = u && t % 2 != 0 ? h.tableStripe : "", m = i ? "cursor-pointer" : "", g = n(f, p, "transition-colors duration-150", `${h.tableRowHover} ${h.tableRowSelected}`, m, i && `focus-visible:outline-none ${o.inset}`, "border-b border-border/60 last:border-b-0");
493
+ return /* @__PURE__ */ z(j, {
494
+ "data-state": r ? "selected" : null,
495
+ className: g,
496
+ tabIndex: i ? 0 : void 0,
497
+ onClick: i ? (t) => {
498
+ if (t.defaultPrevented) return;
499
+ let n = t.target, r = n instanceof Element ? n.closest(wt) : null;
500
+ r && r !== t.currentTarget || n instanceof Node && t.currentTarget.contains(n) && i(e.original);
501
+ } : void 0,
502
+ onKeyDown: i ? (t) => {
503
+ t.defaultPrevented || t.target !== t.currentTarget || t.key !== "Enter" && t.key !== " " || (t.preventDefault(), t.repeat || i(e.original));
504
+ } : void 0,
505
+ children: a.map((t, r) => {
506
+ let i = mt(d, r, l);
507
+ return /* @__PURE__ */ z(M, {
508
+ "data-pinned": i,
509
+ className: n(Y(t.column.id, e, s), ht(i, r > 0), t.column.columnDef.meta?.align === "end" && "text-right tabular-nums", t.column.columnDef.meta?.align === "center" && "text-center"),
510
+ children: Ue(t.column.columnDef.cell, t.getContext())
511
+ }, t.id);
512
+ })
513
+ }, e.id);
514
+ }) }) : /* @__PURE__ */ z(we, {
515
+ className: "table-body--component",
516
+ children: /* @__PURE__ */ z(j, {
517
+ className: "hover:bg-transparent",
518
+ children: /* @__PURE__ */ z(M, {
519
+ className: "p-0 text-center whitespace-normal",
520
+ colSpan: Math.max(1, r.getVisibleLeafColumns().length),
521
+ children: /* @__PURE__ */ z(Oe, {
522
+ strings: { ariaLabel: d?.emptyState.ariaLabel ?? G.emptyState.ariaLabel },
523
+ title: p,
524
+ description: !1,
525
+ media: /* @__PURE__ */ z(He, { className: "size-icon" }),
526
+ mediaVariant: "icon-soft",
527
+ actions: a,
528
+ className: "data-table--empty-state w-[100cqw] max-w-full"
529
+ })
530
+ })
531
+ })
532
+ });
533
+ }
534
+ Tt.displayName = "DataTableBody";
535
+ //#endregion
536
+ //#region src/components/features/table/table-header.tsx
537
+ function Et({ table: e, enableResizing: t = !1, stickyHeader: r = !1, className: a, cellClassName: c = "", stickyFirstColumn: l = !1, columnGroups: u, headerTransparent: d = !1, strings: f }) {
538
+ let p = e.getHeaderGroups(), m = ke.useId(), g = e.getState().sorting, _ = r ? n("shadow-[0_1px_0_0_var(--border)]", d ? "bg-background" : "bg-muted") : "", v = (e) => u ? u.find((t) => t.columns.includes(e)) : null;
539
+ return /* @__PURE__ */ B(Ee, {
540
+ className: n(r && "sticky top-0 z-20", a),
541
+ children: [(() => {
542
+ if (!u || u.length === 0 || p.length === 0) return null;
543
+ let e = p[0].headers, t = null, r = 0, a = [];
544
+ return e.forEach((o, s) => {
545
+ let c = v(o.id)?.header || "";
546
+ c === t ? r++ : (t !== null && r > 0 && a.push(/* @__PURE__ */ z(Te, {
547
+ colSpan: r,
548
+ className: n("border-r border-border/60 bg-muted/50 text-center text-muted-foreground last:border-r-0", _),
549
+ children: /* @__PURE__ */ z(i, { children: t || "" })
550
+ }, `group-${t}-${a.length}`)), t = c, r = 1), s === e.length - 1 && r > 0 && a.push(/* @__PURE__ */ z(Te, {
551
+ colSpan: r,
552
+ className: n("whitespace-nowrap border-r border-border/60 bg-muted/50 text-center text-muted-foreground last:border-r-0", _),
553
+ children: /* @__PURE__ */ z(i, { children: t || "" })
554
+ }, `group-${t}-${a.length}`));
555
+ }), /* @__PURE__ */ z(j, {
556
+ className: n("table-header--component", "border-b border-border"),
557
+ children: a
558
+ });
559
+ })(), p.map((i) => /* @__PURE__ */ z(j, {
560
+ className: n("border-b border-border/60", d ? "bg-transparent hover:bg-transparent" : `${h.tableHead} ${h.tableRowHover}`),
561
+ children: i.headers.map((i, a, u) => {
562
+ let d = mt(u.map((e) => e.column.id), a, l), p = n(Y(i.id, null, c), ht(d, a > 0), "text-muted-foreground font-medium whitespace-nowrap", i.column.columnDef.meta?.align === "end" && "text-right", i.column.columnDef.meta?.align === "center" && "text-center", _, r && d && "z-30", !r && "bg-transparent", t && !d && "relative"), h = t || i.column.columnDef.size !== void 0 ? { width: i.getSize() } : void 0, v = `${m}-${encodeURIComponent(i.id)}`, y = i.getResizeHandler(), b = i.getLeafHeaders().filter((e) => e.subHeaders.length === 0), x = b.reduce((e, t) => e + (t.column.columnDef.minSize ?? 20), 0), S = Math.min(2 ** 53 - 1, b.reduce((e, t) => e + (t.column.columnDef.maxSize ?? 2 ** 53 - 1), 0)), C = (t) => {
563
+ e.setOptions((e) => ({
564
+ ...e,
565
+ columnResizeDirection: getComputedStyle(t.currentTarget).direction === "rtl" ? "rtl" : "ltr"
566
+ })), y(t);
567
+ }, w = i.column.getIsResizing(), T = (() => {
568
+ let e = i.column.columnDef.header;
569
+ return typeof e == "string" ? e : i.column.columnDef.meta?.label || (typeof i.id == "string" ? i.id : "column");
570
+ })();
571
+ return /* @__PURE__ */ z(Te, {
572
+ colSpan: i.colSpan,
573
+ "data-pinned": d,
574
+ className: p,
575
+ style: h,
576
+ "aria-sort": !i.isPlaceholder && i.subHeaders.length === 0 && i.column.getIsSorted() && i.column.getSortIndex() === 0 ? i.column.getIsSorted() === "asc" ? "ascending" : "descending" : void 0,
577
+ children: i.isPlaceholder ? null : /* @__PURE__ */ B("div", {
578
+ className: n(t && i.column.getCanResize() && "pe-action-sm"),
579
+ children: [(() => {
580
+ let e = i.column.getCanSort(), t = i.column.getIsSorted(), r = Ue(i.column.columnDef.header, i.getContext()), a = t === "asc" ? Fe : t === "desc" ? Pe : ze;
581
+ return e ? /* @__PURE__ */ B(s, {
582
+ type: "button",
583
+ tone: "secondary",
584
+ buttonStyle: "ghost",
585
+ size: "sm",
586
+ onClick: i.column.getToggleSortingHandler(),
587
+ className: n("group -ml-space-sm inline-flex select-none items-center gap-space-sm rounded-radius px-space-sm", "text-muted-foreground hover:text-foreground transition-colors", `focus-visible:outline-none ${o.edge}`),
588
+ "aria-label": (f?.accessibility.sortColumn ?? G.accessibility.sortColumn)(T),
589
+ "aria-describedby": t && g.length > 1 ? v : void 0,
590
+ children: [
591
+ r,
592
+ t && g.length > 1 && /* @__PURE__ */ z("span", {
593
+ id: v,
594
+ className: "sr-only",
595
+ children: (f?.accessibility.sortPriority ?? G.accessibility.sortPriority)(t, i.column.getSortIndex() + 1, g.length)
596
+ }),
597
+ /* @__PURE__ */ z(a, {
598
+ className: n("size-icon-sm shrink-0 transition-opacity", t ? "text-foreground opacity-100" : "opacity-30 group-hover:opacity-70"),
599
+ "aria-hidden": "true"
600
+ })
601
+ ]
602
+ }) : /* @__PURE__ */ z("div", {
603
+ className: n("flex items-center", i.column.columnDef.meta?.align === "end" && "justify-end", i.column.columnDef.meta?.align === "center" && "justify-center"),
604
+ children: r
605
+ });
606
+ })(), !!t && i.column.getCanResize() && /* @__PURE__ */ z("div", {
607
+ role: "separator",
608
+ tabIndex: 0,
609
+ className: n("absolute inset-y-0 end-0 w-action-sm cursor-col-resize select-none touch-none bg-transparent after:absolute after:inset-y-0 after:end-0 after:w-px after:bg-muted-foreground opacity-0 hover:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:after:w-1 focus-visible:after:bg-ring", w && "after:bg-primary-accent!"),
610
+ "aria-label": (f?.accessibility.resizeColumn ?? G.accessibility.resizeColumn)(T),
611
+ "aria-orientation": "vertical",
612
+ "aria-valuenow": i.getSize(),
613
+ "aria-valuemin": x,
614
+ "aria-valuemax": S,
615
+ onKeyDown: (t) => {
616
+ let n = getComputedStyle(t.currentTarget).direction === "rtl", r = (t.key === "ArrowRight" ? 10 : t.key === "ArrowLeft" ? -10 : 0) * (n ? -1 : 1);
617
+ if (!r && t.key !== "Home" && t.key !== "End" || t.key === "End" && S === 2 ** 53 - 1) return;
618
+ t.preventDefault(), t.stopPropagation();
619
+ let a = i.getSize(), o = Math.max(x, Math.min(S, a + r)) / Math.max(1, a);
620
+ e.setColumnSizing((e) => ({
621
+ ...e,
622
+ ...Object.fromEntries(b.map((e) => {
623
+ let n = e.column.columnDef.minSize ?? 20, r = e.column.columnDef.maxSize ?? 2 ** 53 - 1, i = t.key === "Home" ? n : t.key === "End" ? r : Math.max(n, Math.min(r, e.column.getSize() * o));
624
+ return [e.column.id, Math.round(i * 100) / 100];
625
+ }))
626
+ }));
627
+ },
628
+ onMouseDown: C,
629
+ onTouchStart: C
630
+ })]
631
+ })
632
+ }, i.id);
633
+ })
634
+ }, i.id))]
635
+ });
636
+ }
637
+ Et.displayName = "DataTableHeader";
638
+ //#endregion
639
+ //#region src/components/features/table/column-visibility-toggle.tsx
640
+ function X({ table: e, className: t, align: r = "end", labelVisibility: i = "hidden", strings: a = G }) {
641
+ let o = e.getAllColumns().filter((e) => e.getCanHide());
642
+ if (o.length === 0) return null;
643
+ let s = i !== "hidden", c = o.map((e) => {
644
+ let t = e.columnDef.header, n = a.columnVisibility.formatLabel(e.id, typeof t == "string" ? t : e.columnDef.meta?.label);
645
+ return {
646
+ id: e.id,
647
+ type: "checkbox",
648
+ label: n,
649
+ group: a.columnVisibility.title,
650
+ checked: e.getIsVisible(),
651
+ onCheckedChange: (t) => e.toggleVisibility(!!t)
652
+ };
653
+ });
654
+ return /* @__PURE__ */ z(f, {
655
+ actions: c,
656
+ icon: H,
657
+ label: a.columnVisibility.triggerLabel,
658
+ srText: a.columnVisibility.triggerLabel,
659
+ align: r,
660
+ width: d.xs,
661
+ labelVisibility: s ? "responsive" : "hidden",
662
+ buttonProps: {
663
+ "aria-label": a.columnVisibility.triggerLabel,
664
+ tone: "secondary",
665
+ buttonStyle: "outline",
666
+ size: "sm",
667
+ iconOnly: !s,
668
+ className: n("column-visibility-toggle--component", s ? "h-action-sm gap-space-sm px-control-sm" : "size-action-sm gap-0 px-0", t)
669
+ },
670
+ preserveOrder: !0
671
+ });
672
+ }
673
+ X.displayName = "ColumnVisibilityToggle";
674
+ //#endregion
675
+ //#region src/components/features/table/partials/fullscreen-toggle.tsx
676
+ var Dt = "text-muted-foreground hover:text-foreground disabled:pointer-events-none disabled:opacity-50";
677
+ function Z({ fullscreen: e, onFullscreenChange: t, enterLabel: r = "Enter full screen", exitLabel: i = "Exit full screen", className: a }) {
678
+ let o = e ? i : r, c = e ? Ve : V;
679
+ return /* @__PURE__ */ z(s, {
680
+ type: "button",
681
+ tone: "secondary",
682
+ buttonStyle: "ghost",
683
+ size: "sm",
684
+ iconOnly: !0,
685
+ "aria-label": o,
686
+ "aria-pressed": e,
687
+ onClick: () => t(!e),
688
+ className: n("fullscreen-toggle--component", Dt, a),
689
+ children: /* @__PURE__ */ z(c, { className: "size-icon-sm" })
690
+ });
691
+ }
692
+ Z.displayName = "FullscreenToggle";
693
+ //#endregion
694
+ //#region src/components/features/table/table-toolbar.tsx
695
+ var Ot = 300, kt = "text-muted-foreground transition-colors duration-150 hover:text-foreground disabled:pointer-events-none disabled:opacity-50";
696
+ function At({ label: e, onClick: t, disabled: r, className: i, children: a }) {
697
+ return /* @__PURE__ */ z(s, {
698
+ type: "button",
699
+ tone: "secondary",
700
+ buttonStyle: "ghost",
701
+ size: "sm",
702
+ iconOnly: !0,
703
+ "aria-label": e,
704
+ className: n("table-toolbar--component", kt, A.joinedItem, i),
705
+ onClick: t,
706
+ disabled: r,
707
+ children: a
708
+ });
709
+ }
710
+ function jt(e) {
711
+ return e ? e.querySelector("[data-slot=\"table-container\"]") : null;
712
+ }
713
+ function Mt({ table: r, tableAreaRef: i, fullscreen: a, onFullscreenChange: s, showFullscreenToggle: c = !1, enableColumnVisibility: l = !1, labelVisibility: u = "hidden", strings: d = G, className: f }) {
714
+ let { defaultScale: p } = t(), m = e(void 0, p), [h, g] = R(!1), [_, v] = R(!1), y = L(0), b = L(null), x = N(() => {
715
+ let e = jt(i.current);
716
+ if (!e) {
717
+ g(!1), v(!1);
718
+ return;
719
+ }
720
+ let { scrollLeft: t, scrollWidth: n, clientWidth: r } = e;
721
+ g(t > 1), v(t + r < n - 1);
722
+ }, [i]);
723
+ F(() => {
724
+ let e = window.setTimeout(() => {
725
+ let e = jt(i.current);
726
+ if (!e || (x(), typeof ResizeObserver > "u")) return;
727
+ let t = () => {
728
+ cancelAnimationFrame(y.current), y.current = requestAnimationFrame(x);
729
+ };
730
+ e.addEventListener("scroll", t, { passive: !0 });
731
+ let n = new ResizeObserver(x);
732
+ n.observe(e), e.firstElementChild && n.observe(e.firstElementChild), b.current = () => {
733
+ e.removeEventListener("scroll", t), cancelAnimationFrame(y.current), n.disconnect();
734
+ };
735
+ }, 0);
736
+ return () => {
737
+ window.clearTimeout(e), b.current?.();
738
+ };
739
+ }, [
740
+ i,
741
+ x,
742
+ a
743
+ ]);
744
+ let S = N(() => {
745
+ jt(i.current)?.scrollBy({
746
+ left: -300,
747
+ behavior: "smooth"
748
+ });
749
+ }, [i]), C = N(() => {
750
+ jt(i.current)?.scrollBy({
751
+ left: Ot,
752
+ behavior: "smooth"
753
+ });
754
+ }, [i]), w = l ? r.getAllColumns().filter((e) => e.getCanHide()) : [], T = h || _, E = w.length > 0, D = c;
755
+ return !T && !E && !D ? null : /* @__PURE__ */ B("div", {
756
+ className: n(A.joinedFrame, he[m], "bg-card text-card-foreground", f),
757
+ children: [
758
+ !!T && /* @__PURE__ */ B(Ne, { children: [
759
+ /* @__PURE__ */ z(At, {
760
+ label: d.toolbar.scrollLeft,
761
+ onClick: S,
762
+ disabled: !h,
763
+ className: A.firstItem,
764
+ children: /* @__PURE__ */ z(Le, { className: "size-icon-sm" })
765
+ }),
766
+ /* @__PURE__ */ z(At, {
767
+ label: d.toolbar.scrollRight,
768
+ onClick: C,
769
+ disabled: !_,
770
+ children: /* @__PURE__ */ z(Re, { className: "size-icon-sm" })
771
+ }),
772
+ (E || D) && /* @__PURE__ */ z("div", { className: "h-4 w-px self-center bg-border" })
773
+ ] }),
774
+ !!E && /* @__PURE__ */ B(Ne, { children: [/* @__PURE__ */ z(X, {
775
+ table: r,
776
+ strings: d,
777
+ labelVisibility: u,
778
+ className: n(A.joinedItem, "border-0 shadow-none", o.inset, !T && A.firstItem, !D && A.lastItem)
779
+ }), D && /* @__PURE__ */ z("div", { className: "h-4 w-px self-center bg-border" })] }),
780
+ D && /* @__PURE__ */ z(Z, {
781
+ fullscreen: a,
782
+ onFullscreenChange: s,
783
+ enterLabel: d.toolbar.enterFullscreen,
784
+ exitLabel: d.toolbar.exitFullscreen,
785
+ className: n(A.joinedItem, A.lastItem, !T && !E && A.firstItem)
786
+ })
787
+ ]
788
+ });
789
+ }
790
+ Mt.displayName = "DataTableToolbar";
791
+ //#endregion
792
+ //#region src/components/features/table/data-table.tsx
793
+ var Nt = Ae("sm");
794
+ function Pt() {
795
+ return P(Nt);
796
+ }
797
+ var Ft = {
798
+ sm: "compact",
799
+ md: "default",
800
+ lg: "comfortable"
801
+ }, It = "sm", Lt = 40;
802
+ function Rt(e) {
803
+ try {
804
+ let t = window.localStorage.getItem(e);
805
+ if (!t) return null;
806
+ let n = JSON.parse(t);
807
+ return n && typeof n == "object" && !Array.isArray(n) ? n : null;
808
+ } catch {
809
+ return null;
810
+ }
811
+ }
812
+ function zt(e) {
813
+ let t = L(e);
814
+ t.current = e;
815
+ let n = L(null);
816
+ return Me(() => {
817
+ n.current = null;
818
+ }), N((e) => {
819
+ let r = n.current ? n.current.value : t.current, i = typeof e == "function" ? e(r) : e;
820
+ return n.current || queueMicrotask(() => {
821
+ n.current = null;
822
+ }), n.current = { value: i }, i;
823
+ }, []);
824
+ }
825
+ var Bt = (e) => {
826
+ if (e !== void 0) return typeof e == "number" ? `${e}px` : e;
827
+ };
828
+ function Vt(e, t) {
829
+ return e.map((e) => "columns" in e && e.columns ? {
830
+ ...e,
831
+ columns: Vt(e.columns, t)
832
+ } : (e.id ?? ("accessorKey" in e && typeof e.accessorKey == "string" ? e.accessorKey.replace(/\./g, "_") : void 0) ?? (typeof e.header == "string" ? e.header : void 0)) === t && e.filterFn === void 0 ? {
833
+ ...e,
834
+ filterFn: "includesString"
835
+ } : e);
836
+ }
837
+ function Ht({ table: e }) {
838
+ return st(e)?.strings.actions.triggerLabel ?? G.actions.triggerLabel;
839
+ }
840
+ function Ut({ table: e, row: t }) {
841
+ return st(e)?.renderActions?.(t.original) ?? null;
842
+ }
843
+ function Wt(e) {
844
+ let t = e.length === 2 && Array.isArray(e[0]) && Array.isArray(e[1]) ? e : void 0, [n, r] = R(t);
845
+ if (!t) return n && r(void 0), e;
846
+ let i = t[1];
847
+ return n && i.length === n[1].length && i.every((e, t) => Object.is(e, n[1][t])) ? n[0] : (r(t), t[0]);
848
+ }
849
+ function Gt({ size: r, surface: i = "card", headerTransparent: a = !0, columns: s, data: c, loading: d = !1, loadingRows: f, columnGroups: p, rowActions: m, rowActionsMenuLabel: h, rowActionsDisplayMode: g, rowActionsBreakpoint: _, enableSorting: v = !1, enableResizing: y = !1, filterColumn: b, manualSorting: x = !1, enableColumnVisibility: S = !1, fullscreen: C, defaultFullscreen: w = !1, onFullscreenChange: T, showFullscreenToggle: E = !1, enableRowSelection: D = !1, enableMultiRowSelection: ee = !0, pagination: O, pageQueryKey: te, onPageChange: ne, onSortingChange: re, onColumnFiltersChange: ie, onRowClick: ae, onRowSelectionChange: oe, stickyHeader: se = !1, stickyToolbar: ce = !1, stickyFirstColumn: le = !1, maxBodyHeight: ue, fillAvailableHeight: k = !1, emptyStateAction: me, className: A = "", rowClassName: he = "", cellClassName: ge = "", headerClassName: _e = "", wrapperClassName: ve = "", innerClassName: ye = "", tableContainerClassName: be = "", getRowId: xe, rowSelection: Se, sorting: Ce, columnVisibility: j, initialState: M, onColumnVisibilityChange: we, strings: Te, topbarContent: Ee, topbarEnd: Oe, topbarClassName: ke, toolbarLabelVisibility: Ae = "hidden", footerContent: je, selectionToolbar: P, bulkActions: F, selectionToolbarClassName: Pe, selectionToolbarPlacement: Fe = "floating", totalRowCount: Ie, storageKey: Le, columnVisibilityPrecedence: Re = "defaults" }) {
850
+ let { defaultScale: ze } = t(), Be = e(r, ze), V = I(() => tt(Te), [Te]), Ve = n("bg-card text-card-foreground", he), He = te ?? "page", H = Bt(ue), Ue = Wt(s), U = I(() => Le ? `dt.${Le}.columns` : null, [Le]), [Je, Ye] = R(M?.sorting ?? []), [Xe, Ze] = R(M?.columnFilters ?? []), [W] = R(() => M?.columnVisibility ?? {}), [et, K] = R(W);
851
+ Me(() => {
852
+ if (!U) return;
853
+ let e = Rt(U);
854
+ e && K(Re === "stored" ? {
855
+ ...W,
856
+ ...e
857
+ } : {
858
+ ...e,
859
+ ...W
860
+ });
861
+ }, [
862
+ U,
863
+ W,
864
+ Re
865
+ ]);
866
+ let [nt, rt] = R(M?.rowSelection || {}), [it, st] = R(w), ct = Ce ?? Je, lt = j ?? et, ut = Se ?? nt, q = C ?? it, J = L(null), dt = L(null), ft = I(() => ({ get current() {
867
+ let e = dt.current;
868
+ return e?.isConnected ? e : J.current?.querySelector("thead [role=\"checkbox\"]") ?? null;
869
+ } }), []), pt = N((e) => {
870
+ e.target instanceof HTMLElement && (dt.current = e.target);
871
+ }, []), mt = zt(Xe), ht = zt(ct), Y = zt(lt), gt = zt(ut), _t = N((e) => {
872
+ let t = mt(e);
873
+ Ze(t), ie?.(t);
874
+ }, [ie, mt]), vt = N((e) => {
875
+ let t = ht(e);
876
+ Ce === void 0 && Ye(t), re?.(t);
877
+ }, [
878
+ Ce,
879
+ re,
880
+ ht
881
+ ]), yt = N((e) => {
882
+ let t = Y(e);
883
+ if (j === void 0 && K(t), U && typeof window < "u") try {
884
+ let e = Re === "stored" ? Object.fromEntries(Object.entries(t).filter(([e, t]) => t !== (W[e] ?? !0))) : t;
885
+ window.localStorage.setItem(U, JSON.stringify(e));
886
+ } catch {}
887
+ we?.(t);
888
+ }, [
889
+ Re,
890
+ W,
891
+ j,
892
+ U,
893
+ we,
894
+ Y
895
+ ]), bt = N((e) => {
896
+ let t = gt(e);
897
+ Se === void 0 && rt(t), oe?.(t);
898
+ }, [
899
+ Se,
900
+ oe,
901
+ gt
902
+ ]), xt = L(null), St = N((e) => {
903
+ C === void 0 && st(e), T?.(e);
904
+ }, [C, T]);
905
+ Qe(q, xt, N(() => St(!1), [St]));
906
+ let wt = N((e) => h?.(e) ?? V.actions.menuLabel, [h, V.actions.menuLabel]), X = !!m, Dt = I(() => {
907
+ let e = b ? Vt(Ue, b) : Ue, t = D ? Ct(e) : e;
908
+ if (!X) return t;
909
+ let n = {
910
+ id: "actions",
911
+ header: Ht,
912
+ cell: Ut,
913
+ enableSorting: !1,
914
+ enableHiding: !1,
915
+ size: 40
916
+ };
917
+ return [...t, n];
918
+ }, [
919
+ Ue,
920
+ b,
921
+ D,
922
+ X
923
+ ]), Z = qe({
924
+ data: c,
925
+ columns: Dt,
926
+ meta: { themeliaDataTable: {
927
+ strings: V,
928
+ renderActions: m ? (e) => /* @__PURE__ */ z(ot, {
929
+ row: e,
930
+ actions: m,
931
+ menuLabel: wt(e),
932
+ displayMode: g,
933
+ responsiveBreakpoint: _,
934
+ strings: V
935
+ }) : void 0
936
+ } },
937
+ state: {
938
+ sorting: ct,
939
+ columnVisibility: lt,
940
+ rowSelection: ut,
941
+ columnFilters: Xe
942
+ },
943
+ enableSorting: v,
944
+ enableColumnResizing: y,
945
+ columnResizeMode: "onChange",
946
+ defaultColumn: { size: void 0 },
947
+ enableColumnFilters: !!b,
948
+ manualFiltering: !b,
949
+ manualSorting: x,
950
+ autoResetPageIndex: !1,
951
+ enableRowSelection: D,
952
+ enableMultiRowSelection: ee,
953
+ onSortingChange: v ? vt : void 0,
954
+ onRowSelectionChange: D ? bt : void 0,
955
+ onColumnVisibilityChange: yt,
956
+ onColumnFiltersChange: _t,
957
+ getCoreRowModel: We(),
958
+ getFilteredRowModel: Ge(),
959
+ getSortedRowModel: Ke(),
960
+ getRowId: xe
961
+ }), Ot = b ? Z.getAllLeafColumns().find((e) => e.id === b && e.getCanFilter()) : void 0, kt = V.filter.searchPlaceholder, At = O && O.last_page > 1, jt = Z.getSelectedRowModel().rows.map((e) => e.original), Pt = Object.values(ut).filter(Boolean).length, Gt = N(() => {
962
+ Z.resetRowSelection();
963
+ }, [Z]), Kt = Ie ?? O?.total ?? c.length, Q = {
964
+ table: Z,
965
+ selectedRows: jt,
966
+ selectedRowCount: Pt,
967
+ totalRowCount: Kt,
968
+ rowSelection: ut,
969
+ clearSelection: Gt
970
+ }, qt = (() => {
971
+ if (!D || P === null || P === !1) return null;
972
+ if (P !== void 0) return Pt === 0 ? null : typeof P == "function" ? P(Q) : P;
973
+ let e = Pt === 0 ? null : typeof F == "function" ? F(Q) : F, t = /* @__PURE__ */ z(de, {
974
+ selectedCount: Pt,
975
+ totalCount: Kt,
976
+ onClear: Gt,
977
+ placement: Fe,
978
+ returnFocusRef: ft,
979
+ className: n("data-table-selection-toolbar--component", Pe),
980
+ strings: {
981
+ summary: (e, t) => V.selection.summary(e, t ?? Kt),
982
+ clear: V.selection.clear,
983
+ label: V.selection.label
984
+ },
985
+ children: e
986
+ });
987
+ return Fe === "inline" ? /* @__PURE__ */ z("div", {
988
+ "data-slot": "data-table-selection-toolbar",
989
+ className: n("data-table--selection-toolbar py-row-y empty:hidden", $e),
990
+ children: t
991
+ }) : t;
992
+ })(), $ = le && D, [Jt, Yt] = R(null);
993
+ Me(() => {
994
+ if (!$) return;
995
+ let e = J.current?.querySelector("th[data-pinned=\"selection\"]");
996
+ if (!e) return;
997
+ let t = () => {
998
+ let { width: t } = e.getBoundingClientRect();
999
+ t > 0 && Yt(t);
1000
+ };
1001
+ if (t(), typeof ResizeObserver > "u") return;
1002
+ let n = new ResizeObserver(t);
1003
+ return n.observe(e), () => n.disconnect();
1004
+ }, [$]);
1005
+ let Xt = I(() => {
1006
+ if (H || $) return {
1007
+ ...H ? { "--data-table-body-max-height": H } : {},
1008
+ ...$ ? { "--data-table-selection-width": `${Jt ?? Lt}px` } : {}
1009
+ };
1010
+ }, [
1011
+ H,
1012
+ $,
1013
+ Jt
1014
+ ]), Zt = q || k || H !== void 0, Qt = Nt.Provider;
1015
+ return /* @__PURE__ */ z(Qt, {
1016
+ value: It,
1017
+ children: /* @__PURE__ */ B("div", {
1018
+ ref: xt,
1019
+ role: q ? "dialog" : void 0,
1020
+ "aria-modal": q ? !0 : void 0,
1021
+ "aria-label": q ? V.accessibility.fullscreenRegion : void 0,
1022
+ className: n("data-table--component @container/data-table box-border", q ? "fixed inset-0 z-50 bg-background text-foreground flex flex-col overflow-hidden p-surface" : n("w-full min-w-0 max-w-full", k && "flex h-full min-h-0 flex-col", i === "card" && ["overflow-hidden", l.frame], i === "glass" && "rounded-surface overflow-hidden border border-border/60", ve)),
1023
+ children: [
1024
+ !!(Ot || Ee || Oe || S || E) && /* @__PURE__ */ B("div", {
1025
+ className: n("relative", ce && "sticky top-0 z-20 bg-card text-card-foreground"),
1026
+ children: [/* @__PURE__ */ B("div", {
1027
+ className: n("data-table-topbar grid gap-space-lg py-surface-sm @2xl/data-table:grid-cols-[minmax(0,1fr)_auto] @2xl/data-table:items-start", "px-surface [.card--content:not([data-padding=none])_&:not(.card--content[data-padding=none]_*)]:px-0", q ? "mb-space-lg shrink-0" : "mb-0", ke),
1028
+ children: [/* @__PURE__ */ B("div", {
1029
+ className: "data-table-topbar-left flex min-w-0 flex-col gap-space-md",
1030
+ children: [Ee, Ot && /* @__PURE__ */ z("div", {
1031
+ className: "min-w-0 max-w-sm",
1032
+ children: /* @__PURE__ */ z(pe, {
1033
+ "aria-label": kt,
1034
+ placeholder: kt,
1035
+ value: Ot.getFilterValue() ?? "",
1036
+ onChange: (e) => Ot.setFilterValue(e.target.value)
1037
+ })
1038
+ })]
1039
+ }), /* @__PURE__ */ B("div", {
1040
+ className: "data-table-topbar-right flex flex-wrap items-center justify-end gap-space-md",
1041
+ children: [Oe, /* @__PURE__ */ z(Mt, {
1042
+ table: Z,
1043
+ tableAreaRef: J,
1044
+ fullscreen: q,
1045
+ onFullscreenChange: St,
1046
+ showFullscreenToggle: E,
1047
+ enableColumnVisibility: S,
1048
+ labelVisibility: Ae,
1049
+ strings: V
1050
+ })]
1051
+ })]
1052
+ }), /* @__PURE__ */ z(fe, {})]
1053
+ }),
1054
+ qt,
1055
+ /* @__PURE__ */ B("div", {
1056
+ ref: J,
1057
+ style: Xt,
1058
+ onFocus: D ? pt : void 0,
1059
+ className: n("min-h-0", Zt ? "overflow-hidden" : ye, (q || k) && "flex-1"),
1060
+ children: [!!d && /* @__PURE__ */ z("span", {
1061
+ role: "status",
1062
+ className: "sr-only",
1063
+ children: V.loading?.label ?? G.loading.label
1064
+ }), /* @__PURE__ */ B(De, {
1065
+ "aria-busy": d || void 0,
1066
+ density: Ft[Be],
1067
+ containerProps: {
1068
+ role: "region",
1069
+ "aria-label": V.accessibility.scrollRegion
1070
+ },
1071
+ style: y ? { width: Z.getTotalSize() } : void 0,
1072
+ className: n("relative", y && "min-w-full table-fixed", A),
1073
+ containerClassName: n(`focus-visible:outline-none ${o.edge}`, Zt && "overflow-auto", H !== void 0 && "max-h-(--data-table-body-max-height)", (q || k) && "h-full min-h-0", be),
1074
+ children: [/* @__PURE__ */ z(Et, {
1075
+ enableResizing: y,
1076
+ table: Z,
1077
+ stickyHeader: se,
1078
+ className: _e,
1079
+ cellClassName: ge,
1080
+ stickyFirstColumn: le,
1081
+ columnGroups: p,
1082
+ headerTransparent: a,
1083
+ strings: V
1084
+ }), /* @__PURE__ */ z(Tt, {
1085
+ loading: d,
1086
+ loadingRows: f,
1087
+ table: Z,
1088
+ onRowClick: ae,
1089
+ emptyStateAction: me,
1090
+ cellClassName: ge,
1091
+ rowClassName: Ve,
1092
+ stickyFirstColumn: le,
1093
+ strings: V
1094
+ })]
1095
+ })]
1096
+ }),
1097
+ !!At && /* @__PURE__ */ B(Ne, { children: [/* @__PURE__ */ z(fe, {}), /* @__PURE__ */ z(at, {
1098
+ pagination: O,
1099
+ onPageChange: ne,
1100
+ pageQueryKey: He,
1101
+ labels: V.pagination
1102
+ })] }),
1103
+ !!je && /* @__PURE__ */ z("div", {
1104
+ "data-slot": "data-table-footer",
1105
+ className: n("data-table--footer py-row-y", "px-surface [.card--content:not([data-padding=none])_&:not(.card--content[data-padding=none]_*)]:px-0", u.footer),
1106
+ children: je
1107
+ })
1108
+ ]
1109
+ })
1110
+ });
1111
+ }
1112
+ Gt.displayName = "DataTable";
1113
+ //#endregion
1114
+ //#region src/components/features/table/filter-bar.tsx
1115
+ function Kt({ table: e, filterColumn: t, enableColumnVisibility: r = !1, customContent: i, strings: a = G }) {
1116
+ if (!t && !r && !i) return null;
1117
+ let o = a.filter.searchPlaceholder;
1118
+ return /* @__PURE__ */ B("div", {
1119
+ className: n("filter-bar--component", "flex items-center justify-between py-surface", $e),
1120
+ children: [/* @__PURE__ */ B("div", {
1121
+ className: "flex flex-1 items-center space-x-space-md",
1122
+ children: [!!t && /* @__PURE__ */ z(pe, {
1123
+ "aria-label": o,
1124
+ placeholder: o,
1125
+ value: e.getColumn(t)?.getFilterValue() ?? "",
1126
+ onChange: (n) => {
1127
+ let r = n.target.value;
1128
+ e.getColumn(t)?.setFilterValue(r);
1129
+ },
1130
+ className: "max-w-sm"
1131
+ }), i]
1132
+ }), !!r && /* @__PURE__ */ z(X, {
1133
+ table: e,
1134
+ strings: a,
1135
+ labelVisibility: "responsive",
1136
+ className: "ml-auto"
1137
+ })]
1138
+ });
1139
+ }
1140
+ Kt.displayName = "DataTableFilterBar";
1141
+ //#endregion
1142
+ //#region src/components/features/table/partials/cell-value.tsx
1143
+ function Q(e) {
1144
+ return e === !1 || e == null || typeof e == "string" && e.trim() === "";
1145
+ }
1146
+ function qt(e) {
1147
+ return e == null;
1148
+ }
1149
+ function $(e) {
1150
+ return typeof e == "object" && !!e && !Array.isArray(e) && !je(e) && !(e instanceof Date);
1151
+ }
1152
+ function Jt(e) {
1153
+ return Array.isArray(e);
1154
+ }
1155
+ function Yt(e) {
1156
+ let [t, n, r] = e;
1157
+ return {
1158
+ ...r,
1159
+ value: t,
1160
+ kind: n
1161
+ };
1162
+ }
1163
+ function Xt(e) {
1164
+ if (e === !1) return null;
1165
+ if (je(e)) return e;
1166
+ if (Jt(e)) {
1167
+ let t = Yt(e);
1168
+ return Q(t.value) && qt(t.display) ? null : t;
1169
+ }
1170
+ return $(e) ? Q(e.value) && qt(e.display) ? null : e : Q(e) ? null : { value: e };
1171
+ }
1172
+ function Zt(e) {
1173
+ return e instanceof Date ? e.toISOString() : String(e ?? "");
1174
+ }
1175
+ function Qt({ descriptor: e, index: t = 0, emptyLabel: r, className: i, primaryWeight: a = "medium" }) {
1176
+ let o = t === 0, s = e.kind ?? (o ? "value" : "secondary"), c = e.value, l = e.display ?? (c instanceof Date ? Zt(c) : c), u = e.emptyLabel ?? r, d = n(i, e.className), f = o ? a : "regular";
1177
+ switch (s) {
1178
+ case "secondary": return /* @__PURE__ */ z(y, {
1179
+ size: "inherit",
1180
+ className: d,
1181
+ children: l
1182
+ });
1183
+ case "muted": return /* @__PURE__ */ z(b, {
1184
+ size: "inherit",
1185
+ className: d,
1186
+ children: l
1187
+ });
1188
+ case "name": return /* @__PURE__ */ z(v, {
1189
+ type: "inherit",
1190
+ value: e.display === void 0 && typeof c == "string" ? c : void 0,
1191
+ force: e.force,
1192
+ emptyLabel: u,
1193
+ size: "inherit",
1194
+ weight: f,
1195
+ className: d,
1196
+ children: e.display
1197
+ });
1198
+ case "mono": return /* @__PURE__ */ z(C, {
1199
+ type: "inherit",
1200
+ size: "inherit",
1201
+ weight: f,
1202
+ className: d,
1203
+ children: l
1204
+ });
1205
+ case "link": {
1206
+ let t = e.href ?? Zt(c);
1207
+ return /* @__PURE__ */ z(E, {
1208
+ href: t,
1209
+ emptyLabel: u,
1210
+ className: d,
1211
+ children: l
1212
+ });
1213
+ }
1214
+ case "email": return /* @__PURE__ */ z(w, {
1215
+ value: typeof c == "string" ? c : void 0,
1216
+ display: e.display,
1217
+ emptyLabel: u,
1218
+ className: d
1219
+ });
1220
+ case "phone": return /* @__PURE__ */ z(_, {
1221
+ value: typeof c == "string" ? c : void 0,
1222
+ display: e.display,
1223
+ emptyLabel: u,
1224
+ className: d
1225
+ });
1226
+ case "url": return /* @__PURE__ */ z(S, {
1227
+ value: typeof c == "string" ? c : void 0,
1228
+ display: e.display,
1229
+ emptyLabel: u,
1230
+ className: d
1231
+ });
1232
+ case "money": return /* @__PURE__ */ z(te, {
1233
+ type: "inherit",
1234
+ amount: typeof c == "number" || typeof c == "string" ? c : null,
1235
+ currency: e.currency,
1236
+ locale: e.locale,
1237
+ currencyDisplay: e.currencyDisplay,
1238
+ minimumFractionDigits: e.minimumFractionDigits,
1239
+ maximumFractionDigits: e.maximumFractionDigits,
1240
+ formatMode: e.formatMode,
1241
+ emptyLabel: u,
1242
+ size: "inherit",
1243
+ weight: f,
1244
+ className: d
1245
+ });
1246
+ case "number": return /* @__PURE__ */ z(ne, {
1247
+ type: "inherit",
1248
+ value: typeof c == "number" || typeof c == "string" ? c : null,
1249
+ locale: e.locale,
1250
+ options: e.options,
1251
+ emptyLabel: u,
1252
+ size: "inherit",
1253
+ weight: f,
1254
+ className: d
1255
+ });
1256
+ case "percent": return /* @__PURE__ */ z(O, {
1257
+ type: "inherit",
1258
+ value: typeof c == "number" || typeof c == "string" ? c : null,
1259
+ locale: e.locale,
1260
+ scaled: e.scaled,
1261
+ options: e.options,
1262
+ emptyLabel: u,
1263
+ size: "inherit",
1264
+ weight: f,
1265
+ className: d
1266
+ });
1267
+ case "fileSize": return /* @__PURE__ */ z(x, {
1268
+ type: "inherit",
1269
+ value: typeof c == "number" ? c : null,
1270
+ from: e.from,
1271
+ locale: e.locale,
1272
+ emptyLabel: u,
1273
+ size: "inherit",
1274
+ weight: f,
1275
+ className: d
1276
+ });
1277
+ case "date": return /* @__PURE__ */ z(se, {
1278
+ type: "inherit",
1279
+ value: c,
1280
+ format: e.dateFormat,
1281
+ preset: e.datePreset,
1282
+ locale: e.dateLocale,
1283
+ emptyLabel: u,
1284
+ size: "inherit",
1285
+ weight: f,
1286
+ className: d
1287
+ });
1288
+ case "time": return /* @__PURE__ */ z(re, {
1289
+ type: "inherit",
1290
+ value: c,
1291
+ format: e.timeFormat,
1292
+ locale: e.dateLocale,
1293
+ emptyLabel: u,
1294
+ size: "inherit",
1295
+ weight: f,
1296
+ className: d
1297
+ });
1298
+ case "dateTime": return /* @__PURE__ */ z(ae, {
1299
+ type: "inherit",
1300
+ value: c,
1301
+ format: e.dateFormat,
1302
+ timeFormat: e.timeFormat,
1303
+ preset: e.datePreset,
1304
+ locale: e.dateLocale,
1305
+ emptyLabel: u,
1306
+ size: "inherit",
1307
+ weight: f,
1308
+ className: d
1309
+ });
1310
+ case "relativeTime": return /* @__PURE__ */ z(ie, {
1311
+ value: c,
1312
+ locale: e.dateLocale,
1313
+ emptyLabel: u,
1314
+ size: "inherit",
1315
+ weight: f,
1316
+ className: d
1317
+ });
1318
+ default: return /* @__PURE__ */ z(g, {
1319
+ type: "inherit",
1320
+ size: "inherit",
1321
+ weight: f,
1322
+ className: d,
1323
+ children: l
1324
+ });
1325
+ }
1326
+ }
1327
+ function $t({ value: e, kind: t, href: r, currency: i, currencyDisplay: a, minimumFractionDigits: o, maximumFractionDigits: s, formatMode: c, locale: l, dateLocale: u, from: d, force: f, options: p, scaled: m, dateFormat: h, datePreset: _, timeFormat: v, emptyLabel: y, fallback: b = "—", missing: x, className: S, children: C }) {
1328
+ let w = x ?? Q(e);
1329
+ return C === void 0 ? w ? /* @__PURE__ */ z(T, {
1330
+ size: "inherit",
1331
+ className: n("cell-value--component", S),
1332
+ children: y ?? b
1333
+ }) : Qt({
1334
+ descriptor: {
1335
+ value: e,
1336
+ kind: t,
1337
+ href: r,
1338
+ currency: i,
1339
+ currencyDisplay: a,
1340
+ minimumFractionDigits: o,
1341
+ maximumFractionDigits: s,
1342
+ formatMode: c,
1343
+ locale: l,
1344
+ dateLocale: u,
1345
+ from: d,
1346
+ force: f,
1347
+ options: p,
1348
+ scaled: m,
1349
+ dateFormat: h,
1350
+ datePreset: _,
1351
+ timeFormat: v,
1352
+ emptyLabel: y,
1353
+ className: "cell-value--component"
1354
+ },
1355
+ emptyLabel: y ?? b,
1356
+ className: S
1357
+ }) : /* @__PURE__ */ z(w ? T : g, {
1358
+ type: w ? "secondary" : "inherit",
1359
+ size: "inherit",
1360
+ className: n("cell-value--component", S),
1361
+ children: C
1362
+ });
1363
+ }
1364
+ function en({ values: e = [], emptyLabel: t = "—", className: r, itemClassName: i, primaryClassName: a, secondaryClassName: o, primaryWeight: s = "medium" }) {
1365
+ let c = e.map(Xt).filter((e) => e !== null).slice(0, 4);
1366
+ return c.length === 0 ? /* @__PURE__ */ z(T, {
1367
+ size: "inherit",
1368
+ className: n("cell-stack--component", r),
1369
+ children: t
1370
+ }) : /* @__PURE__ */ z("div", {
1371
+ className: n("cell-stack--component flex min-w-0 flex-col items-start gap-space-2xs", r),
1372
+ children: c.map((e, r) => {
1373
+ let c = r === 0, l = n("cell-stack--item min-w-0 max-w-full truncate", !c && "text-xs", i, c ? a : o);
1374
+ return je(e) ? /* @__PURE__ */ z("div", {
1375
+ className: l,
1376
+ children: e
1377
+ }, r) : /* @__PURE__ */ z("div", {
1378
+ className: l,
1379
+ children: Qt({
1380
+ descriptor: e,
1381
+ index: r,
1382
+ emptyLabel: t,
1383
+ className: n("leading-tight", !c && "text-xs"),
1384
+ primaryWeight: s
1385
+ })
1386
+ }, r);
1387
+ })
1388
+ });
1389
+ }
1390
+ $t.displayName = "CellValue", en.displayName = "CellStack";
1391
+ //#endregion
1392
+ //#region src/components/features/table/partials/table-link.tsx
1393
+ var tn = ({ className: e, ...t }) => /* @__PURE__ */ z(E, {
1394
+ className: n("table-link--component", "underline decoration-link-color/35 decoration-dotted underline-offset-2 hover:decoration-link-color", e),
1395
+ ...t,
1396
+ children: t.children
1397
+ });
1398
+ //#endregion
1399
+ //#region src/components/features/table/partials/resource-cell.tsx
1400
+ function nn(e, t) {
1401
+ if (e && typeof e == "object" && !("type" in e) && "label" in e) {
1402
+ let n = e.icon;
1403
+ return /* @__PURE__ */ B(k, {
1404
+ tone: e.tone ?? "secondary",
1405
+ dot: e.dot,
1406
+ children: [!!n && /* @__PURE__ */ z(n, { className: "size-icon-sm" }), e.label]
1407
+ }, e.id ?? t);
1408
+ }
1409
+ return /* @__PURE__ */ z("span", { children: e }, t);
1410
+ }
1411
+ function rn(e) {
1412
+ return e ? Array.isArray(e) ? /* @__PURE__ */ z("span", {
1413
+ className: "inline-flex min-w-0 flex-wrap items-center gap-x-space-md gap-y-space-2xs",
1414
+ children: e.map((e, t) => /* @__PURE__ */ B("span", {
1415
+ className: "inline-flex min-w-0 items-center gap-space-sm",
1416
+ children: [!!e.label && /* @__PURE__ */ z(r, {
1417
+ tag: "span",
1418
+ size: "inherit",
1419
+ type: "secondary",
1420
+ className: "shrink-0",
1421
+ children: e.label
1422
+ }), /* @__PURE__ */ z(r, {
1423
+ tag: "span",
1424
+ size: "inherit",
1425
+ type: "secondary",
1426
+ className: "truncate",
1427
+ children: e.value
1428
+ })]
1429
+ }, e.id ?? t))
1430
+ }) : e : null;
1431
+ }
1432
+ function an({ title: e, subtitle: t, metadata: i, badges: s = [], imageUrl: l, icon: u, fallback: d, href: f, renderLink: p, emptyLabel: m = "—", className: h, mediaShape: g = "circle", mediaClassName: _, contentClassName: v, titleClassName: y, subtitleClassName: b }) {
1433
+ if (!e) return /* @__PURE__ */ z(r, {
1434
+ size: "inherit",
1435
+ type: "secondary",
1436
+ className: h,
1437
+ children: m
1438
+ });
1439
+ let x = typeof e == "string" ? e : void 0, S = x ? ee(x, { strategy: "first-words" }) : "", C = /* @__PURE__ */ B(c, {
1440
+ render: /* @__PURE__ */ z("span", {}),
1441
+ gap: "dense",
1442
+ className: n("resource-cell--content", v),
1443
+ children: [
1444
+ /* @__PURE__ */ B(c, {
1445
+ render: /* @__PURE__ */ z("span", {}),
1446
+ direction: "horizontal",
1447
+ gap: "sm",
1448
+ wrap: !1,
1449
+ className: "resource-cell--title-row",
1450
+ children: [/* @__PURE__ */ z(r, {
1451
+ type: "inherit",
1452
+ tag: "span",
1453
+ size: "inherit",
1454
+ weight: "medium",
1455
+ title: x,
1456
+ className: n("resource-cell--title truncate", y),
1457
+ children: e
1458
+ }), s.length > 0 && /* @__PURE__ */ z("span", {
1459
+ className: "resource-cell--badges inline-flex shrink-0 items-center gap-space-sm",
1460
+ children: s.map(nn)
1461
+ })]
1462
+ }),
1463
+ !!t && /* @__PURE__ */ z(r, {
1464
+ tag: "span",
1465
+ size: "inherit",
1466
+ type: "secondary",
1467
+ className: n("resource-cell--subtitle truncate", b),
1468
+ children: t
1469
+ }),
1470
+ !!i && /* @__PURE__ */ z("span", {
1471
+ className: "resource-cell--metadata min-w-0",
1472
+ children: rn(i)
1473
+ })
1474
+ ]
1475
+ }), w = d != null && d !== !1 && d !== "", T = !!l || !!u || w, E = g === "square", O = /* @__PURE__ */ B("span", {
1476
+ className: n("resource-cell--component inline-flex min-w-0 items-center gap-space-md", h),
1477
+ children: [T && /* @__PURE__ */ B(le, {
1478
+ size: "md",
1479
+ "data-shape": g,
1480
+ className: n("resource-cell--media", E && "rounded-radius after:rounded-radius", _),
1481
+ children: [!!l && /* @__PURE__ */ z(ue, {
1482
+ src: l,
1483
+ alt: x ?? "",
1484
+ className: n(E && "rounded-radius")
1485
+ }), /* @__PURE__ */ z(ce, {
1486
+ className: n(E && "rounded-radius"),
1487
+ children: w ? d : u ? /* @__PURE__ */ z(u, { className: "size-icon" }) : S ? /* @__PURE__ */ z(D, {
1488
+ value: x,
1489
+ strategy: "first-words"
1490
+ }) : null
1491
+ })]
1492
+ }), C]
1493
+ });
1494
+ if (!f) return O;
1495
+ let te = `resource-cell--link inline-flex min-w-0 rounded-radius outline-none ${o.text}`;
1496
+ return p ? p({
1497
+ href: f,
1498
+ children: O,
1499
+ className: te,
1500
+ "aria-label": x
1501
+ }) : /* @__PURE__ */ z(a, {
1502
+ href: f,
1503
+ size: "inherit",
1504
+ underline: !1,
1505
+ className: te,
1506
+ "aria-label": x,
1507
+ children: O
1508
+ });
1509
+ }
1510
+ an.displayName = "ResourceCell";
1511
+ //#endregion
1512
+ //#region src/components/features/table/partials/cell-renderers.tsx
1513
+ function on({ value: e, map: t, emptyLabel: i = "—", className: a }) {
1514
+ if (!e || !(e in t)) return /* @__PURE__ */ z(r, {
1515
+ size: "inherit",
1516
+ type: "secondary",
1517
+ className: n("status-cell--component", a),
1518
+ children: i
1519
+ });
1520
+ let o = t[e], s = o.icon;
1521
+ return /* @__PURE__ */ B(k, {
1522
+ tone: o.tone ?? "secondary",
1523
+ dot: o.dot,
1524
+ className: n("status-cell--component gap-space-sm", a),
1525
+ children: [!!s && /* @__PURE__ */ z(s, { className: "size-icon-sm" }), o.label]
1526
+ });
1527
+ }
1528
+ on.displayName = "StatusCell";
1529
+ function sn({ items: e = [], emptyLabel: t = "—", className: i, badgeClassName: a }) {
1530
+ let o = e.filter((e) => !e.hidden);
1531
+ return o.length === 0 ? /* @__PURE__ */ z(r, {
1532
+ size: "inherit",
1533
+ type: "secondary",
1534
+ className: n("status-cluster-cell--component", i),
1535
+ children: t
1536
+ }) : /* @__PURE__ */ z("span", {
1537
+ className: n("status-cluster-cell--component inline-flex min-w-0 flex-wrap items-center gap-space-sm", i),
1538
+ children: o.map((e, t) => {
1539
+ let r = e.icon;
1540
+ return /* @__PURE__ */ B(k, {
1541
+ tone: e.tone ?? "secondary",
1542
+ dot: e.dot,
1543
+ className: n("shrink-0", a),
1544
+ children: [!!r && /* @__PURE__ */ z(r, { className: "size-icon-sm" }), e.label]
1545
+ }, e.id ?? t);
1546
+ })
1547
+ });
1548
+ }
1549
+ sn.displayName = "StatusClusterCell";
1550
+ function cn({ value: e, format: t, preset: i, locale: a, showIcon: o = !1, icon: s = Ie, emptyLabel: c = "—", className: l }) {
1551
+ let u = oe(e);
1552
+ return u ? /* @__PURE__ */ B("span", {
1553
+ className: n("date-cell--component inline-flex items-center gap-space-sm", l),
1554
+ children: [!!o && /* @__PURE__ */ z(s, { className: "size-icon text-muted-foreground" }), /* @__PURE__ */ z(se, {
1555
+ value: u,
1556
+ format: t,
1557
+ preset: i,
1558
+ locale: a,
1559
+ emptyLabel: c,
1560
+ size: "inherit",
1561
+ type: "secondary"
1562
+ })]
1563
+ }) : /* @__PURE__ */ z(r, {
1564
+ size: "inherit",
1565
+ type: "secondary",
1566
+ className: n("date-cell--component", l),
1567
+ children: c
1568
+ });
1569
+ }
1570
+ cn.displayName = "DateCell";
1571
+ function ln({ value: e, format: t, preset: i, locale: a, showIcon: o = !1, icon: s = Ie, emptyLabel: c = "—", className: l, primaryClassName: u, secondary: d, secondaryClassName: f }) {
1572
+ let p = oe(e);
1573
+ if (!p) return /* @__PURE__ */ z(r, {
1574
+ size: "inherit",
1575
+ type: "secondary",
1576
+ className: n("date-meta-cell--component", l),
1577
+ children: c
1578
+ });
1579
+ let m = typeof d == "function" ? d(p) : d;
1580
+ return /* @__PURE__ */ B("span", {
1581
+ className: n("date-meta-cell--component inline-flex min-w-0 items-start gap-space-sm", l),
1582
+ children: [!!o && /* @__PURE__ */ z(s, { className: "mt-space-2xs size-icon shrink-0 text-muted-foreground" }), /* @__PURE__ */ B("span", {
1583
+ className: "grid min-w-0 gap-space-2xs",
1584
+ children: [/* @__PURE__ */ z(se, {
1585
+ value: p,
1586
+ format: t,
1587
+ preset: i,
1588
+ locale: a,
1589
+ emptyLabel: c,
1590
+ size: "inherit",
1591
+ type: "secondary",
1592
+ className: n("truncate tabular-nums", u)
1593
+ }), !!m && /* @__PURE__ */ z(r, {
1594
+ tag: "span",
1595
+ size: "inherit",
1596
+ type: "secondary",
1597
+ className: n("truncate", f),
1598
+ children: m
1599
+ })]
1600
+ })]
1601
+ });
1602
+ }
1603
+ ln.displayName = "DateMetaCell";
1604
+ function un({ value: e, currency: t, locale: r, emptyLabel: i = "—", className: a, weight: o = "semibold" }) {
1605
+ return /* @__PURE__ */ z(te, {
1606
+ type: "inherit",
1607
+ amount: e,
1608
+ currency: t,
1609
+ locale: r,
1610
+ formatMode: t ? "with_symbol" : "decimal",
1611
+ emptyLabel: i,
1612
+ size: "inherit",
1613
+ weight: o,
1614
+ className: n("currency-cell--component tabular-nums", a)
1615
+ });
1616
+ }
1617
+ un.displayName = "CurrencyCell";
1618
+ function dn({ name: e, imageUrl: t, icon: i = Be, subtitle: a, emptyLabel: o = "—", className: s }) {
1619
+ return !e || e.trim().length === 0 ? /* @__PURE__ */ z(r, {
1620
+ size: "inherit",
1621
+ type: "secondary",
1622
+ className: n("avatar-cell--component", s),
1623
+ children: o
1624
+ }) : /* @__PURE__ */ B("span", {
1625
+ className: n("avatar-cell--component inline-flex items-center gap-space-md", s),
1626
+ children: [/* @__PURE__ */ B(le, {
1627
+ size: "sm",
1628
+ className: "avatar-cell--avatar",
1629
+ children: [!!t && /* @__PURE__ */ z(ue, {
1630
+ src: t,
1631
+ alt: e
1632
+ }), /* @__PURE__ */ z(ce, { children: ee(e, { strategy: "first-words" }) ? /* @__PURE__ */ z(D, {
1633
+ value: e,
1634
+ strategy: "first-words"
1635
+ }) : /* @__PURE__ */ z(i, { className: "size-icon" }) })]
1636
+ }), /* @__PURE__ */ B("span", {
1637
+ className: "min-w-0 inline-flex flex-col",
1638
+ children: [/* @__PURE__ */ z(r, {
1639
+ type: "inherit",
1640
+ size: "inherit",
1641
+ weight: "medium",
1642
+ className: "truncate",
1643
+ children: e
1644
+ }), !!a && /* @__PURE__ */ z(r, {
1645
+ size: "inherit",
1646
+ type: "secondary",
1647
+ className: "truncate",
1648
+ children: a
1649
+ })]
1650
+ })]
1651
+ });
1652
+ }
1653
+ dn.displayName = "AvatarCell";
1654
+ //#endregion
1655
+ export { G as A, J as C, ut as D, lt as E, $e as M, Je as N, ot as O, Ye as P, Y as S, q as T, Et as _, on as a, bt as b, tn as c, Kt as d, Gt as f, X as g, Z as h, ln as i, tt as j, at as k, en as l, Mt as m, un as n, sn as o, Pt as p, cn as r, an as s, dn as t, $t as u, Tt as v, gt as w, yt as x, Ct as y };
1656
+
1657
+ //# sourceMappingURL=table-DdXDBsR_.js.map