themelia-react-ui 1.0.0 → 1.0.2

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 (507) hide show
  1. package/CHANGELOG.md +190 -1
  2. package/README.md +92 -13
  3. package/dist/{accordion-BRWh3BM1.js → accordion-BRTcsp8J.js} +8 -8
  4. package/dist/accordion-BRTcsp8J.js.map +1 -0
  5. package/dist/{action-menu-Cx3SdfbN.js → action-menu-Drxw_vJk.js} +36 -36
  6. package/dist/action-menu-Drxw_vJk.js.map +1 -0
  7. package/dist/affordance-geometry.generated-CL84ZN9A.js +63 -0
  8. package/dist/affordance-geometry.generated-CL84ZN9A.js.map +1 -0
  9. package/dist/{ai-artifact-DkOArd3-.js → ai-artifact-DLVdK0Py.js} +151 -155
  10. package/dist/ai-artifact-DLVdK0Py.js.map +1 -0
  11. package/dist/{app-shell-BH_bGcE2.js → app-shell-C_fKpljx.js} +11 -10
  12. package/dist/app-shell-C_fKpljx.js.map +1 -0
  13. package/dist/{attachment-DsLgNHXt.js → attachment-DbjUWsP0.js} +12 -12
  14. package/dist/{attachment-DsLgNHXt.js.map → attachment-DbjUWsP0.js.map} +1 -1
  15. package/dist/auth-CAQcasMV.js +723 -0
  16. package/dist/auth-CAQcasMV.js.map +1 -0
  17. package/dist/{avatar-CsnWaYmt.js → avatar-Bu2HhitA.js} +76 -71
  18. package/dist/avatar-Bu2HhitA.js.map +1 -0
  19. package/dist/{badge-BZXZT9wd.js → badge-CzId1Wlm.js} +4 -4
  20. package/dist/{badge-BZXZT9wd.js.map → badge-CzId1Wlm.js.map} +1 -1
  21. package/dist/base/accordion.js +1 -1
  22. package/dist/base/action-menu.js +1 -1
  23. package/dist/base/attachment.js +1 -1
  24. package/dist/base/avatar.js +1 -1
  25. package/dist/base/badge.js +1 -1
  26. package/dist/base/buttons.js +3 -2
  27. package/dist/base/cards.js +3 -3
  28. package/dist/base/carousel.js +25 -27
  29. package/dist/base/carousel.js.map +1 -1
  30. package/dist/base/cascader.js +150 -148
  31. package/dist/base/cascader.js.map +1 -1
  32. package/dist/base/chart.js +1 -1
  33. package/dist/base/choice-inputs.js +3 -2
  34. package/dist/base/code-block.js +1 -1
  35. package/dist/base/combobox.js +1 -1
  36. package/dist/base/command.js +1 -1
  37. package/dist/base/copyable.js +1 -1
  38. package/dist/base/date-pickers.js +3 -3
  39. package/dist/base/display.js +7 -7
  40. package/dist/base/feedback.js +4 -3
  41. package/dist/base/forms-numeric.js +1 -1
  42. package/dist/base/forms.js +2 -2
  43. package/dist/base/inline-edit.js +233 -0
  44. package/dist/base/inline-edit.js.map +1 -0
  45. package/dist/base/item.js +1 -1
  46. package/dist/base/media-gallery.js +1 -1
  47. package/dist/base/navigation.js +6 -6
  48. package/dist/base/popover-menu.js +1 -1
  49. package/dist/base/popover.js +1 -1
  50. package/dist/base/qr-code.js +1 -1
  51. package/dist/base/repeaters.js +33 -33
  52. package/dist/base/repeaters.js.map +1 -1
  53. package/dist/base/sheet.js +1 -1
  54. package/dist/base/sidebar.js +1 -1
  55. package/dist/base/signature-pad.js +83 -81
  56. package/dist/base/signature-pad.js.map +1 -1
  57. package/dist/base/skeleton.js +1 -1
  58. package/dist/base/spinner.js +1 -1
  59. package/dist/base/structure.js +1 -1
  60. package/dist/base/table.js +1 -1
  61. package/dist/base/text-inputs.js +2 -2
  62. package/dist/base/toaster.js +6 -6
  63. package/dist/base/toaster.js.map +1 -1
  64. package/dist/base/tree.js +1 -1
  65. package/dist/base/upload-queue.js +1 -1
  66. package/dist/base/upload.js +3 -3
  67. package/dist/base/value-inputs.js +1 -1
  68. package/dist/blocks/admin.js +134 -134
  69. package/dist/blocks/admin.js.map +1 -1
  70. package/dist/blocks/ai.js +120 -117
  71. package/dist/blocks/ai.js.map +1 -1
  72. package/dist/blocks/analytics/usage-card.js +3 -0
  73. package/dist/blocks/analytics.js +530 -491
  74. package/dist/blocks/analytics.js.map +1 -1
  75. package/dist/blocks/collaboration.js +2 -2
  76. package/dist/blocks/commerce/receipt.js +1 -1
  77. package/dist/blocks/commerce.js +395 -383
  78. package/dist/blocks/commerce.js.map +1 -1
  79. package/dist/blocks/data-display.js +1 -1
  80. package/dist/blocks/onboarding.js +6 -6
  81. package/dist/blocks/onboarding.js.map +1 -1
  82. package/dist/blocks/planning.js +311 -0
  83. package/dist/blocks/planning.js.map +1 -0
  84. package/dist/blocks/timelines.js +1 -1
  85. package/dist/{breadcrumbs-DdQ_I5ra.js → breadcrumbs-BuYz5SDU.js} +9 -8
  86. package/dist/breadcrumbs-BuYz5SDU.js.map +1 -0
  87. package/dist/button-BZDasD04.js +651 -0
  88. package/dist/button-BZDasD04.js.map +1 -0
  89. package/dist/{button-BS6l5JUw.js → button-BZyfTvwm.js} +3 -3
  90. package/dist/button-BZyfTvwm.js.map +1 -0
  91. package/dist/buttons-D_6KJvEE.js +99 -0
  92. package/dist/buttons-D_6KJvEE.js.map +1 -0
  93. package/dist/{cards-BMB0laLG.js → cards-qGSErLw_.js} +12 -12
  94. package/dist/{cards-BMB0laLG.js.map → cards-qGSErLw_.js.map} +1 -1
  95. package/dist/chart-Bsc5BICK.js +150 -0
  96. package/dist/chart-Bsc5BICK.js.map +1 -0
  97. package/dist/checkbox-BQNDjUCh.js +34 -0
  98. package/dist/checkbox-BQNDjUCh.js.map +1 -0
  99. package/dist/choice-inputs-Mk3iWbhr.js +725 -0
  100. package/dist/choice-inputs-Mk3iWbhr.js.map +1 -0
  101. package/dist/{code-block-DIlqzoiD.js → code-block-DzHKRybS.js} +23 -23
  102. package/dist/code-block-DzHKRybS.js.map +1 -0
  103. package/dist/{collapsible-DsnktFNv.js → collapsible-ClvC7Bj3.js} +3 -3
  104. package/dist/{collapsible-DsnktFNv.js.map → collapsible-ClvC7Bj3.js.map} +1 -1
  105. package/dist/{collection-content-C4fthJV_.js → collection-content-D6S8cv_n.js} +3 -3
  106. package/dist/{collection-content-C4fthJV_.js.map → collection-content-D6S8cv_n.js.map} +1 -1
  107. package/dist/{combobox-HDftpzxt.js → combobox-BFnbJJp3.js} +18 -18
  108. package/dist/combobox-BFnbJJp3.js.map +1 -0
  109. package/dist/{combobox-CHD750do.js → combobox-hozNwUcc.js} +313 -316
  110. package/dist/combobox-hozNwUcc.js.map +1 -0
  111. package/dist/{command-D0kWBZfd.js → command-BnmSchli.js} +9 -9
  112. package/dist/command-BnmSchli.js.map +1 -0
  113. package/dist/comments-u5L0OGip.js +1156 -0
  114. package/dist/comments-u5L0OGip.js.map +1 -0
  115. package/dist/components/base/buttons/button-group.recipes.d.ts +1 -1
  116. package/dist/components/base/buttons/button.recipes.d.ts +10 -19
  117. package/dist/components/base/buttons/use-pending-button-focus.d.ts +3 -0
  118. package/dist/components/base/cards/card.recipes.d.ts +13 -5
  119. package/dist/components/base/cards/partials/card-primitives.d.ts +9 -4
  120. package/dist/components/base/cards/smart-card.types.d.ts +3 -1
  121. package/dist/components/base/date-pickers/date-picker.recipes.d.ts +5 -18
  122. package/dist/components/base/date-pickers/datepicker.types.d.ts +3 -0
  123. package/dist/components/base/forms/form-field.d.ts +1 -0
  124. package/dist/components/base/forms/form-sizing.d.ts +3 -3
  125. package/dist/components/base/inline-edit/index.d.ts +2 -0
  126. package/dist/components/base/inline-edit/inline-edit.d.ts +81 -0
  127. package/dist/components/base/inline-edit/inline-edit.recipes.d.ts +6 -0
  128. package/dist/components/base/navigation/tabs.d.ts +3 -5
  129. package/dist/components/base/popover/popover.recipes.d.ts +3 -3
  130. package/dist/components/base/structure/structure.recipes.d.ts +6 -0
  131. package/dist/components/base/table/index.d.ts +1 -1
  132. package/dist/components/base/text-inputs/clear-native-field.d.ts +2 -0
  133. package/dist/components/base/text-inputs/input-trailing-action.d.ts +3 -0
  134. package/dist/components/blocks/analytics/index.d.ts +1 -0
  135. package/dist/components/blocks/analytics/types.d.ts +1 -1
  136. package/dist/components/blocks/analytics/usage-card/index.d.ts +3 -0
  137. package/dist/components/blocks/analytics/usage-card/types.d.ts +52 -0
  138. package/dist/components/blocks/analytics/usage-card/usage-card.d.ts +6 -0
  139. package/dist/components/blocks/analytics/usage-card/usage-card.data.d.ts +19 -0
  140. package/dist/components/blocks/analytics/usage-card/usage-card.strings.d.ts +22 -0
  141. package/dist/components/blocks/collaboration/message/message.recipes.d.ts +12 -0
  142. package/dist/components/blocks/data-display/empty-state/partials/illustrations/document-stack.d.ts +1 -4
  143. package/dist/components/blocks/data-display/empty-state/partials/illustrations/inbox-clean.d.ts +1 -4
  144. package/dist/components/blocks/data-display/empty-state/partials/illustrations/index.d.ts +3 -3
  145. package/dist/components/blocks/data-display/empty-state/partials/illustrations/stacked-cards.d.ts +1 -6
  146. package/dist/components/blocks/planning/index.d.ts +3 -0
  147. package/dist/components/blocks/planning/task-card.d.ts +3 -0
  148. package/dist/components/blocks/planning/task-card.strings.d.ts +15 -0
  149. package/dist/components/blocks/planning/task-card.types.d.ts +66 -0
  150. package/dist/components/features/combobox/components/error-message.d.ts +1 -1
  151. package/dist/components/features/comments/hooks/use-attachment-upload.d.ts +5 -0
  152. package/dist/components/features/filters/facets/search-facet.d.ts +0 -12
  153. package/dist/components/features/filters/facets/tags-facet.d.ts +1 -1
  154. package/dist/components/features/media-library/media-library.d.ts +1 -1
  155. package/dist/components/features/media-library/media-library.types.d.ts +9 -1
  156. package/dist/components/features/media-library/partials/media-library-partials.d.ts +1 -1
  157. package/dist/components/features/overlays/hooks/use-pending-overlay-focus.d.ts +2 -0
  158. package/dist/components/features/overlays/overlays.types.d.ts +5 -4
  159. package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +2 -1
  160. package/dist/components/features/table/data-table.d.ts +1 -1
  161. package/dist/components/features/table/table.types.d.ts +1 -1
  162. package/dist/components/features/theme-tweaker/theme-provider-settings.d.ts +3 -1
  163. package/dist/components/layout/auth/auth.types.d.ts +1 -0
  164. package/dist/components/layout/page/page.d.ts +0 -1
  165. package/dist/components/layout/page/page.types.d.ts +9 -3
  166. package/dist/components/layout/sidebar/sidebar.context.d.ts +1 -1
  167. package/dist/components/layout/sidebar/sidebar.types.d.ts +4 -0
  168. package/dist/components/layout/workspace/workspace.types.d.ts +3 -0
  169. package/dist/components/typography/heading.d.ts +5 -2
  170. package/dist/components/typography/index.d.ts +1 -1
  171. package/dist/components/typography/text.styles.d.ts +10 -0
  172. package/dist/components/ui/popover.d.ts +1 -1
  173. package/dist/components/ui/sidebar.d.ts +1 -1
  174. package/dist/components/ui/table.d.ts +2 -1
  175. package/dist/container.recipes-D9t8MHR3.js +27 -0
  176. package/dist/container.recipes-D9t8MHR3.js.map +1 -0
  177. package/dist/{containers-CPNyNo1_.js → containers-DqB-bSYE.js} +34 -56
  178. package/dist/containers-DqB-bSYE.js.map +1 -0
  179. package/dist/control-group-recipes-DBXmfh2E.js +21 -0
  180. package/dist/control-group-recipes-DBXmfh2E.js.map +1 -0
  181. package/dist/{copyable-B7SBXJMr.js → copyable-BTSByfmq.js} +6 -6
  182. package/dist/{copyable-B7SBXJMr.js.map → copyable-BTSByfmq.js.map} +1 -1
  183. package/dist/{data-display-b3d1TfL4.js → data-display-Bihs9Ven.js} +542 -329
  184. package/dist/data-display-Bihs9Ven.js.map +1 -0
  185. package/dist/{date-BFNMnrS5.js → date-DOKhJPu7.js} +4 -4
  186. package/dist/{date-BFNMnrS5.js.map → date-DOKhJPu7.js.map} +1 -1
  187. package/dist/{date-picker-DI6kPNof.js → date-picker-DzP5HQq7.js} +492 -472
  188. package/dist/date-picker-DzP5HQq7.js.map +1 -0
  189. package/dist/date-pickers-BpgGz7S-.js +196 -0
  190. package/dist/date-pickers-BpgGz7S-.js.map +1 -0
  191. package/dist/{display-ByI5tkqy.js → display-CS6Hbk18.js} +8 -8
  192. package/dist/{display-ByI5tkqy.js.map → display-CS6Hbk18.js.map} +1 -1
  193. package/dist/{dropdown-menu-BlnyHr-9.js → dropdown-menu-D-boNgGO.js} +7 -7
  194. package/dist/{dropdown-menu-BlnyHr-9.js.map → dropdown-menu-D-boNgGO.js.map} +1 -1
  195. package/dist/features/activities.js +152 -141
  196. package/dist/features/activities.js.map +1 -1
  197. package/dist/features/ai-chat.js +182 -179
  198. package/dist/features/ai-chat.js.map +1 -1
  199. package/dist/features/async-preview.js +9 -9
  200. package/dist/features/async-preview.js.map +1 -1
  201. package/dist/features/combobox.js +1 -1
  202. package/dist/features/comments.js +1 -1
  203. package/dist/features/data-view.js +25 -23
  204. package/dist/features/data-view.js.map +1 -1
  205. package/dist/features/email-composer/engine.js +1 -1
  206. package/dist/features/email-composer.js +103 -104
  207. package/dist/features/email-composer.js.map +1 -1
  208. package/dist/features/event-calendar.js +375 -373
  209. package/dist/features/event-calendar.js.map +1 -1
  210. package/dist/features/filters.js +1 -1
  211. package/dist/features/global-search.js +222 -224
  212. package/dist/features/global-search.js.map +1 -1
  213. package/dist/features/kanban.js +29 -29
  214. package/dist/features/kanban.js.map +1 -1
  215. package/dist/features/map.js +59 -58
  216. package/dist/features/map.js.map +1 -1
  217. package/dist/features/media-library.js +856 -855
  218. package/dist/features/media-library.js.map +1 -1
  219. package/dist/features/mentions.js +1 -1
  220. package/dist/features/overlays.js +1 -1
  221. package/dist/features/products.js +1210 -1209
  222. package/dist/features/products.js.map +1 -1
  223. package/dist/features/questionnaire.js +133 -132
  224. package/dist/features/questionnaire.js.map +1 -1
  225. package/dist/features/resource-assignment.js +29 -31
  226. package/dist/features/resource-assignment.js.map +1 -1
  227. package/dist/features/resource.js +13 -13
  228. package/dist/features/resource.js.map +1 -1
  229. package/dist/features/rich-text-editor.js +2 -2
  230. package/dist/features/schema-form.js +82 -82
  231. package/dist/features/schema-form.js.map +1 -1
  232. package/dist/features/suggestions.js +3 -3
  233. package/dist/features/sync.js +4 -4
  234. package/dist/features/sync.js.map +1 -1
  235. package/dist/features/table.js +1 -1
  236. package/dist/features/theme-tweaker.js +456 -450
  237. package/dist/features/theme-tweaker.js.map +1 -1
  238. package/dist/feedback-CJkUAapr.js +233 -0
  239. package/dist/feedback-CJkUAapr.js.map +1 -0
  240. package/dist/field-affordance-recipes-uKY4MsZ_.js +25 -0
  241. package/dist/field-affordance-recipes-uKY4MsZ_.js.map +1 -0
  242. package/dist/{field-state-recipes-CBTRt9Bt.js → field-state-recipes-DQQpiLWC.js} +3 -3
  243. package/dist/field-state-recipes-DQQpiLWC.js.map +1 -0
  244. package/dist/{filters-qtrcv1hf.js → filters-D6FF8L6s.js} +715 -720
  245. package/dist/filters-D6FF8L6s.js.map +1 -0
  246. package/dist/{form-field-C6W-y2hR.js → form-field-CZwrkP7m.js} +17 -9
  247. package/dist/form-field-CZwrkP7m.js.map +1 -0
  248. package/dist/{form-sizing-39NohSqn.js → form-sizing-QP8aIRaW.js} +10 -6
  249. package/dist/form-sizing-QP8aIRaW.js.map +1 -0
  250. package/dist/{forms-BF-HSbff.js → forms-B5NCbkSC.js} +35 -35
  251. package/dist/{forms-BF-HSbff.js.map → forms-B5NCbkSC.js.map} +1 -1
  252. package/dist/forms-numeric-Crrm80Lm.js +867 -0
  253. package/dist/forms-numeric-Crrm80Lm.js.map +1 -0
  254. package/dist/{header-B8ex54cY.js → header-kxruN3RM.js} +53 -49
  255. package/dist/header-kxruN3RM.js.map +1 -0
  256. package/dist/{hooks-D6UBVzf2.js → hooks-BrlnCwQd.js} +2 -2
  257. package/dist/{hooks-D6UBVzf2.js.map → hooks-BrlnCwQd.js.map} +1 -1
  258. package/dist/{http-CLTVJc5I.js → http-CdEIHyQf.js} +2 -2
  259. package/dist/http-CdEIHyQf.js.map +1 -0
  260. package/dist/{icon-badge-Dv0RYQwj.js → icon-badge-Btc6pQrp.js} +4 -4
  261. package/dist/{icon-badge-Dv0RYQwj.js.map → icon-badge-Btc6pQrp.js.map} +1 -1
  262. package/dist/index.js +2 -2
  263. package/dist/input-SX9V0AL3.js +255 -0
  264. package/dist/input-SX9V0AL3.js.map +1 -0
  265. package/dist/input-vxcaNCYC.js +20 -0
  266. package/dist/input-vxcaNCYC.js.map +1 -0
  267. package/dist/{item-pJ0GsOiJ.js → item-DE4YnuJx.js} +18 -17
  268. package/dist/item-DE4YnuJx.js.map +1 -0
  269. package/dist/layout/app-shell.js +1 -1
  270. package/dist/layout/auth.js +1 -1
  271. package/dist/layout/containers.js +1 -1
  272. package/dist/layout/header.js +1 -1
  273. package/dist/layout/hooks.js +1 -1
  274. package/dist/layout/navigation.js +1 -1
  275. package/dist/layout/page.js +1 -1
  276. package/dist/layout/settings.js +1 -1
  277. package/dist/layout/sidebar.js +2 -2
  278. package/dist/layout/workspace.js +1 -1
  279. package/dist/layout.js +10 -10
  280. package/dist/lib/affordance-geometry.generated.d.ts +44 -4
  281. package/dist/lib/control-group-recipes.d.ts +22 -0
  282. package/dist/lib/field-affordance-recipes.d.ts +35 -2
  283. package/dist/lib/field-state-recipes.d.ts +2 -2
  284. package/dist/lib/navigation-row-recipes.d.ts +3 -2
  285. package/dist/lib/overlay-anatomy-recipes.d.ts +1 -1
  286. package/dist/lib/surface-recipes.d.ts +5 -2
  287. package/dist/lib/token-merge.generated.d.ts +144 -2
  288. package/dist/lib/ui-provider/types.d.ts +4 -2
  289. package/dist/lib/use-prefers-reduced-motion.d.ts +2 -0
  290. package/dist/lib/utils.js +1 -1
  291. package/dist/{media-gallery-Ca4YmvBi.js → media-gallery-DLp3HAz0.js} +75 -74
  292. package/dist/media-gallery-DLp3HAz0.js.map +1 -0
  293. package/dist/{mentions-CRio8mTm.js → mentions-Cl0Kt_Pd.js} +52 -50
  294. package/dist/{mentions-CRio8mTm.js.map → mentions-Cl0Kt_Pd.js.map} +1 -1
  295. package/dist/message-SZUNB1eX.js +127 -0
  296. package/dist/message-SZUNB1eX.js.map +1 -0
  297. package/dist/{navigation-BTrEb5u4.js → navigation-DnQSNMT0.js} +64 -55
  298. package/dist/navigation-DnQSNMT0.js.map +1 -0
  299. package/dist/{navigation-DqEITuD2.js → navigation-DyytsLRB.js} +37 -37
  300. package/dist/navigation-DyytsLRB.js.map +1 -0
  301. package/dist/{navigation-row-recipes-BFpvGPGE.js → navigation-row-recipes-DQEXQcqY.js} +3 -3
  302. package/dist/navigation-row-recipes-DQEXQcqY.js.map +1 -0
  303. package/dist/{number-BNT_BIzJ.js → number-DasMFWEG.js} +4 -4
  304. package/dist/{number-BNT_BIzJ.js.map → number-DasMFWEG.js.map} +1 -1
  305. package/dist/overlays-DUbs1KEi.js +1011 -0
  306. package/dist/overlays-DUbs1KEi.js.map +1 -0
  307. package/dist/{page-BMBGjJY8.js → page-hGmT4nWK.js} +75 -64
  308. package/dist/page-hGmT4nWK.js.map +1 -0
  309. package/dist/{page-header-BH41wCyY.js → page-header-D8nERkn5.js} +9 -9
  310. package/dist/page-header-D8nERkn5.js.map +1 -0
  311. package/dist/{pagination-C29vvt3I.js → pagination-NLGqRirf.js} +20 -20
  312. package/dist/pagination-NLGqRirf.js.map +1 -0
  313. package/dist/{popover-TInGXsjg.js → popover-CghIYdQf.js} +23 -22
  314. package/dist/popover-CghIYdQf.js.map +1 -0
  315. package/dist/{popover-menu-BzqXqE72.js → popover-menu-B4PoWhRl.js} +6 -6
  316. package/dist/{popover-menu-BzqXqE72.js.map → popover-menu-B4PoWhRl.js.map} +1 -1
  317. package/dist/{popover.recipes-zgBhMlUu.js → popover.recipes-QlD4JenO.js} +5 -5
  318. package/dist/popover.recipes-QlD4JenO.js.map +1 -0
  319. package/dist/{primitives-DKPOGVpj.js → primitives-C7ff0QaI.js} +120 -113
  320. package/dist/primitives-C7ff0QaI.js.map +1 -0
  321. package/dist/primitives.js +3 -3
  322. package/dist/progress-BroqrAyV.js +169 -0
  323. package/dist/progress-BroqrAyV.js.map +1 -0
  324. package/dist/{receipt-DYWTQGEc.js → receipt-BuJynLgf.js} +8 -8
  325. package/dist/{receipt-DYWTQGEc.js.map → receipt-BuJynLgf.js.map} +1 -1
  326. package/dist/{rich-text-B7sBAdDG.js → rich-text-DlxDOtf4.js} +4 -4
  327. package/dist/{rich-text-B7sBAdDG.js.map → rich-text-DlxDOtf4.js.map} +1 -1
  328. package/dist/rich-text-editor-BKyG7rWz.js +574 -0
  329. package/dist/rich-text-editor-BKyG7rWz.js.map +1 -0
  330. package/dist/{rich-text-editor.recipes-DxvOE0Lp.js → rich-text-editor.recipes-B72Nfuze.js} +35 -26
  331. package/dist/rich-text-editor.recipes-B72Nfuze.js.map +1 -0
  332. package/dist/{scroll-area-BheMQ270.js → scroll-area-D-pIhEKl.js} +3 -3
  333. package/dist/scroll-area-D-pIhEKl.js.map +1 -0
  334. package/dist/{separator-Gk_WXH-l.js → separator-BNIgG3au.js} +3 -3
  335. package/dist/{separator-Gk_WXH-l.js.map → separator-BNIgG3au.js.map} +1 -1
  336. package/dist/{separator-DO0EbCEm.js → separator-BhtFyo4x.js} +2 -2
  337. package/dist/{separator-DO0EbCEm.js.map → separator-BhtFyo4x.js.map} +1 -1
  338. package/dist/services/actions.js +1 -1
  339. package/dist/{settings-D9f_wdIC.js → settings-DOTOzeZ2.js} +10 -9
  340. package/dist/{settings-D9f_wdIC.js.map → settings-DOTOzeZ2.js.map} +1 -1
  341. package/dist/{sheet-vOUloJ4O.js → sheet-BFhrNehm.js} +11 -11
  342. package/dist/sheet-BFhrNehm.js.map +1 -0
  343. package/dist/{sidebar-CNBKFDRW.js → sidebar-CyR4XKwR.js} +219 -200
  344. package/dist/sidebar-CyR4XKwR.js.map +1 -0
  345. package/dist/{sidebar-C3UKkbC5.js → sidebar-SvGJ0Zwi.js} +63 -58
  346. package/dist/sidebar-SvGJ0Zwi.js.map +1 -0
  347. package/dist/{skeleton-BvRhK8y-.js → skeleton-3F0uhYn3.js} +4 -4
  348. package/dist/{skeleton-BvRhK8y-.js.map → skeleton-3F0uhYn3.js.map} +1 -1
  349. package/dist/{smart-card-B5FcKODh.js → smart-card-DjGVV2xr.js} +206 -199
  350. package/dist/smart-card-DjGVV2xr.js.map +1 -0
  351. package/dist/{spinner-JtlFJ7Nc.js → spinner-Cpf7oRkF.js} +5 -5
  352. package/dist/{spinner-JtlFJ7Nc.js.map → spinner-Cpf7oRkF.js.map} +1 -1
  353. package/dist/{structure-BvW4vG4H.js → structure-CRdqVawd.js} +14 -14
  354. package/dist/{structure-BvW4vG4H.js.map → structure-CRdqVawd.js.map} +1 -1
  355. package/dist/{structure.recipes-DjqnBpwz.js → structure.recipes-Bqhf9oIh.js} +2 -2
  356. package/dist/structure.recipes-Bqhf9oIh.js.map +1 -0
  357. package/dist/style.css +1 -1
  358. package/dist/{surface-recipes-CQfRr-VL.js → surface-recipes-Dd__PD-w.js} +4 -3
  359. package/dist/surface-recipes-Dd__PD-w.js.map +1 -0
  360. package/dist/{table-DnlAJ-xR.js → table-CLtJTxoR.js} +17 -16
  361. package/dist/table-CLtJTxoR.js.map +1 -0
  362. package/dist/table-CcRDZiLP.js +1444 -0
  363. package/dist/table-CcRDZiLP.js.map +1 -0
  364. package/dist/tabs-BNgu7g0u.js +188 -0
  365. package/dist/tabs-BNgu7g0u.js.map +1 -0
  366. package/dist/text-inputs-DsR56TR-.js +330 -0
  367. package/dist/text-inputs-DsR56TR-.js.map +1 -0
  368. package/dist/{text.styles-BwB7vAF2.js → text.styles-Q4sGAIgA.js} +18 -10
  369. package/dist/text.styles-Q4sGAIgA.js.map +1 -0
  370. package/dist/theme.css +77 -115
  371. package/dist/{timelines-CnZ2S_Gr.js → timelines-D1pkt3se.js} +84 -78
  372. package/dist/timelines-D1pkt3se.js.map +1 -0
  373. package/dist/{tree-COD9BGdU.js → tree-BtmYyMZV.js} +8 -8
  374. package/dist/{tree-COD9BGdU.js.map → tree-BtmYyMZV.js.map} +1 -1
  375. package/dist/typography/rich-text.js +1 -1
  376. package/dist/typography-BxQgiZyw.js +96 -0
  377. package/dist/typography-BxQgiZyw.js.map +1 -0
  378. package/dist/typography.js +1 -1
  379. package/dist/{ui-provider-CftIB6TY.js → ui-provider-DRPn3qNl.js} +3 -2
  380. package/dist/ui-provider-DRPn3qNl.js.map +1 -0
  381. package/dist/ui-provider.js +1 -1
  382. package/dist/{upload-DIzw1dx1.js → upload-CDbYw1WN.js} +326 -323
  383. package/dist/upload-CDbYw1WN.js.map +1 -0
  384. package/dist/{upload-queue-xRJ3qDmd.js → upload-queue-CNd_hH_a.js} +25 -25
  385. package/dist/upload-queue-CNd_hH_a.js.map +1 -0
  386. package/dist/usage-card-VyJLUwRr.js +457 -0
  387. package/dist/usage-card-VyJLUwRr.js.map +1 -0
  388. package/dist/utils-BvH9PSmq.js +4275 -0
  389. package/dist/utils-BvH9PSmq.js.map +1 -0
  390. package/dist/value-inputs-D0KCrfVC.js +840 -0
  391. package/dist/value-inputs-D0KCrfVC.js.map +1 -0
  392. package/dist/{workspace-Cbqz4FzN.js → workspace-CcR8r-Nt.js} +115 -122
  393. package/dist/workspace-CcR8r-Nt.js.map +1 -0
  394. package/docs/consumer-skill/SKILL.md +112 -18
  395. package/docs/consumer-skill/examples/analytics.tsx +34 -0
  396. package/docs/consumer-skill/examples/app-layout.tsx +42 -12
  397. package/docs/consumer-skill/examples/detail.tsx +24 -9
  398. package/docs/consumer-skill/examples/manifest.json +27 -1
  399. package/docs/consumer-skill/examples/planning-usage-edit.tsx +29 -0
  400. package/docs/consumer-skill/examples/scoped-directory.tsx +77 -0
  401. package/docs/consumer-skill/examples/website.tsx +56 -0
  402. package/docs/consumer-skill/references/analytics.md +70 -0
  403. package/docs/consumer-skill/references/composition.md +219 -2
  404. package/docs/consumer-skill/references/design-contract.md +37 -10
  405. package/docs/consumer-skill/references/discovery.md +93 -5
  406. package/docs/consumer-skill/references/installation.md +20 -3
  407. package/docs/consumer-skill/references/integration.md +26 -0
  408. package/docs/consumer-skill/references/public-api.json +2416 -388
  409. package/docs/consumer-skill/references/review.md +126 -0
  410. package/docs/consumer-skill/references/theming.md +52 -7
  411. package/docs/consumer-skill/references/tokens.json +177 -9
  412. package/docs/consumer-skill/references/workflows.md +129 -1
  413. package/docs/consumer-skill/scripts/check-composition.mjs +31 -0
  414. package/docs/consumer-skill/scripts/composition-policy.mjs +317 -0
  415. package/docs/consumer-skill/scripts/discovery.mjs +65 -8
  416. package/docs/consumer-skill/scripts/surface-policy.mjs +66 -0
  417. package/package.json +30 -6
  418. package/dist/accordion-BRWh3BM1.js.map +0 -1
  419. package/dist/action-menu-Cx3SdfbN.js.map +0 -1
  420. package/dist/affordance-geometry.generated-DXl-Zb3Z.js +0 -23
  421. package/dist/affordance-geometry.generated-DXl-Zb3Z.js.map +0 -1
  422. package/dist/ai-artifact-DkOArd3-.js.map +0 -1
  423. package/dist/app-shell-BH_bGcE2.js.map +0 -1
  424. package/dist/auth-BDB1V_2q.js +0 -704
  425. package/dist/auth-BDB1V_2q.js.map +0 -1
  426. package/dist/avatar-CsnWaYmt.js.map +0 -1
  427. package/dist/breadcrumbs-DdQ_I5ra.js.map +0 -1
  428. package/dist/button-BS6l5JUw.js.map +0 -1
  429. package/dist/buttons-Co6GavvM.js +0 -674
  430. package/dist/buttons-Co6GavvM.js.map +0 -1
  431. package/dist/chart-DVfcwQu6.js +0 -149
  432. package/dist/chart-DVfcwQu6.js.map +0 -1
  433. package/dist/choice-inputs-CavA-SGV.js +0 -644
  434. package/dist/choice-inputs-CavA-SGV.js.map +0 -1
  435. package/dist/code-block-DIlqzoiD.js.map +0 -1
  436. package/dist/combobox-CHD750do.js.map +0 -1
  437. package/dist/combobox-HDftpzxt.js.map +0 -1
  438. package/dist/command-D0kWBZfd.js.map +0 -1
  439. package/dist/comments-CvYeglMS.js +0 -1132
  440. package/dist/comments-CvYeglMS.js.map +0 -1
  441. package/dist/containers-CPNyNo1_.js.map +0 -1
  442. package/dist/data-display-b3d1TfL4.js.map +0 -1
  443. package/dist/date-picker-DI6kPNof.js.map +0 -1
  444. package/dist/date-pickers-ByP6Cv2z.js +0 -224
  445. package/dist/date-pickers-ByP6Cv2z.js.map +0 -1
  446. package/dist/feedback-a9j9J-9A.js +0 -391
  447. package/dist/feedback-a9j9J-9A.js.map +0 -1
  448. package/dist/field-affordance-recipes-CHdUtn2Z.js +0 -17
  449. package/dist/field-affordance-recipes-CHdUtn2Z.js.map +0 -1
  450. package/dist/field-state-recipes-CBTRt9Bt.js.map +0 -1
  451. package/dist/filters-qtrcv1hf.js.map +0 -1
  452. package/dist/form-field-C6W-y2hR.js.map +0 -1
  453. package/dist/form-sizing-39NohSqn.js.map +0 -1
  454. package/dist/forms-numeric-Y15Bg5Nr.js +0 -867
  455. package/dist/forms-numeric-Y15Bg5Nr.js.map +0 -1
  456. package/dist/header-B8ex54cY.js.map +0 -1
  457. package/dist/http-CLTVJc5I.js.map +0 -1
  458. package/dist/input-DMorJiTI.js +0 -202
  459. package/dist/input-DMorJiTI.js.map +0 -1
  460. package/dist/input-ci9fIgFH.js +0 -20
  461. package/dist/input-ci9fIgFH.js.map +0 -1
  462. package/dist/item-pJ0GsOiJ.js.map +0 -1
  463. package/dist/media-gallery-Ca4YmvBi.js.map +0 -1
  464. package/dist/message-B5-6LeYl.js +0 -108
  465. package/dist/message-B5-6LeYl.js.map +0 -1
  466. package/dist/navigation-BTrEb5u4.js.map +0 -1
  467. package/dist/navigation-DqEITuD2.js.map +0 -1
  468. package/dist/navigation-row-recipes-BFpvGPGE.js.map +0 -1
  469. package/dist/overlays-DBqV0J_V.js +0 -982
  470. package/dist/overlays-DBqV0J_V.js.map +0 -1
  471. package/dist/page-BMBGjJY8.js.map +0 -1
  472. package/dist/page-header-BH41wCyY.js.map +0 -1
  473. package/dist/pagination-C29vvt3I.js.map +0 -1
  474. package/dist/popover-TInGXsjg.js.map +0 -1
  475. package/dist/popover.recipes-zgBhMlUu.js.map +0 -1
  476. package/dist/primitives-DKPOGVpj.js.map +0 -1
  477. package/dist/rich-text-editor-BZSJchAF.js +0 -575
  478. package/dist/rich-text-editor-BZSJchAF.js.map +0 -1
  479. package/dist/rich-text-editor.recipes-DxvOE0Lp.js.map +0 -1
  480. package/dist/scroll-area-BheMQ270.js.map +0 -1
  481. package/dist/select-B2mb-qN2.js +0 -108
  482. package/dist/select-B2mb-qN2.js.map +0 -1
  483. package/dist/sheet-vOUloJ4O.js.map +0 -1
  484. package/dist/sidebar-C3UKkbC5.js.map +0 -1
  485. package/dist/sidebar-CNBKFDRW.js.map +0 -1
  486. package/dist/smart-card-B5FcKODh.js.map +0 -1
  487. package/dist/structure.recipes-DjqnBpwz.js.map +0 -1
  488. package/dist/surface-recipes-CQfRr-VL.js.map +0 -1
  489. package/dist/table-DnlAJ-xR.js.map +0 -1
  490. package/dist/table-ghtAQ-JJ.js +0 -1424
  491. package/dist/table-ghtAQ-JJ.js.map +0 -1
  492. package/dist/tabs-DY09eoZg.js +0 -187
  493. package/dist/tabs-DY09eoZg.js.map +0 -1
  494. package/dist/text-inputs-BhOcedTo.js +0 -331
  495. package/dist/text-inputs-BhOcedTo.js.map +0 -1
  496. package/dist/text.styles-BwB7vAF2.js.map +0 -1
  497. package/dist/timelines-CnZ2S_Gr.js.map +0 -1
  498. package/dist/typography-Cv8MT-82.js +0 -96
  499. package/dist/typography-Cv8MT-82.js.map +0 -1
  500. package/dist/ui-provider-CftIB6TY.js.map +0 -1
  501. package/dist/upload-DIzw1dx1.js.map +0 -1
  502. package/dist/upload-queue-xRJ3qDmd.js.map +0 -1
  503. package/dist/utils-C2EKeIw3.js +0 -72
  504. package/dist/utils-C2EKeIw3.js.map +0 -1
  505. package/dist/value-inputs-Co1fu-xv.js +0 -824
  506. package/dist/value-inputs-Co1fu-xv.js.map +0 -1
  507. package/dist/workspace-Cbqz4FzN.js.map +0 -1
@@ -1,25 +1,25 @@
1
1
  "use client";
2
2
  import { useStrings as e } from "../lib/strings.js";
3
- import { t } from "../utils-C2EKeIw3.js";
4
- import { n } from "../buttons-Co6GavvM.js";
5
- import { a as r } from "../typography-Cv8MT-82.js";
6
- import { i, t as a } from "../structure-BvW4vG4H.js";
7
- import { _ as o, f as s, m as c, t as l } from "../smart-card-B5FcKODh.js";
8
- import { n as u, t as d } from "../feedback-a9j9J-9A.js";
9
- import { n as f, t as p } from "../action-menu-Cx3SdfbN.js";
10
- import { n as m, r as h, t as g } from "../overlays-DBqV0J_V.js";
3
+ import { t } from "../utils-BvH9PSmq.js";
4
+ import { a as n } from "../typography-BxQgiZyw.js";
5
+ import { t as r } from "../button-BZDasD04.js";
6
+ import { i, t as a } from "../structure-CRdqVawd.js";
7
+ import { h as o, p as s, t as c, v as l } from "../smart-card-DjGVV2xr.js";
8
+ import { n as u, t as d } from "../feedback-CJkUAapr.js";
9
+ import { n as f, t as p } from "../action-menu-Drxw_vJk.js";
10
+ import { n as m, r as h, t as g } from "../overlays-DUbs1KEi.js";
11
11
  import { n as _ } from "../content-typography-CnwgMJ37.js";
12
- import { t as v } from "../accordion-BRWh3BM1.js";
13
- import { t as y } from "../input-DMorJiTI.js";
14
- import { a as b, c as x, d as S, o as C, s as w } from "../text-inputs-BhOcedTo.js";
15
- import { t as T } from "../scroll-area-BheMQ270.js";
16
- import { t as E } from "../form-field-C6W-y2hR.js";
17
- import { l as D } from "../choice-inputs-CavA-SGV.js";
18
- import { i as O, n as k, r as ee, t as te } from "../tabs-DY09eoZg.js";
19
- import { t as ne } from "../popover-menu-BzqXqE72.js";
20
- import { n as A, t as j } from "../rich-text-editor.recipes-DxvOE0Lp.js";
12
+ import { t as v } from "../accordion-BRTcsp8J.js";
13
+ import { t as y } from "../input-SX9V0AL3.js";
14
+ import { a as b, c as x, d as S, o as C, s as w } from "../text-inputs-DsR56TR-.js";
15
+ import { c as T } from "../choice-inputs-Mk3iWbhr.js";
16
+ import { t as ee } from "../scroll-area-D-pIhEKl.js";
17
+ import { t as E } from "../form-field-CZwrkP7m.js";
18
+ import { i as D, n as O, r as te, t as ne } from "../tabs-BNgu7g0u.js";
19
+ import { t as k } from "../popover-menu-B4PoWhRl.js";
20
+ import { n as A, t as j } from "../rich-text-editor.recipes-B72Nfuze.js";
21
21
  import { t as M } from "../rich-text-editor.strings-BpnIQgMl.js";
22
- import { a as N, c as P, i as F, l as I, n as L, o as R, r as z, s as B, t as V, u as H } from "../http-CLTVJc5I.js";
22
+ import { a as N, c as P, i as F, l as I, n as L, o as R, r as z, s as B, t as V, u as H } from "../http-CdEIHyQf.js";
23
23
  import { useEffect as U, useId as W, useImperativeHandle as G, useMemo as re, useRef as K, useState as q } from "react";
24
24
  import { Fragment as J, jsx as Y, jsxs as X } from "react/jsx-runtime";
25
25
  import { Bold as ie, Italic as ae, Link as oe, List as se, ListOrdered as ce, Plus as Z, Redo2 as le, Send as ue, Undo2 as de, X as fe } from "lucide-react";
@@ -80,11 +80,11 @@ function be(t) {
80
80
  return e;
81
81
  }, [t.placeholders?.sets, n]), C = re(() => [...t.templates?.items ?? [], ...y], [t.templates?.items, y]), w = K(C);
82
82
  if (w.current = C, new Set(C.map((e) => e.id)).size !== C.length) throw Error(n.duplicateTemplate);
83
- let T = () => s.current.props.value ?? c.current, E = (e) => C.find((t) => t.id === e.templateId), D = K(null), O = (e = T()) => {
84
- let t = s.current.props.context, n = E(e), r = s.current.strings, i = D.current;
83
+ let T = () => s.current.props.value ?? c.current, ee = (e) => C.find((t) => t.id === e.templateId), E = K(null), D = (e = T()) => {
84
+ let t = s.current.props.context, n = ee(e), r = s.current.strings, i = E.current;
85
85
  if (i && i.draft === e && i.context === t && i.definitions === S && i.template === n && i.strings === r) return i.result;
86
86
  let a = L(e, t, S, n, r);
87
- return D.current = {
87
+ return E.current = {
88
88
  draft: e,
89
89
  context: t,
90
90
  definitions: S,
@@ -92,7 +92,7 @@ function be(t) {
92
92
  strings: r,
93
93
  result: a
94
94
  }, a;
95
- }, k = () => {
95
+ }, O = () => {
96
96
  let { props: e, strings: t } = s.current, n = [];
97
97
  for (let r of [
98
98
  "to",
@@ -106,13 +106,13 @@ function be(t) {
106
106
  field: "placeholders",
107
107
  message: t.dataUnavailable
108
108
  }), n;
109
- }, ee = k().length > 0, te = (e = T()) => structuredClone([...k(), ...O(e).issues]), ne = () => {
110
- let e = T(), t = [...O(e).rendered?.unresolved ?? []];
109
+ }, te = O().length > 0, ne = (e = T()) => structuredClone([...O(), ...D(e).issues]), k = () => {
110
+ let e = T(), t = [...D(e).rendered?.unresolved ?? []];
111
111
  return {
112
112
  draft: structuredClone(e),
113
113
  dirty: JSON.stringify(e) !== JSON.stringify(r.current),
114
114
  busy: u.current !== null,
115
- issues: te(e),
115
+ issues: ne(e),
116
116
  unresolvedPlaceholders: t
117
117
  };
118
118
  }, A = (e) => {
@@ -181,8 +181,8 @@ function be(t) {
181
181
  discard: () => R.current.discard()
182
182
  };
183
183
  let B = z.current, V = async () => {
184
- if (k().length) throw Error(s.current.strings.dataUnavailable);
185
- let e = O();
184
+ if (O().length) throw Error(s.current.strings.dataUnavailable);
185
+ let e = D();
186
186
  if (e.issues.length || !e.rendered) throw Error(e.issues.map((e) => e.message).join(" "));
187
187
  return structuredClone(e.rendered.email);
188
188
  }, W = (e = !1) => N("send", async () => {
@@ -200,7 +200,7 @@ function be(t) {
200
200
  await e.onDiscard?.(B), x.current && T() === t && (j(() => r.current, "api", !0), v(!1), g(n.discarded), e.onClose?.());
201
201
  }, e);
202
202
  R.current = {
203
- getState: ne,
203
+ getState: k,
204
204
  update: (e) => j(e),
205
205
  setSubject: (e) => j((t) => ({
206
206
  ...t,
@@ -253,7 +253,7 @@ function be(t) {
253
253
  if (!r) throw Error(n.unknownTemplate(e));
254
254
  F(r, t);
255
255
  },
256
- validate: () => te(),
256
+ validate: () => ne(),
257
257
  prepare: V,
258
258
  send: () => W(),
259
259
  discard: () => J()
@@ -269,13 +269,13 @@ function be(t) {
269
269
  if (w.current.some((e) => e.id === t.id)) throw Error(n.duplicateTemplate);
270
270
  b((e) => [...e, structuredClone(t)]), T() === e && F(t, {}, !0);
271
271
  }
272
- }), { rendered: ie, renderError: ae } = O(o);
272
+ }), { rendered: ie, renderError: ae } = D(o);
273
273
  return {
274
274
  api: B,
275
275
  draft: o,
276
276
  strings: n,
277
277
  busy: d,
278
- dataPending: ee,
278
+ dataPending: te,
279
279
  error: p,
280
280
  notice: h,
281
281
  attempted: _,
@@ -285,7 +285,7 @@ function be(t) {
285
285
  templates: C,
286
286
  values: ie?.email.resolvedPlaceholders ?? {},
287
287
  editorRef: l,
288
- state: ne(),
288
+ state: k(),
289
289
  report: A,
290
290
  runAction: Y,
291
291
  importTemplate: X,
@@ -356,18 +356,16 @@ function xe({ recipient: e, field: t, index: n, options: r, busy: i, strings: a,
356
356
  });
357
357
  }
358
358
  function Se({ field: e, value: t, options: n = {}, busy: r, strings: i, onChange: o, error: s, actions: c, report: l }) {
359
- let [u, d] = q(!1), [f, p] = q(""), m = W(), h = s ? `${m}-error` : void 0, g = K(null), _ = K(t);
360
- _.current = t;
361
- let v = n.mode !== "disabled" && n.allowAdd !== !1 && (n.mode !== "readonly" || n.allowAdd === !0), y = u || t.length === 0, S = Q(n), T = () => {
362
- if (r || !v || !y || S) return;
359
+ let [u, d] = q(!1), [f, p] = q(""), m = W(), h = s ? `${m}-error` : void 0, g = K(null), _ = n.mode !== "disabled" && n.allowAdd !== !1 && (n.mode !== "readonly" || n.allowAdd === !0), v = u || t.length === 0, y = Q(n), S = () => {
360
+ if (r || !_ || !v || y) return;
363
361
  let e = z(f);
364
- f.trim() && !_.current.some((t) => t.email.toLowerCase() === e.email.toLowerCase()) && o([..._.current, e]), p(""), d(!1);
362
+ f.trim() && !t.some((t) => t.email.toLowerCase() === e.email.toLowerCase()) && o([...t, e]), p(""), d(!1);
365
363
  };
366
364
  U(() => {
367
365
  u && g.current?.focus();
368
366
  }, [u]);
369
- let D = () => {
370
- y && T(), d(!0), g.current?.focus();
367
+ let T = () => {
368
+ v && S(), d(!0), g.current?.focus();
371
369
  };
372
370
  return /* @__PURE__ */ Y(E, {
373
371
  label: i[e],
@@ -378,7 +376,7 @@ function Se({ field: e, value: t, options: n = {}, busy: r, strings: i, onChange
378
376
  children: /* @__PURE__ */ X(a, {
379
377
  id: `${m}-group`,
380
378
  gap: "sm",
381
- children: [S ? /* @__PURE__ */ Y(ye, {
379
+ children: [y ? /* @__PURE__ */ Y(ye, {
382
380
  state: n,
383
381
  label: i.loadingRecipients(i[e]),
384
382
  retryLabel: i.retry,
@@ -394,8 +392,8 @@ function Se({ field: e, value: t, options: n = {}, busy: r, strings: i, onChange
394
392
  strings: i,
395
393
  change: (e) => o(t.map((t, n) => n === s ? e : t)),
396
394
  remove: () => o(t.filter((e, t) => t !== s)),
397
- add: v && !y && s === t.length - 1 ? D : void 0
398
- }, a.id ?? s)), y && /* @__PURE__ */ X(b, {
395
+ add: _ && !v && s === t.length - 1 ? T : void 0
396
+ }, a.id ?? s)), v && /* @__PURE__ */ X(b, {
399
397
  className: "min-w-0 w-full",
400
398
  children: [/* @__PURE__ */ Y(x, {
401
399
  id: `${m}-new`,
@@ -407,13 +405,13 @@ function Se({ field: e, value: t, options: n = {}, busy: r, strings: i, onChange
407
405
  placeholder: i.recipientPlaceholder,
408
406
  value: f,
409
407
  disabled: r || n.mode === "disabled",
410
- readOnly: !v,
408
+ readOnly: !_,
411
409
  onChange: (e) => p(e.target.value),
412
- onBlur: T,
410
+ onBlur: S,
413
411
  onKeyDown: (e) => {
414
- e.key === "Enter" && (e.preventDefault(), T()), e.key === "Escape" && (e.preventDefault(), p(""), d(!1));
412
+ e.key === "Enter" && (e.preventDefault(), S()), e.key === "Escape" && (e.preventDefault(), p(""), d(!1));
415
413
  }
416
- }), v && /* @__PURE__ */ Y(C, {
414
+ }), _ && /* @__PURE__ */ Y(C, {
417
415
  align: "inline-end",
418
416
  children: /* @__PURE__ */ Y(w, {
419
417
  type: "button",
@@ -423,7 +421,7 @@ function Se({ field: e, value: t, options: n = {}, busy: r, strings: i, onChange
423
421
  "aria-label": i.addRecipient(i[e]),
424
422
  title: i.addRecipient(i[e]),
425
423
  onMouseDown: (e) => e.preventDefault(),
426
- onClick: D,
424
+ onClick: T,
427
425
  children: /* @__PURE__ */ Y(Z, { className: "size-icon" })
428
426
  })
429
427
  })]
@@ -438,13 +436,13 @@ function Se({ field: e, value: t, options: n = {}, busy: r, strings: i, onChange
438
436
  }
439
437
  //#endregion
440
438
  //#region src/components/features/email-composer/partials/variables.tsx
441
- function Ce({ definitions: e, values: t, draft: r, api: o, strings: s, busy: c, editable: l }) {
439
+ function Ce({ definitions: e, values: t, draft: n, api: o, strings: s, busy: c, editable: l }) {
442
440
  let u = W();
443
441
  return /* @__PURE__ */ Y(i, {
444
442
  minColumnWidth: "sm",
445
443
  gap: "md",
446
444
  children: Object.keys(e).map((i) => {
447
- let d = e[i], f = Object.hasOwn(r.placeholderOverrides, i), p = `${u}-email-variable-${i}`, m = {
445
+ let d = e[i], f = Object.hasOwn(n.placeholderOverrides, i), p = `${u}-email-variable-${i}`, m = {
448
446
  id: p,
449
447
  value: String(t[i] ?? ""),
450
448
  disabled: c,
@@ -452,7 +450,7 @@ function Ce({ definitions: e, values: t, draft: r, api: o, strings: s, busy: c,
452
450
  }, h = d.input === "textarea" ? /* @__PURE__ */ Y(S, {
453
451
  ...m,
454
452
  onChange: (e) => o.setPlaceholder(i, e.target.value)
455
- }) : d.input === "select" ? /* @__PURE__ */ Y(D, {
453
+ }) : d.input === "select" ? /* @__PURE__ */ Y(T, {
456
454
  ...m,
457
455
  placeholder: s.choose,
458
456
  options: [...d.options ?? []],
@@ -478,7 +476,7 @@ function Ce({ definitions: e, values: t, draft: r, api: o, strings: s, busy: c,
478
476
  className: "min-w-0 flex-1",
479
477
  children: h
480
478
  }),
481
- /* @__PURE__ */ Y(n, {
479
+ /* @__PURE__ */ Y(r, {
482
480
  type: "button",
483
481
  iconOnly: !0,
484
482
  size: "sm",
@@ -489,7 +487,7 @@ function Ce({ definitions: e, values: t, draft: r, api: o, strings: s, busy: c,
489
487
  onClick: () => o.insertPlaceholder(i),
490
488
  children: /* @__PURE__ */ Y(Z, { className: "size-icon" })
491
489
  }),
492
- f && /* @__PURE__ */ Y(n, {
490
+ f && /* @__PURE__ */ Y(r, {
493
491
  type: "button",
494
492
  size: "sm",
495
493
  buttonStyle: "ghost",
@@ -527,7 +525,7 @@ var we = me.create({
527
525
  ],
528
526
  renderText: ({ node: e }) => `{{${e.attrs.key}}}`
529
527
  }), $ = [ve.configure({ link: { openOnClick: !1 } }), we];
530
- function Te({ body: n, disabled: r, onChange: i, adapterRef: o, strings: l }) {
528
+ function Te({ body: n, disabled: r, onChange: i, adapterRef: c, strings: l }) {
531
529
  let u = K(i);
532
530
  u.current = i;
533
531
  let d = K(!1), [f, p] = q(!1), [m, g] = q(""), [v, b] = q(""), x = K({
@@ -568,7 +566,7 @@ function Te({ body: n, disabled: r, onChange: i, adapterRef: o, strings: l }) {
568
566
  n.kind
569
567
  ]), U(() => {
570
568
  (r || n.kind === "html") && p(!1);
571
- }, [r, n.kind]), G(o, () => {
569
+ }, [r, n.kind]), G(c, () => {
572
570
  let e = (e) => {
573
571
  if (!C) throw Error(l.editorNotReady);
574
572
  d.current = !0;
@@ -725,7 +723,7 @@ function Te({ body: n, disabled: r, onChange: i, adapterRef: o, strings: l }) {
725
723
  })
726
724
  }), v && /* @__PURE__ */ Y(s, {
727
725
  tone: "destructive",
728
- children: /* @__PURE__ */ Y(c, { children: v })
726
+ children: /* @__PURE__ */ Y(o, { children: v })
729
727
  })]
730
728
  })
731
729
  })
@@ -734,22 +732,22 @@ function Te({ body: n, disabled: r, onChange: i, adapterRef: o, strings: l }) {
734
732
  }
735
733
  //#endregion
736
734
  //#region src/components/features/email-composer/partials/html-preview.tsx
737
- function Ee({ html: e, subject: t, strings: n }) {
735
+ function Ee({ html: e, subject: t, strings: r }) {
738
736
  return /* @__PURE__ */ X(a, {
739
737
  gap: "normal",
740
738
  className: "min-w-0",
741
- children: [/* @__PURE__ */ X(r, {
739
+ children: [/* @__PURE__ */ X(n, {
742
740
  type: "secondary",
743
741
  children: [
744
- n.subject,
742
+ r.subject,
745
743
  ": ",
746
744
  t
747
745
  ]
748
- }), /* @__PURE__ */ Y(l, {
746
+ }), /* @__PURE__ */ Y(c, {
749
747
  surface: "card",
750
748
  padding: "none",
751
749
  children: /* @__PURE__ */ Y("iframe", {
752
- title: n.previewLabel,
750
+ title: r.previewLabel,
753
751
  sandbox: "",
754
752
  referrerPolicy: "no-referrer",
755
753
  className: "h-80 w-full border-0",
@@ -761,13 +759,13 @@ function Ee({ html: e, subject: t, strings: n }) {
761
759
  //#endregion
762
760
  //#region src/components/features/email-composer/email-composer.tsx
763
761
  function De(e) {
764
- let r = be(e), { api: i, draft: u, strings: d, busy: _, state: b } = r, [x, S] = q("editor"), [C, w] = q(e.placeholders?.showEditor ?? !1), [D, A] = q(!1), [j, M] = q(!1), [N, P] = q(!1), F = W(), I = x === "preview" || u.body.kind === "html", L = (t) => (e.actions ?? []).filter((e) => (e.position ?? "toolbar") === t && (e.visible?.(b) ?? !0)).map((e) => ({
762
+ let n = be(e), { api: i, draft: u, strings: d, busy: _, state: b } = n, [x, S] = q("editor"), [C, w] = q(e.placeholders?.showEditor ?? !1), [T, A] = q(!1), [j, M] = q(!1), [N, P] = q(!1), F = W(), I = x === "preview" || u.body.kind === "html", L = (t) => (e.actions ?? []).filter((e) => (e.position ?? "toolbar") === t && (e.visible?.(b) ?? !0)).map((e) => ({
765
763
  id: e.id,
766
764
  label: e.label,
767
765
  icon: e.icon,
768
766
  disabled: _ || e.disabled?.(b),
769
767
  onClick: () => {
770
- r.runAction(e);
768
+ n.runAction(e);
771
769
  },
772
770
  buttonStyle: "ghost",
773
771
  tone: "secondary"
@@ -786,7 +784,7 @@ function De(e) {
786
784
  children: [/* @__PURE__ */ X(a, {
787
785
  direction: "horizontal",
788
786
  gap: "sm",
789
- children: [e.buttons?.discard !== !1 && /* @__PURE__ */ Y(n, {
787
+ children: [e.buttons?.discard !== !1 && /* @__PURE__ */ Y(r, {
790
788
  type: "button",
791
789
  tone: "secondary",
792
790
  buttonStyle: "ghost",
@@ -807,10 +805,10 @@ function De(e) {
807
805
  srText: d.more,
808
806
  buttonProps: { disabled: _ }
809
807
  }),
810
- e.buttons?.send !== !1 && /* @__PURE__ */ X(n, {
808
+ e.buttons?.send !== !1 && /* @__PURE__ */ X(r, {
811
809
  type: "button",
812
810
  tone: "primary",
813
- disabled: _ || r.dataPending,
811
+ disabled: _ || n.dataPending,
814
812
  loading: _,
815
813
  strings: { loading: d.working },
816
814
  onClick: () => {
@@ -820,7 +818,7 @@ function De(e) {
820
818
  })
821
819
  ]
822
820
  })]
823
- }), z = (e) => r.attempted ? b.issues.find((t) => t.field === e)?.message : void 0, B = /* @__PURE__ */ X(a, {
821
+ }), z = (e) => n.attempted ? b.issues.find((t) => t.field === e)?.message : void 0, B = /* @__PURE__ */ X(a, {
824
822
  gap: "lg",
825
823
  className: "email-composer--body min-w-0",
826
824
  children: [
@@ -833,16 +831,16 @@ function De(e) {
833
831
  "to",
834
832
  "cc",
835
833
  "bcc"
836
- ].filter((t) => t === "to" || t === "cc" && (D || u.cc.length || Q(e.recipients?.cc)) || t === "bcc" && (j || u.bcc.length || Q(e.recipients?.bcc))).map((t) => /* @__PURE__ */ Y(Se, {
834
+ ].filter((t) => t === "to" || t === "cc" && (T || u.cc.length || Q(e.recipients?.cc)) || t === "bcc" && (j || u.bcc.length || Q(e.recipients?.bcc))).map((t) => /* @__PURE__ */ Y(Se, {
837
835
  field: t,
838
836
  value: u[t],
839
837
  options: e.recipients?.[t],
840
838
  strings: d,
841
839
  busy: _,
842
- report: r.report,
840
+ report: n.report,
843
841
  error: z(t),
844
- onChange: (e) => r.changeRecipients(t, e),
845
- actions: t === "to" ? /* @__PURE__ */ X(J, { children: [!D && !u.cc.length && /* @__PURE__ */ Y(n, {
842
+ onChange: (e) => n.changeRecipients(t, e),
843
+ actions: t === "to" ? /* @__PURE__ */ X(J, { children: [!T && !u.cc.length && /* @__PURE__ */ Y(r, {
846
844
  type: "button",
847
845
  size: "sm",
848
846
  buttonStyle: "ghost",
@@ -850,7 +848,7 @@ function De(e) {
850
848
  disabled: _,
851
849
  onClick: () => A(!0),
852
850
  children: d.cc
853
- }), !j && !u.bcc.length && /* @__PURE__ */ Y(n, {
851
+ }), !j && !u.bcc.length && /* @__PURE__ */ Y(r, {
854
852
  type: "button",
855
853
  size: "sm",
856
854
  buttonStyle: "ghost",
@@ -873,37 +871,37 @@ function De(e) {
873
871
  disabled: _,
874
872
  invalid: !!z("subject"),
875
873
  "aria-describedby": z("subject") ? `${F}-subject-error` : void 0,
876
- onChange: (e) => r.changeSubject(e.target.value)
874
+ onChange: (e) => n.changeSubject(e.target.value)
877
875
  })
878
876
  })]
879
877
  }),
880
- /* @__PURE__ */ Y(te, {
878
+ /* @__PURE__ */ Y(ne, {
881
879
  value: I ? "preview" : "editor",
882
880
  onValueChange: (e) => {
883
881
  e && S(e);
884
882
  },
885
- children: /* @__PURE__ */ X(l, {
883
+ children: /* @__PURE__ */ X(c, {
886
884
  surface: "flat",
887
885
  padding: "none",
888
886
  contentGap: "md",
889
887
  title: d.body,
890
- headerAction: /* @__PURE__ */ X(ee, { children: [/* @__PURE__ */ Y(O, {
888
+ headerAction: /* @__PURE__ */ X(te, { children: [/* @__PURE__ */ Y(D, {
891
889
  value: "editor",
892
890
  disabled: u.body.kind === "html",
893
891
  children: d.editor
894
- }), /* @__PURE__ */ Y(O, {
892
+ }), /* @__PURE__ */ Y(D, {
895
893
  value: "preview",
896
894
  children: d.preview
897
895
  })] }),
898
896
  children: [
899
- (!!e.templates || !!r.templates.length || L("toolbar").length > 0) && /* @__PURE__ */ X(a, {
897
+ (!!e.templates || !!n.templates.length || L("toolbar").length > 0) && /* @__PURE__ */ X(a, {
900
898
  direction: "horizontal",
901
899
  gap: "sm",
902
900
  align: "center",
903
901
  className: "email-composer--message-actions",
904
902
  children: [
905
- (e.templates || !!r.templates.length) && /* @__PURE__ */ Y(ne, {
906
- trigger: /* @__PURE__ */ Y(n, {
903
+ (e.templates || !!n.templates.length) && /* @__PURE__ */ Y(k, {
904
+ trigger: /* @__PURE__ */ Y(r, {
907
905
  type: "button",
908
906
  tone: "secondary",
909
907
  buttonStyle: "outline",
@@ -911,7 +909,7 @@ function De(e) {
911
909
  disabled: _,
912
910
  children: d.templates
913
911
  }),
914
- items: r.templates.map((e) => ({
912
+ items: n.templates.map((e) => ({
915
913
  value: e.id,
916
914
  label: e.name,
917
915
  description: e.description ?? e.category,
@@ -921,13 +919,13 @@ function De(e) {
921
919
  try {
922
920
  i.applyTemplate(e.value);
923
921
  } catch (e) {
924
- r.report(e);
922
+ n.report(e);
925
923
  }
926
924
  },
927
925
  loading: e.templates?.loading,
928
926
  error: e.templates?.error,
929
927
  onRetry: e.templates?.onRetry ? () => {
930
- Promise.resolve().then(e.templates.onRetry).catch(r.report);
928
+ Promise.resolve().then(e.templates.onRetry).catch(n.report);
931
929
  } : void 0,
932
930
  onOpenChange: e.templates?.onOpenChange,
933
931
  strings: {
@@ -937,14 +935,14 @@ function De(e) {
937
935
  retry: d.retry
938
936
  }
939
937
  }),
940
- e.templates?.allowImport && e.templates.onImport && /* @__PURE__ */ Y(n, {
938
+ e.templates?.allowImport && e.templates.onImport && /* @__PURE__ */ Y(r, {
941
939
  type: "button",
942
940
  tone: "secondary",
943
941
  buttonStyle: "ghost",
944
942
  size: "sm",
945
943
  disabled: _,
946
944
  onClick: () => {
947
- r.importTemplate();
945
+ n.importTemplate();
948
946
  },
949
947
  children: d.importTemplate
950
948
  }),
@@ -954,29 +952,29 @@ function De(e) {
954
952
  })
955
953
  ]
956
954
  }),
957
- /* @__PURE__ */ Y(k, {
955
+ /* @__PURE__ */ Y(O, {
958
956
  value: "editor",
959
957
  keepMounted: !0,
960
958
  children: /* @__PURE__ */ Y(Te, {
961
959
  body: u.body,
962
960
  disabled: _ || I,
963
- onChange: r.changeBody,
964
- adapterRef: r.editorRef,
961
+ onChange: n.changeBody,
962
+ adapterRef: n.editorRef,
965
963
  strings: d
966
964
  })
967
965
  }),
968
- /* @__PURE__ */ Y(k, {
966
+ /* @__PURE__ */ Y(O, {
969
967
  value: "preview",
970
- children: r.rendered && /* @__PURE__ */ Y(Ee, {
971
- html: r.rendered.email.html,
972
- subject: r.rendered.email.subject,
968
+ children: n.rendered && /* @__PURE__ */ Y(Ee, {
969
+ html: n.rendered.email.html,
970
+ subject: n.rendered.email.subject,
973
971
  strings: d
974
972
  })
975
973
  })
976
974
  ]
977
975
  })
978
976
  }),
979
- (!!Object.keys(r.definitions).length || Q(e.placeholders)) && /* @__PURE__ */ Y(v, {
977
+ (!!Object.keys(n.definitions).length || Q(e.placeholders)) && /* @__PURE__ */ Y(v, {
980
978
  value: C ? ["variables"] : [],
981
979
  onValueChange: (e) => w(e.includes("variables")),
982
980
  items: [{
@@ -987,10 +985,10 @@ function De(e) {
987
985
  state: e.placeholders,
988
986
  label: d.loadingVariables,
989
987
  retryLabel: d.retry,
990
- report: r.report
988
+ report: n.report
991
989
  }) : /* @__PURE__ */ Y(Ce, {
992
- definitions: r.definitions,
993
- values: r.values,
990
+ definitions: n.definitions,
991
+ values: n.values,
994
992
  draft: u,
995
993
  api: i,
996
994
  strings: d,
@@ -999,7 +997,7 @@ function De(e) {
999
997
  })
1000
998
  }]
1001
999
  }),
1002
- u.body.kind === "html" && /* @__PURE__ */ Y(n, {
1000
+ u.body.kind === "html" && /* @__PURE__ */ Y(r, {
1003
1001
  type: "button",
1004
1002
  tone: "secondary",
1005
1003
  buttonStyle: "outline",
@@ -1007,18 +1005,18 @@ function De(e) {
1007
1005
  onClick: () => P(!0),
1008
1006
  children: d.convert
1009
1007
  }),
1010
- (r.error || !r.dataPending && r.renderError) && /* @__PURE__ */ X(s, {
1008
+ (n.error || !n.dataPending && n.renderError) && /* @__PURE__ */ X(s, {
1011
1009
  tone: "destructive",
1012
- children: [/* @__PURE__ */ Y(o, { children: d.errorTitle }), /* @__PURE__ */ Y(c, { children: r.error || r.renderError })]
1010
+ children: [/* @__PURE__ */ Y(l, { children: d.errorTitle }), /* @__PURE__ */ Y(o, { children: n.error || n.renderError })]
1013
1011
  }),
1014
- r.notice && /* @__PURE__ */ Y(s, {
1012
+ n.notice && /* @__PURE__ */ Y(s, {
1015
1013
  tone: "success",
1016
1014
  role: "status",
1017
- children: /* @__PURE__ */ Y(c, { children: r.notice })
1015
+ children: /* @__PURE__ */ Y(o, { children: n.notice })
1018
1016
  }),
1019
1017
  e.children?.(i)
1020
1018
  ]
1021
- }), V = e.title ?? d.title, H = e.onClose ? /* @__PURE__ */ Y(n, {
1019
+ }), V = e.title ?? d.title, H = e.onClose ? /* @__PURE__ */ Y(r, {
1022
1020
  type: "button",
1023
1021
  iconOnly: !0,
1024
1022
  tone: "secondary",
@@ -1058,12 +1056,13 @@ function De(e) {
1058
1056
  children: B
1059
1057
  });
1060
1058
  } else {
1061
- let t = /* @__PURE__ */ Y(l, {
1059
+ let t = /* @__PURE__ */ Y(c, {
1062
1060
  className: G,
1063
1061
  surface: "card",
1064
1062
  title: V,
1065
1063
  description: e.description,
1066
1064
  headerAction: H,
1065
+ headerClassName: e.position === "floating" && H ? "flex-nowrap [&>.card--header-start]:basis-0 [&>.card--header-end]:shrink-0" : void 0,
1067
1066
  headerDivider: !0,
1068
1067
  footerDivider: !0,
1069
1068
  footerSlot: R,
@@ -1071,7 +1070,7 @@ function De(e) {
1071
1070
  });
1072
1071
  U = e.position === "floating" ? /* @__PURE__ */ Y("div", {
1073
1072
  className: "fixed bottom-space-md end-space-md z-40 w-[min(42rem,calc(100vw-2rem))]",
1074
- children: /* @__PURE__ */ Y(T, {
1073
+ children: /* @__PURE__ */ Y(ee, {
1075
1074
  className: "max-h-[calc(100dvh-2rem)]",
1076
1075
  viewportClassName: "max-h-[calc(100dvh-2rem)]",
1077
1076
  children: t
@@ -1089,7 +1088,7 @@ function De(e) {
1089
1088
  close: d.closeConversion
1090
1089
  },
1091
1090
  onConfirm: () => {
1092
- !_ && r.editorRef.current && (i.setBody(r.editorRef.current.convert(u.body)), S("editor"));
1091
+ !_ && n.editorRef.current && (i.setBody(n.editorRef.current.convert(u.body)), S("editor"));
1093
1092
  }
1094
1093
  })] });
1095
1094
  }