themelia-react-ui 2.0.5 → 2.0.6

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 (489) hide show
  1. package/CHANGELOG.md +76 -0
  2. package/MIGRATION.md +119 -0
  3. package/README.md +13 -6
  4. package/dist/{accordion-B9MHG0cT.js → accordion-0tQUZ20r.js} +7 -7
  5. package/dist/accordion-0tQUZ20r.js.map +1 -0
  6. package/dist/{action-menu-Dr8K-ghE.js → action-menu-C0gjzLyE.js} +7 -7
  7. package/dist/{action-menu-Dr8K-ghE.js.map → action-menu-C0gjzLyE.js.map} +1 -1
  8. package/dist/{ai-artifact-C58tQcBy.js → ai-artifact-CGGpQryR.js} +172 -157
  9. package/dist/ai-artifact-CGGpQryR.js.map +1 -0
  10. package/dist/{app-shell-B_IuNWOo.js → app-shell-EHuuRDGy.js} +5 -5
  11. package/dist/{app-shell-B_IuNWOo.js.map → app-shell-EHuuRDGy.js.map} +1 -1
  12. package/dist/{attachment-Dg_69lPS.js → attachment-BCpA4e7i.js} +8 -8
  13. package/dist/{attachment-Dg_69lPS.js.map → attachment-BCpA4e7i.js.map} +1 -1
  14. package/dist/{auth-DTkkshS8.js → auth-B0girIk_.js} +15 -15
  15. package/dist/auth-B0girIk_.js.map +1 -0
  16. package/dist/{avatar-CeZaFmNH.js → avatar-B9Jnp-T-.js} +3 -3
  17. package/dist/{avatar-CeZaFmNH.js.map → avatar-B9Jnp-T-.js.map} +1 -1
  18. package/dist/{badge-xIiV_E7f.js → badge-wWauMgAt.js} +3 -3
  19. package/dist/{badge-xIiV_E7f.js.map → badge-wWauMgAt.js.map} +1 -1
  20. package/dist/base/accordion.js +1 -1
  21. package/dist/base/action-menu.js +1 -1
  22. package/dist/base/attachment.js +1 -1
  23. package/dist/base/avatar.js +1 -1
  24. package/dist/base/badge.js +1 -1
  25. package/dist/base/batch-action-bar.js +1 -1
  26. package/dist/base/buttons.js +1 -1
  27. package/dist/base/cards.js +2 -2
  28. package/dist/base/carousel.js +3 -3
  29. package/dist/base/cascader.js +1 -1
  30. package/dist/base/chart.js +1 -1
  31. package/dist/base/choice-inputs.js +2 -2
  32. package/dist/base/code-block.js +1 -1
  33. package/dist/base/combobox.js +1 -1
  34. package/dist/base/command.js +1 -1
  35. package/dist/base/copyable.js +1 -1
  36. package/dist/base/date-pickers.js +2 -2
  37. package/dist/base/display.js +6 -6
  38. package/dist/base/feedback.js +4 -4
  39. package/dist/base/forms-numeric.js +1 -1
  40. package/dist/base/forms.js +2 -2
  41. package/dist/base/inline-edit.js +8 -8
  42. package/dist/base/item.js +1 -1
  43. package/dist/base/media-gallery.js +1 -1
  44. package/dist/base/metadata-list.js +1 -1
  45. package/dist/base/navigation.js +6 -6
  46. package/dist/base/popover-menu.js +1 -1
  47. package/dist/base/popover.js +1 -1
  48. package/dist/base/qr-code.js +1 -1
  49. package/dist/base/repeaters.js +195 -188
  50. package/dist/base/repeaters.js.map +1 -1
  51. package/dist/base/sheet.js +1 -1
  52. package/dist/base/sidebar.js +2 -2
  53. package/dist/base/signature-pad.js +7 -7
  54. package/dist/base/skeleton.js +1 -1
  55. package/dist/base/spinner.js +5 -5
  56. package/dist/base/spinner.js.map +1 -1
  57. package/dist/base/structure.js +1 -1
  58. package/dist/base/table.js +1 -1
  59. package/dist/base/text-inputs.js +2 -2
  60. package/dist/base/toaster.js +1 -1
  61. package/dist/base/tree.js +1 -1
  62. package/dist/base/upload-queue.js +1 -1
  63. package/dist/base/upload.js +3 -3
  64. package/dist/base/value-inputs.js +1 -1
  65. package/dist/{batch-action-bar-Cb8cuvyy.js → batch-action-bar-BoqWIIpV.js} +5 -5
  66. package/dist/{batch-action-bar-Cb8cuvyy.js.map → batch-action-bar-BoqWIIpV.js.map} +1 -1
  67. package/dist/blocks/admin.js +17 -17
  68. package/dist/blocks/ai.js +227 -221
  69. package/dist/blocks/ai.js.map +1 -1
  70. package/dist/blocks/analytics/usage-card.js +1 -1
  71. package/dist/blocks/analytics.js +424 -449
  72. package/dist/blocks/analytics.js.map +1 -1
  73. package/dist/blocks/collaboration.js +1 -1
  74. package/dist/blocks/commerce/receipt.js +1 -1
  75. package/dist/blocks/commerce.js +225 -220
  76. package/dist/blocks/commerce.js.map +1 -1
  77. package/dist/blocks/data-display.js +2 -2
  78. package/dist/blocks/onboarding.js +5 -5
  79. package/dist/blocks/planning.js +11 -11
  80. package/dist/blocks/timelines.js +1 -1
  81. package/dist/{breadcrumbs-J-K2kl4c.js → breadcrumbs-Bp9Ke7kd.js} +4 -4
  82. package/dist/breadcrumbs-Bp9Ke7kd.js.map +1 -0
  83. package/dist/{button-S2Cubiiz.js → button-ChBovTx0.js} +2 -2
  84. package/dist/{button-S2Cubiiz.js.map → button-ChBovTx0.js.map} +1 -1
  85. package/dist/{buttons-BedGfygC.js → buttons-DeW0bQeK.js} +6 -6
  86. package/dist/{buttons-BedGfygC.js.map → buttons-DeW0bQeK.js.map} +1 -1
  87. package/dist/{cards-rNX1M4Xn.js → cards-CNXnmvV5.js} +8 -8
  88. package/dist/{cards-rNX1M4Xn.js.map → cards-CNXnmvV5.js.map} +1 -1
  89. package/dist/{cascader-B1MiqkBq.js → cascader-CrAl9zD5.js} +15 -15
  90. package/dist/{cascader-B1MiqkBq.js.map → cascader-CrAl9zD5.js.map} +1 -1
  91. package/dist/{chart-Darg_0Kv.js → chart-I7ROnsl8.js} +5 -5
  92. package/dist/{chart-Darg_0Kv.js.map → chart-I7ROnsl8.js.map} +1 -1
  93. package/dist/{checkbox-fflqmODR.js → checkbox-MoyHIAPs.js} +3 -3
  94. package/dist/{checkbox-fflqmODR.js.map → checkbox-MoyHIAPs.js.map} +1 -1
  95. package/dist/{choice-inputs-zUgBZfE4.js → choice-inputs-DHGtx0QV.js} +122 -110
  96. package/dist/choice-inputs-DHGtx0QV.js.map +1 -0
  97. package/dist/{code-block-BzmM9Eig.js → code-block-BSJyq9e-.js} +7 -7
  98. package/dist/{code-block-BzmM9Eig.js.map → code-block-BSJyq9e-.js.map} +1 -1
  99. package/dist/{collapsible-BkAI_XD4.js → collapsible-BzJ91LUG.js} +3 -3
  100. package/dist/{collapsible-BkAI_XD4.js.map → collapsible-BzJ91LUG.js.map} +1 -1
  101. package/dist/{collection-content-gDh1v6O4.js → collection-content-CSnwtOTH.js} +3 -3
  102. package/dist/{collection-content-gDh1v6O4.js.map → collection-content-CSnwtOTH.js.map} +1 -1
  103. package/dist/{combobox-BEx0vJgF.js → combobox-Bcvu5J8O.js} +11 -10
  104. package/dist/{combobox-BEx0vJgF.js.map → combobox-Bcvu5J8O.js.map} +1 -1
  105. package/dist/combobox-C2JiSQPc.js +915 -0
  106. package/dist/combobox-C2JiSQPc.js.map +1 -0
  107. package/dist/{command-CrlPIL6m.js → command-9e52NPgK.js} +6 -6
  108. package/dist/{command-CrlPIL6m.js.map → command-9e52NPgK.js.map} +1 -1
  109. package/dist/{comments-Dmpp0YIc.js → comments-BsgErEqd.js} +33 -28
  110. package/dist/comments-BsgErEqd.js.map +1 -0
  111. package/dist/components/base/choice-inputs/choice-types.d.ts +4 -0
  112. package/dist/components/base/choice-inputs/pill-radio-group.d.ts +7 -6
  113. package/dist/components/base/combobox/combobox-field.d.ts +2 -2
  114. package/dist/components/base/date-pickers/date-picker-internals.d.ts +3 -1
  115. package/dist/components/base/date-pickers/datepicker.types.d.ts +10 -4
  116. package/dist/components/base/date-pickers/time-picker.d.ts +17 -3
  117. package/dist/components/base/feedback/state-display.d.ts +5 -1
  118. package/dist/components/base/feedback/state-display.strings.d.ts +9 -0
  119. package/dist/components/base/forms/form-field.d.ts +7 -2
  120. package/dist/components/base/forms-numeric/coordinates-input.d.ts +4 -1
  121. package/dist/components/base/forms-numeric/decimal-input.d.ts +2 -2
  122. package/dist/components/base/forms-numeric/dimensions-input.d.ts +4 -1
  123. package/dist/components/base/forms-numeric/numeric-composite-field.d.ts +12 -0
  124. package/dist/components/base/forms-numeric/weight-input.d.ts +6 -1
  125. package/dist/components/base/navigation/language-switcher.d.ts +12 -4
  126. package/dist/components/base/repeaters/key-value-editor.d.ts +2 -1
  127. package/dist/components/base/sidebar/sidebar.d.ts +2 -0
  128. package/dist/components/base/upload/avatar-upload.d.ts +2 -1
  129. package/dist/components/base/upload/image-upload.d.ts +2 -1
  130. package/dist/components/blocks/ai/ai-citation/types.d.ts +2 -0
  131. package/dist/components/blocks/ai/ai-reasoning/types.d.ts +2 -0
  132. package/dist/components/blocks/ai/ai-sources/types.d.ts +2 -0
  133. package/dist/components/blocks/ai/ai-tool-call/types.d.ts +2 -0
  134. package/dist/components/blocks/analytics/metric/metric.d.ts +4 -0
  135. package/dist/components/blocks/analytics/metric-comparison/metric-comparison.d.ts +2 -0
  136. package/dist/components/blocks/analytics/metric-grid/metric-grid.d.ts +4 -5
  137. package/dist/components/blocks/analytics/types.d.ts +2 -2
  138. package/dist/components/blocks/commerce/order-status/types.d.ts +4 -0
  139. package/dist/components/blocks/data-display/empty-state/empty-state.types.d.ts +4 -3
  140. package/dist/components/features/activities/activities.types.d.ts +18 -11
  141. package/dist/components/features/activities/hooks/use-activity-resources.d.ts +2 -1
  142. package/dist/components/features/ai-chat/hooks/use-ai-chat-scroll.d.ts +1 -1
  143. package/dist/components/features/appointment-calendar/appointment-calendar.d.ts +1 -1
  144. package/dist/components/features/appointment-calendar/appointment-calendar.types.d.ts +4 -2
  145. package/dist/components/features/combobox/async-resource-combobox.d.ts +2 -2
  146. package/dist/components/features/combobox/combobox.d.ts +2 -2
  147. package/dist/components/features/combobox/hooks/use-combobox-core.d.ts +2 -1
  148. package/dist/components/features/combobox/hooks/use-combobox-state.d.ts +1 -0
  149. package/dist/components/features/combobox/hooks/use-load-more.d.ts +1 -0
  150. package/dist/components/features/combobox/types.d.ts +37 -8
  151. package/dist/components/features/email-composer/types.d.ts +3 -1
  152. package/dist/components/features/filters/facets/date-facet.d.ts +4 -2
  153. package/dist/components/features/filters/facets/range-facet.d.ts +12 -0
  154. package/dist/components/features/filters/filters.types.d.ts +3 -3
  155. package/dist/components/features/filters/partials/date-filter-content.d.ts +3 -2
  156. package/dist/components/features/filters/partials/filter-popover-content.d.ts +4 -2
  157. package/dist/components/features/filters/partials/range-filter-content.d.ts +12 -0
  158. package/dist/components/features/filters/utils/filter-utils.d.ts +5 -1
  159. package/dist/components/features/media-library/hooks/use-media-library.d.ts +1 -1
  160. package/dist/components/features/media-library/media-library.d.ts +1 -1
  161. package/dist/components/features/media-library/media-library.strings.d.ts +6 -0
  162. package/dist/components/features/media-library/media-library.types.d.ts +36 -8
  163. package/dist/components/features/media-library/partials/media-library-partials.d.ts +3 -3
  164. package/dist/components/features/mentions/hooks/use-mentions.d.ts +16 -1
  165. package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts +5 -1
  166. package/dist/components/features/mentions/utils/split-html-by-mentions.d.ts +1 -7
  167. package/dist/components/features/overlays/hooks/use-overlay-visibility.d.ts +2 -2
  168. package/dist/components/features/products/products.types.d.ts +2 -2
  169. package/dist/components/features/questionnaire/questionnaire.types.d.ts +3 -0
  170. package/dist/components/features/resource/resource.d.ts +1 -1
  171. package/dist/components/features/resource/resource.types.d.ts +2 -0
  172. package/dist/components/features/rich-text-editor/form-rich-text-editor.d.ts +1 -1
  173. package/dist/components/features/rich-text-editor/partials/caret-helpers.d.ts +1 -1
  174. package/dist/components/features/rich-text-editor/partials/editor-field-aria.d.ts +14 -0
  175. package/dist/components/features/rich-text-editor/partials/rich-text-editor-toolbar.d.ts +3 -1
  176. package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +1 -1
  177. package/dist/components/features/rich-text-editor/rich-text-editor.types.d.ts +17 -3
  178. package/dist/components/features/schema-form/hooks/use-schema-form.d.ts +5 -1
  179. package/dist/components/features/schema-form/partials/schema-form-field.d.ts +3 -1
  180. package/dist/components/features/schema-form/schema-form.utils.d.ts +1 -1
  181. package/dist/components/features/suggestions/suggestions.types.d.ts +1 -1
  182. package/dist/components/features/table/data-table.d.ts +1 -1
  183. package/dist/components/features/table/index.d.ts +1 -0
  184. package/dist/components/features/table/table-body.d.ts +1 -1
  185. package/dist/components/features/table/table-helpers.d.ts +6 -3
  186. package/dist/components/features/table/table.strings.d.ts +3 -0
  187. package/dist/components/features/table/table.types.d.ts +17 -1
  188. package/dist/components/layout/header/header.types.d.ts +3 -2
  189. package/dist/components/layout/layout.types.d.ts +5 -3
  190. package/dist/components/layout/navigation/side-nav.d.ts +3 -2
  191. package/dist/components/layout/normalize-layout-path.d.ts +1 -0
  192. package/dist/components/layout/settings/settings.d.ts +1 -1
  193. package/dist/components/layout/sidebar/app-sidebar.d.ts +1 -1
  194. package/dist/components/layout/sidebar/sidebar-navigation-rail.d.ts +3 -1
  195. package/dist/components/layout/sidebar/sidebar.context.d.ts +1 -0
  196. package/dist/components/layout/sidebar/sidebar.types.d.ts +2 -0
  197. package/dist/components/primitives/link.d.ts +3 -2
  198. package/dist/components/primitives/money.d.ts +1 -1
  199. package/dist/components/primitives/number.d.ts +1 -1
  200. package/dist/components/typography/rich-text/rich-text-tree.d.ts +7 -5
  201. package/dist/{containers-CIxwbZt5.js → containers-CSdc32h9.js} +2 -2
  202. package/dist/{containers-CIxwbZt5.js.map → containers-CSdc32h9.js.map} +1 -1
  203. package/dist/{copyable-DIznBqiT.js → copyable-3fdHfMR3.js} +4 -4
  204. package/dist/{copyable-DIznBqiT.js.map → copyable-3fdHfMR3.js.map} +1 -1
  205. package/dist/{data-display-BdgCAw8T.js → data-display-Cmj-xZYl.js} +16 -15
  206. package/dist/data-display-Cmj-xZYl.js.map +1 -0
  207. package/dist/{date-Cq8ioE4o.js → date-Br0FicVv.js} +4 -4
  208. package/dist/{date-Cq8ioE4o.js.map → date-Br0FicVv.js.map} +1 -1
  209. package/dist/date-picker-CyQlFYsP.js +1617 -0
  210. package/dist/date-picker-CyQlFYsP.js.map +1 -0
  211. package/dist/date-pickers-tj2MXmXd.js +185 -0
  212. package/dist/date-pickers-tj2MXmXd.js.map +1 -0
  213. package/dist/{display-KsZLw9Ov.js → display-CT_N2a3w.js} +7 -7
  214. package/dist/{display-KsZLw9Ov.js.map → display-CT_N2a3w.js.map} +1 -1
  215. package/dist/{dropdown-menu-CLs8Lihj.js → dropdown-menu-C08iIugv.js} +6 -6
  216. package/dist/{dropdown-menu-CLs8Lihj.js.map → dropdown-menu-C08iIugv.js.map} +1 -1
  217. package/dist/features/activities.js +283 -270
  218. package/dist/features/activities.js.map +1 -1
  219. package/dist/features/ai-chat.js +40 -27
  220. package/dist/features/ai-chat.js.map +1 -1
  221. package/dist/features/appointment-calendar.js +126 -126
  222. package/dist/features/appointment-calendar.js.map +1 -1
  223. package/dist/features/async-preview.js +9 -9
  224. package/dist/features/combobox.js +1 -1
  225. package/dist/features/comments.js +1 -1
  226. package/dist/features/data-view.js +10 -10
  227. package/dist/features/email-composer.js +24 -19
  228. package/dist/features/email-composer.js.map +1 -1
  229. package/dist/features/event-calendar.js +129 -125
  230. package/dist/features/event-calendar.js.map +1 -1
  231. package/dist/features/filters.js +2 -2
  232. package/dist/features/global-search.js +16 -20
  233. package/dist/features/global-search.js.map +1 -1
  234. package/dist/features/kanban.js +18 -28
  235. package/dist/features/kanban.js.map +1 -1
  236. package/dist/features/map/style.css +15 -0
  237. package/dist/features/map.js +331 -314
  238. package/dist/features/map.js.map +1 -1
  239. package/dist/features/media-library.js +1044 -866
  240. package/dist/features/media-library.js.map +1 -1
  241. package/dist/features/mentions.js +2 -2
  242. package/dist/features/overlays.js +1 -1
  243. package/dist/features/products.js +978 -964
  244. package/dist/features/products.js.map +1 -1
  245. package/dist/features/questionnaire.js +159 -152
  246. package/dist/features/questionnaire.js.map +1 -1
  247. package/dist/features/resource-assignment.js +8 -8
  248. package/dist/features/resource.js +74 -71
  249. package/dist/features/resource.js.map +1 -1
  250. package/dist/features/rich-text-editor.js +28 -19
  251. package/dist/features/rich-text-editor.js.map +1 -1
  252. package/dist/features/schema-form.js +297 -256
  253. package/dist/features/schema-form.js.map +1 -1
  254. package/dist/features/suggestions.js +57 -50
  255. package/dist/features/suggestions.js.map +1 -1
  256. package/dist/features/sync.js +3 -3
  257. package/dist/features/table.js +1 -1
  258. package/dist/features/theme-tweaker.js +400 -399
  259. package/dist/features/theme-tweaker.js.map +1 -1
  260. package/dist/feedback-Dzo1xtAU.js +246 -0
  261. package/dist/feedback-Dzo1xtAU.js.map +1 -0
  262. package/dist/{field-affordance-recipes-DWcNcOjh.js → field-affordance-recipes-D6H7tVJi.js} +2 -2
  263. package/dist/{field-affordance-recipes-DWcNcOjh.js.map → field-affordance-recipes-D6H7tVJi.js.map} +1 -1
  264. package/dist/field-control-attributes-B6i335wr.js +18 -0
  265. package/dist/field-control-attributes-B6i335wr.js.map +1 -0
  266. package/dist/{field-state-recipes-BVA2CWHo.js → field-state-recipes-7sza8QbC.js} +4 -2
  267. package/dist/{field-state-recipes-BVA2CWHo.js.map → field-state-recipes-7sza8QbC.js.map} +1 -1
  268. package/dist/{filters-DzgSJpMK.js → filters-Dl80yYtN.js} +763 -605
  269. package/dist/filters-Dl80yYtN.js.map +1 -0
  270. package/dist/form-field-CAPdwdnZ.js +74 -0
  271. package/dist/form-field-CAPdwdnZ.js.map +1 -0
  272. package/dist/{form-sizing-Bs2qFUeE.js → form-sizing-CgcrUbLU.js} +2 -2
  273. package/dist/{form-sizing-Bs2qFUeE.js.map → form-sizing-CgcrUbLU.js.map} +1 -1
  274. package/dist/{forms-C0RGnJTe.js → forms-B3W8CH7-.js} +8 -8
  275. package/dist/{forms-C0RGnJTe.js.map → forms-B3W8CH7-.js.map} +1 -1
  276. package/dist/forms-numeric-CwjQJe-O.js +991 -0
  277. package/dist/forms-numeric-CwjQJe-O.js.map +1 -0
  278. package/dist/{header-DMMxG__r.js → header-ZIIsRKxP.js} +113 -113
  279. package/dist/header-ZIIsRKxP.js.map +1 -0
  280. package/dist/hooks/use-files.d.ts +2 -0
  281. package/dist/{hooks-DB6CJ4MR.js → hooks-BitHSh-Y.js} +3 -3
  282. package/dist/{hooks-DB6CJ4MR.js.map → hooks-BitHSh-Y.js.map} +1 -1
  283. package/dist/{icon-badge-DZF-YjQp.js → icon-badge-npxF1SLX.js} +2 -2
  284. package/dist/{icon-badge-DZF-YjQp.js.map → icon-badge-npxF1SLX.js.map} +1 -1
  285. package/dist/index.js +1 -1
  286. package/dist/{input-CvyDQlY7.js → input-7KAc7XQL.js} +6 -6
  287. package/dist/{input-CvyDQlY7.js.map → input-7KAc7XQL.js.map} +1 -1
  288. package/dist/{input-DMBwAZmr.js → input-DIREVYHs.js} +3 -3
  289. package/dist/{input-DMBwAZmr.js.map → input-DIREVYHs.js.map} +1 -1
  290. package/dist/{interaction-recipes-XR9ZpVYL.js → interaction-recipes-4wZ2tvfb.js} +2 -2
  291. package/dist/{interaction-recipes-XR9ZpVYL.js.map → interaction-recipes-4wZ2tvfb.js.map} +1 -1
  292. package/dist/{item-DjCcM18E.js → item-FfWnaYST.js} +99 -98
  293. package/dist/item-FfWnaYST.js.map +1 -0
  294. package/dist/layout/app-shell.js +1 -1
  295. package/dist/layout/auth.js +1 -1
  296. package/dist/layout/containers.js +1 -1
  297. package/dist/layout/header.js +1 -1
  298. package/dist/layout/hooks.js +1 -1
  299. package/dist/layout/navigation.js +1 -1
  300. package/dist/layout/page.js +1 -1
  301. package/dist/layout/settings.js +1 -1
  302. package/dist/layout/sidebar.js +2 -2
  303. package/dist/layout/workspace.js +1 -1
  304. package/dist/layout.js +11 -11
  305. package/dist/layout.types-E_GAApzO.js +30 -0
  306. package/dist/layout.types-E_GAApzO.js.map +1 -0
  307. package/dist/lib/field-control-attributes.d.ts +11 -0
  308. package/dist/lib/field-state-recipes.d.ts +2 -0
  309. package/dist/lib/format.d.ts +1 -0
  310. package/dist/lib/surface-recipes.d.ts +1 -1
  311. package/dist/lib/token-merge.generated.d.ts +6 -6
  312. package/dist/lib/utils.js +1 -1
  313. package/dist/{media-gallery-C-vChPmE.js → media-gallery-C81DAnKI.js} +6 -6
  314. package/dist/{media-gallery-C-vChPmE.js.map → media-gallery-C81DAnKI.js.map} +1 -1
  315. package/dist/{mentions-0_4nWuI-.js → mentions-qOnedSt4.js} +236 -167
  316. package/dist/mentions-qOnedSt4.js.map +1 -0
  317. package/dist/message-BJHnn43M.js +135 -0
  318. package/dist/message-BJHnn43M.js.map +1 -0
  319. package/dist/{metadata-list-C3MkU-Om.js → metadata-list-XkqZ_UXH.js} +11 -11
  320. package/dist/{metadata-list-C3MkU-Om.js.map → metadata-list-XkqZ_UXH.js.map} +1 -1
  321. package/dist/{navigation-DaRjthVk.js → navigation-BgtPJAhi.js} +119 -119
  322. package/dist/navigation-BgtPJAhi.js.map +1 -0
  323. package/dist/{navigation-C90-oQFq.js → navigation-Bt-v7rWP.js} +52 -46
  324. package/dist/navigation-Bt-v7rWP.js.map +1 -0
  325. package/dist/normalize-layout-path-BmEgg6fu.js +14 -0
  326. package/dist/normalize-layout-path-BmEgg6fu.js.map +1 -0
  327. package/dist/{number-CRU3kGuk.js → number-CYqBcrSj.js} +78 -86
  328. package/dist/number-CYqBcrSj.js.map +1 -0
  329. package/dist/{overflow-tab-bar-IVFVQFV6.js → overflow-tab-bar-BQCA2Zn2.js} +7 -7
  330. package/dist/{overflow-tab-bar-IVFVQFV6.js.map → overflow-tab-bar-BQCA2Zn2.js.map} +1 -1
  331. package/dist/{overlays-BSgCtM2v.js → overlays-CC8zI3Du.js} +264 -260
  332. package/dist/overlays-CC8zI3Du.js.map +1 -0
  333. package/dist/{page-DUUKDAjo.js → page-BoQ1VaFJ.js} +13 -13
  334. package/dist/{page-DUUKDAjo.js.map → page-BoQ1VaFJ.js.map} +1 -1
  335. package/dist/{page-header-commands-7P3sfE9u.js → page-header-commands-DIKspJfx.js} +4 -4
  336. package/dist/{page-header-commands-7P3sfE9u.js.map → page-header-commands-DIKspJfx.js.map} +1 -1
  337. package/dist/{pagination-CgCjElfu.js → pagination-Br8TdV9A.js} +4 -4
  338. package/dist/{pagination-CgCjElfu.js.map → pagination-Br8TdV9A.js.map} +1 -1
  339. package/dist/{popover-B85RenIl.js → popover-k8TdUcAt.js} +10 -10
  340. package/dist/popover-k8TdUcAt.js.map +1 -0
  341. package/dist/{popover-menu-DlnQ2zlR.js → popover-menu-yn-o0kyA.js} +7 -7
  342. package/dist/{popover-menu-DlnQ2zlR.js.map → popover-menu-yn-o0kyA.js.map} +1 -1
  343. package/dist/{popover.recipes-DdiEp0rd.js → popover.recipes-DJ0AkUan.js} +2 -2
  344. package/dist/{popover.recipes-DdiEp0rd.js.map → popover.recipes-DJ0AkUan.js.map} +1 -1
  345. package/dist/{portal-recipes-BpsV_iRw.js → portal-recipes-DyUXqUtD.js} +2 -2
  346. package/dist/{portal-recipes-BpsV_iRw.js.map → portal-recipes-DyUXqUtD.js.map} +1 -1
  347. package/dist/{primitives-ByWgGUgt.js → primitives-BkkQjYl7.js} +22 -17
  348. package/dist/primitives-BkkQjYl7.js.map +1 -0
  349. package/dist/primitives.js +4 -4
  350. package/dist/{progress-BJhQP9WX.js → progress-DZFXXzPs.js} +4 -4
  351. package/dist/{progress-BJhQP9WX.js.map → progress-DZFXXzPs.js.map} +1 -1
  352. package/dist/{receipt-tOc7B3hw.js → receipt-C7LhOg7Q.js} +6 -6
  353. package/dist/{receipt-tOc7B3hw.js.map → receipt-C7LhOg7Q.js.map} +1 -1
  354. package/dist/rich-text-BnTzZjIo.js +45 -0
  355. package/dist/rich-text-BnTzZjIo.js.map +1 -0
  356. package/dist/rich-text-editor-CAurDwT5.js +1273 -0
  357. package/dist/rich-text-editor-CAurDwT5.js.map +1 -0
  358. package/dist/{rich-text-editor-toolbar-laT3tpBT.js → rich-text-editor-toolbar-DbXig7Jk.js} +36 -35
  359. package/dist/rich-text-editor-toolbar-DbXig7Jk.js.map +1 -0
  360. package/dist/rich-text-tree-BqyQ_7-R.js +66 -0
  361. package/dist/rich-text-tree-BqyQ_7-R.js.map +1 -0
  362. package/dist/{sanitize-html-DsQmI48u.js → sanitize-html-BWkH4dLM.js} +29 -16
  363. package/dist/sanitize-html-BWkH4dLM.js.map +1 -0
  364. package/dist/{scroll-area-B0dB2cBi.js → scroll-area-Bj6CRUif.js} +2 -2
  365. package/dist/{scroll-area-B0dB2cBi.js.map → scroll-area-Bj6CRUif.js.map} +1 -1
  366. package/dist/{separator-Bb17I4pu.js → separator-B9ewiCGO.js} +2 -2
  367. package/dist/{separator-Bb17I4pu.js.map → separator-B9ewiCGO.js.map} +1 -1
  368. package/dist/{separator-Ct_WSWTJ.js → separator-DM6gs2vu.js} +3 -3
  369. package/dist/{separator-Ct_WSWTJ.js.map → separator-DM6gs2vu.js.map} +1 -1
  370. package/dist/services/actions.js +1 -1
  371. package/dist/settings-DZPHgpx4.js +155 -0
  372. package/dist/settings-DZPHgpx4.js.map +1 -0
  373. package/dist/{sheet-BGPERY55.js → sheet-C4DHsgLk.js} +6 -6
  374. package/dist/{sheet-BGPERY55.js.map → sheet-C4DHsgLk.js.map} +1 -1
  375. package/dist/sidebar-C8BnDwTH.js +709 -0
  376. package/dist/sidebar-C8BnDwTH.js.map +1 -0
  377. package/dist/{sidebar-f9gRWXIR.js → sidebar-CmD6a-HK.js} +16 -13
  378. package/dist/sidebar-CmD6a-HK.js.map +1 -0
  379. package/dist/{skeleton-BapcJd9C.js → skeleton-DDgdhmu9.js} +5 -5
  380. package/dist/{skeleton-BapcJd9C.js.map → skeleton-DDgdhmu9.js.map} +1 -1
  381. package/dist/{smart-card-CW0hjetE.js → smart-card-B6vLxqa_.js} +8 -8
  382. package/dist/{smart-card-CW0hjetE.js.map → smart-card-B6vLxqa_.js.map} +1 -1
  383. package/dist/{structure-DuxKl954.js → structure-DZJ2wbAU.js} +2 -2
  384. package/dist/{structure-DuxKl954.js.map → structure-DZJ2wbAU.js.map} +1 -1
  385. package/dist/style.css +1 -1
  386. package/dist/{surface-recipes-BKRVW8Os.js → surface-recipes-C8mNycaY.js} +2 -2
  387. package/dist/{surface-recipes-BKRVW8Os.js.map → surface-recipes-C8mNycaY.js.map} +1 -1
  388. package/dist/{table-CFOWY9pQ.js → table-CBonSdTp.js} +534 -486
  389. package/dist/table-CBonSdTp.js.map +1 -0
  390. package/dist/{table-B4TE7iOV.js → table-CXSPHH25.js} +75 -71
  391. package/dist/table-CXSPHH25.js.map +1 -0
  392. package/dist/{tabs-e7ko9S2o.js → tabs-C4Kr_hCr.js} +50 -49
  393. package/dist/tabs-C4Kr_hCr.js.map +1 -0
  394. package/dist/{text-inputs-B1culiSK.js → text-inputs-jdkS3ReG.js} +9 -9
  395. package/dist/{text-inputs-B1culiSK.js.map → text-inputs-jdkS3ReG.js.map} +1 -1
  396. package/dist/{timelines-D3Sl9ueq.js → timelines-CoPwdJP0.js} +10 -10
  397. package/dist/{timelines-D3Sl9ueq.js.map → timelines-CoPwdJP0.js.map} +1 -1
  398. package/dist/{tooltip-8wz5S_Zr.js → tooltip-31NwIpTo.js} +4 -4
  399. package/dist/{tooltip-8wz5S_Zr.js.map → tooltip-31NwIpTo.js.map} +1 -1
  400. package/dist/{tree-CzUJHnFs.js → tree-CeYVzdFE.js} +6 -6
  401. package/dist/{tree-CzUJHnFs.js.map → tree-CeYVzdFE.js.map} +1 -1
  402. package/dist/typography/rich-text.js +1 -1
  403. package/dist/{typography-BQnine1k.js → typography-C7-YMW1S.js} +2 -2
  404. package/dist/{typography-BQnine1k.js.map → typography-C7-YMW1S.js.map} +1 -1
  405. package/dist/typography.js +1 -1
  406. package/dist/{upload-BOW6U2tI.js → upload-Hdm5gObf.js} +303 -291
  407. package/dist/upload-Hdm5gObf.js.map +1 -0
  408. package/dist/{upload-queue-qUXn1ykN.js → upload-queue-D0sYPuqo.js} +8 -8
  409. package/dist/{upload-queue-qUXn1ykN.js.map → upload-queue-D0sYPuqo.js.map} +1 -1
  410. package/dist/{usage-card-BeSLY0i0.js → usage-card-9s8hLDfn.js} +9 -9
  411. package/dist/{usage-card-BeSLY0i0.js.map → usage-card-9s8hLDfn.js.map} +1 -1
  412. package/dist/{utils-B6kKb8jB.js → utils-DhuoqFy4.js} +31 -37
  413. package/dist/utils-DhuoqFy4.js.map +1 -0
  414. package/dist/{value-inputs-skdVB2zh.js → value-inputs-D3aPgq9H.js} +15 -15
  415. package/dist/{value-inputs-skdVB2zh.js.map → value-inputs-D3aPgq9H.js.map} +1 -1
  416. package/dist/{value-typography-uAmWUAL1.js → value-typography-uSzzG9Gf.js} +32 -26
  417. package/dist/value-typography-uSzzG9Gf.js.map +1 -0
  418. package/dist/{workspace-DHeHv0qw.js → workspace-CC8Vchiu.js} +12 -12
  419. package/dist/{workspace-DHeHv0qw.js.map → workspace-CC8Vchiu.js.map} +1 -1
  420. package/docs/consumer-skill/examples/edit.tsx +3 -3
  421. package/docs/consumer-skill/references/agents-md.md +19 -19
  422. package/docs/consumer-skill/references/analytics.md +15 -0
  423. package/docs/consumer-skill/references/component-contracts.json +14724 -13057
  424. package/docs/consumer-skill/references/composition.md +21 -4
  425. package/docs/consumer-skill/references/design-contract.md +1 -0
  426. package/docs/consumer-skill/references/installation.md +51 -8
  427. package/docs/consumer-skill/references/integration.md +24 -1
  428. package/docs/consumer-skill/references/public-api.json +172 -34
  429. package/docs/consumer-skill/references/review.md +51 -11
  430. package/docs/consumer-skill/references/rhf-workflows.md +72 -0
  431. package/docs/consumer-skill/references/theming.md +7 -2
  432. package/docs/consumer-skill/references/tokens.json +1 -1
  433. package/docs/consumer-skill/scripts/composition-policy.mjs +144 -30
  434. package/docs/consumer-skill/scripts/setup-skills.mjs +46 -9
  435. package/package.json +4 -2
  436. package/templates/admin-shell-template.tsx +1 -2
  437. package/templates/customers-template.tsx +18 -16
  438. package/dist/accordion-B9MHG0cT.js.map +0 -1
  439. package/dist/ai-artifact-C58tQcBy.js.map +0 -1
  440. package/dist/auth-DTkkshS8.js.map +0 -1
  441. package/dist/breadcrumbs-J-K2kl4c.js.map +0 -1
  442. package/dist/choice-inputs-zUgBZfE4.js.map +0 -1
  443. package/dist/combobox-BwzoXFSG.js +0 -884
  444. package/dist/combobox-BwzoXFSG.js.map +0 -1
  445. package/dist/comments-Dmpp0YIc.js.map +0 -1
  446. package/dist/data-display-BdgCAw8T.js.map +0 -1
  447. package/dist/date-picker-RlIzKom_.js +0 -1551
  448. package/dist/date-picker-RlIzKom_.js.map +0 -1
  449. package/dist/date-pickers-DY-CpXS1.js +0 -179
  450. package/dist/date-pickers-DY-CpXS1.js.map +0 -1
  451. package/dist/feedback-Dm4izqFn.js +0 -240
  452. package/dist/feedback-Dm4izqFn.js.map +0 -1
  453. package/dist/filters-DzgSJpMK.js.map +0 -1
  454. package/dist/form-field-BriWAXyg.js +0 -63
  455. package/dist/form-field-BriWAXyg.js.map +0 -1
  456. package/dist/forms-numeric-DIhghX1Q.js +0 -910
  457. package/dist/forms-numeric-DIhghX1Q.js.map +0 -1
  458. package/dist/header-DMMxG__r.js.map +0 -1
  459. package/dist/item-DjCcM18E.js.map +0 -1
  460. package/dist/layout.types-Cn7aUzJp.js +0 -20
  461. package/dist/layout.types-Cn7aUzJp.js.map +0 -1
  462. package/dist/mentions-0_4nWuI-.js.map +0 -1
  463. package/dist/message-g8p7eVtN.js +0 -128
  464. package/dist/message-g8p7eVtN.js.map +0 -1
  465. package/dist/navigation-C90-oQFq.js.map +0 -1
  466. package/dist/navigation-DaRjthVk.js.map +0 -1
  467. package/dist/number-CRU3kGuk.js.map +0 -1
  468. package/dist/overlays-BSgCtM2v.js.map +0 -1
  469. package/dist/popover-B85RenIl.js.map +0 -1
  470. package/dist/primitives-ByWgGUgt.js.map +0 -1
  471. package/dist/rich-text-Dth5E882.js +0 -78
  472. package/dist/rich-text-Dth5E882.js.map +0 -1
  473. package/dist/rich-text-editor-C1fOjBTd.js +0 -1195
  474. package/dist/rich-text-editor-C1fOjBTd.js.map +0 -1
  475. package/dist/rich-text-editor-toolbar-laT3tpBT.js.map +0 -1
  476. package/dist/safe-image-src-C6kQSMBZ.js +0 -17
  477. package/dist/safe-image-src-C6kQSMBZ.js.map +0 -1
  478. package/dist/sanitize-html-DsQmI48u.js.map +0 -1
  479. package/dist/settings-Bar5wiSo.js +0 -167
  480. package/dist/settings-Bar5wiSo.js.map +0 -1
  481. package/dist/sidebar-D-JYMMbY.js +0 -686
  482. package/dist/sidebar-D-JYMMbY.js.map +0 -1
  483. package/dist/sidebar-f9gRWXIR.js.map +0 -1
  484. package/dist/table-B4TE7iOV.js.map +0 -1
  485. package/dist/table-CFOWY9pQ.js.map +0 -1
  486. package/dist/tabs-e7ko9S2o.js.map +0 -1
  487. package/dist/upload-BOW6U2tI.js.map +0 -1
  488. package/dist/utils-B6kKb8jB.js.map +0 -1
  489. package/dist/value-typography-uAmWUAL1.js.map +0 -1
@@ -1,28 +1,28 @@
1
1
  "use client";
2
2
  import { f as e, u as t } from "../ui-provider-C-74NVLc.js";
3
3
  import { useStrings as n } from "../lib/strings.js";
4
- import { t as r } from "../utils-B6kKb8jB.js";
5
- import { n as i } from "../buttons-BedGfygC.js";
6
- import { c as a, s as o } from "../typography-BQnine1k.js";
4
+ import { t as r } from "../utils-DhuoqFy4.js";
5
+ import { n as i } from "../buttons-DeW0bQeK.js";
6
+ import { c as a, s as o } from "../typography-C7-YMW1S.js";
7
7
  import { n as s } from "../text.styles-B64My8RZ.js";
8
8
  import { t as c } from "../focus-recipes-B653VaLq.js";
9
- import { t as l } from "../structure-DuxKl954.js";
9
+ import { t as l } from "../structure-DZJ2wbAU.js";
10
10
  import { i as u, t as d } from "../tone-recipes-BPsRAvhu.js";
11
- import { h as f, m as p, p as m, t as h, v as g } from "../smart-card-CW0hjetE.js";
12
- import { t as _ } from "../feedback-Dm4izqFn.js";
11
+ import { h as f, m as p, p as m, t as h, v as g } from "../smart-card-B6vLxqa_.js";
12
+ import { t as _ } from "../feedback-Dzo1xtAU.js";
13
13
  import { t as v } from "../composition.recipes-COdiFhxB.js";
14
- import { n as y } from "../action-menu-Dr8K-ghE.js";
15
- import { r as b } from "../skeleton-BapcJd9C.js";
16
- import { t as x } from "../interaction-recipes-XR9ZpVYL.js";
14
+ import { n as y } from "../action-menu-C0gjzLyE.js";
15
+ import { r as b } from "../skeleton-DDgdhmu9.js";
16
+ import { t as x } from "../interaction-recipes-4wZ2tvfb.js";
17
17
  import { t as S } from "../initials-format-CDoQEOd_.js";
18
- import { i as C, n as w, s as T } from "../avatar-CeZaFmNH.js";
19
- import { t as E } from "../badge-xIiV_E7f.js";
20
- import { l as D } from "../choice-inputs-zUgBZfE4.js";
21
- import { o as O } from "../display-KsZLw9Ov.js";
22
- import { t as k } from "../scroll-area-B0dB2cBi.js";
23
- import { i as ee, n as te, r as ne, t as re, u as ie } from "../item-DjCcM18E.js";
24
- import { i as ae, r as oe, t as se } from "../tabs-e7ko9S2o.js";
25
- import { s as ce } from "../data-display-BdgCAw8T.js";
18
+ import { i as C, n as w, s as T } from "../avatar-B9Jnp-T-.js";
19
+ import { t as E } from "../badge-wWauMgAt.js";
20
+ import { l as D } from "../choice-inputs-DHGtx0QV.js";
21
+ import { o as O } from "../display-CT_N2a3w.js";
22
+ import { t as k } from "../scroll-area-Bj6CRUif.js";
23
+ import { i as ee, n as te, r as ne, t as re, u as ie } from "../item-FfWnaYST.js";
24
+ import { i as ae, r as oe, t as se } from "../tabs-C4Kr_hCr.js";
25
+ import { s as ce } from "../data-display-Cmj-xZYl.js";
26
26
  import { isValidElement as le, useEffect as A, useId as ue, useLayoutEffect as de, useMemo as j, useRef as M, useState as N } from "react";
27
27
  import { Fragment as fe, jsx as P, jsxs as F } from "react/jsx-runtime";
28
28
  import { ChevronLeft as pe, ChevronRight as me, Plus as he, TriangleAlert as ge } from "lucide-react";
@@ -69,53 +69,53 @@ var _e = {
69
69
  "chart-3",
70
70
  "chart-4",
71
71
  "chart-5"
72
- ], L = {
72
+ ], ve = {
73
73
  "chart-1": "bg-chart-1",
74
74
  "chart-2": "bg-chart-2",
75
75
  "chart-3": "bg-chart-3",
76
76
  "chart-4": "bg-chart-4",
77
77
  "chart-5": "bg-chart-5"
78
78
  };
79
- function ve(e, t) {
79
+ function ye(e, t) {
80
80
  let n = e.findIndex((e) => e.id === t);
81
81
  return n < 0 ? "chart-1" : e[n]?.color ?? I[n % I.length] ?? "chart-1";
82
82
  }
83
- function R(e) {
83
+ function L(e) {
84
84
  return new Date(e.getFullYear(), e.getMonth(), e.getDate());
85
85
  }
86
- function z(e, t) {
86
+ function R(e, t) {
87
87
  return new Date(e.getFullYear(), e.getMonth(), e.getDate() + t);
88
88
  }
89
- function B(e, t) {
89
+ function z(e, t) {
90
90
  return e.getFullYear() === t.getFullYear() && e.getMonth() === t.getMonth() && e.getDate() === t.getDate();
91
91
  }
92
- function V(e, t) {
92
+ function B(e, t) {
93
93
  let n = new Date(e.getFullYear(), e.getMonth() + t, 1), r = new Date(n.getFullYear(), n.getMonth() + 1, 0).getDate();
94
94
  return new Date(n.getFullYear(), n.getMonth(), Math.min(e.getDate(), r));
95
95
  }
96
- function H(e, t) {
97
- let n = R(e);
98
- return z(n, -((n.getDay() - t + 7) % 7));
99
- }
100
- function ye(e, t) {
101
- let n = H(e, t);
102
- return Array.from({ length: 7 }, (e, t) => z(n, t));
96
+ function V(e, t) {
97
+ let n = L(e);
98
+ return R(n, -((n.getDay() - t + 7) % 7));
103
99
  }
104
100
  function be(e, t) {
105
- let n = H(new Date(e.getFullYear(), e.getMonth(), 1), t);
106
- return Array.from({ length: 6 }, (e, t) => Array.from({ length: 7 }, (e, r) => z(n, t * 7 + r)));
101
+ let n = V(e, t);
102
+ return Array.from({ length: 7 }, (e, t) => R(n, t));
107
103
  }
108
104
  function xe(e, t) {
109
- let n = R(t).getTime(), r = z(t, 1).getTime();
105
+ let n = V(new Date(e.getFullYear(), e.getMonth(), 1), t);
106
+ return Array.from({ length: 6 }, (e, t) => Array.from({ length: 7 }, (e, r) => R(n, t * 7 + r)));
107
+ }
108
+ function Se(e, t) {
109
+ let n = L(t).getTime(), r = R(t, 1).getTime();
110
110
  return e.start.getTime() < r && e.end.getTime() > n;
111
111
  }
112
- function U(e, t) {
113
- return e.filter((e) => xe(e, t)).sort((e, t) => e.start.getTime() - t.start.getTime() || e.end.getTime() - t.end.getTime());
112
+ function H(e, t) {
113
+ return e.filter((e) => Se(e, t)).sort((e, t) => e.start.getTime() - t.start.getTime() || e.end.getTime() - t.end.getTime());
114
114
  }
115
- function Se(e, t, n) {
115
+ function Ce(e, t, n) {
116
116
  return e.filter((e) => (t === "all" || e.category === t) && (n === "all" || e.staff?.id === n));
117
117
  }
118
- function Ce(e) {
118
+ function we(e) {
119
119
  let t = /* @__PURE__ */ new Map();
120
120
  for (let n of e) {
121
121
  if (!n.staff || n.status === "cancelled") continue;
@@ -137,15 +137,15 @@ function Ce(e) {
137
137
  }
138
138
  return n.sort((e, t) => e.start.getTime() - t.start.getTime());
139
139
  }
140
- function we(e) {
140
+ function Te(e) {
141
141
  return new Set(e.flatMap((e) => e.appointments.map((e) => e.id)));
142
142
  }
143
- function Te(e) {
143
+ function Ee(e) {
144
144
  let t = /* @__PURE__ */ new Map();
145
145
  for (let n of e) n.staff && !t.has(n.staff.id) && t.set(n.staff.id, n.staff);
146
146
  return [...t.values()];
147
147
  }
148
- function Ee(e, t) {
148
+ function De(e, t) {
149
149
  let { hour12: n } = new Intl.DateTimeFormat(t, { hour: "numeric" }).resolvedOptions();
150
150
  if (!n) return new Intl.DateTimeFormat(t, {
151
151
  hour: "2-digit",
@@ -157,20 +157,20 @@ function Ee(e, t) {
157
157
  };
158
158
  return new Intl.DateTimeFormat(t, r).format(e);
159
159
  }
160
- function W(e) {
160
+ function Oe(e) {
161
161
  return typeof e == "string" ? e : e?.name;
162
162
  }
163
163
  //#endregion
164
164
  //#region src/components/features/appointment-calendar/partials/appointment-agenda.tsx
165
- var G = {
165
+ var U = {
166
166
  confirmed: "success",
167
167
  pending: "warning",
168
168
  completed: "neutral",
169
169
  cancelled: "neutral",
170
170
  noShow: "destructive"
171
171
  };
172
- function De({ appointment: e, context: t }) {
173
- let n = ue(), i = W(e.client), o = e.staff, { open: s, conflict: l } = t, d = t.actions.length > 0, f = [
172
+ function W({ appointment: e, context: t }) {
173
+ let n = ue(), i = Oe(e.client), o = e.staff, { open: s, conflict: l } = t, d = t.actions.length > 0, f = [
174
174
  `${n}-title`,
175
175
  `${n}-status`,
176
176
  `${n}-detail`,
@@ -242,10 +242,10 @@ function De({ appointment: e, context: t }) {
242
242
  ]
243
243
  });
244
244
  }
245
- function Oe({ days: e, appointments: t, categories: n, conflicts: r, heading: i, loading: c, error: u, onRetry: d, locale: f, onAppointmentClick: p, appointmentActions: m, renderAppointment: g, strings: v }) {
245
+ function ke({ days: e, appointments: t, categories: n, conflicts: r, heading: i, loading: c, error: u, onRetry: d, locale: f, onAppointmentClick: p, appointmentActions: m, renderAppointment: g, strings: v }) {
246
246
  let x = e.map((e) => ({
247
247
  day: e,
248
- items: U(t, e)
248
+ items: H(t, e)
249
249
  })), S = x.reduce((e, t) => e + t.items.length, 0), C = new Intl.DateTimeFormat(f, {
250
250
  weekday: "long",
251
251
  month: "long",
@@ -253,11 +253,11 @@ function Oe({ days: e, appointments: t, categories: n, conflicts: r, heading: i,
253
253
  }), w = e.length > 1, T = (e) => {
254
254
  let t = r.has(e.id), i = (m?.(e) ?? []).filter((e) => e.visible !== !1), a = {
255
255
  category: n.find((t) => t.id === e.category),
256
- categoryColorClass: L[ve(n, e.category)],
256
+ categoryColorClass: ve[ye(n, e.category)],
257
257
  conflict: t,
258
258
  statusLabel: t ? v.conflict : v.status[e.status],
259
- statusTone: t ? "destructive" : G[e.status],
260
- time: v.formatTimeRange(Ee(e.start, f), Ee(e.end, f)),
259
+ statusTone: t ? "destructive" : U[e.status],
260
+ time: v.formatTimeRange(De(e.start, f), De(e.end, f)),
261
261
  open: p ? () => p(e) : void 0,
262
262
  actions: i,
263
263
  actionsMenu: i.length > 0 ? /* @__PURE__ */ P(y, {
@@ -271,7 +271,7 @@ function Oe({ days: e, appointments: t, categories: n, conflicts: r, heading: i,
271
271
  };
272
272
  return {
273
273
  ...a,
274
- defaultRender: () => /* @__PURE__ */ P(De, {
274
+ defaultRender: () => /* @__PURE__ */ P(W, {
275
275
  appointment: e,
276
276
  context: a
277
277
  })
@@ -339,8 +339,8 @@ function Oe({ days: e, appointments: t, categories: n, conflicts: r, heading: i,
339
339
  }
340
340
  //#endregion
341
341
  //#region src/components/features/appointment-calendar/partials/appointment-month.tsx
342
- var K = 3;
343
- function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o, categories: s, weekStartsOn: u, locale: f, strings: p }) {
342
+ var Ae = 3;
343
+ function je({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o, categories: s, weekStartsOn: u, locale: f, strings: p }) {
344
344
  let [m, h] = N(e), g = M(null), _ = M(!1), v = j(() => /* @__PURE__ */ new Date(), []);
345
345
  A(() => h(e), [e]);
346
346
  let y = m.getFullYear() * 12 + m.getMonth();
@@ -349,7 +349,7 @@ function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o
349
349
  }, [y, n]), A(() => {
350
350
  _.current && (_.current = !1, g.current?.querySelector("[data-focus-target]")?.focus());
351
351
  }, [m]);
352
- let b = j(() => be(m, u), [m, u]), S = j(() => new Intl.DateTimeFormat(f, { month: "long" }), [f]), C = j(() => new Intl.DateTimeFormat(f, { weekday: "short" }), [f]), w = j(() => new Intl.DateTimeFormat(f, {
352
+ let b = j(() => xe(m, u), [m, u]), S = j(() => new Intl.DateTimeFormat(f, { month: "long" }), [f]), C = j(() => new Intl.DateTimeFormat(f, { weekday: "short" }), [f]), w = j(() => new Intl.DateTimeFormat(f, {
353
353
  weekday: "long",
354
354
  month: "long",
355
355
  day: "numeric",
@@ -372,7 +372,7 @@ function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o
372
372
  ]), O = (e, n = !1) => {
373
373
  _.current = !0, h(e), n && t(e);
374
374
  }, k = (n) => {
375
- let r = V(e, n);
375
+ let r = B(e, n);
376
376
  h(r), t(r);
377
377
  };
378
378
  return /* @__PURE__ */ F(l, {
@@ -430,14 +430,14 @@ function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o
430
430
  "aria-label": `${S.format(m)} ${m.getFullYear()}`,
431
431
  onKeyDown: (e) => {
432
432
  let t = {
433
- ArrowLeft: () => z(m, -1),
434
- ArrowRight: () => z(m, 1),
435
- ArrowUp: () => z(m, -7),
436
- ArrowDown: () => z(m, 7),
437
- Home: () => H(m, u),
438
- End: () => z(H(m, u), 6),
439
- PageUp: () => V(m, -1),
440
- PageDown: () => V(m, 1)
433
+ ArrowLeft: () => R(m, -1),
434
+ ArrowRight: () => R(m, 1),
435
+ ArrowUp: () => R(m, -7),
436
+ ArrowDown: () => R(m, 7),
437
+ Home: () => V(m, u),
438
+ End: () => R(V(m, u), 6),
439
+ PageUp: () => B(m, -1),
440
+ PageDown: () => B(m, 1)
441
441
  }[e.key];
442
442
  t && (e.preventDefault(), O(t()));
443
443
  },
@@ -459,7 +459,7 @@ function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o
459
459
  role: "row",
460
460
  className: "contents",
461
461
  children: t.map((t) => {
462
- let n = U(o, t), i = [...new Set(n.map((e) => e.category))], a = B(t, e), l = B(t, m), u = t.getMonth() !== m.getMonth();
462
+ let n = H(o, t), i = [...new Set(n.map((e) => e.category))], a = z(t, e), l = z(t, m), u = t.getMonth() !== m.getMonth();
463
463
  return /* @__PURE__ */ P("div", {
464
464
  role: "gridcell",
465
465
  "aria-selected": a,
@@ -470,14 +470,14 @@ function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o
470
470
  "data-focus-target": l ? "" : void 0,
471
471
  "data-selected": a ? "" : void 0,
472
472
  "data-outside": u ? "" : void 0,
473
- "aria-current": B(t, v) ? "date" : void 0,
473
+ "aria-current": z(t, v) ? "date" : void 0,
474
474
  "aria-label": p.formatDayLabel(w.format(t), n.length),
475
475
  onClick: () => O(t, !0),
476
- className: r(x.nativeButtonReset, "appointment-month--day relative flex size-action flex-col items-center justify-center rounded-radius text-sm tabular-nums outline-none", c.edge, a ? "bg-primary font-semibold text-primary-foreground" : r(x.rowHover, u ? "text-muted-foreground" : "text-foreground"), !a && B(t, v) && "font-semibold"),
476
+ className: r(x.nativeButtonReset, "appointment-month--day relative flex size-action flex-col items-center justify-center rounded-radius text-sm tabular-nums outline-none", c.edge, a ? "bg-primary font-semibold text-primary-foreground" : r(x.rowHover, u ? "text-muted-foreground" : "text-foreground"), !a && z(t, v) && "font-semibold"),
477
477
  children: [t.getDate(), i.length > 0 && /* @__PURE__ */ P("span", {
478
478
  "aria-hidden": "true",
479
479
  className: "appointment-month--dots absolute inset-x-0 bottom-space-2xs flex justify-center gap-space-2xs",
480
- children: i.slice(0, K).map((e) => /* @__PURE__ */ P("span", { className: r(d.inline, L[ve(s, e)]) }, e))
480
+ children: i.slice(0, Ae).map((e) => /* @__PURE__ */ P("span", { className: r(d.inline, ve[ye(s, e)]) }, e))
481
481
  })]
482
482
  })
483
483
  }, t.toISOString());
@@ -488,49 +488,49 @@ function ke({ selected: e, onSelect: t, onVisibleMonthChange: n, appointments: o
488
488
  }
489
489
  //#endregion
490
490
  //#region src/components/features/appointment-calendar/appointment-calendar.tsx
491
- function q(e, t, n) {
491
+ function G(e, t, n) {
492
492
  let [r, i] = N(t);
493
493
  return [e ?? r, (t) => {
494
494
  e === void 0 && i(t), n?.(t);
495
495
  }];
496
496
  }
497
- function Ae({ appointments: s, categories: c, staff: u, title: _, date: y, defaultDate: b, onDateChange: x, view: S, defaultView: C = "day", onViewChange: w, category: T, defaultCategory: E = "all", onCategoryChange: O, staffId: k, defaultStaffId: ee = "all", onStaffChange: te, onAppointmentClick: ne, appointmentActions: re, renderAppointment: ie, onRangeChange: ce, onCreateAppointment: le, onConflictsDismiss: ue, loading: de = !1, error: fe, onRetry: pe, weekStartsOn: me, strings: I, className: B }) {
498
- let V = n(_e, I), { locale: H } = e(), U = t(), W = me ?? U.weekStartsOn ?? 0, [G, De] = q(y, b ?? R(/* @__PURE__ */ new Date()), x), [K, Ae] = q(S, C, w), [J, je] = q(T, E, O), [Y, Me] = q(k, ee, te), [Ne, Pe] = N(""), [Fe, Ie] = N(() => new Date(G.getFullYear(), G.getMonth(), 1)), Le = j(() => u ?? Te(s), [u, s]), X = j(() => K === "week" ? ye(G, W) : [R(G)], [
497
+ function K({ appointments: s, categories: c, staff: u, title: _, date: y, defaultDate: b, onDateChange: x, view: S, defaultView: C = "day", onViewChange: w, category: T, defaultCategory: E = "all", onCategoryChange: O, staffId: k, defaultStaffId: ee = "all", onStaffIdChange: te, onStaffChange: ne, onAppointmentClick: re, appointmentActions: ie, renderAppointment: ce, onRangeChange: le, onCreateAppointment: ue, onConflictsDismiss: de, loading: fe = !1, error: pe, onRetry: me, weekStartsOn: I, strings: z, className: B }) {
498
+ let V = n(_e, z), { locale: H } = e(), Oe = t(), U = I ?? Oe.weekStartsOn ?? 0, [W, Ae] = G(y, b ?? L(/* @__PURE__ */ new Date()), x), [K, Me] = G(S, C, w), [q, Ne] = G(T, E, O), [J, Pe] = G(k, ee, te ?? ne), [Fe, Ie] = N(""), [Le, Re] = N(() => new Date(W.getFullYear(), W.getMonth(), 1)), ze = j(() => u ?? Ee(s), [u, s]), Y = j(() => K === "week" ? be(W, U) : [L(W)], [
499
499
  K,
500
- G,
501
- W
502
- ]), Z = j(() => Se(s, J, Y), [
500
+ W,
501
+ U
502
+ ]), X = j(() => Ce(s, q, J), [
503
503
  s,
504
- J,
505
- Y
506
- ]), Q = j(() => {
507
- let e = [...be(Fe, W).flat(), ...X].map((e) => e.getTime());
504
+ q,
505
+ J
506
+ ]), Z = j(() => {
507
+ let e = [...xe(Le, U).flat(), ...Y].map((e) => e.getTime());
508
508
  return {
509
509
  start: new Date(Math.min(...e)),
510
- end: z(new Date(Math.max(...e)), 1)
510
+ end: R(new Date(Math.max(...e)), 1)
511
511
  };
512
512
  }, [
513
- Fe,
514
- W,
515
- X
516
- ]), Re = M("");
513
+ Le,
514
+ U,
515
+ Y
516
+ ]), Be = M("");
517
517
  A(() => {
518
- let e = `${Q.start.getTime()}:${Q.end.getTime()}`;
519
- e !== Re.current && (Re.current = e, ce?.(Q));
520
- }, [Q, ce]);
521
- let ze = j(() => Z.filter((e) => X.some((t) => xe(e, t))), [Z, X]), $ = j(() => Ce(Se(s, "all", Y).filter((e) => X.some((t) => xe(e, t)))), [
518
+ let e = `${Z.start.getTime()}:${Z.end.getTime()}`;
519
+ e !== Be.current && (Be.current = e, le?.(Z));
520
+ }, [Z, le]);
521
+ let Ve = j(() => X.filter((e) => Y.some((t) => Se(e, t))), [X, Y]), Q = j(() => we(Ce(s, "all", J).filter((e) => Y.some((t) => Se(e, t)))), [
522
522
  s,
523
- Y,
524
- X
525
- ]), Be = j(() => we($), [$]), Ve = ze.filter((e) => Be.has(e.id)).length, He = ze.filter((e) => e.status !== "cancelled").length, Ue = [...Be].sort().join("|"), We = $.length > 0 && Ne !== Ue, Ge = new Intl.DateTimeFormat(H, {
523
+ J,
524
+ Y
525
+ ]), $ = j(() => Te(Q), [Q]), He = Ve.filter((e) => $.has(e.id)).length, Ue = Ve.filter((e) => e.status !== "cancelled").length, We = [...$].sort().join("|"), Ge = Q.length > 0 && Fe !== We, Ke = new Intl.DateTimeFormat(H, {
526
526
  weekday: "long",
527
527
  month: "long",
528
528
  day: "numeric"
529
- }), Ke = new Intl.DateTimeFormat(H, {
529
+ }), qe = new Intl.DateTimeFormat(H, {
530
530
  month: "long",
531
531
  day: "numeric"
532
- }), qe = K === "week" ? V.formatWeekRange(Ke.format(X[0] ?? G), Ke.format(X[X.length - 1] ?? G)) : Ge.format(G), Je = (e) => {
533
- Pe(Ue), ue?.(e);
532
+ }), Je = K === "week" ? V.formatWeekRange(qe.format(Y[0] ?? W), qe.format(Y[Y.length - 1] ?? W)) : Ke.format(W), Ye = (e) => {
533
+ Ie(We), de?.(e);
534
534
  };
535
535
  return /* @__PURE__ */ F(l, {
536
536
  gap: "xl",
@@ -548,18 +548,18 @@ function Ae({ appointments: s, categories: c, staff: u, title: _, date: y, defau
548
548
  tag: "h2",
549
549
  size: "lg",
550
550
  children: _
551
- }), !de && !fe && /* @__PURE__ */ F(a, {
551
+ }), !fe && !pe && /* @__PURE__ */ F(a, {
552
552
  size: "xs",
553
553
  type: "secondary",
554
554
  className: "appointment-calendar--counts tabular-nums",
555
- children: [V.formatBooked(He), Ve > 0 && ` · ${V.formatConflicts(Ve)}`]
555
+ children: [V.formatBooked(Ue), He > 0 && ` · ${V.formatConflicts(He)}`]
556
556
  })]
557
557
  }), /* @__PURE__ */ F("div", {
558
558
  className: r("appointment-calendar--actions flex min-w-0 flex-wrap items-center", v.commands),
559
559
  children: [
560
560
  /* @__PURE__ */ P(se, {
561
561
  value: K,
562
- onValueChange: (e) => (e === "day" || e === "week") && Ae(e),
562
+ onValueChange: (e) => (e === "day" || e === "week") && Me(e),
563
563
  children: /* @__PURE__ */ P(oe, {
564
564
  role: "group",
565
565
  "aria-label": V.viewLabel,
@@ -575,23 +575,23 @@ function Ae({ appointments: s, categories: c, staff: u, title: _, date: y, defau
575
575
  }, e))
576
576
  })
577
577
  }),
578
- Le.length > 0 && /* @__PURE__ */ P(D, {
578
+ ze.length > 0 && /* @__PURE__ */ P(D, {
579
579
  "aria-label": V.staffLabel,
580
580
  options: [{
581
581
  value: "all",
582
582
  label: V.allStaff
583
- }, ...Le.map((e) => ({
583
+ }, ...ze.map((e) => ({
584
584
  value: e.id,
585
585
  label: e.name
586
586
  }))],
587
- value: Y,
588
- onValueChange: (e) => Me(e ?? "all"),
587
+ value: J,
588
+ onValueChange: (e) => Pe(e ?? "all"),
589
589
  className: "appointment-calendar--staff w-44"
590
590
  }),
591
- !!le && /* @__PURE__ */ F(i, {
591
+ !!ue && /* @__PURE__ */ F(i, {
592
592
  type: "button",
593
593
  tone: "primary",
594
- onClick: () => le(G),
594
+ onClick: () => ue(W),
595
595
  className: "appointment-calendar--create",
596
596
  children: [/* @__PURE__ */ P(he, {
597
597
  "aria-hidden": "true",
@@ -601,17 +601,17 @@ function Ae({ appointments: s, categories: c, staff: u, title: _, date: y, defau
601
601
  ]
602
602
  })]
603
603
  }),
604
- We && /* @__PURE__ */ F(m, {
604
+ Ge && /* @__PURE__ */ F(m, {
605
605
  tone: "destructive",
606
606
  className: "appointment-calendar--alert",
607
607
  children: [
608
608
  /* @__PURE__ */ P(ge, { "aria-hidden": "true" }),
609
609
  /* @__PURE__ */ P(g, { children: V.conflictTitle }),
610
- /* @__PURE__ */ P(f, { children: $.map((e) => V.formatConflict(e.staff.name, e.appointments.length, Ee(e.start, H))).join(" ") }),
610
+ /* @__PURE__ */ P(f, { children: Q.map((e) => V.formatConflict(e.staff.name, e.appointments.length, De(e.start, H))).join(" ") }),
611
611
  /* @__PURE__ */ P(p, { children: /* @__PURE__ */ P(i, {
612
612
  type: "button",
613
613
  size: "sm",
614
- onClick: () => Je($),
614
+ onClick: () => Ye(Q),
615
615
  children: V.dismiss
616
616
  }) })
617
617
  ]
@@ -623,18 +623,18 @@ function Ae({ appointments: s, categories: c, staff: u, title: _, date: y, defau
623
623
  className: "appointment-calendar--aside min-w-0 self-start",
624
624
  children: /* @__PURE__ */ F(l, {
625
625
  gap: "xl",
626
- children: [/* @__PURE__ */ P(ke, {
627
- selected: G,
628
- onSelect: De,
629
- onVisibleMonthChange: Ie,
630
- appointments: Z,
626
+ children: [/* @__PURE__ */ P(je, {
627
+ selected: W,
628
+ onSelect: Ae,
629
+ onVisibleMonthChange: Re,
630
+ appointments: X,
631
631
  categories: c,
632
- weekStartsOn: W,
632
+ weekStartsOn: U,
633
633
  locale: H,
634
634
  strings: V
635
635
  }), c.length > 0 && /* @__PURE__ */ P(se, {
636
- value: J,
637
- onValueChange: (e) => typeof e == "string" && je(e),
636
+ value: q,
637
+ onValueChange: (e) => typeof e == "string" && Ne(e),
638
638
  children: /* @__PURE__ */ P(oe, {
639
639
  variant: "chips",
640
640
  role: "group",
@@ -649,37 +649,37 @@ function Ae({ appointments: s, categories: c, staff: u, title: _, date: y, defau
649
649
  role: "button",
650
650
  "aria-selected": void 0,
651
651
  "aria-controls": void 0,
652
- "aria-pressed": J === e.id,
652
+ "aria-pressed": q === e.id,
653
653
  className: "appointment-calendar--category gap-space-xs",
654
654
  children: [e.id !== "all" && /* @__PURE__ */ P("span", {
655
655
  "aria-hidden": "true",
656
- className: r(d.inline, L[ve(c, e.id)])
656
+ className: r(d.inline, ve[ye(c, e.id)])
657
657
  }), e.label]
658
658
  }, e.id))
659
659
  })
660
660
  })]
661
661
  })
662
- }), /* @__PURE__ */ P(Oe, {
663
- days: X,
664
- appointments: Z,
662
+ }), /* @__PURE__ */ P(ke, {
663
+ days: Y,
664
+ appointments: X,
665
665
  categories: c,
666
- conflicts: Be,
667
- heading: qe,
668
- loading: de,
669
- error: fe,
670
- onRetry: pe,
666
+ conflicts: $,
667
+ heading: Je,
668
+ loading: fe,
669
+ error: pe,
670
+ onRetry: me,
671
671
  locale: H,
672
- onAppointmentClick: ne,
673
- appointmentActions: re,
674
- renderAppointment: ie,
672
+ onAppointmentClick: re,
673
+ appointmentActions: ie,
674
+ renderAppointment: ce,
675
675
  strings: V
676
676
  })]
677
677
  })
678
678
  ]
679
679
  });
680
680
  }
681
- Ae.displayName = "AppointmentCalendar";
681
+ K.displayName = "AppointmentCalendar";
682
682
  //#endregion
683
- export { Ae as AppointmentCalendar, U as appointmentsOn, _e as defaultAppointmentCalendarStrings, Se as filterAppointments, Ce as findConflicts };
683
+ export { K as AppointmentCalendar, H as appointmentsOn, _e as defaultAppointmentCalendarStrings, Ce as filterAppointments, we as findConflicts };
684
684
 
685
685
  //# sourceMappingURL=appointment-calendar.js.map