themelia-react-ui 1.0.2 → 2.0.1

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 (748) hide show
  1. package/CHANGELOG.md +632 -1
  2. package/README.md +31 -13
  3. package/dist/accordion-B6a3vVgA.js +207 -0
  4. package/dist/accordion-B6a3vVgA.js.map +1 -0
  5. package/dist/action-menu-TzCoSlwL.js +280 -0
  6. package/dist/action-menu-TzCoSlwL.js.map +1 -0
  7. package/dist/{affordance-geometry.generated-CL84ZN9A.js → affordance-geometry.generated-B5iu-Mkr.js} +9 -3
  8. package/dist/affordance-geometry.generated-B5iu-Mkr.js.map +1 -0
  9. package/dist/{ai-artifact-DLVdK0Py.js → ai-artifact-BMJdv-6q.js} +389 -391
  10. package/dist/ai-artifact-BMJdv-6q.js.map +1 -0
  11. package/dist/{app-shell-C_fKpljx.js → app-shell-ZK5RWdo6.js} +4 -4
  12. package/dist/{app-shell-C_fKpljx.js.map → app-shell-ZK5RWdo6.js.map} +1 -1
  13. package/dist/attachment-BtfhGm8i.js +245 -0
  14. package/dist/attachment-BtfhGm8i.js.map +1 -0
  15. package/dist/{auth-CAQcasMV.js → auth-CYxKfo69.js} +239 -237
  16. package/dist/auth-CYxKfo69.js.map +1 -0
  17. package/dist/{avatar-Bu2HhitA.js → avatar-BBnEJIx8.js} +71 -68
  18. package/dist/avatar-BBnEJIx8.js.map +1 -0
  19. package/dist/badge-MrKVNzW9.js +93 -0
  20. package/dist/badge-MrKVNzW9.js.map +1 -0
  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/batch-action-bar.js +3 -0
  27. package/dist/base/buttons.js +2 -3
  28. package/dist/base/cards.js +2 -2
  29. package/dist/base/carousel.js +19 -19
  30. package/dist/base/carousel.js.map +1 -1
  31. package/dist/base/cascader.js +234 -224
  32. package/dist/base/cascader.js.map +1 -1
  33. package/dist/base/chart.js +1 -1
  34. package/dist/base/choice-inputs.js +3 -3
  35. package/dist/base/code-block.js +1 -1
  36. package/dist/base/combobox.js +1 -1
  37. package/dist/base/command.js +1 -1
  38. package/dist/base/copyable.js +1 -1
  39. package/dist/base/date-pickers.js +2 -2
  40. package/dist/base/display.js +7 -7
  41. package/dist/base/feedback.js +3 -3
  42. package/dist/base/forms-numeric.js +1 -1
  43. package/dist/base/forms.js +2 -2
  44. package/dist/base/inline-edit.js +81 -76
  45. package/dist/base/inline-edit.js.map +1 -1
  46. package/dist/base/item.js +1 -1
  47. package/dist/base/media-gallery.js +1 -1
  48. package/dist/base/metadata-list.js +3 -0
  49. package/dist/base/navigation.js +7 -7
  50. package/dist/base/popover-menu.js +1 -1
  51. package/dist/base/popover.js +1 -1
  52. package/dist/base/qr-code.js +7 -4
  53. package/dist/base/qr-code.js.map +1 -1
  54. package/dist/base/repeaters.js +175 -174
  55. package/dist/base/repeaters.js.map +1 -1
  56. package/dist/base/sheet.js +1 -1
  57. package/dist/base/sidebar.js +1 -1
  58. package/dist/base/signature-pad.js +148 -138
  59. package/dist/base/signature-pad.js.map +1 -1
  60. package/dist/base/skeleton.js +1 -1
  61. package/dist/base/spinner.js +1 -1
  62. package/dist/base/structure.js +1 -1
  63. package/dist/base/table.js +1 -1
  64. package/dist/base/text-inputs.js +2 -2
  65. package/dist/base/toaster.js +4 -4
  66. package/dist/base/toaster.js.map +1 -1
  67. package/dist/base/tree.js +1 -1
  68. package/dist/base/upload-queue.js +1 -1
  69. package/dist/base/upload.js +3 -3
  70. package/dist/base/value-inputs.js +2 -2
  71. package/dist/batch-action-bar-BZGDG-Si.js +104 -0
  72. package/dist/batch-action-bar-BZGDG-Si.js.map +1 -0
  73. package/dist/blocks/admin.js +264 -253
  74. package/dist/blocks/admin.js.map +1 -1
  75. package/dist/blocks/ai.js +293 -323
  76. package/dist/blocks/ai.js.map +1 -1
  77. package/dist/blocks/analytics/usage-card.js +1 -1
  78. package/dist/blocks/analytics.js +596 -587
  79. package/dist/blocks/analytics.js.map +1 -1
  80. package/dist/blocks/collaboration.js +1 -1
  81. package/dist/blocks/commerce/receipt.js +1 -1
  82. package/dist/blocks/commerce.js +2246 -1693
  83. package/dist/blocks/commerce.js.map +1 -1
  84. package/dist/blocks/data-display.js +3 -2
  85. package/dist/blocks/onboarding.js +50 -49
  86. package/dist/blocks/onboarding.js.map +1 -1
  87. package/dist/blocks/planning.js +82 -91
  88. package/dist/blocks/planning.js.map +1 -1
  89. package/dist/blocks/timelines.js +1 -1
  90. package/dist/breadcrumbs-D5t7I023.js +129 -0
  91. package/dist/breadcrumbs-D5t7I023.js.map +1 -0
  92. package/dist/{button-BZyfTvwm.js → button-QYwiyhD2.js} +15 -14
  93. package/dist/button-QYwiyhD2.js.map +1 -0
  94. package/dist/buttons-SbIcm1HJ.js +661 -0
  95. package/dist/buttons-SbIcm1HJ.js.map +1 -0
  96. package/dist/{cards-qGSErLw_.js → cards-CiiHpKYd.js} +8 -8
  97. package/dist/cards-CiiHpKYd.js.map +1 -0
  98. package/dist/{chart-Bsc5BICK.js → chart-QfrARkXl.js} +17 -15
  99. package/dist/chart-QfrARkXl.js.map +1 -0
  100. package/dist/checkbox-DhB6K0bK.js +36 -0
  101. package/dist/checkbox-DhB6K0bK.js.map +1 -0
  102. package/dist/choice-inputs-t6w3ATNz.js +766 -0
  103. package/dist/choice-inputs-t6w3ATNz.js.map +1 -0
  104. package/dist/code-block-Dgbu-CU3.js +185 -0
  105. package/dist/code-block-Dgbu-CU3.js.map +1 -0
  106. package/dist/{collapsible-ClvC7Bj3.js → collapsible-D8AEGU1-.js} +4 -4
  107. package/dist/{collapsible-ClvC7Bj3.js.map → collapsible-D8AEGU1-.js.map} +1 -1
  108. package/dist/{collection-content-D6S8cv_n.js → collection-content-uK16Grv0.js} +3 -3
  109. package/dist/{collection-content-D6S8cv_n.js.map → collection-content-uK16Grv0.js.map} +1 -1
  110. package/dist/{combobox-BFnbJJp3.js → combobox-2Ic8N9bL.js} +103 -98
  111. package/dist/combobox-2Ic8N9bL.js.map +1 -0
  112. package/dist/combobox-DLl0bfiq.js +867 -0
  113. package/dist/combobox-DLl0bfiq.js.map +1 -0
  114. package/dist/{command-BnmSchli.js → command-kNR20o7x.js} +34 -30
  115. package/dist/command-kNR20o7x.js.map +1 -0
  116. package/dist/{comments-u5L0OGip.js → comments-BpDuCUUu.js} +304 -301
  117. package/dist/comments-BpDuCUUu.js.map +1 -0
  118. package/dist/components/base/accordion/accordion-variants.d.ts +3 -3
  119. package/dist/components/base/action-menu/action-menu.d.ts +27 -5
  120. package/dist/components/base/action-menu/action-menu.recipes.d.ts +21 -0
  121. package/dist/components/base/action-menu/index.d.ts +1 -0
  122. package/dist/components/base/avatar/stacked-avatars.d.ts +5 -4
  123. package/dist/components/base/badge/badge.d.ts +1 -1
  124. package/dist/components/base/badge/badge.recipes.d.ts +6 -6
  125. package/dist/components/base/batch-action-bar/batch-action-bar.d.ts +50 -0
  126. package/dist/components/base/batch-action-bar/batch-action-bar.strings.d.ts +20 -0
  127. package/dist/components/base/batch-action-bar/index.d.ts +8 -0
  128. package/dist/components/base/buttons/base-button.d.ts +7 -0
  129. package/dist/components/base/buttons/button-group.recipes.d.ts +2 -2
  130. package/dist/components/base/buttons/button.recipes.d.ts +2 -2
  131. package/dist/components/base/buttons/button.variants.d.ts +1 -0
  132. package/dist/components/base/buttons/loader-button.d.ts +3 -1
  133. package/dist/components/base/buttons/text-button.d.ts +2 -2
  134. package/dist/components/base/carousel/carousel.d.ts +3 -1
  135. package/dist/components/base/chart/chart.d.ts +7 -7
  136. package/dist/components/base/choice-inputs/checkbox.d.ts +6 -7
  137. package/dist/components/base/choice-inputs/choice-types.d.ts +24 -3
  138. package/dist/components/base/choice-inputs/pill-radio-group.d.ts +9 -0
  139. package/dist/components/base/choice-inputs/select-popup.d.ts +9 -1
  140. package/dist/components/base/choice-inputs/switch-card.d.ts +1 -1
  141. package/dist/components/base/date-pickers/date-picker-field.d.ts +23 -0
  142. package/dist/components/base/date-pickers/datepicker.types.d.ts +13 -3
  143. package/dist/components/base/display/alert-dialog.d.ts +10 -3
  144. package/dist/components/base/display/content-block.d.ts +4 -2
  145. package/dist/components/base/display/date-block.d.ts +1 -1
  146. package/dist/components/base/display/dialog.d.ts +8 -5
  147. package/dist/components/base/display/icon-badge/icon-badge.d.ts +1 -1
  148. package/dist/components/base/display/surface-title.d.ts +6 -1
  149. package/dist/components/base/feedback/alert.d.ts +1 -1
  150. package/dist/components/base/feedback/state-display.d.ts +5 -4
  151. package/dist/components/base/forms/form-sizing.d.ts +43 -8
  152. package/dist/components/base/forms/workflow.d.ts +2 -0
  153. package/dist/components/base/forms-numeric/coordinates-input.d.ts +3 -0
  154. package/dist/components/base/forms-numeric/rounding-mode-select.d.ts +4 -1
  155. package/dist/components/base/metadata-list/index.d.ts +12 -0
  156. package/dist/components/{blocks/data-display/metadata → base/metadata-list}/metadata-list.d.ts +28 -25
  157. package/dist/components/{blocks/data-display/metadata → base/metadata-list}/metadata-value.d.ts +2 -2
  158. package/dist/components/base/navigation/dropdown-menu.d.ts +2 -2
  159. package/dist/components/base/navigation/index.d.ts +1 -1
  160. package/dist/components/base/navigation/language-switcher.d.ts +4 -1
  161. package/dist/components/base/navigation/overflow-tab-bar.d.ts +7 -0
  162. package/dist/components/base/navigation/page-header/index.d.ts +1 -0
  163. package/dist/components/base/navigation/page-header/page-header-commands.d.ts +73 -0
  164. package/dist/components/base/navigation/page-header/page-header.d.ts +30 -4
  165. package/dist/components/base/qr-code/qr-code.d.ts +2 -0
  166. package/dist/components/base/sheet/index.d.ts +29 -1
  167. package/dist/components/base/sheet/sheet.d.ts +10 -5
  168. package/dist/components/base/signature-pad/signature-pad.types.d.ts +5 -1
  169. package/dist/components/base/signature-pad/signature-pad.utils.d.ts +11 -3
  170. package/dist/components/base/spinner/spinner.d.ts +3 -2
  171. package/dist/components/base/structure/structure.types.d.ts +1 -1
  172. package/dist/components/base/text-inputs/field-clear-button.d.ts +6 -0
  173. package/dist/components/base/text-inputs/input-group.d.ts +2 -2
  174. package/dist/components/base/upload/upload.recipes.d.ts +33 -0
  175. package/dist/components/base/value-inputs/date-time-input.d.ts +4 -2
  176. package/dist/components/base/value-inputs/index.d.ts +5 -5
  177. package/dist/components/base/value-inputs/tags-input.d.ts +38 -12
  178. package/dist/components/blocks/admin/api-key-list/api-key-list.types.d.ts +1 -1
  179. package/dist/components/blocks/analytics/format-metric-value.d.ts +11 -1
  180. package/dist/components/blocks/analytics/index.d.ts +1 -1
  181. package/dist/components/blocks/analytics/use-metric-format-options.d.ts +3 -0
  182. package/dist/components/blocks/commerce/address-card/address-card.d.ts +1 -1
  183. package/dist/components/blocks/commerce/address-card/types.d.ts +4 -1
  184. package/dist/components/blocks/commerce/booking-calendar-event-card/booking-calendar-event-card.d.ts +4 -0
  185. package/dist/components/blocks/commerce/booking-calendar-event-card/booking-calendar-event-card.types.d.ts +2 -2
  186. package/dist/components/blocks/commerce/cart-summary/cart-summary.d.ts +3 -1
  187. package/dist/components/blocks/commerce/cart-summary/index.d.ts +2 -2
  188. package/dist/components/blocks/commerce/cart-summary/types.d.ts +6 -1
  189. package/dist/components/blocks/commerce/discount-stack/discount-stack.d.ts +3 -1
  190. package/dist/components/blocks/commerce/discount-stack/index.d.ts +2 -2
  191. package/dist/components/blocks/commerce/discount-stack/types.d.ts +16 -4
  192. package/dist/components/blocks/commerce/fulfillment-group/fulfillment-group.d.ts +5 -0
  193. package/dist/components/blocks/commerce/fulfillment-group/index.d.ts +2 -0
  194. package/dist/components/blocks/commerce/fulfillment-group/types.d.ts +43 -0
  195. package/dist/components/blocks/commerce/index.d.ts +13 -5
  196. package/dist/components/blocks/commerce/inventory-section/types.d.ts +4 -1
  197. package/dist/components/blocks/commerce/invoice-header/invoice-header.d.ts +1 -1
  198. package/dist/components/blocks/commerce/invoice-header/types.d.ts +4 -2
  199. package/dist/components/blocks/commerce/invoice-mini/invoice-mini.d.ts +1 -1
  200. package/dist/components/blocks/commerce/invoice-mini/types.d.ts +2 -1
  201. package/dist/components/blocks/commerce/loyalty-points/types.d.ts +1 -1
  202. package/dist/components/blocks/commerce/order-customer/index.d.ts +2 -0
  203. package/dist/components/blocks/commerce/order-customer/order-customer.d.ts +5 -0
  204. package/dist/components/blocks/commerce/order-customer/types.d.ts +48 -0
  205. package/dist/components/blocks/commerce/order-header/index.d.ts +2 -0
  206. package/dist/components/blocks/commerce/order-header/order-header.d.ts +5 -0
  207. package/dist/components/blocks/commerce/order-header/types.d.ts +37 -0
  208. package/dist/components/blocks/commerce/order-line-item/index.d.ts +2 -0
  209. package/dist/components/blocks/commerce/order-line-item/order-line-item.d.ts +5 -0
  210. package/dist/components/blocks/commerce/order-line-item/types.d.ts +46 -0
  211. package/dist/components/blocks/commerce/order-status/types.d.ts +4 -0
  212. package/dist/components/blocks/commerce/order-summary/index.d.ts +2 -0
  213. package/dist/components/blocks/commerce/order-summary/order-summary.d.ts +5 -0
  214. package/dist/components/blocks/commerce/order-summary/types.d.ts +42 -0
  215. package/dist/components/blocks/commerce/order-transactions/index.d.ts +2 -0
  216. package/dist/components/blocks/commerce/order-transactions/order-transactions.d.ts +5 -0
  217. package/dist/components/blocks/commerce/order-transactions/types.d.ts +46 -0
  218. package/dist/components/blocks/commerce/payment-method/index.d.ts +2 -2
  219. package/dist/components/blocks/commerce/payment-method/payment-method.d.ts +9 -1
  220. package/dist/components/blocks/commerce/payment-method/types.d.ts +14 -1
  221. package/dist/components/blocks/commerce/refund-status/index.d.ts +2 -2
  222. package/dist/components/blocks/commerce/refund-status/refund-status.d.ts +3 -1
  223. package/dist/components/blocks/commerce/refund-status/types.d.ts +6 -3
  224. package/dist/components/blocks/commerce/seo-listing/seo-listing-card.d.ts +1 -1
  225. package/dist/components/blocks/commerce/seo-listing/types.d.ts +3 -1
  226. package/dist/components/blocks/commerce/shared/address-lines.d.ts +21 -0
  227. package/dist/components/blocks/commerce/shared/line-thumbnail.d.ts +9 -0
  228. package/dist/components/blocks/commerce/shared/order-status.d.ts +51 -0
  229. package/dist/components/blocks/commerce/shipment-tracking/shipment-tracking.d.ts +1 -1
  230. package/dist/components/blocks/commerce/shipment-tracking/types.d.ts +27 -6
  231. package/dist/components/blocks/commerce/summary-panel/amount-row.d.ts +2 -0
  232. package/dist/components/blocks/commerce/summary-panel/index.d.ts +3 -0
  233. package/dist/components/blocks/commerce/summary-panel/summary-panel.d.ts +2 -0
  234. package/dist/components/blocks/commerce/summary-panel/types.d.ts +26 -0
  235. package/dist/components/blocks/commerce/tax-breakdown/tax-breakdown.d.ts +1 -1
  236. package/dist/components/blocks/commerce/tax-breakdown/types.d.ts +2 -1
  237. package/dist/components/blocks/commerce/vendor-profile/types.d.ts +4 -1
  238. package/dist/components/blocks/data-display/dense-info-card/dense-info.strings.d.ts +4 -1
  239. package/dist/components/blocks/data-display/inline-stat/inline-stat.d.ts +4 -1
  240. package/dist/components/blocks/data-display/metadata/index.d.ts +30 -4
  241. package/dist/components/features/activities/partials/activity-row.d.ts +6 -2
  242. package/dist/components/features/activities/partials/tone-tokens.d.ts +0 -6
  243. package/dist/components/features/global-search/partials/global-search-group-heading.d.ts +15 -0
  244. package/dist/components/features/global-search/partials/global-search-idle-state.d.ts +1 -1
  245. package/dist/components/features/global-search/partials/tone-palettes.d.ts +0 -5
  246. package/dist/components/features/kanban/kanban.d.ts +1 -1
  247. package/dist/components/features/kanban/kanban.strings.d.ts +1 -1
  248. package/dist/components/features/kanban/kanban.types.d.ts +2 -2
  249. package/dist/components/features/media-library/hooks/use-media-library.d.ts +1 -1
  250. package/dist/components/features/media-library/index.d.ts +1 -1
  251. package/dist/components/features/media-library/media-library.d.ts +1 -1
  252. package/dist/components/features/media-library/media-library.strings.d.ts +4 -0
  253. package/dist/components/features/media-library/media-library.types.d.ts +74 -1
  254. package/dist/components/features/media-library/partials/media-library-partials.d.ts +3 -3
  255. package/dist/components/features/mentions/partials/mention-kind-toggles.d.ts +16 -0
  256. package/dist/components/features/overlays/alert-dialog.d.ts +1 -1
  257. package/dist/components/features/overlays/dialog.d.ts +1 -1
  258. package/dist/components/features/overlays/drawer.d.ts +1 -1
  259. package/dist/components/features/overlays/hooks/use-overlay-actions.d.ts +2 -2
  260. package/dist/components/features/overlays/hooks/use-overlay-visibility.d.ts +11 -4
  261. package/dist/components/features/overlays/index.d.ts +1 -1
  262. package/dist/components/features/overlays/overlay-tone-icon.d.ts +37 -0
  263. package/dist/components/features/overlays/overlays.types.d.ts +62 -19
  264. package/dist/components/features/products/components/product-contract-overview.d.ts +5 -0
  265. package/dist/components/features/products/components/product-details-card.d.ts +5 -0
  266. package/dist/components/features/products/components/product-operations-card.d.ts +5 -0
  267. package/dist/components/features/products/components/product-option-action-menu.d.ts +5 -0
  268. package/dist/components/features/products/components/product-options-summary.d.ts +5 -0
  269. package/dist/components/features/products/components/product-policies-card.d.ts +5 -0
  270. package/dist/components/features/products/components/product-quote-preview-card.d.ts +5 -0
  271. package/dist/components/features/products/components/product-readiness-card.d.ts +5 -0
  272. package/dist/components/features/products/components/product-structure-card.d.ts +5 -0
  273. package/dist/components/features/products/components/product-variant-action-menu.d.ts +23 -1
  274. package/dist/components/features/products/components/product-variants-manager.d.ts +1 -1
  275. package/dist/components/features/products/partials/index.d.ts +1 -1
  276. package/dist/components/features/products/partials/product-metric-tile.d.ts +6 -0
  277. package/dist/components/features/products/partials/product-tone.d.ts +11 -1
  278. package/dist/components/features/products/products.types.d.ts +11 -3
  279. package/dist/components/features/resource/index.d.ts +1 -1
  280. package/dist/components/features/resource/resource.d.ts +1 -1
  281. package/dist/components/features/resource/resource.types.d.ts +34 -6
  282. package/dist/components/features/rich-text-editor/index.d.ts +2 -1
  283. package/dist/components/features/rich-text-editor/partials/image-nodes.d.ts +13 -0
  284. package/dist/components/features/rich-text-editor/partials/image-uploads.d.ts +66 -0
  285. package/dist/components/features/rich-text-editor/partials/inline-reference-node.d.ts +19 -0
  286. package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +1 -1
  287. package/dist/components/features/rich-text-editor/rich-text-editor.strings.d.ts +14 -0
  288. package/dist/components/features/rich-text-editor/rich-text-editor.types.d.ts +45 -0
  289. package/dist/components/features/rich-text-editor/use-rich-text-images.d.ts +18 -0
  290. package/dist/components/features/sync/index.d.ts +26 -3
  291. package/dist/components/features/table/data-table.d.ts +1 -1
  292. package/dist/components/features/table/partials/cell-renderers.d.ts +1 -1
  293. package/dist/components/features/table/table.types.d.ts +32 -7
  294. package/dist/components/layout/page/index.d.ts +1 -1
  295. package/dist/components/layout/page/page.types.d.ts +51 -4
  296. package/dist/components/layout/page/partials/page-actions.d.ts +1 -0
  297. package/dist/components/layout/page/partials/page-header.d.ts +1 -1
  298. package/dist/components/layout/settings/settings.d.ts +16 -2
  299. package/dist/components/layout/workspace/workspace.types.d.ts +21 -4
  300. package/dist/components/primitives/date.d.ts +16 -3
  301. package/dist/components/primitives/dimensions.d.ts +6 -0
  302. package/dist/components/primitives/duration.d.ts +6 -0
  303. package/dist/components/primitives/file-size.d.ts +6 -0
  304. package/dist/components/primitives/index.d.ts +1 -1
  305. package/dist/components/primitives/initials.d.ts +11 -2
  306. package/dist/components/primitives/link.d.ts +7 -0
  307. package/dist/components/primitives/money.d.ts +29 -7
  308. package/dist/components/primitives/number.d.ts +17 -0
  309. package/dist/components/primitives/value-typography.d.ts +54 -0
  310. package/dist/components/primitives/value.d.ts +31 -6
  311. package/dist/components/typography/heading.d.ts +9 -1
  312. package/dist/components/typography/label.d.ts +3 -0
  313. package/dist/components/typography/rich-text/index.d.ts +1 -1
  314. package/dist/components/typography/rich-text/rich-text-tree.d.ts +19 -0
  315. package/dist/components/typography/rich-text/rich-text.d.ts +16 -0
  316. package/dist/components/typography/running-text.d.ts +12 -0
  317. package/dist/components/typography/text-link.d.ts +24 -1
  318. package/dist/components/typography/text.d.ts +12 -0
  319. package/dist/components/typography/text.styles.d.ts +35 -13
  320. package/dist/components/ui/button.d.ts +1 -1
  321. package/dist/components/ui/checkbox.d.ts +6 -0
  322. package/dist/components/ui/overlay.recipes.d.ts +6 -2
  323. package/dist/components/ui/select.d.ts +3 -1
  324. package/dist/components/ui/switch.d.ts +5 -0
  325. package/dist/{containers-DqB-bSYE.js → containers-DmWiJa2I.js} +36 -35
  326. package/dist/containers-DmWiJa2I.js.map +1 -0
  327. package/dist/{copyable-BTSByfmq.js → copyable-B3Gwgdqc.js} +6 -6
  328. package/dist/{copyable-BTSByfmq.js.map → copyable-B3Gwgdqc.js.map} +1 -1
  329. package/dist/data-display-DafIvCl5.js +960 -0
  330. package/dist/data-display-DafIvCl5.js.map +1 -0
  331. package/dist/date-BgK3bTdo.js +144 -0
  332. package/dist/date-BgK3bTdo.js.map +1 -0
  333. package/dist/date-picker-CF-DtUpF.js +1529 -0
  334. package/dist/date-picker-CF-DtUpF.js.map +1 -0
  335. package/dist/date-pickers-BmzxJl5l.js +174 -0
  336. package/dist/date-pickers-BmzxJl5l.js.map +1 -0
  337. package/dist/{display-CS6Hbk18.js → display-DsQTVzMz.js} +88 -87
  338. package/dist/display-DsQTVzMz.js.map +1 -0
  339. package/dist/{dropdown-menu-D-boNgGO.js → dropdown-menu-E2qmdC7o.js} +23 -16
  340. package/dist/dropdown-menu-E2qmdC7o.js.map +1 -0
  341. package/dist/features/activities.js +437 -521
  342. package/dist/features/activities.js.map +1 -1
  343. package/dist/features/ai-chat.js +174 -172
  344. package/dist/features/ai-chat.js.map +1 -1
  345. package/dist/features/async-preview.js +8 -8
  346. package/dist/features/async-preview.js.map +1 -1
  347. package/dist/features/combobox.js +1 -1
  348. package/dist/features/comments.js +1 -1
  349. package/dist/features/data-view.js +139 -138
  350. package/dist/features/data-view.js.map +1 -1
  351. package/dist/features/email-composer/engine.js +1 -1
  352. package/dist/features/email-composer.js +353 -352
  353. package/dist/features/email-composer.js.map +1 -1
  354. package/dist/features/event-calendar.js +262 -269
  355. package/dist/features/event-calendar.js.map +1 -1
  356. package/dist/features/filters.js +1 -1
  357. package/dist/features/global-search.js +307 -310
  358. package/dist/features/global-search.js.map +1 -1
  359. package/dist/features/kanban.js +95 -97
  360. package/dist/features/kanban.js.map +1 -1
  361. package/dist/features/map.js +56 -57
  362. package/dist/features/map.js.map +1 -1
  363. package/dist/features/media-library.js +914 -824
  364. package/dist/features/media-library.js.map +1 -1
  365. package/dist/features/mentions.js +1 -1
  366. package/dist/features/overlays.js +1 -1
  367. package/dist/features/products.js +1272 -1311
  368. package/dist/features/products.js.map +1 -1
  369. package/dist/features/questionnaire.js +204 -194
  370. package/dist/features/questionnaire.js.map +1 -1
  371. package/dist/features/resource-assignment.js +103 -95
  372. package/dist/features/resource-assignment.js.map +1 -1
  373. package/dist/features/resource.js +77 -69
  374. package/dist/features/resource.js.map +1 -1
  375. package/dist/features/rich-text-editor.js +30 -11
  376. package/dist/features/rich-text-editor.js.map +1 -1
  377. package/dist/features/schema-form.js +193 -189
  378. package/dist/features/schema-form.js.map +1 -1
  379. package/dist/features/suggestions.js +3 -3
  380. package/dist/features/sync.js +7 -7
  381. package/dist/features/sync.js.map +1 -1
  382. package/dist/features/table.js +1 -1
  383. package/dist/features/theme-tweaker.js +455 -455
  384. package/dist/features/theme-tweaker.js.map +1 -1
  385. package/dist/feedback-qNuMBtRH.js +233 -0
  386. package/dist/feedback-qNuMBtRH.js.map +1 -0
  387. package/dist/field-affordance-recipes-qQeIf4lG.js +48 -0
  388. package/dist/field-affordance-recipes-qQeIf4lG.js.map +1 -0
  389. package/dist/field-state-recipes-BVA2CWHo.js +12 -0
  390. package/dist/field-state-recipes-BVA2CWHo.js.map +1 -0
  391. package/dist/{filters-D6FF8L6s.js → filters-BkHH53uv.js} +414 -412
  392. package/dist/filters-BkHH53uv.js.map +1 -0
  393. package/dist/focus-recipes-B653VaLq.js +12 -0
  394. package/dist/focus-recipes-B653VaLq.js.map +1 -0
  395. package/dist/{form-field-CZwrkP7m.js → form-field-DUt4UxSV.js} +7 -7
  396. package/dist/{form-field-CZwrkP7m.js.map → form-field-DUt4UxSV.js.map} +1 -1
  397. package/dist/form-sizing-By94KzXE.js +130 -0
  398. package/dist/form-sizing-By94KzXE.js.map +1 -0
  399. package/dist/{forms-B5NCbkSC.js → forms-Bzha-Y3B.js} +25 -25
  400. package/dist/forms-Bzha-Y3B.js.map +1 -0
  401. package/dist/forms-numeric-C0bvjRPZ.js +906 -0
  402. package/dist/forms-numeric-C0bvjRPZ.js.map +1 -0
  403. package/dist/{header-kxruN3RM.js → header-BOefOKd1.js} +38 -41
  404. package/dist/header-BOefOKd1.js.map +1 -0
  405. package/dist/{hooks-BrlnCwQd.js → hooks-9k_TtmKh.js} +2 -2
  406. package/dist/{hooks-BrlnCwQd.js.map → hooks-9k_TtmKh.js.map} +1 -1
  407. package/dist/{http-CdEIHyQf.js → http-D_6rOnzU.js} +2 -2
  408. package/dist/{http-CdEIHyQf.js.map → http-D_6rOnzU.js.map} +1 -1
  409. package/dist/icon-badge-CAuKupo9.js +55 -0
  410. package/dist/icon-badge-CAuKupo9.js.map +1 -0
  411. package/dist/index.js +7 -7
  412. package/dist/input-DWhBBBww.js +262 -0
  413. package/dist/input-DWhBBBww.js.map +1 -0
  414. package/dist/{input-vxcaNCYC.js → input-Ddi_LSYv.js} +3 -3
  415. package/dist/{input-vxcaNCYC.js.map → input-Ddi_LSYv.js.map} +1 -1
  416. package/dist/interaction-recipes-CHr0dJUs.js +24 -0
  417. package/dist/interaction-recipes-CHr0dJUs.js.map +1 -0
  418. package/dist/item-DEmDiTlD.js +265 -0
  419. package/dist/item-DEmDiTlD.js.map +1 -0
  420. package/dist/layer-recipes-CCpklYME.js +13 -0
  421. package/dist/layer-recipes-CCpklYME.js.map +1 -0
  422. package/dist/layout/app-shell.js +1 -1
  423. package/dist/layout/auth.js +1 -1
  424. package/dist/layout/containers.js +1 -1
  425. package/dist/layout/header.js +1 -1
  426. package/dist/layout/hooks.js +1 -1
  427. package/dist/layout/navigation.js +1 -1
  428. package/dist/layout/page.js +1 -1
  429. package/dist/layout/settings.js +1 -1
  430. package/dist/layout/sidebar.js +2 -2
  431. package/dist/layout/workspace.js +1 -1
  432. package/dist/layout.js +10 -10
  433. package/dist/lib/affordance-geometry.generated.d.ts +7 -1
  434. package/dist/lib/field-affordance-recipes.d.ts +41 -1
  435. package/dist/lib/field-state-recipes.d.ts +9 -6
  436. package/dist/lib/focus-recipes.d.ts +24 -0
  437. package/dist/lib/format.d.ts +9 -0
  438. package/dist/lib/interaction-recipes.d.ts +35 -0
  439. package/dist/lib/layer-recipes.d.ts +19 -0
  440. package/dist/lib/money-format.d.ts +30 -0
  441. package/dist/lib/motion-recipes.d.ts +1 -0
  442. package/dist/lib/overlay-anatomy-recipes.d.ts +2 -1
  443. package/dist/lib/safe-image-src.d.ts +10 -0
  444. package/dist/lib/sanitize-html.d.ts +15 -3
  445. package/dist/lib/surface-recipes.d.ts +48 -6
  446. package/dist/lib/token-merge.generated.d.ts +17 -14
  447. package/dist/lib/tone-recipes.d.ts +79 -0
  448. package/dist/lib/track-recipes.d.ts +1 -1
  449. package/dist/lib/ui-provider/hooks.d.ts +2 -1
  450. package/dist/lib/ui-provider/index.d.ts +2 -2
  451. package/dist/lib/ui-provider/provider.d.ts +7 -2
  452. package/dist/lib/ui-provider/store.d.ts +6 -2
  453. package/dist/lib/ui-provider/types.d.ts +14 -2
  454. package/dist/lib/utils.js +1 -1
  455. package/dist/media-gallery-DcTtAaeC.js +203 -0
  456. package/dist/media-gallery-DcTtAaeC.js.map +1 -0
  457. package/dist/mentions-D-uyCh01.js +568 -0
  458. package/dist/mentions-D-uyCh01.js.map +1 -0
  459. package/dist/{message-SZUNB1eX.js → message-CdHgIWKf.js} +5 -5
  460. package/dist/{message-SZUNB1eX.js.map → message-CdHgIWKf.js.map} +1 -1
  461. package/dist/metadata-list-X5rYAKSB.js +394 -0
  462. package/dist/metadata-list-X5rYAKSB.js.map +1 -0
  463. package/dist/{motion-recipes-B6jKXEcN.js → motion-recipes-ChBg4HBq.js} +3 -2
  464. package/dist/{motion-recipes-B6jKXEcN.js.map → motion-recipes-ChBg4HBq.js.map} +1 -1
  465. package/dist/navigation-D3KwXmaq.js +145 -0
  466. package/dist/navigation-D3KwXmaq.js.map +1 -0
  467. package/dist/navigation-HJf5zxlH.js +268 -0
  468. package/dist/navigation-HJf5zxlH.js.map +1 -0
  469. package/dist/{navigation-row-recipes-DQEXQcqY.js → navigation-row-recipes-BVowojQw.js} +2 -2
  470. package/dist/{navigation-row-recipes-DQEXQcqY.js.map → navigation-row-recipes-BVowojQw.js.map} +1 -1
  471. package/dist/number-DMhe-Vsk.js +352 -0
  472. package/dist/number-DMhe-Vsk.js.map +1 -0
  473. package/dist/overflow-tab-bar-sQHXLlwQ.js +280 -0
  474. package/dist/overflow-tab-bar-sQHXLlwQ.js.map +1 -0
  475. package/dist/overlay.recipes-8GHqmlb4.js +6 -0
  476. package/dist/overlay.recipes-8GHqmlb4.js.map +1 -0
  477. package/dist/overlays-I0axtYA6.js +999 -0
  478. package/dist/overlays-I0axtYA6.js.map +1 -0
  479. package/dist/{page-hGmT4nWK.js → page-B5dTH9gE.js} +79 -68
  480. package/dist/page-B5dTH9gE.js.map +1 -0
  481. package/dist/page-header-commands-DjzFEq3E.js +126 -0
  482. package/dist/page-header-commands-DjzFEq3E.js.map +1 -0
  483. package/dist/{pagination-NLGqRirf.js → pagination-3bPA_a6K.js} +19 -19
  484. package/dist/{pagination-NLGqRirf.js.map → pagination-3bPA_a6K.js.map} +1 -1
  485. package/dist/{popover-CghIYdQf.js → popover-Di55PyAI.js} +8 -8
  486. package/dist/popover-Di55PyAI.js.map +1 -0
  487. package/dist/{popover-menu-B4PoWhRl.js → popover-menu-B71Tn2Qz.js} +6 -6
  488. package/dist/{popover-menu-B4PoWhRl.js.map → popover-menu-B71Tn2Qz.js.map} +1 -1
  489. package/dist/{popover.recipes-QlD4JenO.js → popover.recipes-Bdyhj2db.js} +2 -2
  490. package/dist/{popover.recipes-QlD4JenO.js.map → popover.recipes-Bdyhj2db.js.map} +1 -1
  491. package/dist/primitives-B-CkiEMU.js +379 -0
  492. package/dist/primitives-B-CkiEMU.js.map +1 -0
  493. package/dist/primitives.js +5 -5
  494. package/dist/{progress-BroqrAyV.js → progress-rnS8-uAW.js} +11 -11
  495. package/dist/progress-rnS8-uAW.js.map +1 -0
  496. package/dist/{receipt-BuJynLgf.js → receipt-D0oswZ0p.js} +6 -6
  497. package/dist/{receipt-BuJynLgf.js.map → receipt-D0oswZ0p.js.map} +1 -1
  498. package/dist/rich-text-DvGulsNJ.js +78 -0
  499. package/dist/rich-text-DvGulsNJ.js.map +1 -0
  500. package/dist/rich-text-editor-sMU_Scqm.js +1204 -0
  501. package/dist/rich-text-editor-sMU_Scqm.js.map +1 -0
  502. package/dist/rich-text-editor.recipes-CadiF_Uu.js +88 -0
  503. package/dist/rich-text-editor.recipes-CadiF_Uu.js.map +1 -0
  504. package/dist/rich-text-editor.strings-CB59ekH2.js +38 -0
  505. package/dist/rich-text-editor.strings-CB59ekH2.js.map +1 -0
  506. package/dist/safe-image-src-C6kQSMBZ.js +17 -0
  507. package/dist/safe-image-src-C6kQSMBZ.js.map +1 -0
  508. package/dist/sanitize-html-DsQmI48u.js +92 -0
  509. package/dist/sanitize-html-DsQmI48u.js.map +1 -0
  510. package/dist/scroll-area-Bt_vXY2b.js +48 -0
  511. package/dist/scroll-area-Bt_vXY2b.js.map +1 -0
  512. package/dist/{separator-BNIgG3au.js → separator-C8DlRGwF.js} +4 -4
  513. package/dist/separator-C8DlRGwF.js.map +1 -0
  514. package/dist/{separator-BhtFyo4x.js → separator-CYHnjsAb.js} +2 -2
  515. package/dist/{separator-BhtFyo4x.js.map → separator-CYHnjsAb.js.map} +1 -1
  516. package/dist/services/actions/action-adapters.d.ts +22 -0
  517. package/dist/services/actions/index.d.ts +1 -1
  518. package/dist/services/actions.js +23 -6
  519. package/dist/services/actions.js.map +1 -1
  520. package/dist/settings-CQW3b-Cu.js +170 -0
  521. package/dist/settings-CQW3b-Cu.js.map +1 -0
  522. package/dist/sheet-4SEvVYzA.js +210 -0
  523. package/dist/sheet-4SEvVYzA.js.map +1 -0
  524. package/dist/{sidebar-CyR4XKwR.js → sidebar-C7WWR29L.js} +181 -180
  525. package/dist/sidebar-C7WWR29L.js.map +1 -0
  526. package/dist/sidebar-d7Dg80ln.js +511 -0
  527. package/dist/sidebar-d7Dg80ln.js.map +1 -0
  528. package/dist/{skeleton-3F0uhYn3.js → skeleton-Cz890JZF.js} +10 -10
  529. package/dist/skeleton-Cz890JZF.js.map +1 -0
  530. package/dist/smart-card-lFKxn5Hu.js +595 -0
  531. package/dist/smart-card-lFKxn5Hu.js.map +1 -0
  532. package/dist/{spinner-Cpf7oRkF.js → spinner-fa3h1Aif.js} +10 -8
  533. package/dist/spinner-fa3h1Aif.js.map +1 -0
  534. package/dist/{structure-CRdqVawd.js → structure-DC2dygdA.js} +3 -3
  535. package/dist/{structure-CRdqVawd.js.map → structure-DC2dygdA.js.map} +1 -1
  536. package/dist/{structure.recipes-Bqhf9oIh.js → structure.recipes-EPz60cU8.js} +37 -19
  537. package/dist/structure.recipes-EPz60cU8.js.map +1 -0
  538. package/dist/style.css +1 -1
  539. package/dist/surface-recipes-BKRVW8Os.js +43 -0
  540. package/dist/surface-recipes-BKRVW8Os.js.map +1 -0
  541. package/dist/table-CIKyLUsy.js +163 -0
  542. package/dist/table-CIKyLUsy.js.map +1 -0
  543. package/dist/{table-CcRDZiLP.js → table-CrcLN9Io.js} +544 -530
  544. package/dist/table-CrcLN9Io.js.map +1 -0
  545. package/dist/tabs-DwBJfjxX.js +190 -0
  546. package/dist/tabs-DwBJfjxX.js.map +1 -0
  547. package/dist/{text-inputs-DsR56TR-.js → text-inputs-aaK9wcDT.js} +151 -155
  548. package/dist/text-inputs-aaK9wcDT.js.map +1 -0
  549. package/dist/{text.styles-Q4sGAIgA.js → text.styles-g4He6UIW.js} +17 -14
  550. package/dist/text.styles-g4He6UIW.js.map +1 -0
  551. package/dist/theme.css +16 -12
  552. package/dist/themes/green.css +24 -0
  553. package/dist/{timelines-D1pkt3se.js → timelines-C_SBwHNP.js} +154 -164
  554. package/dist/timelines-C_SBwHNP.js.map +1 -0
  555. package/dist/tone-recipes-CPoExcTE.js +70 -0
  556. package/dist/tone-recipes-CPoExcTE.js.map +1 -0
  557. package/dist/tooltip-CsfgrfS7.js +111 -0
  558. package/dist/tooltip-CsfgrfS7.js.map +1 -0
  559. package/dist/track-recipes-CDcKmndW.js +10 -0
  560. package/dist/track-recipes-CDcKmndW.js.map +1 -0
  561. package/dist/{tree-BtmYyMZV.js → tree-BiKhg8AY.js} +72 -70
  562. package/dist/tree-BiKhg8AY.js.map +1 -0
  563. package/dist/typography/rich-text.js +1 -1
  564. package/dist/typography-DTRkE9zL.js +117 -0
  565. package/dist/typography-DTRkE9zL.js.map +1 -0
  566. package/dist/typography.js +2 -2
  567. package/dist/{ui-provider-DRPn3qNl.js → ui-provider-1D_NSYzO.js} +30 -23
  568. package/dist/ui-provider-1D_NSYzO.js.map +1 -0
  569. package/dist/ui-provider.js +3 -3
  570. package/dist/{upload-CDbYw1WN.js → upload-BO8-CLN6.js} +294 -293
  571. package/dist/upload-BO8-CLN6.js.map +1 -0
  572. package/dist/{upload-queue-CNd_hH_a.js → upload-queue-EOC8g1gf.js} +133 -138
  573. package/dist/upload-queue-EOC8g1gf.js.map +1 -0
  574. package/dist/upload.recipes-BbxTqrCT.js +61 -0
  575. package/dist/upload.recipes-BbxTqrCT.js.map +1 -0
  576. package/dist/{usage-card-VyJLUwRr.js → usage-card-obRaBskq.js} +42 -43
  577. package/dist/{usage-card-VyJLUwRr.js.map → usage-card-obRaBskq.js.map} +1 -1
  578. package/dist/{utils-BvH9PSmq.js → utils-l5LpDw2z.js} +264 -62
  579. package/dist/utils-l5LpDw2z.js.map +1 -0
  580. package/dist/value-inputs-TAYMX111.js +947 -0
  581. package/dist/value-inputs-TAYMX111.js.map +1 -0
  582. package/dist/value-typography-b8wpz1eX.js +116 -0
  583. package/dist/value-typography-b8wpz1eX.js.map +1 -0
  584. package/dist/workspace-DH0v0KcB.js +407 -0
  585. package/dist/workspace-DH0v0KcB.js.map +1 -0
  586. package/docs/consumer-skill/SKILL.md +62 -50
  587. package/docs/consumer-skill/examples/app-layout.tsx +3 -5
  588. package/docs/consumer-skill/examples/composition.tsx +3 -3
  589. package/docs/consumer-skill/examples/detail.tsx +59 -13
  590. package/docs/consumer-skill/examples/edit.tsx +2 -2
  591. package/docs/consumer-skill/examples/layout-blocks.tsx +20 -0
  592. package/docs/consumer-skill/examples/manifest.json +28 -6
  593. package/docs/consumer-skill/examples/receipt.tsx +2 -2
  594. package/docs/consumer-skill/examples/scoped-directory.tsx +3 -3
  595. package/docs/consumer-skill/examples/website.tsx +1 -1
  596. package/docs/consumer-skill/references/agents-md.md +33 -0
  597. package/docs/consumer-skill/references/analytics.md +1 -1
  598. package/docs/consumer-skill/references/composition.md +139 -24
  599. package/docs/consumer-skill/references/design-contract.md +12 -3
  600. package/docs/consumer-skill/references/discovery.md +4 -0
  601. package/docs/consumer-skill/references/installation.md +33 -1
  602. package/docs/consumer-skill/references/integration.md +32 -1
  603. package/docs/consumer-skill/references/public-api.json +1051 -610
  604. package/docs/consumer-skill/references/review.md +44 -8
  605. package/docs/consumer-skill/references/theming.md +14 -4
  606. package/docs/consumer-skill/references/tokens.json +5 -2
  607. package/docs/consumer-skill/references/workflows.md +30 -9
  608. package/docs/consumer-skill/scripts/composition-policy.mjs +127 -6
  609. package/docs/consumer-skill/scripts/discovery.mjs +11 -3
  610. package/docs/consumer-skill/scripts/pin-button-defaults.mjs +95 -0
  611. package/docs/consumer-skill/scripts/surface-policy.mjs +139 -5
  612. package/package.json +13 -3
  613. package/dist/accordion-BRTcsp8J.js +0 -205
  614. package/dist/accordion-BRTcsp8J.js.map +0 -1
  615. package/dist/action-menu-Drxw_vJk.js +0 -265
  616. package/dist/action-menu-Drxw_vJk.js.map +0 -1
  617. package/dist/affordance-geometry.generated-CL84ZN9A.js.map +0 -1
  618. package/dist/ai-artifact-DLVdK0Py.js.map +0 -1
  619. package/dist/attachment-DbjUWsP0.js +0 -244
  620. package/dist/attachment-DbjUWsP0.js.map +0 -1
  621. package/dist/auth-CAQcasMV.js.map +0 -1
  622. package/dist/avatar-Bu2HhitA.js.map +0 -1
  623. package/dist/badge-CzId1Wlm.js +0 -92
  624. package/dist/badge-CzId1Wlm.js.map +0 -1
  625. package/dist/breadcrumbs-BuYz5SDU.js +0 -128
  626. package/dist/breadcrumbs-BuYz5SDU.js.map +0 -1
  627. package/dist/button-BZDasD04.js +0 -651
  628. package/dist/button-BZDasD04.js.map +0 -1
  629. package/dist/button-BZyfTvwm.js.map +0 -1
  630. package/dist/buttons-D_6KJvEE.js +0 -99
  631. package/dist/buttons-D_6KJvEE.js.map +0 -1
  632. package/dist/cards-qGSErLw_.js.map +0 -1
  633. package/dist/chart-Bsc5BICK.js.map +0 -1
  634. package/dist/checkbox-BQNDjUCh.js +0 -34
  635. package/dist/checkbox-BQNDjUCh.js.map +0 -1
  636. package/dist/choice-inputs-Mk3iWbhr.js +0 -725
  637. package/dist/choice-inputs-Mk3iWbhr.js.map +0 -1
  638. package/dist/code-block-DzHKRybS.js +0 -183
  639. package/dist/code-block-DzHKRybS.js.map +0 -1
  640. package/dist/combobox-BFnbJJp3.js.map +0 -1
  641. package/dist/combobox-hozNwUcc.js +0 -847
  642. package/dist/combobox-hozNwUcc.js.map +0 -1
  643. package/dist/command-BnmSchli.js.map +0 -1
  644. package/dist/comments-u5L0OGip.js.map +0 -1
  645. package/dist/containers-DqB-bSYE.js.map +0 -1
  646. package/dist/data-display-Bihs9Ven.js +0 -1342
  647. package/dist/data-display-Bihs9Ven.js.map +0 -1
  648. package/dist/date-DOKhJPu7.js +0 -140
  649. package/dist/date-DOKhJPu7.js.map +0 -1
  650. package/dist/date-picker-DzP5HQq7.js +0 -1541
  651. package/dist/date-picker-DzP5HQq7.js.map +0 -1
  652. package/dist/date-pickers-BpgGz7S-.js +0 -196
  653. package/dist/date-pickers-BpgGz7S-.js.map +0 -1
  654. package/dist/display-CS6Hbk18.js.map +0 -1
  655. package/dist/dropdown-menu-D-boNgGO.js.map +0 -1
  656. package/dist/feedback-CJkUAapr.js +0 -233
  657. package/dist/feedback-CJkUAapr.js.map +0 -1
  658. package/dist/field-affordance-recipes-uKY4MsZ_.js +0 -25
  659. package/dist/field-affordance-recipes-uKY4MsZ_.js.map +0 -1
  660. package/dist/field-state-recipes-DQQpiLWC.js +0 -11
  661. package/dist/field-state-recipes-DQQpiLWC.js.map +0 -1
  662. package/dist/filters-D6FF8L6s.js.map +0 -1
  663. package/dist/form-sizing-QP8aIRaW.js +0 -103
  664. package/dist/form-sizing-QP8aIRaW.js.map +0 -1
  665. package/dist/format-iamDSqs2.js +0 -110
  666. package/dist/format-iamDSqs2.js.map +0 -1
  667. package/dist/forms-B5NCbkSC.js.map +0 -1
  668. package/dist/forms-numeric-Crrm80Lm.js +0 -867
  669. package/dist/forms-numeric-Crrm80Lm.js.map +0 -1
  670. package/dist/header-kxruN3RM.js.map +0 -1
  671. package/dist/icon-badge-Btc6pQrp.js +0 -53
  672. package/dist/icon-badge-Btc6pQrp.js.map +0 -1
  673. package/dist/input-SX9V0AL3.js +0 -255
  674. package/dist/input-SX9V0AL3.js.map +0 -1
  675. package/dist/item-DE4YnuJx.js +0 -258
  676. package/dist/item-DE4YnuJx.js.map +0 -1
  677. package/dist/media-gallery-DLp3HAz0.js +0 -201
  678. package/dist/media-gallery-DLp3HAz0.js.map +0 -1
  679. package/dist/mentions-Cl0Kt_Pd.js +0 -565
  680. package/dist/mentions-Cl0Kt_Pd.js.map +0 -1
  681. package/dist/navigation-DnQSNMT0.js +0 -276
  682. package/dist/navigation-DnQSNMT0.js.map +0 -1
  683. package/dist/navigation-DyytsLRB.js +0 -265
  684. package/dist/navigation-DyytsLRB.js.map +0 -1
  685. package/dist/number-DasMFWEG.js +0 -269
  686. package/dist/number-DasMFWEG.js.map +0 -1
  687. package/dist/overlay.recipes-BxW5FIfK.js +0 -6
  688. package/dist/overlay.recipes-BxW5FIfK.js.map +0 -1
  689. package/dist/overlays-DUbs1KEi.js +0 -1011
  690. package/dist/overlays-DUbs1KEi.js.map +0 -1
  691. package/dist/page-hGmT4nWK.js.map +0 -1
  692. package/dist/page-header-D8nERkn5.js +0 -112
  693. package/dist/page-header-D8nERkn5.js.map +0 -1
  694. package/dist/popover-CghIYdQf.js.map +0 -1
  695. package/dist/primitives-C7ff0QaI.js +0 -337
  696. package/dist/primitives-C7ff0QaI.js.map +0 -1
  697. package/dist/progress-BroqrAyV.js.map +0 -1
  698. package/dist/rich-text-DlxDOtf4.js +0 -32
  699. package/dist/rich-text-DlxDOtf4.js.map +0 -1
  700. package/dist/rich-text-editor-BKyG7rWz.js +0 -574
  701. package/dist/rich-text-editor-BKyG7rWz.js.map +0 -1
  702. package/dist/rich-text-editor.recipes-B72Nfuze.js +0 -81
  703. package/dist/rich-text-editor.recipes-B72Nfuze.js.map +0 -1
  704. package/dist/rich-text-editor.strings-BpnIQgMl.js +0 -25
  705. package/dist/rich-text-editor.strings-BpnIQgMl.js.map +0 -1
  706. package/dist/sanitize-html-BG9FGe-j.js +0 -64
  707. package/dist/sanitize-html-BG9FGe-j.js.map +0 -1
  708. package/dist/scroll-area-D-pIhEKl.js +0 -47
  709. package/dist/scroll-area-D-pIhEKl.js.map +0 -1
  710. package/dist/separator-BNIgG3au.js.map +0 -1
  711. package/dist/settings-DOTOzeZ2.js +0 -161
  712. package/dist/settings-DOTOzeZ2.js.map +0 -1
  713. package/dist/sheet-BFhrNehm.js +0 -205
  714. package/dist/sheet-BFhrNehm.js.map +0 -1
  715. package/dist/sidebar-CyR4XKwR.js.map +0 -1
  716. package/dist/sidebar-SvGJ0Zwi.js +0 -506
  717. package/dist/sidebar-SvGJ0Zwi.js.map +0 -1
  718. package/dist/skeleton-3F0uhYn3.js.map +0 -1
  719. package/dist/smart-card-DjGVV2xr.js +0 -584
  720. package/dist/smart-card-DjGVV2xr.js.map +0 -1
  721. package/dist/spinner-Cpf7oRkF.js.map +0 -1
  722. package/dist/structure.recipes-Bqhf9oIh.js.map +0 -1
  723. package/dist/surface-recipes-Dd__PD-w.js +0 -28
  724. package/dist/surface-recipes-Dd__PD-w.js.map +0 -1
  725. package/dist/table-CLtJTxoR.js +0 -147
  726. package/dist/table-CLtJTxoR.js.map +0 -1
  727. package/dist/table-CcRDZiLP.js.map +0 -1
  728. package/dist/tabs-BNgu7g0u.js +0 -188
  729. package/dist/tabs-BNgu7g0u.js.map +0 -1
  730. package/dist/text-inputs-DsR56TR-.js.map +0 -1
  731. package/dist/text.styles-Q4sGAIgA.js.map +0 -1
  732. package/dist/timelines-D1pkt3se.js.map +0 -1
  733. package/dist/track-recipes-LLPNVwFg.js +0 -10
  734. package/dist/track-recipes-LLPNVwFg.js.map +0 -1
  735. package/dist/tree-BtmYyMZV.js.map +0 -1
  736. package/dist/typography-BxQgiZyw.js +0 -96
  737. package/dist/typography-BxQgiZyw.js.map +0 -1
  738. package/dist/ui-provider-DRPn3qNl.js.map +0 -1
  739. package/dist/upload-CDbYw1WN.js.map +0 -1
  740. package/dist/upload-queue-CNd_hH_a.js.map +0 -1
  741. package/dist/use-file-drop-target-BX7GnhoQ.js +0 -39
  742. package/dist/use-file-drop-target-BX7GnhoQ.js.map +0 -1
  743. package/dist/utils-BvH9PSmq.js.map +0 -1
  744. package/dist/value-inputs-D0KCrfVC.js +0 -840
  745. package/dist/value-inputs-D0KCrfVC.js.map +0 -1
  746. package/dist/workspace-CcR8r-Nt.js +0 -395
  747. package/dist/workspace-CcR8r-Nt.js.map +0 -1
  748. /package/dist/components/{blocks/data-display/metadata → base/metadata-list}/metadata-list.strings.d.ts +0 -0
@@ -1,255 +0,0 @@
1
- "use client";
2
- import { s as e } from "./ui-provider-DRPn3qNl.js";
3
- import { useStrings as t } from "./lib/strings.js";
4
- import { t as n } from "./utils-BvH9PSmq.js";
5
- import { a as r } from "./typography-BxQgiZyw.js";
6
- import { t as i } from "./field-state-recipes-DQQpiLWC.js";
7
- import { t as a } from "./field-affordance-recipes-uKY4MsZ_.js";
8
- import { t as o } from "./editable-text-recipe-Bkm6wKHp.js";
9
- import { i as s, l as c, n as ee, o as l, p as u, r as d, s as f, t as p, u as m } from "./form-sizing-QP8aIRaW.js";
10
- import * as h from "react";
11
- import { createContext as g, memo as _, useCallback as v, useId as y, useMemo as b, useRef as x, useState as S } from "react";
12
- import { jsx as C, jsxs as w } from "react/jsx-runtime";
13
- import { CircleXIcon as te, Loader2Icon as ne } from "lucide-react";
14
- //#region src/components/base/text-inputs/hooks/use-form-field-state.ts
15
- function T({ controlledValue: e, defaultValue: t, maxLength: n, showCharacterCount: r, providedId: i, idPrefix: a = "field", hasOnChange: o }) {
16
- let s = y(), c = i || `${a}${s}`, [ee, l] = S(t || ""), u = e !== void 0, d = (u ? e : ee) ?? "", f = !(!o || u || t), p = d.length, m = n !== void 0, h = r !== !1 && !!(r || m), g = d !== "", _ = v((e) => m && e.length > n, [m, n]), x = v((e) => !_(e) && (u || l(e), !0), [u, _]), C = v(() => {
17
- u || l("");
18
- }, [u]);
19
- return b(() => ({
20
- id: c,
21
- value: d,
22
- isControlled: u,
23
- isReactHookForm: f,
24
- characterCount: p,
25
- hasCharacterLimit: m,
26
- showCount: h,
27
- hasValue: g,
28
- updateValue: x,
29
- clearValue: C,
30
- wouldExceedLimit: _
31
- }), [
32
- c,
33
- d,
34
- u,
35
- f,
36
- p,
37
- m,
38
- h,
39
- g,
40
- x,
41
- C,
42
- _
43
- ]);
44
- }
45
- //#endregion
46
- //#region src/components/base/text-inputs/clear-native-field.ts
47
- function E(e) {
48
- let t = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(e), "value")?.set;
49
- e.type === "file" ? e.value = "" : t?.call(e, ""), e.dispatchEvent(new Event("change", { bubbles: !0 }));
50
- }
51
- //#endregion
52
- //#region src/components/base/text-inputs/input-trailing-action.ts
53
- var D = g(null), O = { clear: "Clear input" }, re = (e, t, n) => {
54
- let r = e || "";
55
- return t && r && (r = t + r), n && r && (r += n), r;
56
- };
57
- function k({ className: g, type: _ = "text", startIcon: y, endIcon: S, startAddon: k, endAddon: A, maxLength: j, showCharacterCount: ie, clearable: ae, onClear: oe, loading: M = !1, returnValueWithAddons: N, invalid: se, size: ce, onChange: P, value: le, defaultValue: ue, id: de, strings: fe, ...F }, I) {
58
- let L = x(null), R = h.useContext(D), z = x(null), B = x(null), [V, H] = h.useState(), [U, W] = h.useState(), pe = t(O, fe), { defaultScale: me } = e(), G = u(ce, me), he = v((e) => {
59
- typeof I == "function" ? I(e) : I && (I.current = e), L.current = e;
60
- }, [I]), { id: ge, value: _e, isReactHookForm: ve, characterCount: ye, hasCharacterLimit: be, showCount: K, hasValue: xe, updateValue: Se, clearValue: q, wouldExceedLimit: Ce } = T({
61
- controlledValue: le,
62
- defaultValue: ue,
63
- maxLength: j,
64
- showCharacterCount: ie,
65
- providedId: de,
66
- idPrefix: "input",
67
- hasOnChange: P !== void 0
68
- }), we = !!ae, J = M, Te = !!S, Ee = !!A, De = _ === "file", Y = !!se, X = we && xe && !K && !J, Z = J && !K, Q = Te && !X && !K && !J, $ = Ee && !X && !K && !J;
69
- h.useLayoutEffect(() => {
70
- let e = z.current, t = B.current, n = () => {
71
- if (e) {
72
- let t = e.getBoundingClientRect().width;
73
- t > 0 && H(t);
74
- } else H(void 0);
75
- if (t) {
76
- let e = t.getBoundingClientRect().width;
77
- e > 0 && W(e);
78
- } else W(void 0);
79
- };
80
- if (n(), !e && !t) return;
81
- let r = typeof ResizeObserver > "u" ? void 0 : new ResizeObserver(n);
82
- return e && r?.observe(e), t && r?.observe(t), window.addEventListener("resize", n), () => {
83
- r?.disconnect(), window.removeEventListener("resize", n);
84
- };
85
- }, [
86
- G,
87
- ye,
88
- j,
89
- k,
90
- A,
91
- Q,
92
- $,
93
- X,
94
- K,
95
- Z,
96
- R
97
- ]);
98
- let Oe = b(() => {
99
- let e = G === "sm" ? "ps-control-sm" : "ps-control", t = G === "sm" ? "pe-control-sm" : "pe-control";
100
- return y && (e = f[G]), k && (e = p[G]), k && U !== void 0 && (e = a.measuredStartPadding[G]), Q && (t = s[G]), $ && (t = d[G]), J && (t = s[G]), X && (t = a.clearPadding[G]), K && (t = ee[G]), R && (t = K ? a.pairedCountPadding[G] : X ? a.pairedClearPadding[G] : $ ? a.pairedAddonPadding[G] : Q || Z ? a.pairedIconPadding[G] : a.clearPadding[G]), V !== void 0 && (t = a.measuredPadding[G]), `${e} ${t}`;
101
- }, [
102
- y,
103
- k,
104
- Q,
105
- $,
106
- X,
107
- Z,
108
- J,
109
- K,
110
- R,
111
- V,
112
- U,
113
- G
114
- ]), ke = v((e) => {
115
- let t = e.target.value;
116
- if (!Ce(t) && (Se(t), P)) {
117
- if (N && t) {
118
- let n = re(t, k, A);
119
- P({
120
- ...e,
121
- target: {
122
- ...e.target,
123
- value: n
124
- },
125
- currentTarget: {
126
- ...e.currentTarget,
127
- value: n
128
- }
129
- });
130
- } else P(e);
131
- }
132
- }, [
133
- P,
134
- N,
135
- k,
136
- A,
137
- Se,
138
- Ce
139
- ]), Ae = v(() => {
140
- if (F.disabled || F.readOnly || M) return;
141
- let e = L.current;
142
- if (e?.type === "color" || e?.type === "range") {
143
- q();
144
- let t = {
145
- value: "",
146
- name: e.name,
147
- id: e.id,
148
- type: e.type
149
- };
150
- P?.({
151
- target: t,
152
- currentTarget: t
153
- });
154
- } else e && E(e);
155
- oe?.(), L.current?.focus();
156
- }, [
157
- F.disabled,
158
- F.readOnly,
159
- M,
160
- q,
161
- P,
162
- oe
163
- ]);
164
- return /* @__PURE__ */ w("div", {
165
- className: n("input--component", "relative h-fit w-full min-w-0"),
166
- style: V === void 0 && U === void 0 ? void 0 : {
167
- "--field-trailing-width": V === void 0 ? void 0 : `${V}px`,
168
- "--field-leading-width": U === void 0 ? void 0 : `${U}px`
169
- },
170
- children: [
171
- /* @__PURE__ */ C("input", {
172
- ref: he,
173
- id: ge,
174
- type: _,
175
- ...!ve && { value: _e },
176
- onChange: ke,
177
- maxLength: j,
178
- "aria-invalid": Y || void 0,
179
- className: n("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground", "border-input box-border flex w-full min-w-0 rounded-inner border", "transition-[color,box-shadow] outline-none", "disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", m[G], o[G], c[G], "file:inline-flex file:h-control-file file:border file:bg-transparent file:px-control file:font-medium", "file:text-pxs", De ? "cursor-pointer bg-background text-foreground file:cursor-pointer file:rounded-inner file:border-input file:bg-background file:text-foreground" : "bg-transparent", i.focus, i.invalid, De ? "read-only:bg-background" : "read-only:bg-muted", Oe, g),
180
- ...F,
181
- disabled: F.disabled || M
182
- }),
183
- !!y && /* @__PURE__ */ C("div", {
184
- className: n("pointer-events-none absolute inset-y-0 start-0 flex items-center justify-center", G === "sm" ? "ps-control-sm" : "ps-control", F.disabled && "opacity-50", Y ? "text-destructive" : "text-muted-foreground/80"),
185
- children: /* @__PURE__ */ C(y, {
186
- className: l[G],
187
- "aria-hidden": "true"
188
- })
189
- }),
190
- !!k && /* @__PURE__ */ C("span", {
191
- className: n("pointer-events-none absolute inset-y-0 start-0 flex items-center justify-center", G === "sm" ? "ps-control-sm" : "ps-control", F.disabled && "opacity-50"),
192
- children: /* @__PURE__ */ C(r, {
193
- ref: B,
194
- tag: "span",
195
- size: G === "sm" ? "pxs" : "sm",
196
- type: Y ? "error" : "secondary",
197
- lineHeight: "tight",
198
- className: "input--start-addon",
199
- children: k
200
- })
201
- }),
202
- (Q || $ || K || Z || X || R) && /* @__PURE__ */ w("div", {
203
- ref: z,
204
- className: n("input--trailing absolute inset-y-0 flex items-center gap-space-sm whitespace-nowrap", a.clearEnd[G]),
205
- children: [
206
- Q && S && /* @__PURE__ */ C(S, {
207
- className: n("pointer-events-none", l[G], Y ? "text-destructive" : "text-muted-foreground"),
208
- "aria-hidden": "true"
209
- }),
210
- $ && /* @__PURE__ */ C(r, {
211
- tag: "span",
212
- size: G === "sm" ? "pxs" : "sm",
213
- type: Y ? "error" : "secondary",
214
- lineHeight: "tight",
215
- className: "input--end-addon pointer-events-none",
216
- children: A
217
- }),
218
- K && /* @__PURE__ */ C("div", {
219
- role: "status",
220
- "aria-live": "polite",
221
- className: "pointer-events-none tabular-nums",
222
- children: /* @__PURE__ */ w(r, {
223
- tag: "span",
224
- size: G === "sm" ? "xxs" : "xs",
225
- type: Y ? "error" : "secondary",
226
- children: [ye, be ? `/${j}` : ""]
227
- })
228
- }),
229
- Z && /* @__PURE__ */ C(ne, {
230
- className: n(l[G], "pointer-events-none animate-spin", Y ? "text-destructive" : "text-muted-foreground"),
231
- "aria-hidden": "true"
232
- }),
233
- X && /* @__PURE__ */ C("button", {
234
- type: "button",
235
- className: n(a.target, a.focus, a.clear),
236
- "aria-label": pe.clear,
237
- onClick: Ae,
238
- disabled: F.disabled || F.readOnly || M,
239
- children: /* @__PURE__ */ C(te, {
240
- className: a.icon,
241
- "aria-hidden": "true"
242
- })
243
- }),
244
- R
245
- ]
246
- })
247
- ]
248
- });
249
- }
250
- var A = _(h.forwardRef(k));
251
- A.displayName = "Input";
252
- //#endregion
253
- export { T as a, E as i, O as n, D as r, A as t };
254
-
255
- //# sourceMappingURL=input-SX9V0AL3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-SX9V0AL3.js","names":["React","useDensityConfig","cn","Text","fieldStateRecipes","fieldAffordanceRecipes","editableTextSizeClasses","formControlEndIconOffsetClasses","formControlPaddingClasses","formControlCountOffsetClasses","formControlIconClasses","resolveFormControlSize","formControlEndAddonOffsetClasses","formControlIconOffsetClasses","formControlAddonOffsetClasses","formControlSizeClasses","React$1","useFormFieldState","reactId","useId","id","providedId","idPrefix","internalValue","setInternalValue","useState","defaultValue","isControlled","controlledValue","value","isReactHookForm","characterCount","hasCharacterLimit","maxLength","showCount","showCharacterCount","hasValue","wouldExceedLimit","useCallback","newValue","updateValue","clearValue","useMemo","clearNativeField","setValue","field","InputTrailingActionContext","createContext","defaultInputStrings","getValueWithAddons","result","startAddon","endAddon","InputImpl","StartIcon","EndIcon","sizeProp","stringsProp","props","inputRef","useRef","trailingAction","trailingRef","leadingRef","trailingWidth","setTrailingWidth","leadingWidth","setLeadingWidth","strings","useStrings","size","defaultScale","setRefs","forwardedRef","node","inputValue","onChange","isClearable","clearable","isShowingLoading","loading","hasEndIcon","hasEndAddon","isFileInput","type","hasError","invalid","showClearButton","showLoadingSpinner","showEndIcon","showEndAddon","track","leading","measure","width","observer","inputPaddingClasses","paddingStart","paddingEnd","handleInputChange","returnValueWithAddons","valueWithAddons","handleClear","nativeField","target","onClear","className","Loader2Icon","CircleXIcon","Input","memo"],"sources":["../src/components/base/text-inputs/hooks/use-form-field-state.ts","../src/components/base/text-inputs/clear-native-field.ts","../src/components/base/text-inputs/input-trailing-action.ts","../src/components/base/text-inputs/input.tsx"],"sourcesContent":["import { useState, useCallback, useMemo, useId } from 'react';\n\nexport interface UseFormFieldStateOptions {\n\t/** Controlled value from parent */\n\tcontrolledValue?: string;\n\t/** Default value for uncontrolled mode */\n\tdefaultValue?: string;\n\t/** Maximum character length */\n\tmaxLength?: number;\n\t/** Whether to show character count */\n\tshowCharacterCount?: boolean;\n\t/** Provided ID or auto-generate */\n\tprovidedId?: string;\n\t/** Prefix for auto-generated ID */\n\tidPrefix?: string;\n\t/** Whether onChange is provided (for react-hook-form detection) */\n\thasOnChange?: boolean;\n}\n\nexport interface UseFormFieldStateReturn {\n\t/** Generated or provided ID */\n\tid: string;\n\t/** Current value (controlled or internal) */\n\tvalue: string;\n\t/** Whether component is in controlled mode */\n\tisControlled: boolean;\n\t/** Whether using react-hook-form (has onChange but no controlled value) */\n\tisReactHookForm: boolean;\n\t/** Current character count */\n\tcharacterCount: number;\n\t/** Whether a character limit is set */\n\thasCharacterLimit: boolean;\n\t/** Whether to show character count UI */\n\tshowCount: boolean;\n\t/** Whether the field has a value */\n\thasValue: boolean;\n\t/** Update value - returns false if blocked by character limit */\n\tupdateValue: (newValue: string) => boolean;\n\t/** Clear the value */\n\tclearValue: () => void;\n\t/** Check if a new value would exceed the character limit */\n\twouldExceedLimit: (newValue: string) => boolean;\n}\n\n/**\n * Shared hook for managing form field state including:\n * - Controlled vs uncontrolled value handling\n * - Character counting and limits\n * - React Hook Form compatibility detection\n * - ID generation\n */\nexport function useFormFieldState({\n\tcontrolledValue,\n\tdefaultValue,\n\tmaxLength,\n\tshowCharacterCount,\n\tprovidedId,\n\tidPrefix = 'field',\n\thasOnChange,\n}: UseFormFieldStateOptions): UseFormFieldStateReturn {\n\t// Generate stable ID using React 18's useId (SSR-safe)\n\tconst reactId = useId();\n\tconst id = providedId || `${idPrefix}${reactId}`;\n\n\t// Internal state for uncontrolled mode\n\tconst [internalValue, setInternalValue] = useState(defaultValue || '');\n\n\t// Determine control mode\n\tconst isControlled = controlledValue !== undefined;\n\n\t// Normalize value (handle null from backend)\n\tconst rawValue = isControlled ? controlledValue : internalValue;\n\tconst value = rawValue ?? '';\n\n\t// React Hook Form detection: has onChange but no controlled value or defaultValue\n\tconst isReactHookForm = Boolean(hasOnChange && !isControlled && !defaultValue);\n\n\t// Character counting\n\tconst characterCount = value.length;\n\tconst hasCharacterLimit = maxLength !== undefined;\n\tconst showCount = showCharacterCount === false ? false : Boolean(showCharacterCount || hasCharacterLimit);\n\tconst hasValue = value !== '';\n\n\t// Check if value would exceed limit\n\tconst wouldExceedLimit = useCallback(\n\t\t(newValue: string) => {\n\t\t\treturn hasCharacterLimit && newValue.length > maxLength;\n\t\t},\n\t\t[hasCharacterLimit, maxLength]\n\t);\n\n\t// Update value (respects character limit, updates internal state if uncontrolled)\n\tconst updateValue = useCallback(\n\t\t(newValue: string): boolean => {\n\t\t\tif (wouldExceedLimit(newValue)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (!isControlled) {\n\t\t\t\tsetInternalValue(newValue);\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\t\t[isControlled, wouldExceedLimit]\n\t);\n\n\t// Clear value\n\tconst clearValue = useCallback(() => {\n\t\tif (!isControlled) {\n\t\t\tsetInternalValue('');\n\t\t}\n\t}, [isControlled]);\n\n\treturn useMemo(\n\t\t() => ({\n\t\t\tid,\n\t\t\tvalue,\n\t\t\tisControlled,\n\t\t\tisReactHookForm,\n\t\t\tcharacterCount,\n\t\t\thasCharacterLimit,\n\t\t\tshowCount,\n\t\t\thasValue,\n\t\t\tupdateValue,\n\t\t\tclearValue,\n\t\t\twouldExceedLimit,\n\t\t}),\n\t\t[\n\t\t\tid,\n\t\t\tvalue,\n\t\t\tisControlled,\n\t\t\tisReactHookForm,\n\t\t\tcharacterCount,\n\t\t\thasCharacterLimit,\n\t\t\tshowCount,\n\t\t\thasValue,\n\t\t\tupdateValue,\n\t\t\tclearValue,\n\t\t\twouldExceedLimit,\n\t\t]\n\t);\n}\n","/** Route inline clearing through the field's existing native change handler. */\nexport function clearNativeField(field: HTMLInputElement | HTMLTextAreaElement) {\n\t// Bypass React's value tracker so it observes the change and restores any\n\t// controlled value that the consumer declines or replaces synchronously.\n\tconst setValue = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(field), 'value')?.set;\n\tif (field.type === 'file') field.value = '';\n\telse setValue?.call(field, '');\n\tfield.dispatchEvent(new Event('change', { bubbles: true }));\n}\n","import { createContext, type ReactNode } from 'react';\n\n/** Private composition seam: the Input owner lays out PasswordInput's action. */\nexport const InputTrailingActionContext = createContext<ReactNode>(null);\n","import { fieldStateRecipes } from '../../../lib/field-state-recipes';\nimport { fieldAffordanceRecipes } from '../../../lib/field-affordance-recipes';\nimport { editableTextSizeClasses } from '../../../lib/editable-text-recipe';\nimport { CircleXIcon, Loader2Icon, type LucideIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { useRef, useCallback, useMemo, memo } from 'react';\nimport { Text } from '../../typography';\nimport { useDensityConfig, type FormControlSize } from '../../../lib/ui-provider';\nimport { useStrings, type StringsProp } from '../../../lib/strings';\nimport { cn } from '../../../lib/utils';\nimport {\n\t\tformControlAddonOffsetClasses,\n\t\tformControlCountOffsetClasses,\n\t\tformControlEndAddonOffsetClasses,\n\t\tformControlEndIconOffsetClasses,\n\t\tformControlIconClasses,\n\t\tformControlIconOffsetClasses,\n\t\tformControlPaddingClasses,\n\t\tformControlSizeClasses,\n\t\tresolveFormControlSize,\n} from '../forms/form-sizing';\nimport { useFormFieldState } from './hooks';\nimport { clearNativeField } from './clear-native-field';\nimport { InputTrailingActionContext } from './input-trailing-action';\n\nexport interface InputStrings {\n\t/** Accessible label for the clear action. */\n\t\tclear: string;\n}\n\nexport const defaultInputStrings: InputStrings = {\n\t\tclear: 'Clear input',\n};\n\n/**\n * Helper function to get value with prefix/suffix\n */\nconst getValueWithAddons = (value: string, startAddon?: string, endAddon?: string): string => {\n\t\tlet result = value || '';\n\t\tif (startAddon && result) result = startAddon + result;\n\t\tif (endAddon && result) result = result + endAddon;\n\t\treturn result;\n};\n\nexport interface InputProps extends Omit<React.ComponentProps<'input'>, 'onChange' | 'size'> {\n\t/** Decorative or semantic icon rendered before the value. */\n\t\tstartIcon?: LucideIcon;\n\t/** Decorative or semantic icon rendered after the value. */\n\t\tendIcon?: LucideIcon;\n\n\t/** Visual text prefix rendered inside the input frame. */\n\t\tstartAddon?: string;\n\t/** Visual text suffix rendered inside the input frame. */\n\t\tendAddon?: string;\n\n\t/** Maximum accepted character count. */\n\t\tmaxLength?: number;\n\t/** Shows the current and maximum character count. */\n\t\tshowCharacterCount?: boolean;\n\n\t/** Shows an inline clear action when the input has a value. */\n\t\tclearable?: boolean;\n\t/** Called after the inline clear action resets the value. */\n\t\tonClear?: () => void;\n\n\t/** Replaces the trailing affordance with a loading indicator. */\n\t\tloading?: boolean;\n\n\t/** Includes visual add-on text in the value exposed by `onChange`. */\n\t\treturnValueWithAddons?: boolean;\n\n\t/** Applies invalid control styling. Validation copy remains owned by FormField. */\n\t\tinvalid?: boolean;\n\n\t/** Control-height preset. Falls back to `UIProvider.density.defaultScale`. */\n\t\tsize?: FormControlSize;\n\n\t/** Native-style value callback for the controlled raw string. */\n\t\tonChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n\t/** Controlled raw string value. */\n\t\tvalue?: string;\n\t/** Initial raw string value for uncontrolled usage. */\n\t\tdefaultValue?: string;\n\n\t/** Accessible copy overrides for input-owned actions. */\n\t\tstrings?: StringsProp<InputStrings>;\n}\n\nfunction InputImpl(\n\t{\n\t\tclassName,\n\t\ttype = 'text',\n\t\tstartIcon: StartIcon,\n\t\tendIcon: EndIcon,\n\t\tstartAddon,\n\t\tendAddon,\n\t\tmaxLength,\n\t\tshowCharacterCount,\n\t\tclearable,\n\t\tonClear,\n\t\tloading = false,\n\t\treturnValueWithAddons,\n\t\tinvalid,\n\t\tsize: sizeProp,\n\t\tonChange,\n\t\tvalue: controlledValue,\n\t\tdefaultValue,\n\t\tid: providedId,\n\t\tstrings: stringsProp,\n\t\t...props\n\t}: InputProps,\n\tforwardedRef: React.ForwardedRef<HTMLInputElement>,\n) {\n\t\tconst inputRef = useRef<HTMLInputElement>(null);\n\t\tconst trailingAction = React.useContext(InputTrailingActionContext);\n\t\tconst trailingRef = useRef<HTMLDivElement>(null);\n\t\tconst leadingRef = useRef<HTMLElement>(null);\n\t\tconst [trailingWidth, setTrailingWidth] = React.useState<number>();\n\t\tconst [leadingWidth, setLeadingWidth] = React.useState<number>();\n\t\tconst strings = useStrings(defaultInputStrings, stringsProp);\n\t\tconst { defaultScale } = useDensityConfig();\n\t\tconst size = resolveFormControlSize(sizeProp, defaultScale);\n\n\t\t// Memoize ref callback to avoid recreation on every render\n\t\tconst setRefs = useCallback(\n\t\t\t\t(node: HTMLInputElement | null) => {\n\t\t\t\t\t\tif (typeof forwardedRef === 'function') {\n\t\t\t\t\t\t\t\tforwardedRef(node);\n\t\t\t\t\t\t} else if (forwardedRef) {\n\t\t\t\t\t\t\t\tforwardedRef.current = node;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tinputRef.current = node;\n\t\t\t\t},\n\t\t\t\t[forwardedRef]\n\t\t);\n\n\t\t// Use shared form field state hook\n\t\tconst {\n\t\t\t\tid,\n\t\t\t\tvalue: inputValue,\n\t\t\t\tisReactHookForm,\n\t\t\t\tcharacterCount,\n\t\t\t\thasCharacterLimit,\n\t\t\t\tshowCount,\n\t\t\t\thasValue,\n\t\t\t\tupdateValue,\n\t\t\t\tclearValue,\n\t\t\t\twouldExceedLimit,\n\t\t} = useFormFieldState({\n\t\t\t\tcontrolledValue,\n\t\t\t\tdefaultValue,\n\t\t\t\tmaxLength,\n\t\t\t\tshowCharacterCount,\n\t\t\t\tprovidedId,\n\t\t\t\tidPrefix: 'input',\n\t\t\t\thasOnChange: onChange !== undefined,\n\t\t});\n\n\t\t// Derive display states (simple booleans, no need for useMemo)\n\t\tconst isClearable = !!clearable;\n\t\tconst isShowingLoading = loading;\n\t\tconst hasEndIcon = !!EndIcon;\n\t\tconst hasEndAddon = !!endAddon;\n\t\tconst isFileInput = type === 'file';\n\t\tconst hasError = !!invalid;\n\t\tconst showClearButton = isClearable && hasValue && !showCount && !isShowingLoading;\n\t\tconst showLoadingSpinner = isShowingLoading && !showCount;\n\t\tconst showEndIcon = hasEndIcon && !showClearButton && !showCount && !isShowingLoading;\n\t\tconst showEndAddon = hasEndAddon && !showClearButton && !showCount && !isShowingLoading;\n\n\t\tReact.useLayoutEffect(() => {\n\t\t\tconst track = trailingRef.current;\n\t\t\tconst leading = leadingRef.current;\n\t\t\tconst measure = () => {\n\t\t\t\t// Hidden/SSR surfaces retain the generated fallback until measurable.\n\t\t\t\tif (track) {\n\t\t\t\t\tconst width = track.getBoundingClientRect().width;\n\t\t\t\t\tif (width > 0) setTrailingWidth(width);\n\t\t\t\t} else setTrailingWidth(undefined);\n\t\t\t\tif (leading) {\n\t\t\t\t\tconst width = leading.getBoundingClientRect().width;\n\t\t\t\t\tif (width > 0) setLeadingWidth(width);\n\t\t\t\t} else setLeadingWidth(undefined);\n\t\t\t};\n\t\t\tmeasure();\n\t\t\tif (!track && !leading) return;\n\t\t\tconst observer = typeof ResizeObserver === 'undefined' ? undefined : new ResizeObserver(measure);\n\t\t\tif (track) observer?.observe(track);\n\t\t\tif (leading) observer?.observe(leading);\n\t\t\twindow.addEventListener('resize', measure);\n\t\t\treturn () => { observer?.disconnect(); window.removeEventListener('resize', measure); };\n\t\t}, [size, characterCount, maxLength, startAddon, endAddon, showEndIcon, showEndAddon, showClearButton, showCount, showLoadingSpinner, trailingAction]);\n\n\t\t// Generated fallbacks cover SSR; measured text keeps translated add-ons\n\t\t// clear of the editable value. Consumer padding classes remain last.\n\t\tconst inputPaddingClasses = useMemo(() => {\n\t\t\t\tlet paddingStart = size === 'sm' ? 'ps-control-sm' : 'ps-control';\n\t\t\t\tlet paddingEnd = size === 'sm' ? 'pe-control-sm' : 'pe-control';\n\n\t\t\t\tif (StartIcon) paddingStart = formControlIconOffsetClasses[size];\n\t\t\t\tif (startAddon) paddingStart = formControlAddonOffsetClasses[size];\n\t\t\t\tif (startAddon && leadingWidth !== undefined) paddingStart = fieldAffordanceRecipes.measuredStartPadding[size];\n\n\t\t\t\tif (showEndIcon) paddingEnd = formControlEndIconOffsetClasses[size];\n\t\t\t\tif (showEndAddon) paddingEnd = formControlEndAddonOffsetClasses[size];\n\t\t\t\tif (isShowingLoading) paddingEnd = formControlEndIconOffsetClasses[size];\n\t\t\t\tif (showClearButton) paddingEnd = fieldAffordanceRecipes.clearPadding[size];\n\t\t\t\tif (showCount) paddingEnd = formControlCountOffsetClasses[size];\n\t\t\t\tif (trailingAction) {\n\t\t\t\t\tpaddingEnd = showCount ? fieldAffordanceRecipes.pairedCountPadding[size]\n\t\t\t\t\t\t: showClearButton ? fieldAffordanceRecipes.pairedClearPadding[size]\n\t\t\t\t\t\t: showEndAddon ? fieldAffordanceRecipes.pairedAddonPadding[size]\n\t\t\t\t\t\t: showEndIcon || showLoadingSpinner ? fieldAffordanceRecipes.pairedIconPadding[size]\n\t\t\t\t\t\t: fieldAffordanceRecipes.clearPadding[size];\n\t\t\t\t}\n\n\t\t\t\tif (trailingWidth !== undefined) paddingEnd = fieldAffordanceRecipes.measuredPadding[size];\n\n\t\t\t\treturn `${paddingStart} ${paddingEnd}`;\n\t\t}, [StartIcon, startAddon, showEndIcon, showEndAddon, showClearButton, showLoadingSpinner, isShowingLoading, showCount, trailingAction, trailingWidth, leadingWidth, size]);\n\n\t\tconst handleInputChange = useCallback(\n\t\t\t\t(e: React.ChangeEvent<HTMLInputElement>) => {\n\t\t\t\t\t\tconst newValue = e.target.value;\n\n\t\t\t\t\t\t// Check character limit\n\t\t\t\t\t\tif (wouldExceedLimit(newValue)) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Update internal state if uncontrolled\n\t\t\t\t\t\tupdateValue(newValue);\n\n\t\t\t\t\t\t// Call external onChange with modified event if addons are requested\n\t\t\t\t\t\tif (onChange) {\n\t\t\t\t\t\t\t\tif (returnValueWithAddons && newValue) {\n\t\t\t\t\t\t\t\t\t\tconst valueWithAddons = getValueWithAddons(newValue, startAddon, endAddon);\n\t\t\t\t\t\t\t\t\t\tconst modifiedEvent = {\n\t\t\t\t\t\t\t\t\t\t\t\t...e,\n\t\t\t\t\t\t\t\t\t\t\t\ttarget: { ...e.target, value: valueWithAddons },\n\t\t\t\t\t\t\t\t\t\t\t\tcurrentTarget: { ...e.currentTarget, value: valueWithAddons },\n\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\tonChange(modifiedEvent as React.ChangeEvent<HTMLInputElement>);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\tonChange(e);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t[onChange, returnValueWithAddons, startAddon, endAddon, updateValue, wouldExceedLimit]\n\t\t);\n\n\t\tconst handleClear = useCallback(() => {\n\t\t\t\tif (props.disabled || props.readOnly || loading) return;\n\n\t\t\t\tconst nativeField = inputRef.current;\n\t\t\t\tif (nativeField?.type === 'color' || nativeField?.type === 'range') {\n\t\t\t\t\t\t// These native types cannot represent ''. Retain the existing empty\n\t\t\t\t\t\t// proposal while the browser owns the rendered value's sanitization.\n\t\t\t\t\t\tclearValue();\n\t\t\t\t\t\tconst target = { value: '', name: nativeField.name, id: nativeField.id, type: nativeField.type };\n\t\t\t\t\t\tonChange?.({ target, currentTarget: target } as React.ChangeEvent<HTMLInputElement>);\n\t\t\t\t} else if (nativeField) {\n\t\t\t\t\t\tclearNativeField(nativeField);\n\t\t\t\t}\n\n\t\t\t\t// Execute optional onClear callback\n\t\t\t\tonClear?.();\n\n\t\t\t\t// Focus the input after clearing\n\t\t\t\tinputRef.current?.focus();\n\t\t}, [props.disabled, props.readOnly, loading, clearValue, onChange, onClear]);\n\n\n\n\t\treturn (\n\t\t\t\t<div className={cn('input--component', 'relative h-fit w-full min-w-0')} style={trailingWidth === undefined && leadingWidth === undefined ? undefined : {\n\t\t\t\t\t'--field-trailing-width': trailingWidth === undefined ? undefined : `${trailingWidth}px`,\n\t\t\t\t\t'--field-leading-width': leadingWidth === undefined ? undefined : `${leadingWidth}px`,\n\t\t\t\t} as React.CSSProperties}>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\tref={setRefs}\n\t\t\t\t\t\t\t\tid={id}\n\t\t\t\t\t\t\t\ttype={type}\n\t\t\t\t\t\t\t\t{...(!isReactHookForm && { value: inputValue })}\n\t\t\t\t\t\t\t\tonChange={handleInputChange}\n\t\t\t\t\t\t\t\tmaxLength={maxLength}\n\t\t\t\t\t\t\t\taria-invalid={hasError || undefined}\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t// Base styles\n\t\t\t\t\t\t\t\t\t\t'file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground',\n\t\t\t\t\t\t\t\t\t\t'border-input box-border flex w-full min-w-0 rounded-inner border',\n\t\t\t\t\t\t\t\t\t\t'transition-[color,box-shadow] outline-none',\n\t\t\t\t\t\t\t\t\t\t'disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50',\n\t\t\t\t\t\t\t\t\t\tformControlSizeClasses[size],\n\t\t\t\t\t\t\t\t\t\teditableTextSizeClasses[size],\n\t\t\t\t\t\t\t\t\t\tformControlPaddingClasses[size],\n\t\t\t\t\t\t\t\t\t\t// File input styles\n\t\t\t\t\t\t\t\t\t\t'file:inline-flex file:h-control-file file:border file:bg-transparent file:px-control file:font-medium',\n\t\t\t\t\t\t\t\t\t\t'file:text-pxs',\n\t\t\t\t\t\t\t\t\t\tisFileInput\n\t\t\t\t\t\t\t\t\t\t\t\t? 'cursor-pointer bg-background text-foreground file:cursor-pointer file:rounded-inner file:border-input file:bg-background file:text-foreground'\n\t\t\t\t\t\t\t\t\t\t\t\t: 'bg-transparent',\n\t\t\t\t\t\t\t\t\t\t// Focus styles\n\t\t\t\t\t\t\t\t\t\tfieldStateRecipes.focus,\n\t\t\t\t\t\t\t\t\t\t// Validation belongs to the frame, not the editable value\n\t\t\t\t\t\t\t\t\t\tfieldStateRecipes.invalid,\n\t\t\t\t\t\t\t\t\t\t// Read-only styles\n\t\t\t\t\t\t\t\t\t\tisFileInput\n\t\t\t\t\t\t\t\t\t\t\t\t? 'read-only:bg-background'\n\t\t\t\t\t\t\t\t\t\t\t\t: 'read-only:bg-muted',\n\t\t\t\t\t\t\t\t\t\t// Dynamic padding\n\t\t\t\t\t\t\t\t\t\tinputPaddingClasses,\n\t\t\t\t\t\t\t\t\t\tclassName\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{...props}\n\t\t\t\t\t\t\t\tdisabled={props.disabled || loading}\n\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t{/* Start Icon */}\n\t\t\t\t\t\t{!!StartIcon && (\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t'pointer-events-none absolute inset-y-0 start-0 flex items-center justify-center',\n\t\t\t\t\t\t\t\t\t\t\t\tsize === 'sm' ? 'ps-control-sm' : 'ps-control',\n\t\t\t\t\t\t\t\t\t\t\t\tprops.disabled && 'opacity-50',\n\t\t\t\t\t\t\t\t\t\t\t\thasError ? 'text-destructive' : 'text-muted-foreground/80'\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<StartIcon className={formControlIconClasses[size]} aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{/* Start Add-on */}\n\t\t\t\t\t\t{!!startAddon && (\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\t'pointer-events-none absolute inset-y-0 start-0 flex items-center justify-center',\n\t\t\t\t\t\t\t\t\t\t\t\tsize === 'sm' ? 'ps-control-sm' : 'ps-control',\n\t\t\t\t\t\t\t\t\t\t\t\tprops.disabled && 'opacity-50',\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t<Text\n\t\t\t\t\t\tref={leadingRef}\n\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\tsize={size === 'sm' ? 'pxs' : 'sm'}\n\t\t\t\t\t\ttype={hasError ? 'error' : 'secondary'}\n\t\t\t\t\t\tlineHeight=\"tight\"\n\t\t\t\t\t\tclassName=\"input--start-addon\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{startAddon}\n\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{(showEndIcon || showEndAddon || showCount || showLoadingSpinner || showClearButton || trailingAction) && (\n\t\t\t\t\t\t\t<div ref={trailingRef} className={cn('input--trailing absolute inset-y-0 flex items-center gap-space-sm whitespace-nowrap', fieldAffordanceRecipes.clearEnd[size])}>\n\t\t\t\t\t\t\t\t{showEndIcon && EndIcon && <EndIcon className={cn('pointer-events-none', formControlIconClasses[size], hasError ? 'text-destructive' : 'text-muted-foreground')} aria-hidden=\"true\" />}\n\t\t\t\t\t\t\t\t{showEndAddon && <Text tag=\"span\" size={size === 'sm' ? 'pxs' : 'sm'} type={hasError ? 'error' : 'secondary'} lineHeight=\"tight\" className=\"input--end-addon pointer-events-none\">{endAddon}</Text>}\n\t\t\t\t\t\t\t\t{showCount && <div role=\"status\" aria-live=\"polite\" className=\"pointer-events-none tabular-nums\">\n\t\t\t\t\t\t\t\t\t<Text tag=\"span\" size={size === 'sm' ? 'xxs' : 'xs'} type={hasError ? 'error' : 'secondary'}>{characterCount}{hasCharacterLimit ? `/${maxLength}` : ''}</Text>\n\t\t\t\t\t\t\t\t</div>}\n\t\t\t\t\t\t\t\t{showLoadingSpinner && <Loader2Icon className={cn(formControlIconClasses[size], 'pointer-events-none animate-spin', hasError ? 'text-destructive' : 'text-muted-foreground')} aria-hidden=\"true\" />}\n\t\t\t\t\t\t\t\t{showClearButton && <button type=\"button\" className={cn(fieldAffordanceRecipes.target, fieldAffordanceRecipes.focus, fieldAffordanceRecipes.clear)} aria-label={strings.clear} onClick={handleClear} disabled={props.disabled || props.readOnly || loading}>\n\t\t\t\t\t\t\t\t\t<CircleXIcon className={fieldAffordanceRecipes.icon} aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t</button>}\n\t\t\t\t\t\t\t\t{trailingAction}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t);\n}\n\n// forwardRef + memo (needed for callers that require refs, e.g. segmented inputs)\nconst Input = memo(React.forwardRef<HTMLInputElement, InputProps>(InputImpl));\nInput.displayName = 'Input';\n\nexport { Input };\n"],"mappings":"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"}
@@ -1,258 +0,0 @@
1
- "use client";
2
- import { _ as e, l as t, s as n } from "./ui-provider-DRPn3qNl.js";
3
- import { t as r } from "./utils-BvH9PSmq.js";
4
- import { t as i } from "./separator-BhtFyo4x.js";
5
- import { a } from "./typography-BxQgiZyw.js";
6
- import { n as o } from "./icon-size-B6PVwjbC.js";
7
- import { t as s } from "./row-recipes-DL8n7t_b.js";
8
- import { forwardRef as c } from "react";
9
- import { Fragment as l, jsx as u, jsxs as d } from "react/jsx-runtime";
10
- import { mergeProps as f } from "@base-ui/react/merge-props";
11
- import { useRender as p } from "@base-ui/react/use-render";
12
- import { cva as m } from "class-variance-authority";
13
- //#region src/components/ui/item.tsx
14
- function h({ className: e, ...t }) {
15
- return /* @__PURE__ */ u("div", {
16
- role: "list",
17
- "data-slot": "item-group",
18
- className: r("group/item-group flex w-full flex-col", e),
19
- ...t
20
- });
21
- }
22
- function g({ className: e, ...t }) {
23
- return /* @__PURE__ */ u(i, {
24
- "data-slot": "item-separator",
25
- orientation: "horizontal",
26
- className: r("my-space-md", e),
27
- ...t
28
- });
29
- }
30
- var _ = m("group/item flex w-full flex-wrap items-center rounded-inner border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring [a]:transition-colors [a]:hover:bg-muted", {
31
- variants: {
32
- variant: {
33
- default: "border-transparent",
34
- outline: "border-border",
35
- muted: "border-transparent bg-muted/50"
36
- },
37
- size: {
38
- default: r("gap-space-lg px-row-x", s.comfortable),
39
- sm: r("gap-space-lg px-row-x", s.default),
40
- xs: r("gap-space-md px-row-x in-data-[slot=dropdown-menu-content]:p-0", s.compact)
41
- }
42
- },
43
- defaultVariants: {
44
- variant: "default",
45
- size: "default"
46
- }
47
- });
48
- function v({ className: e, variant: t = "default", size: n = "default", render: i, ...a }) {
49
- return p({
50
- defaultTagName: "div",
51
- props: f({ className: r(_({
52
- variant: t,
53
- size: n,
54
- className: e
55
- })) }, a),
56
- render: i,
57
- state: {
58
- slot: "item",
59
- variant: t,
60
- size: n
61
- }
62
- });
63
- }
64
- var y = m("flex shrink-0 items-center justify-center gap-space-md group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start [&_svg]:pointer-events-none", {
65
- variants: { variant: {
66
- default: "bg-transparent",
67
- icon: "[&_svg:not([class*='size-'])]:size-4",
68
- image: "size-10 overflow-hidden rounded-inner group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 group-data-[size=xs]/item:rounded-inner [&_img]:size-full [&_img]:object-cover"
69
- } },
70
- defaultVariants: { variant: "default" }
71
- });
72
- function b({ className: e, variant: t = "default", ...n }) {
73
- return /* @__PURE__ */ u("div", {
74
- "data-slot": "item-media",
75
- "data-variant": t,
76
- className: r(y({
77
- variant: t,
78
- className: e
79
- })),
80
- ...n
81
- });
82
- }
83
- function x({ className: e, ...t }) {
84
- return /* @__PURE__ */ u("div", {
85
- "data-slot": "item-content",
86
- className: r("flex flex-1 flex-col [&+[data-slot=item-content]]:flex-none", e),
87
- ...t
88
- });
89
- }
90
- function S({ className: e, ...t }) {
91
- return /* @__PURE__ */ u("div", {
92
- "data-slot": "item-title",
93
- className: r("line-clamp-1 flex w-fit items-center gap-space-md text-sm leading-snug font-medium underline-offset-4", e),
94
- ...t
95
- });
96
- }
97
- function C({ className: e, ...t }) {
98
- return /* @__PURE__ */ u("p", {
99
- "data-slot": "item-description",
100
- className: r("m-0 line-clamp-2 text-left text-sm font-normal text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary", e),
101
- ...t
102
- });
103
- }
104
- function w({ className: e, ...t }) {
105
- return /* @__PURE__ */ u("div", {
106
- "data-slot": "item-actions",
107
- className: r("flex items-center", e),
108
- ...t
109
- });
110
- }
111
- function T({ className: e, ...t }) {
112
- return /* @__PURE__ */ u("div", {
113
- "data-slot": "item-header",
114
- className: r("flex basis-full items-center justify-between gap-space-md", e),
115
- ...t
116
- });
117
- }
118
- function E({ className: e, ...t }) {
119
- return /* @__PURE__ */ u("div", {
120
- "data-slot": "item-footer",
121
- className: r("flex basis-full items-center justify-between gap-space-md", e),
122
- ...t
123
- });
124
- }
125
- //#endregion
126
- //#region src/components/base/item/item.tsx
127
- var D = c(function(i, a) {
128
- let o = "title" in i, { size: c, density: f = "default", variant: p, padding: m = "none", textGap: h = "dense", render: g, className: _, children: y, media: b, mediaVariant: x, title: S, description: C, trailing: w, actions: T, titleBold: E, descriptionClamp: D, ...O } = i, { defaultVariant: k = "default" } = t(), { defaultScale: N } = n(), P = e(c, N), I = P === "sm" ? "xs" : "sm", R = p ?? k, z = P === "sm" ? "text-pxs" : P === "lg" ? "text-base" : "text-sm", B = m === "default" ? "px-row-x" : "px-0", V = o ? /* @__PURE__ */ d(l, { children: [
129
- b == null ? null : /* @__PURE__ */ u(A, {
130
- variant: x,
131
- children: b
132
- }),
133
- /* @__PURE__ */ d(j, {
134
- textGap: h,
135
- className: "basis-48",
136
- children: [/* @__PURE__ */ u(F, {
137
- bold: E,
138
- children: S
139
- }), C == null ? null : /* @__PURE__ */ u(L, {
140
- clamp: D,
141
- children: C
142
- })]
143
- }),
144
- w != null || T != null ? /* @__PURE__ */ d(M, { children: [w, T] }) : null
145
- ] }) : y;
146
- return /* @__PURE__ */ u(v, {
147
- ref: a,
148
- size: I,
149
- variant: R,
150
- render: g,
151
- className: r("item--component box-border font-sans gap-space-lg rounded-inner", s[f], B, z, _),
152
- ...O,
153
- children: V
154
- });
155
- });
156
- D.displayName = "Item";
157
- var O = c(function({ className: e, role: t, ...n }, i) {
158
- return /* @__PURE__ */ u(h, {
159
- ref: i,
160
- role: t,
161
- className: r("item-group--component gap-space-sm has-data-[size=sm]:gap-space-sm has-data-[size=xs]:gap-space-sm", e),
162
- ...n
163
- });
164
- });
165
- O.displayName = "ItemGroup";
166
- var k = c(function({ className: e, ...t }, n) {
167
- return /* @__PURE__ */ u(g, {
168
- ref: n,
169
- className: r("item--separator", e),
170
- ...t
171
- });
172
- });
173
- k.displayName = "ItemSeparator";
174
- var A = c(function({ variant: e = "default", className: t, ...n }, i) {
175
- let a = e === "image" || e === "avatar" ? "image" : "default", s = e === "icon" ? r(o.md, "group-data-[size=xs]/item:[&_svg:not([class*='size-'])]:size-icon-sm") : void 0;
176
- return /* @__PURE__ */ u(b, {
177
- ref: i,
178
- variant: a,
179
- className: r("item--media", "group-has-data-[slot=item-description]/item:translate-y-0", s, e === "avatar" ? "rounded-full group-data-[size=sm]/item:rounded-full group-data-[size=xs]/item:rounded-full" : void 0, t),
180
- ...n
181
- });
182
- });
183
- A.displayName = "ItemMedia";
184
- var j = c(function({ className: e, textGap: t = "dense", ...n }, i) {
185
- return /* @__PURE__ */ u(x, {
186
- ref: i,
187
- className: r("item--content min-w-0", t === "dense" ? "gap-dense group-data-[size=xs]/item:gap-dense" : "gap-normal group-data-[size=xs]/item:gap-normal", e),
188
- ...n
189
- });
190
- });
191
- j.displayName = "ItemContent";
192
- var M = c(function({ className: e, ...t }, n) {
193
- return /* @__PURE__ */ u(w, {
194
- ref: n,
195
- className: r("item--actions max-w-full flex-wrap shrink-0 gap-space-xs", e),
196
- ...t
197
- });
198
- });
199
- M.displayName = "ItemActions";
200
- var N = c(function({ className: e, ...t }, n) {
201
- return /* @__PURE__ */ u(T, {
202
- ref: n,
203
- className: r("item--header", e),
204
- ...t
205
- });
206
- });
207
- N.displayName = "ItemHeader";
208
- var P = c(function({ className: e, ...t }, n) {
209
- return /* @__PURE__ */ u(E, {
210
- ref: n,
211
- className: r("item--footer", e),
212
- ...t
213
- });
214
- });
215
- P.displayName = "ItemFooter";
216
- var F = c(function({ bold: e = !0, className: t, children: n, ...i }, o) {
217
- let s = typeof n == "string" || typeof n == "number" || typeof n == "bigint";
218
- return /* @__PURE__ */ u(S, {
219
- ref: o,
220
- className: r("item--title min-w-0 max-w-full overflow-hidden m-0 text-inherit [&>p]:m-0 [&>p]:text-left", t),
221
- ...i,
222
- children: s ? /* @__PURE__ */ u(a, {
223
- tag: "span",
224
- size: "inherit",
225
- weight: e ? "semibold" : "regular",
226
- lineHeight: "tight",
227
- className: "text-inherit",
228
- children: n
229
- }) : n
230
- });
231
- });
232
- F.displayName = "ItemTitle";
233
- var I = {
234
- 1: "line-clamp-1",
235
- 2: "line-clamp-2",
236
- 3: "line-clamp-3",
237
- 4: "line-clamp-4",
238
- none: "line-clamp-none"
239
- }, L = c(function({ clamp: e = 2, className: t, children: n, ...i }, o) {
240
- let s = typeof n == "string" || typeof n == "number" || typeof n == "bigint";
241
- return /* @__PURE__ */ u(C, {
242
- ref: o,
243
- className: r("item--description", "m-0", !s && "text-xs text-muted-foreground leading-tight", I[e], t),
244
- ...i,
245
- children: s ? /* @__PURE__ */ u(a, {
246
- tag: "span",
247
- size: "xs",
248
- type: "secondary",
249
- lineHeight: "tight",
250
- children: n
251
- }) : n
252
- });
253
- });
254
- L.displayName = "ItemDescription";
255
- //#endregion
256
- export { P as a, A as c, L as i, k as l, M as n, O as o, j as r, N as s, D as t, F as u };
257
-
258
- //# sourceMappingURL=item-DE4YnuJx.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"item-DE4YnuJx.js","names":["ItemGroup","ItemSeparator","Item","ItemMedia","ItemContent","ItemTitle","ItemDescription","ItemActions","ItemHeader","ItemFooter","_Fragment","BaseItem","BaseItemGroup","BaseItemSeparator","BaseItemMedia","BaseItemContent","BaseItemActions","BaseItemHeader","BaseItemFooter","BaseItemTitle","BaseItemDescription","resolveComponentScale","useItemConfig","useDensityConfig","cn","Separator","ICON_DESCENDANT_SIZE_CLASSNAMES","rowBlockPaddingClasses","Fragment$1","ItemGroup$1","props","className","ItemSeparator$1","itemVariants","cva","Item$1","useRender","mergeProps","itemMediaVariants","ItemMedia$1","variant","ItemContent$1","ItemTitle$1","ItemDescription$1","ItemActions$1","ItemHeader$1","ItemFooter$1","Item","forwardRef","convenienceMode","itemProps","resolvedSize","size","defaultScale","primitiveSize","resolvedVariant","defaultVariant","textSizeClass","paddingClass","padding","resolvedChildren","media","ItemMedia","mediaVariant","ItemContent","ItemTitle","titleBold","title","description","ItemDescription","descriptionClamp","trailing","actions","ItemActions","children","density","ItemGroup","ItemSeparator","baseVariant","iconClass","textGap","ItemHeader","ItemFooter","isSimpleText","Text","bold","CLAMP_CLASS","clamp"],"sources":["../src/components/ui/item.tsx","../src/components/base/item/item.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"../../lib/utils\"\nimport { rowBlockPaddingClasses } from \"../../lib/row-recipes\"\nimport { Separator } from \"./separator\"\n\nfunction ItemGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\n \"group/item-group flex w-full flex-col\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-space-md\", className)}\n {...props}\n />\n )\n}\n\nconst itemVariants = cva(\n \"group/item flex w-full flex-wrap items-center rounded-inner border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring [a]:transition-colors [a]:hover:bg-muted\",\n {\n variants: {\n variant: {\n default: \"border-transparent\",\n outline: \"border-border\",\n muted: \"border-transparent bg-muted/50\",\n },\n size: {\n default: cn(\"gap-space-lg px-row-x\", rowBlockPaddingClasses.comfortable),\n sm: cn(\"gap-space-lg px-row-x\", rowBlockPaddingClasses.default),\n xs: cn(\"gap-space-md px-row-x in-data-[slot=dropdown-menu-content]:p-0\", rowBlockPaddingClasses.compact),\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n render,\n ...props\n}: useRender.ComponentProps<\"div\"> & VariantProps<typeof itemVariants>) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(itemVariants({ variant, size, className })),\n },\n props\n ),\n render,\n state: {\n slot: \"item\",\n variant,\n size,\n },\n })\n}\n\nconst itemMediaVariants = cva(\n \"flex shrink-0 items-center justify-center gap-space-md group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start [&_svg]:pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"[&_svg:not([class*='size-'])]:size-4\",\n image:\n \"size-10 overflow-hidden rounded-inner group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 group-data-[size=xs]/item:rounded-inner [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction ItemMedia({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n )\n}\n\nfunction ItemContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\n \"flex flex-1 flex-col [&+[data-slot=item-content]]:flex-none\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\n \"line-clamp-1 flex w-fit items-center gap-space-md text-sm leading-snug font-medium underline-offset-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"m-0 line-clamp-2 text-left text-sm font-normal text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemActions({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-actions\"\n className={cn(\"flex items-center\", className)}\n {...props}\n />\n )\n}\n\nfunction ItemHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\n \"flex basis-full items-center justify-between gap-space-md\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\n \"flex basis-full items-center justify-between gap-space-md\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n}\n","/**\n * Item — base wrapper around the shadcn `Item` primitive.\n *\n * Why this wrapper exists (rules 1, 8, 12, 17):\n * - Resolves `size` and `variant` against `<UIProvider>` (`useItemConfig()`),\n * so consumers set library-wide density once.\n * - Routes `ItemTitle` / `ItemDescription` text through our `<Text>` typography\n * so a title is always `weight=\"semibold\"` and secondary copy follows the\n * shared control/display tokens — no rogue `<div className=\"text-sm font-medium\">`\n * blobs at call sites.\n * - Re-exports every compound part untouched, so `<Item>` keeps working as a\n * drop-in replacement for hand-rolled \"icon-left + text-stack + actions\" rows.\n *\n * Layer rule: import from `@/components/base/item`, never from `@/components/ui/item`.\n */\nimport { forwardRef, type ComponentRef } from 'react';\n\nimport {\n\tItem as BaseItem,\n\tItemActions as BaseItemActions,\n\tItemContent as BaseItemContent,\n\tItemDescription as BaseItemDescription,\n\tItemFooter as BaseItemFooter,\n\tItemGroup as BaseItemGroup,\n\tItemHeader as BaseItemHeader,\n\tItemMedia as BaseItemMedia,\n\tItemSeparator as BaseItemSeparator,\n\tItemTitle as BaseItemTitle,\n} from '../../ui/item';\nimport { ICON_DESCENDANT_SIZE_CLASSNAMES } from '../display/icon-size';\nimport { Text } from '../../typography';\nimport { useDensityConfig, useItemConfig } from '../../../lib/ui-provider';\nimport { resolveComponentScale } from '../../../lib/ui-provider/scale';\nimport { cn } from '../../../lib/utils';\nimport { rowBlockPaddingClasses } from '../../../lib/row-recipes';\n\nimport type {\n\tItemActionsProps,\n\tItemContentProps,\n\tItemDescriptionProps,\n\tItemFooterProps,\n\tItemGroupProps,\n\tItemHeaderProps,\n\tItemMediaProps,\n\tItemProps,\n\tItemTitleProps,\n} from './item.types';\n\nconst Item = forwardRef<ComponentRef<typeof BaseItem>, ItemProps>(function Item(\n\titemProps,\n\tref,\n) {\n\tconst convenienceMode = 'title' in itemProps;\n\tconst {\n\t\tsize,\n\t\tdensity = 'default',\n\t\tvariant,\n\t\tpadding = 'none',\n\t\ttextGap = 'dense',\n\t\trender,\n\t\tclassName,\n\t\tchildren,\n\t\tmedia,\n\t\tmediaVariant,\n\t\ttitle,\n\t\tdescription,\n\t\ttrailing,\n\t\tactions,\n\t\ttitleBold,\n\t\tdescriptionClamp,\n\t\t...props\n\t} = itemProps;\n\tconst { defaultVariant = 'default' } = useItemConfig();\n\tconst { defaultScale } = useDensityConfig();\n\tconst resolvedSize = resolveComponentScale(size, defaultScale);\n\tconst primitiveSize = resolvedSize === 'sm' ? 'xs' : 'sm';\n\tconst resolvedVariant = variant ?? defaultVariant;\n\tconst textSizeClass = resolvedSize === 'sm' ? 'text-pxs' : resolvedSize === 'lg' ? 'text-base' : 'text-sm';\n\tconst paddingClass = padding === 'default' ? 'px-row-x' : 'px-0';\n\tconst resolvedChildren = convenienceMode ? (\n\t\t<>\n\t\t\t{media != null ? <ItemMedia variant={mediaVariant}>{media}</ItemMedia> : null}\n\t\t\t<ItemContent textGap={textGap} className=\"basis-48\">\n\t\t\t\t<ItemTitle bold={titleBold}>{title}</ItemTitle>\n\t\t\t\t{description != null ? (\n\t\t\t\t\t<ItemDescription clamp={descriptionClamp}>{description}</ItemDescription>\n\t\t\t\t) : null}\n\t\t\t</ItemContent>\n\t\t\t{trailing != null || actions != null ? (\n\t\t\t\t<ItemActions>\n\t\t\t\t\t{trailing}\n\t\t\t\t\t{actions}\n\t\t\t\t</ItemActions>\n\t\t\t) : null}\n\t\t</>\n\t) : children;\n\treturn (\n\t\t<BaseItem\n\t\t\tref={ref}\n\t\t\tsize={primitiveSize}\n\t\t\tvariant={resolvedVariant}\n\t\t\trender={render}\n\t\t\tclassName={cn(\n\t\t\t\t'item--component box-border font-sans gap-space-lg rounded-inner',\n\t\t\t\trowBlockPaddingClasses[density],\n\t\t\t\tpaddingClass,\n\t\t\t\ttextSizeClass,\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{resolvedChildren}\n\t\t</BaseItem>\n\t);\n});\nItem.displayName = 'Item';\n\nconst ItemGroup = forwardRef<ComponentRef<typeof BaseItemGroup>, ItemGroupProps>(function ItemGroup(\n\t{ className, role, ...props },\n\tref,\n) {\n\treturn (\n\t\t<BaseItemGroup\n\t\t\tref={ref}\n\t\t\trole={role}\n\t\t\t// Flatten the primitive's size-aware gaps (sm→gap-2.5, xs→gap-2) to a\n\t\t\t// single tight gap-1.5; call sites can still override via className.\n\t\t\tclassName={cn('item-group--component gap-space-sm has-data-[size=sm]:gap-space-sm has-data-[size=xs]:gap-space-sm', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n});\nItemGroup.displayName = 'ItemGroup';\n\nconst ItemSeparator = forwardRef<\n\tComponentRef<typeof BaseItemSeparator>,\n\tParameters<typeof BaseItemSeparator>[0]\n>(function ItemSeparator({ className, ...props }, ref) {\n\treturn <BaseItemSeparator ref={ref} className={cn('item--separator', className)} {...props} />;\n});\nItemSeparator.displayName = 'ItemSeparator';\n\nconst ItemMedia = forwardRef<ComponentRef<typeof BaseItemMedia>, ItemMediaProps>(function ItemMedia(\n\t{ variant = 'default', className, ...props },\n\tref,\n) {\n\tconst baseVariant = variant === 'image' || variant === 'avatar' ? 'image' : 'default';\n\tconst iconClass =\n\t\tvariant === 'icon'\n\t\t\t? cn(\n\t\t\t\t\tICON_DESCENDANT_SIZE_CLASSNAMES.md,\n\t\t\t\t\t\"group-data-[size=xs]/item:[&_svg:not([class*='size-'])]:size-icon-sm\",\n\t\t\t\t)\n\t\t\t: undefined;\n\tconst avatarClass =\n\t\tvariant === 'avatar'\n\t\t\t? 'rounded-full group-data-[size=sm]/item:rounded-full group-data-[size=xs]/item:rounded-full'\n\t\t\t: undefined;\n\treturn (\n\t\t<BaseItemMedia\n\t\t\tref={ref}\n\t\t\tvariant={baseVariant}\n\t\t\tclassName={cn(\n\t\t\t\t'item--media',\n\t\t\t\t'group-has-data-[slot=item-description]/item:translate-y-0',\n\t\t\t\ticonClass,\n\t\t\t\tavatarClass,\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n});\nItemMedia.displayName = 'ItemMedia';\n\nconst ItemContent = forwardRef<ComponentRef<typeof BaseItemContent>, ItemContentProps>(function ItemContent(\n\t{ className, textGap = 'dense', ...props },\n\tref,\n) {\n\treturn (\n\t\t<BaseItemContent\n\t\t\tref={ref}\n\t\t\tclassName={cn('item--content min-w-0', textGap === 'dense' ? 'gap-dense group-data-[size=xs]/item:gap-dense' : 'gap-normal group-data-[size=xs]/item:gap-normal', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n});\nItemContent.displayName = 'ItemContent';\n\nconst ItemActions = forwardRef<ComponentRef<typeof BaseItemActions>, ItemActionsProps>(function ItemActions(\n\t{ className, ...props },\n\tref,\n) {\n\treturn <BaseItemActions ref={ref} className={cn('item--actions max-w-full flex-wrap shrink-0 gap-space-xs', className)} {...props} />;\n});\nItemActions.displayName = 'ItemActions';\n\nconst ItemHeader = forwardRef<ComponentRef<typeof BaseItemHeader>, ItemHeaderProps>(function ItemHeader(\n\t{ className, ...props },\n\tref,\n) {\n\treturn <BaseItemHeader ref={ref} className={cn('item--header', className)} {...props} />;\n});\nItemHeader.displayName = 'ItemHeader';\n\nconst ItemFooter = forwardRef<ComponentRef<typeof BaseItemFooter>, ItemFooterProps>(function ItemFooter(\n\t{ className, ...props },\n\tref,\n) {\n\treturn <BaseItemFooter ref={ref} className={cn('item--footer', className)} {...props} />;\n});\nItemFooter.displayName = 'ItemFooter';\n\nconst ItemTitle = forwardRef<ComponentRef<typeof BaseItemTitle>, ItemTitleProps>(function ItemTitle(\n\t{ bold = true, className, children, ...props },\n\tref,\n) {\n\tconst isSimpleText = typeof children === 'string' || typeof children === 'number' || typeof children === 'bigint';\n\treturn (\n\t\t<BaseItemTitle\n\t\t\tref={ref}\n\t\t\tclassName={cn('item--title min-w-0 max-w-full overflow-hidden m-0 text-inherit [&>p]:m-0 [&>p]:text-left', className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{isSimpleText ? (\n\t\t\t\t<Text tag=\"span\" size=\"inherit\" weight={bold ? 'semibold' : 'regular'} lineHeight=\"tight\" className=\"text-inherit\">\n\t\t\t\t\t{children}\n\t\t\t\t</Text>\n\t\t\t) : children}\n\t\t</BaseItemTitle>\n\t);\n});\nItemTitle.displayName = 'ItemTitle';\n\nconst CLAMP_CLASS: Record<NonNullable<ItemDescriptionProps['clamp']>, string> = {\n\t1: 'line-clamp-1',\n\t2: 'line-clamp-2',\n\t3: 'line-clamp-3',\n\t4: 'line-clamp-4',\n\tnone: 'line-clamp-none',\n};\n\nconst ItemDescription = forwardRef<ComponentRef<typeof BaseItemDescription>, ItemDescriptionProps>(\n\tfunction ItemDescription({ clamp = 2, className, children, ...props }, ref) {\n\t\tconst isSimpleText = typeof children === 'string' || typeof children === 'number' || typeof children === 'bigint';\n\t\treturn (\n\t\t\t<BaseItemDescription\n\t\t\t\tref={ref}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'item--description',\n\t\t\t\t\t'm-0',\n\t\t\t\t\t!isSimpleText && 'text-xs text-muted-foreground leading-tight',\n\t\t\t\t\tCLAMP_CLASS[clamp],\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{isSimpleText ? (\n\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\" lineHeight=\"tight\">\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</Text>\n\t\t\t\t) : children}\n\t\t\t</BaseItemDescription>\n\t\t);\n\t},\n);\nItemDescription.displayName = 'ItemDescription';\n\nexport {\n\tItem,\n\tItemGroup,\n\tItemSeparator,\n\tItemMedia,\n\tItemContent,\n\tItemTitle,\n\tItemDescription,\n\tItemActions,\n\tItemHeader,\n\tItemFooter,\n};\n"],"mappings":"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"}