@wildo-ai/presets-components 1.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 (826) hide show
  1. package/dist/esm/components/actions/action-bar.d.ts +8 -0
  2. package/dist/esm/components/actions/action-bar.d.ts.map +1 -0
  3. package/dist/esm/components/actions/action-bar.js +125 -0
  4. package/dist/esm/components/actions/action-bar.js.map +1 -0
  5. package/dist/esm/components/actions/action-button.d.ts +8 -0
  6. package/dist/esm/components/actions/action-button.d.ts.map +1 -0
  7. package/dist/esm/components/actions/action-button.js +36 -0
  8. package/dist/esm/components/actions/action-button.js.map +1 -0
  9. package/dist/esm/components/actions/button-group.d.ts +7 -0
  10. package/dist/esm/components/actions/button-group.d.ts.map +1 -0
  11. package/dist/esm/components/actions/button-group.js +34 -0
  12. package/dist/esm/components/actions/button-group.js.map +1 -0
  13. package/dist/esm/components/actions/button.d.ts +5 -0
  14. package/dist/esm/components/actions/button.d.ts.map +1 -0
  15. package/dist/esm/components/actions/button.js +38 -0
  16. package/dist/esm/components/actions/button.js.map +1 -0
  17. package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts +3 -0
  18. package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts.map +1 -0
  19. package/dist/esm/components/ai-elements/artifacts/artifact-browser.js +136 -0
  20. package/dist/esm/components/ai-elements/artifacts/artifact-browser.js.map +1 -0
  21. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts +13 -0
  22. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -0
  23. package/dist/esm/components/ai-elements/artifacts/artifact.js +52 -0
  24. package/dist/esm/components/ai-elements/artifacts/artifact.js.map +1 -0
  25. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts +17 -0
  26. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -0
  27. package/dist/esm/components/ai-elements/artifacts/code-block.js +114 -0
  28. package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -0
  29. package/dist/esm/components/ai-elements/artifacts/image.d.ts +4 -0
  30. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -0
  31. package/dist/esm/components/ai-elements/artifacts/image.js +4 -0
  32. package/dist/esm/components/ai-elements/artifacts/image.js.map +1 -0
  33. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts +31 -0
  34. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -0
  35. package/dist/esm/components/ai-elements/artifacts/web-preview.js +93 -0
  36. package/dist/esm/components/ai-elements/artifacts/web-preview.js.map +1 -0
  37. package/dist/esm/components/ai-elements/chat/conversation.d.ts +3 -0
  38. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -0
  39. package/dist/esm/components/ai-elements/chat/conversation.js +32 -0
  40. package/dist/esm/components/ai-elements/chat/conversation.js.map +1 -0
  41. package/dist/esm/components/ai-elements/chat/message.d.ts +3 -0
  42. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -0
  43. package/dist/esm/components/ai-elements/chat/message.js +138 -0
  44. package/dist/esm/components/ai-elements/chat/message.js.map +1 -0
  45. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts +144 -0
  46. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -0
  47. package/dist/esm/components/ai-elements/chat/prompt-input.js +622 -0
  48. package/dist/esm/components/ai-elements/chat/prompt-input.js.map +1 -0
  49. package/dist/esm/components/ai-elements/chat/sources.d.ts +11 -0
  50. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -0
  51. package/dist/esm/components/ai-elements/chat/sources.js +23 -0
  52. package/dist/esm/components/ai-elements/chat/sources.js.map +1 -0
  53. package/dist/esm/components/ai-elements/chat/suggestion.d.ts +5 -0
  54. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -0
  55. package/dist/esm/components/ai-elements/chat/suggestion.js +12 -0
  56. package/dist/esm/components/ai-elements/chat/suggestion.js.map +1 -0
  57. package/dist/esm/components/ai-elements/decision/approval.d.ts +51 -0
  58. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -0
  59. package/dist/esm/components/ai-elements/decision/approval.js +95 -0
  60. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -0
  61. package/dist/esm/components/ai-elements/decision/decision-request.d.ts +31 -0
  62. package/dist/esm/components/ai-elements/decision/decision-request.d.ts.map +1 -0
  63. package/dist/esm/components/ai-elements/decision/decision-request.js +135 -0
  64. package/dist/esm/components/ai-elements/decision/decision-request.js.map +1 -0
  65. package/dist/esm/components/ai-elements/execution/confirmation.d.ts +10 -0
  66. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -0
  67. package/dist/esm/components/ai-elements/execution/confirmation.js +59 -0
  68. package/dist/esm/components/ai-elements/execution/confirmation.js.map +1 -0
  69. package/dist/esm/components/ai-elements/execution/queue.d.ts +3 -0
  70. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -0
  71. package/dist/esm/components/ai-elements/execution/queue.js +90 -0
  72. package/dist/esm/components/ai-elements/execution/queue.js.map +1 -0
  73. package/dist/esm/components/ai-elements/execution/task.d.ts +3 -0
  74. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -0
  75. package/dist/esm/components/ai-elements/execution/task.js +25 -0
  76. package/dist/esm/components/ai-elements/execution/task.js.map +1 -0
  77. package/dist/esm/components/ai-elements/execution/tool.d.ts +3 -0
  78. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -0
  79. package/dist/esm/components/ai-elements/execution/tool.js +87 -0
  80. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -0
  81. package/dist/esm/components/ai-elements/graph/canvas.d.ts +10 -0
  82. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -0
  83. package/dist/esm/components/ai-elements/graph/canvas.js +5 -0
  84. package/dist/esm/components/ai-elements/graph/canvas.js.map +1 -0
  85. package/dist/esm/components/ai-elements/graph/connection.d.ts +3 -0
  86. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -0
  87. package/dist/esm/components/ai-elements/graph/connection.js +4 -0
  88. package/dist/esm/components/ai-elements/graph/connection.js.map +1 -0
  89. package/dist/esm/components/ai-elements/graph/controls.d.ts +6 -0
  90. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -0
  91. package/dist/esm/components/ai-elements/graph/controls.js +11 -0
  92. package/dist/esm/components/ai-elements/graph/controls.js.map +1 -0
  93. package/dist/esm/components/ai-elements/graph/edge.d.ts +13 -0
  94. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -0
  95. package/dist/esm/components/ai-elements/graph/edge.js +88 -0
  96. package/dist/esm/components/ai-elements/graph/edge.js.map +1 -0
  97. package/dist/esm/components/ai-elements/graph/node.d.ts +23 -0
  98. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -0
  99. package/dist/esm/components/ai-elements/graph/node.js +11 -0
  100. package/dist/esm/components/ai-elements/graph/node.js.map +1 -0
  101. package/dist/esm/components/ai-elements/graph/panel.d.ts +7 -0
  102. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -0
  103. package/dist/esm/components/ai-elements/graph/panel.js +14 -0
  104. package/dist/esm/components/ai-elements/graph/panel.js.map +1 -0
  105. package/dist/esm/components/ai-elements/graph/toolbar.d.ts +7 -0
  106. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -0
  107. package/dist/esm/components/ai-elements/graph/toolbar.js +5 -0
  108. package/dist/esm/components/ai-elements/graph/toolbar.js.map +1 -0
  109. package/dist/esm/components/ai-elements/meta/agent.d.ts +100 -0
  110. package/dist/esm/components/ai-elements/meta/agent.d.ts.map +1 -0
  111. package/dist/esm/components/ai-elements/meta/agent.js +111 -0
  112. package/dist/esm/components/ai-elements/meta/agent.js.map +1 -0
  113. package/dist/esm/components/ai-elements/meta/context.d.ts +33 -0
  114. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -0
  115. package/dist/esm/components/ai-elements/meta/context.js +195 -0
  116. package/dist/esm/components/ai-elements/meta/context.js.map +1 -0
  117. package/dist/esm/components/ai-elements/meta/model-selector.d.ts +36 -0
  118. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -0
  119. package/dist/esm/components/ai-elements/meta/model-selector.js +22 -0
  120. package/dist/esm/components/ai-elements/meta/model-selector.js.map +1 -0
  121. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts +15 -0
  122. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -0
  123. package/dist/esm/components/ai-elements/meta/open-in-chat.js +111 -0
  124. package/dist/esm/components/ai-elements/meta/open-in-chat.js.map +1 -0
  125. package/dist/esm/components/ai-elements/shared/loader.d.ts +5 -0
  126. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -0
  127. package/dist/esm/components/ai-elements/shared/loader.js +5 -0
  128. package/dist/esm/components/ai-elements/shared/loader.js.map +1 -0
  129. package/dist/esm/components/ai-elements/shared/shimmer.d.ts +11 -0
  130. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -0
  131. package/dist/esm/components/ai-elements/shared/shimmer.js +19 -0
  132. package/dist/esm/components/ai-elements/shared/shimmer.js.map +1 -0
  133. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts +24 -0
  134. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -0
  135. package/dist/esm/components/ai-elements/stream/execution-stream.js +41 -0
  136. package/dist/esm/components/ai-elements/stream/execution-stream.js.map +1 -0
  137. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +29 -0
  138. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -0
  139. package/dist/esm/components/ai-elements/trace/chain-of-thought.js +69 -0
  140. package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -0
  141. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts +14 -0
  142. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -0
  143. package/dist/esm/components/ai-elements/trace/checkpoint.js +21 -0
  144. package/dist/esm/components/ai-elements/trace/checkpoint.js.map +1 -0
  145. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts +38 -0
  146. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -0
  147. package/dist/esm/components/ai-elements/trace/inline-citation.js +81 -0
  148. package/dist/esm/components/ai-elements/trace/inline-citation.js.map +1 -0
  149. package/dist/esm/components/ai-elements/trace/plan.d.ts +19 -0
  150. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -0
  151. package/dist/esm/components/ai-elements/trace/plan.js +42 -0
  152. package/dist/esm/components/ai-elements/trace/plan.js.map +1 -0
  153. package/dist/esm/components/ai-elements/trace/reasoning.d.ts +16 -0
  154. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -0
  155. package/dist/esm/components/ai-elements/trace/reasoning.js +89 -0
  156. package/dist/esm/components/ai-elements/trace/reasoning.js.map +1 -0
  157. package/dist/esm/components/app/app-layout-main-container.d.ts +4 -0
  158. package/dist/esm/components/app/app-layout-main-container.d.ts.map +1 -0
  159. package/dist/esm/components/app/app-layout-main-container.js +22 -0
  160. package/dist/esm/components/app/app-layout-main-container.js.map +1 -0
  161. package/dist/esm/components/app/public-layout-main-container.d.ts +4 -0
  162. package/dist/esm/components/app/public-layout-main-container.d.ts.map +1 -0
  163. package/dist/esm/components/app/public-layout-main-container.js +10 -0
  164. package/dist/esm/components/app/public-layout-main-container.js.map +1 -0
  165. package/dist/esm/components/billing/billing-format.utils.d.ts +21 -0
  166. package/dist/esm/components/billing/billing-format.utils.d.ts.map +1 -0
  167. package/dist/esm/components/billing/billing-format.utils.js +35 -0
  168. package/dist/esm/components/billing/billing-format.utils.js.map +1 -0
  169. package/dist/esm/components/billing/billing-invoice-history.d.ts +13 -0
  170. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -0
  171. package/dist/esm/components/billing/billing-invoice-history.js +55 -0
  172. package/dist/esm/components/billing/billing-invoice-history.js.map +1 -0
  173. package/dist/esm/components/billing/billing-plan-change-preview.d.ts +13 -0
  174. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -0
  175. package/dist/esm/components/billing/billing-plan-change-preview.js +44 -0
  176. package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
  177. package/dist/esm/components/billing/billing-portal-link.d.ts +10 -0
  178. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -0
  179. package/dist/esm/components/billing/billing-portal-link.js +35 -0
  180. package/dist/esm/components/billing/billing-portal-link.js.map +1 -0
  181. package/dist/esm/components/billing/billing-pricing-table.d.ts +16 -0
  182. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -0
  183. package/dist/esm/components/billing/billing-pricing-table.js +74 -0
  184. package/dist/esm/components/billing/billing-pricing-table.js.map +1 -0
  185. package/dist/esm/components/billing/billing-promotion-code-input.d.ts +10 -0
  186. package/dist/esm/components/billing/billing-promotion-code-input.d.ts.map +1 -0
  187. package/dist/esm/components/billing/billing-promotion-code-input.js +68 -0
  188. package/dist/esm/components/billing/billing-promotion-code-input.js.map +1 -0
  189. package/dist/esm/components/billing/billing-subscription-status.d.ts +13 -0
  190. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -0
  191. package/dist/esm/components/billing/billing-subscription-status.js +58 -0
  192. package/dist/esm/components/billing/billing-subscription-status.js.map +1 -0
  193. package/dist/esm/components/billing/billing-usage-dashboard.d.ts +13 -0
  194. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -0
  195. package/dist/esm/components/billing/billing-usage-dashboard.js +49 -0
  196. package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -0
  197. package/dist/esm/components/data-display/avatar.d.ts +3 -0
  198. package/dist/esm/components/data-display/avatar.d.ts.map +1 -0
  199. package/dist/esm/components/data-display/avatar.js +24 -0
  200. package/dist/esm/components/data-display/avatar.js.map +1 -0
  201. package/dist/esm/components/data-display/badge.d.ts +5 -0
  202. package/dist/esm/components/data-display/badge.d.ts.map +1 -0
  203. package/dist/esm/components/data-display/badge.js +24 -0
  204. package/dist/esm/components/data-display/badge.js.map +1 -0
  205. package/dist/esm/components/data-display/description-list.d.ts +5 -0
  206. package/dist/esm/components/data-display/description-list.d.ts.map +1 -0
  207. package/dist/esm/components/data-display/description-list.js +36 -0
  208. package/dist/esm/components/data-display/description-list.js.map +1 -0
  209. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts +17 -0
  210. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -0
  211. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js +93 -0
  212. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -0
  213. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts +19 -0
  214. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -0
  215. package/dist/esm/components/data-display/formatters/display-field-boolean.js +53 -0
  216. package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -0
  217. package/dist/esm/components/data-display/formatters/display-field-code.d.ts +22 -0
  218. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -0
  219. package/dist/esm/components/data-display/formatters/display-field-code.js +90 -0
  220. package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -0
  221. package/dist/esm/components/data-display/formatters/display-field-date.d.ts +13 -0
  222. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -0
  223. package/dist/esm/components/data-display/formatters/display-field-date.js +16 -0
  224. package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -0
  225. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts +13 -0
  226. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -0
  227. package/dist/esm/components/data-display/formatters/display-field-datetime.js +16 -0
  228. package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -0
  229. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts +16 -0
  230. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -0
  231. package/dist/esm/components/data-display/formatters/display-field-duration.js +36 -0
  232. package/dist/esm/components/data-display/formatters/display-field-duration.js.map +1 -0
  233. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts +16 -0
  234. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -0
  235. package/dist/esm/components/data-display/formatters/display-field-enum.js +80 -0
  236. package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -0
  237. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts +14 -0
  238. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -0
  239. package/dist/esm/components/data-display/formatters/display-field-file-audio.js +33 -0
  240. package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -0
  241. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts +14 -0
  242. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -0
  243. package/dist/esm/components/data-display/formatters/display-field-file-document.js +57 -0
  244. package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -0
  245. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts +17 -0
  246. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -0
  247. package/dist/esm/components/data-display/formatters/display-field-file-gallery.js +87 -0
  248. package/dist/esm/components/data-display/formatters/display-field-file-gallery.js.map +1 -0
  249. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts +15 -0
  250. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -0
  251. package/dist/esm/components/data-display/formatters/display-field-file-image.js +48 -0
  252. package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -0
  253. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts +14 -0
  254. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -0
  255. package/dist/esm/components/data-display/formatters/display-field-file-video.js +34 -0
  256. package/dist/esm/components/data-display/formatters/display-field-file-video.js.map +1 -0
  257. package/dist/esm/components/data-display/formatters/display-field-file.d.ts +33 -0
  258. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -0
  259. package/dist/esm/components/data-display/formatters/display-field-file.js +240 -0
  260. package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -0
  261. package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts +43 -0
  262. package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts.map +1 -0
  263. package/dist/esm/components/data-display/formatters/display-field-format.utils.js +113 -0
  264. package/dist/esm/components/data-display/formatters/display-field-format.utils.js.map +1 -0
  265. package/dist/esm/components/data-display/formatters/display-field-money.d.ts +19 -0
  266. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -0
  267. package/dist/esm/components/data-display/formatters/display-field-money.js +88 -0
  268. package/dist/esm/components/data-display/formatters/display-field-money.js.map +1 -0
  269. package/dist/esm/components/data-display/formatters/display-field-number.d.ts +16 -0
  270. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -0
  271. package/dist/esm/components/data-display/formatters/display-field-number.js +87 -0
  272. package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -0
  273. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts +15 -0
  274. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -0
  275. package/dist/esm/components/data-display/formatters/display-field-phone.js +31 -0
  276. package/dist/esm/components/data-display/formatters/display-field-phone.js.map +1 -0
  277. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts +16 -0
  278. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -0
  279. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js +117 -0
  280. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.js.map +1 -0
  281. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts +13 -0
  282. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -0
  283. package/dist/esm/components/data-display/formatters/display-field-range-date.js +35 -0
  284. package/dist/esm/components/data-display/formatters/display-field-range-date.js.map +1 -0
  285. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts +13 -0
  286. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -0
  287. package/dist/esm/components/data-display/formatters/display-field-range-datetime.js +35 -0
  288. package/dist/esm/components/data-display/formatters/display-field-range-datetime.js.map +1 -0
  289. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts +16 -0
  290. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -0
  291. package/dist/esm/components/data-display/formatters/display-field-range-money.js +83 -0
  292. package/dist/esm/components/data-display/formatters/display-field-range-money.js.map +1 -0
  293. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts +13 -0
  294. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -0
  295. package/dist/esm/components/data-display/formatters/display-field-range-number.js +35 -0
  296. package/dist/esm/components/data-display/formatters/display-field-range-number.js.map +1 -0
  297. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts +13 -0
  298. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -0
  299. package/dist/esm/components/data-display/formatters/display-field-range-time.js +38 -0
  300. package/dist/esm/components/data-display/formatters/display-field-range-time.js.map +1 -0
  301. package/dist/esm/components/data-display/formatters/display-field-string.d.ts +16 -0
  302. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -0
  303. package/dist/esm/components/data-display/formatters/display-field-string.js +86 -0
  304. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -0
  305. package/dist/esm/components/data-display/formatters/display-field-time.d.ts +13 -0
  306. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -0
  307. package/dist/esm/components/data-display/formatters/display-field-time.js +20 -0
  308. package/dist/esm/components/data-display/formatters/display-field-time.js.map +1 -0
  309. package/dist/esm/components/feedback/celebration-overlay.d.ts +20 -0
  310. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -0
  311. package/dist/esm/components/feedback/celebration-overlay.js +46 -0
  312. package/dist/esm/components/feedback/celebration-overlay.js.map +1 -0
  313. package/dist/esm/components/feedback/danger-zone.d.ts +4 -0
  314. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -0
  315. package/dist/esm/components/feedback/danger-zone.js +16 -0
  316. package/dist/esm/components/feedback/danger-zone.js.map +1 -0
  317. package/dist/esm/components/feedback/empty-state.d.ts +14 -0
  318. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -0
  319. package/dist/esm/components/feedback/empty-state.js +24 -0
  320. package/dist/esm/components/feedback/empty-state.js.map +1 -0
  321. package/dist/esm/components/feedback/error-display.d.ts +5 -0
  322. package/dist/esm/components/feedback/error-display.d.ts.map +1 -0
  323. package/dist/esm/components/feedback/error-display.js +38 -0
  324. package/dist/esm/components/feedback/error-display.js.map +1 -0
  325. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts +13 -0
  326. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -0
  327. package/dist/esm/components/feedback/features/feature-limit-indicator.js +19 -0
  328. package/dist/esm/components/feedback/features/feature-limit-indicator.js.map +1 -0
  329. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts +10 -0
  330. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -0
  331. package/dist/esm/components/feedback/features/feature-lock-badge.js +29 -0
  332. package/dist/esm/components/feedback/features/feature-lock-badge.js.map +1 -0
  333. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts +10 -0
  334. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -0
  335. package/dist/esm/components/feedback/features/feature-unavailable-dialog.js +6 -0
  336. package/dist/esm/components/feedback/features/feature-unavailable-dialog.js.map +1 -0
  337. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts +12 -0
  338. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -0
  339. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js +45 -0
  340. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -0
  341. package/dist/esm/components/feedback/loading-overlay.d.ts +13 -0
  342. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -0
  343. package/dist/esm/components/feedback/loading-overlay.js +19 -0
  344. package/dist/esm/components/feedback/loading-overlay.js.map +1 -0
  345. package/dist/esm/components/feedback/loading-spinner.d.ts +11 -0
  346. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -0
  347. package/dist/esm/components/feedback/loading-spinner.js +17 -0
  348. package/dist/esm/components/feedback/loading-spinner.js.map +1 -0
  349. package/dist/esm/components/feedback/notification-center.d.ts +14 -0
  350. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -0
  351. package/dist/esm/components/feedback/notification-center.js +45 -0
  352. package/dist/esm/components/feedback/notification-center.js.map +1 -0
  353. package/dist/esm/components/feedback/operations-confirm-critical.d.ts +5 -0
  354. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -0
  355. package/dist/esm/components/feedback/operations-confirm-critical.js +23 -0
  356. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -0
  357. package/dist/esm/components/feedback/progress.d.ts +5 -0
  358. package/dist/esm/components/feedback/progress.d.ts.map +1 -0
  359. package/dist/esm/components/feedback/progress.js +22 -0
  360. package/dist/esm/components/feedback/progress.js.map +1 -0
  361. package/dist/esm/components/feedback/skeleton.d.ts +4 -0
  362. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -0
  363. package/dist/esm/components/feedback/skeleton.js +10 -0
  364. package/dist/esm/components/feedback/skeleton.js.map +1 -0
  365. package/dist/esm/components/feedback/toast.d.ts +5 -0
  366. package/dist/esm/components/feedback/toast.d.ts.map +1 -0
  367. package/dist/esm/components/feedback/toast.js +12 -0
  368. package/dist/esm/components/feedback/toast.js.map +1 -0
  369. package/dist/esm/components/form/autosave-indicator.d.ts +15 -0
  370. package/dist/esm/components/form/autosave-indicator.d.ts.map +1 -0
  371. package/dist/esm/components/form/autosave-indicator.js +43 -0
  372. package/dist/esm/components/form/autosave-indicator.js.map +1 -0
  373. package/dist/esm/components/form/chromes/field.d.ts +23 -0
  374. package/dist/esm/components/form/chromes/field.d.ts.map +1 -0
  375. package/dist/esm/components/form/chromes/field.js +84 -0
  376. package/dist/esm/components/form/chromes/field.js.map +1 -0
  377. package/dist/esm/components/form/chromes/form-primitive.d.ts +14 -0
  378. package/dist/esm/components/form/chromes/form-primitive.d.ts.map +1 -0
  379. package/dist/esm/components/form/chromes/form-primitive.js +38 -0
  380. package/dist/esm/components/form/chromes/form-primitive.js.map +1 -0
  381. package/dist/esm/components/form/combobox.d.ts +6 -0
  382. package/dist/esm/components/form/combobox.d.ts.map +1 -0
  383. package/dist/esm/components/form/combobox.js +138 -0
  384. package/dist/esm/components/form/combobox.js.map +1 -0
  385. package/dist/esm/components/form/controls/boolean/checkbox.d.ts +3 -0
  386. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -0
  387. package/dist/esm/components/form/controls/boolean/checkbox.js +49 -0
  388. package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -0
  389. package/dist/esm/components/form/controls/boolean/switch.d.ts +3 -0
  390. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -0
  391. package/dist/esm/components/form/controls/boolean/switch.js +56 -0
  392. package/dist/esm/components/form/controls/boolean/switch.js.map +1 -0
  393. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts +5 -0
  394. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -0
  395. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js +63 -0
  396. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.js.map +1 -0
  397. package/dist/esm/components/form/controls/boolean/toggle.d.ts +5 -0
  398. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -0
  399. package/dist/esm/components/form/controls/boolean/toggle.js +41 -0
  400. package/dist/esm/components/form/controls/boolean/toggle.js.map +1 -0
  401. package/dist/esm/components/form/controls/date-time/calendar.d.ts +6 -0
  402. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -0
  403. package/dist/esm/components/form/controls/date-time/calendar.js +129 -0
  404. package/dist/esm/components/form/controls/date-time/calendar.js.map +1 -0
  405. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts +11 -0
  406. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -0
  407. package/dist/esm/components/form/controls/date-time/date-range-picker.js +89 -0
  408. package/dist/esm/components/form/controls/date-time/date-range-picker.js.map +1 -0
  409. package/dist/esm/components/form/controls/date-time/datepicker.d.ts +5 -0
  410. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -0
  411. package/dist/esm/components/form/controls/date-time/datepicker.js +62 -0
  412. package/dist/esm/components/form/controls/date-time/datepicker.js.map +1 -0
  413. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts +11 -0
  414. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -0
  415. package/dist/esm/components/form/controls/date-time/datetime-picker.js +161 -0
  416. package/dist/esm/components/form/controls/date-time/datetime-picker.js.map +1 -0
  417. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts +11 -0
  418. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -0
  419. package/dist/esm/components/form/controls/date-time/datetime-range-picker.js +200 -0
  420. package/dist/esm/components/form/controls/date-time/datetime-range-picker.js.map +1 -0
  421. package/dist/esm/components/form/controls/date-time/time-picker.d.ts +11 -0
  422. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -0
  423. package/dist/esm/components/form/controls/date-time/time-picker.js +169 -0
  424. package/dist/esm/components/form/controls/date-time/time-picker.js.map +1 -0
  425. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts +11 -0
  426. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -0
  427. package/dist/esm/components/form/controls/date-time/time-range-picker.js +232 -0
  428. package/dist/esm/components/form/controls/date-time/time-range-picker.js.map +1 -0
  429. package/dist/esm/components/form/controls/enum/radio.d.ts +7 -0
  430. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -0
  431. package/dist/esm/components/form/controls/enum/radio.js +65 -0
  432. package/dist/esm/components/form/controls/enum/radio.js.map +1 -0
  433. package/dist/esm/components/form/controls/enum/select-multiple.d.ts +7 -0
  434. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -0
  435. package/dist/esm/components/form/controls/enum/select-multiple.js +59 -0
  436. package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -0
  437. package/dist/esm/components/form/controls/enum/select.d.ts +27 -0
  438. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -0
  439. package/dist/esm/components/form/controls/enum/select.js +98 -0
  440. package/dist/esm/components/form/controls/enum/select.js.map +1 -0
  441. package/dist/esm/components/form/controls/enum/toggle-group.d.ts +3 -0
  442. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -0
  443. package/dist/esm/components/form/controls/enum/toggle-group.js +41 -0
  444. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -0
  445. package/dist/esm/components/form/controls/file/file-upload.d.ts +52 -0
  446. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -0
  447. package/dist/esm/components/form/controls/file/file-upload.js +230 -0
  448. package/dist/esm/components/form/controls/file/file-upload.js.map +1 -0
  449. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts +16 -0
  450. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +1 -0
  451. package/dist/esm/components/form/controls/form-field-checkbox-group.js +131 -0
  452. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +1 -0
  453. package/dist/esm/components/form/controls/input-group.d.ts +10 -0
  454. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -0
  455. package/dist/esm/components/form/controls/input-group.js +76 -0
  456. package/dist/esm/components/form/controls/input-group.js.map +1 -0
  457. package/dist/esm/components/form/controls/input.d.ts +3 -0
  458. package/dist/esm/components/form/controls/input.d.ts.map +1 -0
  459. package/dist/esm/components/form/controls/input.js +76 -0
  460. package/dist/esm/components/form/controls/input.js.map +1 -0
  461. package/dist/esm/components/form/controls/number/slider.d.ts +13 -0
  462. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -0
  463. package/dist/esm/components/form/controls/number/slider.js +114 -0
  464. package/dist/esm/components/form/controls/number/slider.js.map +1 -0
  465. package/dist/esm/components/form/controls/string/color-input.d.ts +5 -0
  466. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -0
  467. package/dist/esm/components/form/controls/string/color-input.js +49 -0
  468. package/dist/esm/components/form/controls/string/color-input.js.map +1 -0
  469. package/dist/esm/components/form/controls/string/input-otp.d.ts +3 -0
  470. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -0
  471. package/dist/esm/components/form/controls/string/input-otp.js +35 -0
  472. package/dist/esm/components/form/controls/string/input-otp.js.map +1 -0
  473. package/dist/esm/components/form/controls/string/password-input.d.ts +16 -0
  474. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -0
  475. package/dist/esm/components/form/controls/string/password-input.js +54 -0
  476. package/dist/esm/components/form/controls/string/password-input.js.map +1 -0
  477. package/dist/esm/components/form/controls/string/textarea.d.ts +3 -0
  478. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -0
  479. package/dist/esm/components/form/controls/string/textarea.js +51 -0
  480. package/dist/esm/components/form/controls/string/textarea.js.map +1 -0
  481. package/dist/esm/components/layout/aspect-ratio.d.ts +5 -0
  482. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -0
  483. package/dist/esm/components/layout/aspect-ratio.js +8 -0
  484. package/dist/esm/components/layout/aspect-ratio.js.map +1 -0
  485. package/dist/esm/components/layout/carousel.d.ts +3 -0
  486. package/dist/esm/components/layout/carousel.d.ts.map +1 -0
  487. package/dist/esm/components/layout/carousel.js +107 -0
  488. package/dist/esm/components/layout/carousel.js.map +1 -0
  489. package/dist/esm/components/layout/divider.d.ts +4 -0
  490. package/dist/esm/components/layout/divider.d.ts.map +1 -0
  491. package/dist/esm/components/layout/divider.js +15 -0
  492. package/dist/esm/components/layout/divider.js.map +1 -0
  493. package/dist/esm/components/layout/resizable.d.ts +3 -0
  494. package/dist/esm/components/layout/resizable.d.ts.map +1 -0
  495. package/dist/esm/components/layout/resizable.js +16 -0
  496. package/dist/esm/components/layout/resizable.js.map +1 -0
  497. package/dist/esm/components/layout/scroll-area.d.ts +3 -0
  498. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -0
  499. package/dist/esm/components/layout/scroll-area.js +22 -0
  500. package/dist/esm/components/layout/scroll-area.js.map +1 -0
  501. package/dist/esm/components/layout/separator.d.ts +5 -0
  502. package/dist/esm/components/layout/separator.d.ts.map +1 -0
  503. package/dist/esm/components/layout/separator.js +15 -0
  504. package/dist/esm/components/layout/separator.js.map +1 -0
  505. package/dist/esm/components/navigation/app-level/action-sheet.d.ts +4 -0
  506. package/dist/esm/components/navigation/app-level/action-sheet.d.ts.map +1 -0
  507. package/dist/esm/components/navigation/app-level/action-sheet.js +59 -0
  508. package/dist/esm/components/navigation/app-level/action-sheet.js.map +1 -0
  509. package/dist/esm/components/navigation/app-level/activity-bar.d.ts +16 -0
  510. package/dist/esm/components/navigation/app-level/activity-bar.d.ts.map +1 -0
  511. package/dist/esm/components/navigation/app-level/activity-bar.js +33 -0
  512. package/dist/esm/components/navigation/app-level/activity-bar.js.map +1 -0
  513. package/dist/esm/components/navigation/app-level/command-menu.d.ts +4 -0
  514. package/dist/esm/components/navigation/app-level/command-menu.d.ts.map +1 -0
  515. package/dist/esm/components/navigation/app-level/command-menu.js +26 -0
  516. package/dist/esm/components/navigation/app-level/command-menu.js.map +1 -0
  517. package/dist/esm/components/navigation/app-level/control-panel.d.ts +4 -0
  518. package/dist/esm/components/navigation/app-level/control-panel.d.ts.map +1 -0
  519. package/dist/esm/components/navigation/app-level/control-panel.js +48 -0
  520. package/dist/esm/components/navigation/app-level/control-panel.js.map +1 -0
  521. package/dist/esm/components/navigation/app-level/menu-user-org.d.ts +4 -0
  522. package/dist/esm/components/navigation/app-level/menu-user-org.d.ts.map +1 -0
  523. package/dist/esm/components/navigation/app-level/menu-user-org.js +89 -0
  524. package/dist/esm/components/navigation/app-level/menu-user-org.js.map +1 -0
  525. package/dist/esm/components/navigation/app-level/menubar.d.ts +4 -0
  526. package/dist/esm/components/navigation/app-level/menubar.d.ts.map +1 -0
  527. package/dist/esm/components/navigation/app-level/menubar.js +73 -0
  528. package/dist/esm/components/navigation/app-level/menubar.js.map +1 -0
  529. package/dist/esm/components/navigation/app-level/navigation-back.d.ts +4 -0
  530. package/dist/esm/components/navigation/app-level/navigation-back.d.ts.map +1 -0
  531. package/dist/esm/components/navigation/app-level/navigation-back.js +17 -0
  532. package/dist/esm/components/navigation/app-level/navigation-back.js.map +1 -0
  533. package/dist/esm/components/navigation/app-level/navigation-rail.d.ts +4 -0
  534. package/dist/esm/components/navigation/app-level/navigation-rail.d.ts.map +1 -0
  535. package/dist/esm/components/navigation/app-level/navigation-rail.js +36 -0
  536. package/dist/esm/components/navigation/app-level/navigation-rail.js.map +1 -0
  537. package/dist/esm/components/navigation/app-level/notification-center.d.ts +4 -0
  538. package/dist/esm/components/navigation/app-level/notification-center.d.ts.map +1 -0
  539. package/dist/esm/components/navigation/app-level/notification-center.js +91 -0
  540. package/dist/esm/components/navigation/app-level/notification-center.js.map +1 -0
  541. package/dist/esm/components/navigation/app-level/quick-action-button.d.ts +4 -0
  542. package/dist/esm/components/navigation/app-level/quick-action-button.d.ts.map +1 -0
  543. package/dist/esm/components/navigation/app-level/quick-action-button.js +34 -0
  544. package/dist/esm/components/navigation/app-level/quick-action-button.js.map +1 -0
  545. package/dist/esm/components/navigation/app-level/quick-switcher.d.ts +4 -0
  546. package/dist/esm/components/navigation/app-level/quick-switcher.d.ts.map +1 -0
  547. package/dist/esm/components/navigation/app-level/quick-switcher.js +33 -0
  548. package/dist/esm/components/navigation/app-level/quick-switcher.js.map +1 -0
  549. package/dist/esm/components/navigation/app-level/sidebar.d.ts +4 -0
  550. package/dist/esm/components/navigation/app-level/sidebar.d.ts.map +1 -0
  551. package/dist/esm/components/navigation/app-level/sidebar.js +146 -0
  552. package/dist/esm/components/navigation/app-level/sidebar.js.map +1 -0
  553. package/dist/esm/components/navigation/app-level/status-bar.d.ts +4 -0
  554. package/dist/esm/components/navigation/app-level/status-bar.d.ts.map +1 -0
  555. package/dist/esm/components/navigation/app-level/status-bar.js +66 -0
  556. package/dist/esm/components/navigation/app-level/status-bar.js.map +1 -0
  557. package/dist/esm/components/navigation/app-level/toolbar.d.ts +4 -0
  558. package/dist/esm/components/navigation/app-level/toolbar.d.ts.map +1 -0
  559. package/dist/esm/components/navigation/app-level/toolbar.js +19 -0
  560. package/dist/esm/components/navigation/app-level/toolbar.js.map +1 -0
  561. package/dist/esm/components/navigation/app-level/utility-panel.d.ts +4 -0
  562. package/dist/esm/components/navigation/app-level/utility-panel.d.ts.map +1 -0
  563. package/dist/esm/components/navigation/app-level/utility-panel.js +54 -0
  564. package/dist/esm/components/navigation/app-level/utility-panel.js.map +1 -0
  565. package/dist/esm/components/navigation/breadcrumb.d.ts +3 -0
  566. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -0
  567. package/dist/esm/components/navigation/breadcrumb.js +46 -0
  568. package/dist/esm/components/navigation/breadcrumb.js.map +1 -0
  569. package/dist/esm/components/navigation/command.d.ts +19 -0
  570. package/dist/esm/components/navigation/command.d.ts.map +1 -0
  571. package/dist/esm/components/navigation/command.js +66 -0
  572. package/dist/esm/components/navigation/command.js.map +1 -0
  573. package/dist/esm/components/navigation/menu-bar.d.ts +41 -0
  574. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -0
  575. package/dist/esm/components/navigation/menu-bar.js +114 -0
  576. package/dist/esm/components/navigation/menu-bar.js.map +1 -0
  577. package/dist/esm/components/navigation/navbar.d.ts +3 -0
  578. package/dist/esm/components/navigation/navbar.d.ts.map +1 -0
  579. package/dist/esm/components/navigation/navbar.js +70 -0
  580. package/dist/esm/components/navigation/navbar.js.map +1 -0
  581. package/dist/esm/components/navigation/sidebar.d.ts +3 -0
  582. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -0
  583. package/dist/esm/components/navigation/sidebar.js +247 -0
  584. package/dist/esm/components/navigation/sidebar.js.map +1 -0
  585. package/dist/esm/components/overlays/containers/alert-dialog.d.ts +4 -0
  586. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -0
  587. package/dist/esm/components/overlays/containers/alert-dialog.js +70 -0
  588. package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -0
  589. package/dist/esm/components/overlays/containers/alert.d.ts +3 -0
  590. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -0
  591. package/dist/esm/components/overlays/containers/alert.js +54 -0
  592. package/dist/esm/components/overlays/containers/alert.js.map +1 -0
  593. package/dist/esm/components/overlays/containers/dialog.d.ts +4 -0
  594. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -0
  595. package/dist/esm/components/overlays/containers/dialog.js +57 -0
  596. package/dist/esm/components/overlays/containers/dialog.js.map +1 -0
  597. package/dist/esm/components/overlays/containers/drawer.d.ts +4 -0
  598. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -0
  599. package/dist/esm/components/overlays/containers/drawer.js +51 -0
  600. package/dist/esm/components/overlays/containers/drawer.js.map +1 -0
  601. package/dist/esm/components/overlays/containers/sheet.d.ts +4 -0
  602. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -0
  603. package/dist/esm/components/overlays/containers/sheet.js +61 -0
  604. package/dist/esm/components/overlays/containers/sheet.js.map +1 -0
  605. package/dist/esm/components/overlays/floating/context-menu.d.ts +26 -0
  606. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -0
  607. package/dist/esm/components/overlays/floating/context-menu.js +120 -0
  608. package/dist/esm/components/overlays/floating/context-menu.js.map +1 -0
  609. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts +34 -0
  610. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -0
  611. package/dist/esm/components/overlays/floating/dropdown-menu.js +123 -0
  612. package/dist/esm/components/overlays/floating/dropdown-menu.js.map +1 -0
  613. package/dist/esm/components/overlays/floating/hover-card.d.ts +3 -0
  614. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -0
  615. package/dist/esm/components/overlays/floating/hover-card.js +22 -0
  616. package/dist/esm/components/overlays/floating/hover-card.js.map +1 -0
  617. package/dist/esm/components/overlays/floating/popover.d.ts +35 -0
  618. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -0
  619. package/dist/esm/components/overlays/floating/popover.js +35 -0
  620. package/dist/esm/components/overlays/floating/popover.js.map +1 -0
  621. package/dist/esm/components/overlays/floating/tooltip.d.ts +3 -0
  622. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -0
  623. package/dist/esm/components/overlays/floating/tooltip.js +28 -0
  624. package/dist/esm/components/overlays/floating/tooltip.js.map +1 -0
  625. package/dist/esm/components/sections/accordion.d.ts +3 -0
  626. package/dist/esm/components/sections/accordion.d.ts.map +1 -0
  627. package/dist/esm/components/sections/accordion.js +27 -0
  628. package/dist/esm/components/sections/accordion.js.map +1 -0
  629. package/dist/esm/components/sections/card.d.ts +3 -0
  630. package/dist/esm/components/sections/card.d.ts.map +1 -0
  631. package/dist/esm/components/sections/card.js +48 -0
  632. package/dist/esm/components/sections/card.js.map +1 -0
  633. package/dist/esm/components/sections/collapsible.d.ts +3 -0
  634. package/dist/esm/components/sections/collapsible.d.ts.map +1 -0
  635. package/dist/esm/components/sections/collapsible.js +14 -0
  636. package/dist/esm/components/sections/collapsible.js.map +1 -0
  637. package/dist/esm/components/sections/pagination.d.ts +3 -0
  638. package/dist/esm/components/sections/pagination.d.ts.map +1 -0
  639. package/dist/esm/components/sections/pagination.js +45 -0
  640. package/dist/esm/components/sections/pagination.js.map +1 -0
  641. package/dist/esm/components/sections/stacked-layout.d.ts +3 -0
  642. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -0
  643. package/dist/esm/components/sections/stacked-layout.js +77 -0
  644. package/dist/esm/components/sections/stacked-layout.js.map +1 -0
  645. package/dist/esm/components/sections/stepper.d.ts +3 -0
  646. package/dist/esm/components/sections/stepper.d.ts.map +1 -0
  647. package/dist/esm/components/sections/stepper.js +70 -0
  648. package/dist/esm/components/sections/stepper.js.map +1 -0
  649. package/dist/esm/components/sections/table.d.ts +3 -0
  650. package/dist/esm/components/sections/table.d.ts.map +1 -0
  651. package/dist/esm/components/sections/table.js +52 -0
  652. package/dist/esm/components/sections/table.js.map +1 -0
  653. package/dist/esm/components/sections/tabs.d.ts +3 -0
  654. package/dist/esm/components/sections/tabs.d.ts.map +1 -0
  655. package/dist/esm/components/sections/tabs.js +31 -0
  656. package/dist/esm/components/sections/tabs.js.map +1 -0
  657. package/dist/esm/components/typography/heading.d.ts +5 -0
  658. package/dist/esm/components/typography/heading.d.ts.map +1 -0
  659. package/dist/esm/components/typography/heading.js +23 -0
  660. package/dist/esm/components/typography/heading.js.map +1 -0
  661. package/dist/esm/components/typography/label.d.ts +5 -0
  662. package/dist/esm/components/typography/label.d.ts.map +1 -0
  663. package/dist/esm/components/typography/label.js +17 -0
  664. package/dist/esm/components/typography/label.js.map +1 -0
  665. package/dist/esm/components/typography/link.d.ts +5 -0
  666. package/dist/esm/components/typography/link.d.ts.map +1 -0
  667. package/dist/esm/components/typography/link.js +72 -0
  668. package/dist/esm/components/typography/link.js.map +1 -0
  669. package/dist/esm/components/typography/text.d.ts +10 -0
  670. package/dist/esm/components/typography/text.d.ts.map +1 -0
  671. package/dist/esm/components/typography/text.js +36 -0
  672. package/dist/esm/components/typography/text.js.map +1 -0
  673. package/dist/esm/components/typography/truncated-text.d.ts +17 -0
  674. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -0
  675. package/dist/esm/components/typography/truncated-text.js +45 -0
  676. package/dist/esm/components/typography/truncated-text.js.map +1 -0
  677. package/dist/esm/config/billing-shell.presets.d.ts +7 -0
  678. package/dist/esm/config/billing-shell.presets.d.ts.map +1 -0
  679. package/dist/esm/config/billing-shell.presets.js +54 -0
  680. package/dist/esm/config/billing-shell.presets.js.map +1 -0
  681. package/dist/esm/config/default-hotkeys.preset.d.ts +15 -0
  682. package/dist/esm/config/default-hotkeys.preset.d.ts.map +1 -0
  683. package/dist/esm/config/default-hotkeys.preset.js +51 -0
  684. package/dist/esm/config/default-hotkeys.preset.js.map +1 -0
  685. package/dist/esm/config/index.d.ts +9 -0
  686. package/dist/esm/config/index.d.ts.map +1 -0
  687. package/dist/esm/config/index.js +9 -0
  688. package/dist/esm/config/index.js.map +1 -0
  689. package/dist/esm/config/preset-design-system.d.ts +1498 -0
  690. package/dist/esm/config/preset-design-system.d.ts.map +1 -0
  691. package/dist/esm/config/preset-design-system.js +581 -0
  692. package/dist/esm/config/preset-design-system.js.map +1 -0
  693. package/dist/esm/config/preset-error-pages.d.ts +52 -0
  694. package/dist/esm/config/preset-error-pages.d.ts.map +1 -0
  695. package/dist/esm/config/preset-error-pages.js +190 -0
  696. package/dist/esm/config/preset-error-pages.js.map +1 -0
  697. package/dist/esm/config/preset-kits.d.ts +129 -0
  698. package/dist/esm/config/preset-kits.d.ts.map +1 -0
  699. package/dist/esm/config/preset-kits.js +290 -0
  700. package/dist/esm/config/preset-kits.js.map +1 -0
  701. package/dist/esm/config/preset-navigation.d.ts +91 -0
  702. package/dist/esm/config/preset-navigation.d.ts.map +1 -0
  703. package/dist/esm/config/preset-navigation.js +304 -0
  704. package/dist/esm/config/preset-navigation.js.map +1 -0
  705. package/dist/esm/config/preset-resources.d.ts +10 -0
  706. package/dist/esm/config/preset-resources.d.ts.map +1 -0
  707. package/dist/esm/config/preset-resources.js +10 -0
  708. package/dist/esm/config/preset-resources.js.map +1 -0
  709. package/dist/esm/config/preset-shell.d.ts +69 -0
  710. package/dist/esm/config/preset-shell.d.ts.map +1 -0
  711. package/dist/esm/config/preset-shell.js +244 -0
  712. package/dist/esm/config/preset-shell.js.map +1 -0
  713. package/dist/esm/config/preset-utils.d.ts +51 -0
  714. package/dist/esm/config/preset-utils.d.ts.map +1 -0
  715. package/dist/esm/config/preset-utils.js +127 -0
  716. package/dist/esm/config/preset-utils.js.map +1 -0
  717. package/dist/esm/config/presets.d.ts +111 -0
  718. package/dist/esm/config/presets.d.ts.map +1 -0
  719. package/dist/esm/config/presets.js +286 -0
  720. package/dist/esm/config/presets.js.map +1 -0
  721. package/dist/esm/config/resources/application-layout-templates.d.ts +14 -0
  722. package/dist/esm/config/resources/application-layout-templates.d.ts.map +1 -0
  723. package/dist/esm/config/resources/application-layout-templates.js +40 -0
  724. package/dist/esm/config/resources/application-layout-templates.js.map +1 -0
  725. package/dist/esm/config/resources/application.resource-presets.d.ts +15 -0
  726. package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -0
  727. package/dist/esm/config/resources/application.resource-presets.js +159 -0
  728. package/dist/esm/config/resources/application.resource-presets.js.map +1 -0
  729. package/dist/esm/config/resources/billing-layout-templates.d.ts +14 -0
  730. package/dist/esm/config/resources/billing-layout-templates.d.ts.map +1 -0
  731. package/dist/esm/config/resources/billing-layout-templates.js +24 -0
  732. package/dist/esm/config/resources/billing-layout-templates.js.map +1 -0
  733. package/dist/esm/config/resources/billing.resource-presets.d.ts +26 -0
  734. package/dist/esm/config/resources/billing.resource-presets.d.ts.map +1 -0
  735. package/dist/esm/config/resources/billing.resource-presets.js +528 -0
  736. package/dist/esm/config/resources/billing.resource-presets.js.map +1 -0
  737. package/dist/esm/config/resources/email-layout-templates.d.ts +8 -0
  738. package/dist/esm/config/resources/email-layout-templates.d.ts.map +1 -0
  739. package/dist/esm/config/resources/email-layout-templates.js +22 -0
  740. package/dist/esm/config/resources/email-layout-templates.js.map +1 -0
  741. package/dist/esm/config/resources/email.resource-presets.d.ts +12 -0
  742. package/dist/esm/config/resources/email.resource-presets.d.ts.map +1 -0
  743. package/dist/esm/config/resources/email.resource-presets.js +134 -0
  744. package/dist/esm/config/resources/email.resource-presets.js.map +1 -0
  745. package/dist/esm/config/resources/guidance-layout-templates.d.ts +9 -0
  746. package/dist/esm/config/resources/guidance-layout-templates.d.ts.map +1 -0
  747. package/dist/esm/config/resources/guidance-layout-templates.js +25 -0
  748. package/dist/esm/config/resources/guidance-layout-templates.js.map +1 -0
  749. package/dist/esm/config/resources/guidance.resource-presets.d.ts +5 -0
  750. package/dist/esm/config/resources/guidance.resource-presets.d.ts.map +1 -0
  751. package/dist/esm/config/resources/guidance.resource-presets.js +198 -0
  752. package/dist/esm/config/resources/guidance.resource-presets.js.map +1 -0
  753. package/dist/esm/config/resources/identity-layout-templates.d.ts +16 -0
  754. package/dist/esm/config/resources/identity-layout-templates.d.ts.map +1 -0
  755. package/dist/esm/config/resources/identity-layout-templates.js +46 -0
  756. package/dist/esm/config/resources/identity-layout-templates.js.map +1 -0
  757. package/dist/esm/config/resources/identity.resource-presets.d.ts +17 -0
  758. package/dist/esm/config/resources/identity.resource-presets.d.ts.map +1 -0
  759. package/dist/esm/config/resources/identity.resource-presets.js +216 -0
  760. package/dist/esm/config/resources/identity.resource-presets.js.map +1 -0
  761. package/dist/esm/config/resources/index.d.ts +22 -0
  762. package/dist/esm/config/resources/index.d.ts.map +1 -0
  763. package/dist/esm/config/resources/index.js +39 -0
  764. package/dist/esm/config/resources/index.js.map +1 -0
  765. package/dist/esm/config/resources/infrastructure.resource-presets.d.ts +15 -0
  766. package/dist/esm/config/resources/infrastructure.resource-presets.d.ts.map +1 -0
  767. package/dist/esm/config/resources/infrastructure.resource-presets.js +109 -0
  768. package/dist/esm/config/resources/infrastructure.resource-presets.js.map +1 -0
  769. package/dist/esm/config/resources/organizations-layout-templates.d.ts +26 -0
  770. package/dist/esm/config/resources/organizations-layout-templates.d.ts.map +1 -0
  771. package/dist/esm/config/resources/organizations-layout-templates.js +76 -0
  772. package/dist/esm/config/resources/organizations-layout-templates.js.map +1 -0
  773. package/dist/esm/config/resources/organizations.resource-presets.d.ts +14 -0
  774. package/dist/esm/config/resources/organizations.resource-presets.d.ts.map +1 -0
  775. package/dist/esm/config/resources/organizations.resource-presets.js +253 -0
  776. package/dist/esm/config/resources/organizations.resource-presets.js.map +1 -0
  777. package/dist/esm/config/resources/resource.config.utils.d.ts +11 -0
  778. package/dist/esm/config/resources/resource.config.utils.d.ts.map +1 -0
  779. package/dist/esm/config/resources/resource.config.utils.js +14 -0
  780. package/dist/esm/config/resources/resource.config.utils.js.map +1 -0
  781. package/dist/esm/config/resources/security-siem-templates.d.ts +14 -0
  782. package/dist/esm/config/resources/security-siem-templates.d.ts.map +1 -0
  783. package/dist/esm/config/resources/security-siem-templates.js +17 -0
  784. package/dist/esm/config/resources/security-siem-templates.js.map +1 -0
  785. package/dist/esm/config/resources/security.resource-presets.d.ts +18 -0
  786. package/dist/esm/config/resources/security.resource-presets.d.ts.map +1 -0
  787. package/dist/esm/config/resources/security.resource-presets.js +543 -0
  788. package/dist/esm/config/resources/security.resource-presets.js.map +1 -0
  789. package/dist/esm/index.d.ts +169 -0
  790. package/dist/esm/index.d.ts.map +1 -0
  791. package/dist/esm/index.js +183 -0
  792. package/dist/esm/index.js.map +1 -0
  793. package/dist/esm/lottie/lottie.content.definitions.d.ts +10 -0
  794. package/dist/esm/lottie/lottie.content.definitions.d.ts.map +1 -0
  795. package/dist/esm/lottie/lottie.content.definitions.js +10 -0
  796. package/dist/esm/lottie/lottie.content.definitions.js.map +1 -0
  797. package/dist/esm/lottie/lottie.definitions.d.ts +27 -0
  798. package/dist/esm/lottie/lottie.definitions.d.ts.map +1 -0
  799. package/dist/esm/lottie/lottie.definitions.js +45 -0
  800. package/dist/esm/lottie/lottie.definitions.js.map +1 -0
  801. package/dist/esm/registration/register-common-enums.d.ts +15 -0
  802. package/dist/esm/registration/register-common-enums.d.ts.map +1 -0
  803. package/dist/esm/registration/register-common-enums.js +138 -0
  804. package/dist/esm/registration/register-common-enums.js.map +1 -0
  805. package/dist/esm/registration/register-default-animations.d.ts +9 -0
  806. package/dist/esm/registration/register-default-animations.d.ts.map +1 -0
  807. package/dist/esm/registration/register-default-animations.js +24 -0
  808. package/dist/esm/registration/register-default-animations.js.map +1 -0
  809. package/dist/esm/registration/register-default-icons.d.ts +6 -0
  810. package/dist/esm/registration/register-default-icons.d.ts.map +1 -0
  811. package/dist/esm/registration/register-default-icons.js +130 -0
  812. package/dist/esm/registration/register-default-icons.js.map +1 -0
  813. package/dist/esm/registration/register-default-presets.d.ts +2 -0
  814. package/dist/esm/registration/register-default-presets.d.ts.map +1 -0
  815. package/dist/esm/registration/register-default-presets.js +440 -0
  816. package/dist/esm/registration/register-default-presets.js.map +1 -0
  817. package/dist/esm/themes/glass.theme.d.ts +3 -0
  818. package/dist/esm/themes/glass.theme.d.ts.map +1 -0
  819. package/dist/esm/themes/glass.theme.js +420 -0
  820. package/dist/esm/themes/glass.theme.js.map +1 -0
  821. package/dist/esm/themes/neo-brutalist.theme.d.ts +3 -0
  822. package/dist/esm/themes/neo-brutalist.theme.d.ts.map +1 -0
  823. package/dist/esm/themes/neo-brutalist.theme.js +400 -0
  824. package/dist/esm/themes/neo-brutalist.theme.js.map +1 -0
  825. package/dist/tsconfig.build.tsbuildinfo +1 -0
  826. package/package.json +131 -0
@@ -0,0 +1,240 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ /**
4
+ * DisplayFieldFile Component
5
+ *
6
+ * Root display component for file fields. Acts as both:
7
+ * 1. Metadata fetcher — loads file metadata from server via authenticated httpOperations
8
+ * 2. Nature router — delegates rendering to nature-specific display components
9
+ *
10
+ * Nature routing priority:
11
+ * 1. Schema metadata `fileConfig.nature` (explicit, from z_file({ nature: FileNature.IMAGE }))
12
+ * 2. Fetched metadata MIME type detection (from server response)
13
+ * 3. Generic file card (fallback for unknown types / archives)
14
+ *
15
+ * For multiple images → gallery display. For mixed multiple → individual cards.
16
+ *
17
+ * Nature-specific sub-components are imported directly within this preset.
18
+ * Custom apps can override the entire file display by registering a new preset
19
+ * for LOW_LEVEL_DISPLAY_FIELD_FILE, or override individual nature renderers
20
+ * by registering for LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE etc. at the wrapper level.
21
+ */
22
+ import * as React from "react";
23
+ import { Text, Skeleton, DisplayFieldFileImage, DisplayFieldFileVideo, DisplayFieldFileAudio, DisplayFieldFileDocument, DisplayFieldFileGallery, useIconRegistry, StandardIconReference, IconSize, useI18n, } from "@wildo-ai/saas-frontend-lib";
24
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
25
+ import { FileDisplayNature, resolveFileDisplayNature, getFileMetadata as getFileSchemaMetadata, formatFileSize, } from "@wildo-ai/zod-decorators";
26
+ /** Type guard to check if value is a single file */
27
+ function isSingleFileValue(value) {
28
+ return value !== null && value !== undefined && 'fileId' in value;
29
+ }
30
+ /** Type guard to check if value is multiple files */
31
+ function isMultipleFileValue(value) {
32
+ return value !== null && value !== undefined && 'fileIds' in value;
33
+ }
34
+ function getNeutralFileDisplayLabel(value, t) {
35
+ if (isSingleFileValue(value)) {
36
+ return t('File attached') ?? 'File attached';
37
+ }
38
+ const fileCount = value.fileIds.length;
39
+ const translatedMultipleLabel = t('Files attached', { count: fileCount });
40
+ return fileCount > 1
41
+ ? (translatedMultipleLabel && translatedMultipleLabel !== 'Files attached'
42
+ ? translatedMultipleLabel
43
+ : `${fileCount} files attached`)
44
+ : (t('File attached') ?? 'File attached');
45
+ }
46
+ /**
47
+ * DisplayFieldFile component
48
+ *
49
+ * Renders a file reference with:
50
+ * - Filename with link
51
+ * - File size
52
+ * - File type icon/badge
53
+ * - Download option
54
+ */
55
+ function DisplayFieldFile({ schema, value, className, endpoints, showSize = true, showType = true, showDownload = true, httpOperations, }) {
56
+ const { renderIcon } = useIconRegistry();
57
+ const { t, tComponent, isReady } = useI18n({ component: [FrontendComponentType.LOW_LEVEL_FORM_FIELD, FrontendComponentType.LOW_LEVEL_FORM_FIELD_FILE] });
58
+ const fileSchemaMetadata = getFileSchemaMetadata(schema);
59
+ const isMultiple = fileSchemaMetadata?.multiple ?? false;
60
+ // State for loaded metadata (single file or array of files)
61
+ const [metadataEntries, setMetadataEntries] = React.useState([]);
62
+ const [loading, setLoading] = React.useState(false);
63
+ const [error, setError] = React.useState(null);
64
+ // Get file IDs from value (handles both single and multiple)
65
+ const fileIds = React.useMemo(() => {
66
+ if (isSingleFileValue(value)) {
67
+ return [value.fileId];
68
+ }
69
+ if (isMultipleFileValue(value)) {
70
+ return value.fileIds;
71
+ }
72
+ return [];
73
+ }, [value]);
74
+ // Stable key for dependency tracking (avoids inline .join() in useEffect deps)
75
+ const fileIdsKey = React.useMemo(() => fileIds.join(','), [fileIds]);
76
+ // Fetch metadata when value changes
77
+ React.useEffect(() => {
78
+ // Derive IDs from the key to keep closure and dependency in sync
79
+ const currentFileIds = fileIdsKey ? fileIdsKey.split(',') : [];
80
+ if (currentFileIds.length === 0 || !endpoints.getMetadata) {
81
+ setMetadataEntries([]);
82
+ return;
83
+ }
84
+ let cancelled = false;
85
+ setLoading(true);
86
+ setError(null);
87
+ const fetchAllMetadata = async () => {
88
+ try {
89
+ const settledResults = await Promise.allSettled(currentFileIds.map(async (fileId) => {
90
+ const metadataUrl = `${endpoints.getMetadata}/${encodeURIComponent(fileId)}/metadata`;
91
+ // Use authenticated HTTP operations when available (injected by engine wrapper).
92
+ // Falls back to raw fetch for standalone usage without resource context.
93
+ if (httpOperations) {
94
+ return httpOperations.get(metadataUrl);
95
+ }
96
+ // Fallback: raw fetch with cookie credentials (standalone usage)
97
+ const response = await fetch(metadataUrl, { credentials: 'include' });
98
+ if (!response.ok) {
99
+ throw new Error('Failed to fetch file metadata');
100
+ }
101
+ return response.json();
102
+ }));
103
+ const successfulEntries = settledResults.flatMap((result, index) => (result.status === 'fulfilled'
104
+ ? [{ fileId: currentFileIds[index], metadata: result.value }]
105
+ : []));
106
+ if (!cancelled) {
107
+ setMetadataEntries(successfulEntries);
108
+ setError(successfulEntries.length === 0 && settledResults.some(result => result.status === 'rejected')
109
+ ? (t('Unable to load file details') ?? 'Unable to load file details')
110
+ : null);
111
+ }
112
+ }
113
+ finally {
114
+ if (!cancelled) {
115
+ setLoading(false);
116
+ }
117
+ }
118
+ };
119
+ fetchAllMetadata();
120
+ return () => { cancelled = true; };
121
+ }, [fileIdsKey, endpoints.getMetadata, httpOperations]);
122
+ // =========================================================================
123
+ // NATURE DETECTION (via shared utility from zod-decorators)
124
+ // =========================================================================
125
+ const schemaNature = fileSchemaMetadata?.nature;
126
+ // =========================================================================
127
+ // FILE ICON MAPPING (for generic card fallback)
128
+ // =========================================================================
129
+ const getFileIconRef = (mimeType) => {
130
+ if (!mimeType)
131
+ return StandardIconReference.FILE;
132
+ if (mimeType.startsWith('image/'))
133
+ return StandardIconReference.FILE_IMAGE;
134
+ if (mimeType.startsWith('video/'))
135
+ return StandardIconReference.FILE_VIDEO;
136
+ if (mimeType.startsWith('audio/'))
137
+ return StandardIconReference.FILE_AUDIO;
138
+ if (mimeType === 'application/pdf')
139
+ return StandardIconReference.FILE_TEXT;
140
+ if (mimeType.includes('spreadsheet') || mimeType.includes('excel'))
141
+ return StandardIconReference.FILE_SPREADSHEET;
142
+ if (mimeType.includes('presentation') || mimeType.includes('powerpoint'))
143
+ return StandardIconReference.FILE_PRESENTATION;
144
+ if (mimeType.includes('document') || mimeType.includes('word'))
145
+ return StandardIconReference.FILE_TEXT;
146
+ if (mimeType.includes('zip') || mimeType.includes('rar') || mimeType.includes('7z'))
147
+ return StandardIconReference.FILE_ARCHIVE;
148
+ return StandardIconReference.FILE;
149
+ };
150
+ // =========================================================================
151
+ // NATURE-AWARE RENDERING
152
+ // =========================================================================
153
+ /**
154
+ * Render a single file with nature-aware component selection.
155
+ * Delegates to the appropriate nature-specific display preset,
156
+ * falling back to the generic file card for unknown/archive types.
157
+ */
158
+ const renderNatureAwareFile = (metadata, fileId) => {
159
+ // Determine display nature: schema-declared > MIME-detected > generic
160
+ const nature = resolveFileDisplayNature(schemaNature, metadata.mimeType);
161
+ switch (nature) {
162
+ case FileDisplayNature.IMAGE:
163
+ return (_jsx(DisplayFieldFileImage, { metadata: metadata, fileId: fileId, showDownload: showDownload, showSize: showSize }, fileId));
164
+ case FileDisplayNature.VIDEO:
165
+ return (_jsx(DisplayFieldFileVideo, { metadata: metadata, fileId: fileId, showDownload: showDownload, showSize: showSize }, fileId));
166
+ case FileDisplayNature.AUDIO:
167
+ return (_jsx(DisplayFieldFileAudio, { metadata: metadata, fileId: fileId, showDownload: showDownload, showSize: showSize }, fileId));
168
+ case FileDisplayNature.DOCUMENT:
169
+ return (_jsx(DisplayFieldFileDocument, { metadata: metadata, fileId: fileId, showDownload: showDownload, showSize: showSize }, fileId));
170
+ default:
171
+ // Generic file card (archives, unknown types, etc.)
172
+ return renderGenericFileItem(metadata, fileId);
173
+ }
174
+ };
175
+ /** Render a generic file card (used for archives, unknown types, and as fallback) */
176
+ const renderGenericFileItem = (metadata, fileId) => {
177
+ const fileIconRef = getFileIconRef(metadata.mimeType);
178
+ return (_jsxs("div", { className: "flex items-center gap-group p-card-sm rounded-md border bg-muted/30", children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(fileIconRef, { size: IconSize.LG, className: "text-muted-foreground" }) }), _jsxs("div", { className: "flex-1 min-w-0", children: [_jsx("div", { className: "flex items-center gap-element", children: metadata.url && showDownload ? (_jsx("a", { href: metadata.url, target: "_blank", rel: "noopener noreferrer", className: "font-medium text-primary hover:underline truncate", children: metadata.filename })) : (_jsx(Text, { className: "font-medium truncate", children: metadata.filename })) }), _jsxs("div", { className: "flex items-center gap-group text-xs text-muted-foreground mt-0.5", children: [showSize && metadata.size !== undefined && (_jsx("span", { children: formatFileSize(metadata.size) })), showType && metadata.mimeType && (_jsx("span", { className: "uppercase", children: metadata.extension || metadata.mimeType.split('/').pop() }))] })] }), metadata.thumbnailUrl && metadata.mimeType?.startsWith('image/') && (_jsx("img", { src: metadata.thumbnailUrl, alt: metadata.filename, className: "h-12 w-12 rounded object-cover" }))] }, fileId));
179
+ };
180
+ // =========================================================================
181
+ // MULTI-FILE GALLERY DETECTION
182
+ // =========================================================================
183
+ /**
184
+ * Check if multiple files should be rendered as a gallery.
185
+ * Conditions: multiple mode + all files are images (by schema nature or MIME detection).
186
+ */
187
+ const shouldRenderGallery = React.useMemo(() => {
188
+ if (metadataEntries.length <= 1)
189
+ return false;
190
+ // Schema declares IMAGE nature — always gallery for multiple
191
+ if (resolveFileDisplayNature(schemaNature) === FileDisplayNature.IMAGE)
192
+ return true;
193
+ // All fetched files are images — auto-gallery
194
+ return metadataEntries.every(({ metadata }) => metadata.mimeType?.startsWith('image/'));
195
+ }, [metadataEntries, schemaNature]);
196
+ // =========================================================================
197
+ // RENDER
198
+ // =========================================================================
199
+ const renderValue = () => {
200
+ // Handle null/undefined
201
+ if (value === null || value === undefined) {
202
+ return _jsxs(_Fragment, { children: [_jsx(Text, { className: "text-muted-foreground italic", "aria-hidden": "true", children: "\u2014" }), _jsx("span", { className: "sr-only", children: tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'noValue') })] });
203
+ }
204
+ // Handle invalid value
205
+ if (typeof value !== 'object' || (!('fileId' in value) && !('fileIds' in value))) {
206
+ return _jsx(Text, { className: "text-muted-foreground italic", children: "Invalid" });
207
+ }
208
+ // Loading state
209
+ if (loading) {
210
+ const loadingLabel = t('Loading file metadata') ?? 'Loading file metadata';
211
+ return (_jsxs("div", { className: "flex items-center gap-group p-card-sm rounded-md border bg-muted/30", role: "status", "aria-label": loadingLabel, children: [_jsx(Skeleton, { className: "h-6 w-6 rounded" }), _jsxs("div", { className: "flex-1 min-w-0 space-y-1.5", children: [_jsx(Skeleton, { className: "h-4 w-36" }), _jsx(Skeleton, { className: "h-3 w-20" })] })] }));
212
+ }
213
+ // Error state
214
+ if (error) {
215
+ return (_jsxs("div", { className: "flex items-center gap-element text-destructive", role: "alert", children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.WARNING, { size: IconSize.SM }) }), _jsx(Text, { className: "text-sm", children: error })] }));
216
+ }
217
+ // No metadata available yet — keep the UI neutral instead of exposing
218
+ // internal file identifiers while metadata is loading or unavailable.
219
+ if (metadataEntries.length === 0) {
220
+ return (_jsxs("div", { className: "flex items-center gap-element text-muted-foreground", children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.FILE, { size: IconSize.SM }) }), _jsx(Text, { className: "text-sm", children: getNeutralFileDisplayLabel(value, t) })] }));
221
+ }
222
+ // Multiple files — gallery or individual cards
223
+ if (isMultiple || metadataEntries.length > 1) {
224
+ // Gallery for all-image collections
225
+ if (shouldRenderGallery) {
226
+ return (_jsx(DisplayFieldFileGallery, { metadataList: metadataEntries.map(({ metadata }) => metadata), fileIds: metadataEntries.map(({ fileId }) => fileId), showDownload: showDownload }));
227
+ }
228
+ // Mixed content or non-image multiple — individual nature-aware cards
229
+ return (_jsx("div", { className: "space-y-item", children: metadataEntries.map(({ metadata, fileId }) => renderNatureAwareFile(metadata, fileId)) }));
230
+ }
231
+ // Single file — nature-aware rendering
232
+ return renderNatureAwareFile(metadataEntries[0].metadata, metadataEntries[0].fileId);
233
+ };
234
+ // Label/description rendering is handled by the parent DisplayField (FIELD-01)
235
+ return _jsx("div", { className: className, children: renderValue() });
236
+ }
237
+ ;
238
+ DisplayFieldFile.displayName = "DisplayFieldFile";
239
+ export { DisplayFieldFile };
240
+ //# sourceMappingURL=display-field-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * DisplayFieldFormatUtils
3
+ *
4
+ * Singleton class with static formatting utilities for display field formatters.
5
+ * Consolidates common formatting functions used across number, bigdecimal,
6
+ * and other display field components to avoid duplication.
7
+ */
8
+ export declare class DisplayFieldFormatUtils {
9
+ private constructor();
10
+ /**
11
+ * Format bytes to human-readable string.
12
+ *
13
+ * @param bytes - The byte value to format
14
+ * @param decimals - Number of decimal places (default: 2)
15
+ * @returns Formatted string (e.g., "1.5 MB")
16
+ */
17
+ static formatBytes(bytes: number, decimals?: number): string;
18
+ /**
19
+ * Format number as ordinal with locale awareness.
20
+ *
21
+ * Uses `Intl.PluralRules` for category detection and a per-locale suffix map
22
+ * for correct ordinal rendering. Locales without an explicit suffix map fall
23
+ * back to the dot convention (e.g., "3." — standard in German, Swedish,
24
+ * Norwegian, Dutch, and most European languages).
25
+ *
26
+ * @param n - The number to format
27
+ * @param locale - BCP 47 locale string (default: 'en')
28
+ * @returns Formatted ordinal string (e.g., "1st", "1er", "3.")
29
+ */
30
+ static formatOrdinal(n: number, locale?: string): string;
31
+ /**
32
+ * Truncate a decimal string to a specified number of decimal places.
33
+ * Operates purely on the string representation — no floating-point conversion,
34
+ * preserving full precision for BigDecimal values.
35
+ *
36
+ * @param value - The decimal string (e.g., "123.456789012345678901234")
37
+ * @param decimalPlaces - Number of decimal places to keep
38
+ * @param trailingZeros - Whether to pad with trailing zeros
39
+ * @returns Truncated decimal string
40
+ */
41
+ static truncateDecimalString(value: string, decimalPlaces: number, trailingZeros: boolean): string;
42
+ }
43
+ //# sourceMappingURL=display-field-format.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-format.utils.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-format.utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwBH,qBAAa,uBAAuB;IAElC,OAAO;IAIP;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM;IAavD;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,MAAM;IAiB9D;;;;;;;;;OASG;IACH,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,GAAG,MAAM;CA8BnG"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * DisplayFieldFormatUtils
3
+ *
4
+ * Singleton class with static formatting utilities for display field formatters.
5
+ * Consolidates common formatting functions used across number, bigdecimal,
6
+ * and other display field components to avoid duplication.
7
+ */
8
+ /**
9
+ * Per-locale ordinal suffix maps.
10
+ *
11
+ * Each entry maps Intl.PluralRules ordinal categories to locale-specific suffixes.
12
+ * Languages not listed fall back to the dot convention (e.g., "1." — universally
13
+ * understood in most European languages).
14
+ *
15
+ * References:
16
+ * - English: 1st, 2nd, 3rd, 4th ...
17
+ * - French: 1er, 2e, 3e ... (only "1er", rest are "e")
18
+ * - German/Swedish/most Romance: 1., 2., 3. (dot suffix)
19
+ * - Spanish: 1.º, 2.º, 3.º
20
+ */
21
+ const ORDINAL_SUFFIX_MAPS = {
22
+ en: { one: 'st', two: 'nd', few: 'rd', other: 'th' },
23
+ fr: { one: 'er', other: 'e' },
24
+ es: { other: '.º' },
25
+ it: { other: '°' },
26
+ pt: { other: '.º' },
27
+ // dot-suffix languages are handled by the fallback
28
+ };
29
+ export class DisplayFieldFormatUtils {
30
+ constructor() {
31
+ // Prevent instantiation — static-only class
32
+ }
33
+ /**
34
+ * Format bytes to human-readable string.
35
+ *
36
+ * @param bytes - The byte value to format
37
+ * @param decimals - Number of decimal places (default: 2)
38
+ * @returns Formatted string (e.g., "1.5 MB")
39
+ */
40
+ static formatBytes(bytes, decimals = 2) {
41
+ if (!Number.isFinite(bytes))
42
+ return '—';
43
+ if (bytes === 0)
44
+ return '0 B';
45
+ if (bytes < 0)
46
+ return '-' + DisplayFieldFormatUtils.formatBytes(Math.abs(bytes), decimals);
47
+ const k = 1024;
48
+ const dm = decimals < 0 ? 0 : decimals;
49
+ const sizes = ['B', 'KB', 'MB', 'GB', 'TB', 'PB'];
50
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
51
+ return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`;
52
+ }
53
+ /**
54
+ * Format number as ordinal with locale awareness.
55
+ *
56
+ * Uses `Intl.PluralRules` for category detection and a per-locale suffix map
57
+ * for correct ordinal rendering. Locales without an explicit suffix map fall
58
+ * back to the dot convention (e.g., "3." — standard in German, Swedish,
59
+ * Norwegian, Dutch, and most European languages).
60
+ *
61
+ * @param n - The number to format
62
+ * @param locale - BCP 47 locale string (default: 'en')
63
+ * @returns Formatted ordinal string (e.g., "1st", "1er", "3.")
64
+ */
65
+ static formatOrdinal(n, locale = 'en') {
66
+ // Extract base language from locale (e.g., 'en-US' → 'en')
67
+ const baseLang = locale.split('-')[0].toLowerCase();
68
+ const suffixMap = ORDINAL_SUFFIX_MAPS[baseLang];
69
+ if (suffixMap) {
70
+ const pr = new Intl.PluralRules(locale, { type: 'ordinal' });
71
+ const rule = pr.select(n);
72
+ const suffix = suffixMap[rule] ?? suffixMap['other'] ?? '.';
73
+ return `${n}${suffix}`;
74
+ }
75
+ // Fallback: dot convention (universally understood in most languages)
76
+ return `${n}.`;
77
+ }
78
+ /**
79
+ * Truncate a decimal string to a specified number of decimal places.
80
+ * Operates purely on the string representation — no floating-point conversion,
81
+ * preserving full precision for BigDecimal values.
82
+ *
83
+ * @param value - The decimal string (e.g., "123.456789012345678901234")
84
+ * @param decimalPlaces - Number of decimal places to keep
85
+ * @param trailingZeros - Whether to pad with trailing zeros
86
+ * @returns Truncated decimal string
87
+ */
88
+ static truncateDecimalString(value, decimalPlaces, trailingZeros) {
89
+ const dotIndex = value.indexOf('.');
90
+ if (dotIndex === -1) {
91
+ // No decimal point — integer
92
+ if (trailingZeros && decimalPlaces > 0) {
93
+ return `${value}.${'0'.repeat(decimalPlaces)}`;
94
+ }
95
+ return value;
96
+ }
97
+ const integerPart = value.slice(0, dotIndex);
98
+ const fractionalPart = value.slice(dotIndex + 1);
99
+ if (decimalPlaces === 0) {
100
+ return integerPart;
101
+ }
102
+ // Truncate (not round) to preserve BigDecimal semantics
103
+ const truncated = fractionalPart.slice(0, decimalPlaces);
104
+ if (trailingZeros) {
105
+ const padded = truncated.padEnd(decimalPlaces, '0');
106
+ return `${integerPart}.${padded}`;
107
+ }
108
+ // Remove trailing zeros
109
+ const trimmed = truncated.replace(/0+$/, '');
110
+ return trimmed ? `${integerPart}.${trimmed}` : integerPart;
111
+ }
112
+ }
113
+ //# sourceMappingURL=display-field-format.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-format.utils.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-format.utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * DisplayFieldMoney Component
3
+ *
4
+ * Displays a money value with proper formatting.
5
+ * Converts bigint amount to decimal based on decimals field.
6
+ */
7
+ import * as React from "react";
8
+ import type { DisplayFieldMoneyProps } from '@wildo-ai/saas-frontend-lib';
9
+ /**
10
+ * DisplayFieldMoney component
11
+ *
12
+ * Renders a money value with locale-aware formatting via Intl.NumberFormat:
13
+ * - Converts integer amount to decimal
14
+ * - Locale-aware symbol position & separators
15
+ * - Negative value styling (text-destructive)
16
+ */
17
+ declare function DisplayFieldMoney({ schema, value, className, showSymbol, symbolPosition, showCurrencyCode, locale, }: DisplayFieldMoneyProps): React.JSX.Element;
18
+ export { DisplayFieldMoney };
19
+ //# sourceMappingURL=display-field-money.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-money.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-money.tsx"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAS9B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEzE;;;;;;;GAOG;AACH,iBAAS,iBAAiB,CAAC,EACzB,MAAM,EACN,KAAK,EACL,SAAS,EACT,UAAiB,EACjB,cAAc,EACd,gBAAwB,EACxB,MAAM,GACP,EAAE,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAoF5C;AAID,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
@@ -0,0 +1,88 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { cn, useI18n } from "@wildo-ai/saas-frontend-lib";
4
+ import { Text } from "@wildo-ai/saas-frontend-lib";
5
+ import { fromMoneyAmount, } from "@wildo-ai/zod-decorators";
6
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
7
+ /**
8
+ * DisplayFieldMoney component
9
+ *
10
+ * Renders a money value with locale-aware formatting via Intl.NumberFormat:
11
+ * - Converts integer amount to decimal
12
+ * - Locale-aware symbol position & separators
13
+ * - Negative value styling (text-destructive)
14
+ */
15
+ function DisplayFieldMoney({ schema, value, className, showSymbol = true, symbolPosition, showCurrencyCode = false, locale, }) {
16
+ const { regionalPreferences, tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_FORM_FIELD });
17
+ // Locale priority: explicit prop > regional preferences > browser locale > fallback
18
+ const effectiveLocale = locale ?? regionalPreferences.locale ?? (typeof navigator !== 'undefined' ? navigator.language : 'en');
19
+ // Render the value content
20
+ const renderValue = () => {
21
+ // Handle null/undefined
22
+ if (value === null || value === undefined) {
23
+ return _jsxs(_Fragment, { children: [_jsx(Text, { className: "text-muted-foreground italic", "aria-hidden": "true", children: "\u2014" }), _jsx("span", { className: "sr-only", children: tComponent(FrontendComponentType.LOW_LEVEL_FORM_FIELD, 'noValue') })] });
24
+ }
25
+ // Handle invalid value
26
+ if (typeof value !== 'object' || !('amount' in value) || !('currency' in value) || !('decimals' in value)) {
27
+ return _jsx(Text, { className: "text-muted-foreground italic", children: "Invalid" });
28
+ }
29
+ // Convert bigint amount to decimal number
30
+ const decimalValue = fromMoneyAmount(value.amount, value.decimals);
31
+ const isNegative = decimalValue < 0;
32
+ // Use Intl.NumberFormat for locale-aware currency formatting
33
+ let displayText;
34
+ if (showSymbol) {
35
+ try {
36
+ const formatter = new Intl.NumberFormat(effectiveLocale, {
37
+ style: 'currency',
38
+ currency: value.currency,
39
+ minimumFractionDigits: value.decimals,
40
+ maximumFractionDigits: value.decimals,
41
+ // currencyDisplay controls how the currency is shown (symbol, code, name)
42
+ currencyDisplay: 'symbol',
43
+ });
44
+ displayText = formatter.format(decimalValue);
45
+ // Apply manual symbolPosition override if explicitly set.
46
+ // Intl.NumberFormat respects locale conventions by default;
47
+ // this override is for cases where the schema wants a specific position.
48
+ if (symbolPosition) {
49
+ // Extract the numeric portion by formatting without currency
50
+ const numericFormatter = new Intl.NumberFormat(effectiveLocale, {
51
+ minimumFractionDigits: value.decimals,
52
+ maximumFractionDigits: value.decimals,
53
+ });
54
+ const numericText = numericFormatter.format(decimalValue);
55
+ // Resolve symbol from the currency format parts
56
+ const parts = formatter.formatToParts(Math.abs(decimalValue));
57
+ const symbolPart = parts.find(p => p.type === 'currency')?.value ?? value.currency;
58
+ // Convention: prefix symbols have no space ($100), suffix symbols have a space (100 €)
59
+ displayText = symbolPosition === 'before'
60
+ ? `${symbolPart}${numericText}`
61
+ : `${numericText} ${symbolPart}`;
62
+ }
63
+ }
64
+ catch {
65
+ // Fallback if Intl doesn't support this currency
66
+ displayText = `${value.currency} ${decimalValue.toFixed(value.decimals)}`;
67
+ }
68
+ }
69
+ else {
70
+ const numericFormatter = new Intl.NumberFormat(effectiveLocale, {
71
+ minimumFractionDigits: value.decimals,
72
+ maximumFractionDigits: value.decimals,
73
+ });
74
+ displayText = numericFormatter.format(decimalValue);
75
+ }
76
+ // Optionally append currency code
77
+ if (showCurrencyCode) {
78
+ displayText = `${displayText} ${value.currency}`;
79
+ }
80
+ return (_jsx(Text, { className: cn("tabular-nums", isNegative && "text-destructive"), children: displayText }));
81
+ };
82
+ // Label/description rendering is handled by the parent DisplayField (FIELD-01)
83
+ return _jsx("div", { className: className, children: renderValue() });
84
+ }
85
+ ;
86
+ DisplayFieldMoney.displayName = "DisplayFieldMoney";
87
+ export { DisplayFieldMoney };
88
+ //# sourceMappingURL=display-field-money.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-money.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-money.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * DisplayFieldNumber Component
3
+ *
4
+ * Displays a number value based on the number UI decorator.
5
+ * Supports different display modes: raw, formatted, percentage, compact, ordinal, bytes
6
+ */
7
+ import * as React from "react";
8
+ import type { DisplayFieldNumberProps } from '@wildo-ai/saas-frontend-lib';
9
+ /**
10
+ * DisplayFieldNumber component
11
+ *
12
+ * Renders a number value according to the number UI decorator
13
+ */
14
+ declare function DisplayFieldNumber({ schema, value, className, locale, }: DisplayFieldNumberProps): React.JSX.Element;
15
+ export { DisplayFieldNumber };
16
+ //# sourceMappingURL=display-field-number.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-number.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-number.tsx"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAA;AAG1E;;;;GAIG;AACH,iBAAS,kBAAkB,CAAC,EAC1B,MAAM,EACN,KAAK,EACL,SAAS,EACT,MAAM,GACP,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAmF7C;AAID,OAAO,EAAE,kBAAkB,EAAE,CAAA"}