@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,80 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ /**
4
+ * DisplayFieldEnum Component
5
+ *
6
+ * Displays an enum value based on the enum UI decorator.
7
+ * Supports different display modes: text, badge, icon, card
8
+ */
9
+ import * as React from "react";
10
+ import { cn, useI18n, useIconRegistry, IconSize, ICON_SIZE_MAP, Text, Badge, Card } from "@wildo-ai/saas-frontend-lib";
11
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
12
+ import { EnumDisplayMode, getEnumUI } from "@wildo-ai/zod-decorators";
13
+ /**
14
+ * DisplayFieldEnum component
15
+ *
16
+ * Renders an enum value according to the display policy
17
+ */
18
+ function DisplayFieldEnum({ schema, value, className, labels, }) {
19
+ const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_FORM_FIELD });
20
+ const { renderIcon } = useIconRegistry();
21
+ const enumUI = getEnumUI(schema);
22
+ const displayMode = enumUI?.display?.displayMode ?? EnumDisplayMode.TEXT;
23
+ const resolveColor = (enumValue, fallback) => {
24
+ return (enumUI?.values?.[enumValue]?.color
25
+ ?? enumUI?.defaultColor
26
+ ?? fallback);
27
+ };
28
+ const resolveIcon = (enumValue) => {
29
+ return (enumUI?.values?.[enumValue]?.icon
30
+ ?? enumUI?.defaultIcon);
31
+ };
32
+ // Get display label for the value
33
+ const displayLabel = value ? (labels?.[value] ?? value) : null;
34
+ /**
35
+ * Render an `IconLike` — dispatches between string refs (via icon registry)
36
+ * and direct React component refs (via createElement).
37
+ */
38
+ const renderIconLike = (icon, size, className) => {
39
+ if (typeof icon === 'string') {
40
+ return renderIcon(icon, { size, className });
41
+ }
42
+ const sizeInPixels = ICON_SIZE_MAP[size];
43
+ return React.createElement(icon, { size: sizeInPixels, className });
44
+ };
45
+ // Render the value content
46
+ const renderValue = () => {
47
+ // Handle null/undefined
48
+ if (value === null || value === undefined || value === '' || displayLabel === null) {
49
+ 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') })] });
50
+ }
51
+ // Render based on display mode
52
+ switch (displayMode) {
53
+ case EnumDisplayMode.TEXT:
54
+ return _jsx(Text, { children: displayLabel });
55
+ case EnumDisplayMode.BADGE: {
56
+ const variant = resolveColor(value, 'secondary');
57
+ const icon = resolveIcon(value);
58
+ return (_jsxs(Badge, { variant: variant, className: cn(icon && 'inline-flex items-center gap-item-xs'), children: [icon ? renderIconLike(icon, IconSize.SM) : null, displayLabel] }));
59
+ }
60
+ case EnumDisplayMode.ICON: {
61
+ const iconVariant = resolveColor(value, 'outline');
62
+ const icon = resolveIcon(value);
63
+ if (icon) {
64
+ return (_jsxs(Badge, { variant: iconVariant, className: "gap-item-xs", children: [renderIconLike(icon, IconSize.SM), displayLabel] }));
65
+ }
66
+ return (_jsxs("span", { className: "inline-flex items-center gap-item-xs", children: [_jsx(Badge, { variant: iconVariant, className: "h-2.5 w-2.5 rounded-full p-0", "aria-hidden": "true" }), _jsx(Text, { children: displayLabel })] }));
67
+ }
68
+ case EnumDisplayMode.CARD:
69
+ return (_jsx(Card, { className: "inline-flex px-card-sm py-1.5", children: _jsx(Text, { className: "text-sm font-medium", children: displayLabel }) }));
70
+ default:
71
+ return _jsx(Text, { children: displayLabel });
72
+ }
73
+ };
74
+ // Label/description rendering is handled by the parent DisplayField (FIELD-01)
75
+ return _jsx("div", { className: className, children: renderValue() });
76
+ }
77
+ ;
78
+ DisplayFieldEnum.displayName = "DisplayFieldEnum";
79
+ export { DisplayFieldEnum };
80
+ //# sourceMappingURL=display-field-enum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-enum.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-enum.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;GAKG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AACtH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAKrE;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,EACxB,MAAM,EACN,KAAK,EACL,SAAS,EACT,MAAM,GACgB;IACtB,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,qBAAqB,CAAC,oBAAoB,EAAE,CAAC,CAAA;IAClG,MAAM,EAAE,UAAU,EAAE,GAAG,eAAe,EAAE,CAAA;IAExC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IAChC,MAAM,WAAW,GAAG,MAAM,EAAE,OAAO,EAAE,WAAW,IAAI,eAAe,CAAC,IAAI,CAAA;IAExE,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,QAA+B,EAAyB,EAAE;QACjG,OAAO,CACL,MAAM,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK;eAC/B,MAAM,EAAE,YAAY;eACpB,QAAQ,CACa,CAAA;IAC5B,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,SAAiB,EAAwB,EAAE;QAC9D,OAAO,CACL,MAAM,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI;eAC9B,MAAM,EAAE,WAAW,CACvB,CAAA;IACH,CAAC,CAAA;IAED,kCAAkC;IAClC,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAE9D;;;OAGG;IACH,MAAM,cAAc,GAAG,CAAC,IAAc,EAAE,IAAc,EAAE,SAAkB,EAAmB,EAAE;QAC7F,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,OAAO,UAAU,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QAC9C,CAAC;QACD,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;QACxC,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAAA;IACrE,CAAC,CAAA;IAED,2BAA2B;IAC3B,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,wBAAwB;QACxB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YACnF,OAAO,8BAAE,KAAC,IAAI,IAAC,SAAS,EAAC,8BAA8B,iBAAa,MAAM,uBAAS,EAAA,eAAM,SAAS,EAAC,SAAS,YAAE,UAAU,CAAC,qBAAqB,CAAC,oBAAoB,EAAE,SAAS,CAAC,GAAQ,IAAG,CAAA;QAC5L,CAAC;QAED,+BAA+B;QAC/B,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,eAAe,CAAC,IAAI;gBACvB,OAAO,KAAC,IAAI,cAAE,YAAY,GAAQ,CAAA;YAEpC,KAAK,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;gBAChD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC/B,OAAO,CACL,MAAC,KAAK,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,IAAI,sCAAsC,CAAC,aACnF,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAC/C,YAAY,IACP,CACT,CAAA;YACH,CAAC;YAED,KAAK,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC1B,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;gBAClD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAE/B,IAAI,IAAI,EAAE,CAAC;oBACT,OAAO,CACL,MAAC,KAAK,IAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAC,aAAa,aACjD,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,EACjC,YAAY,IACP,CACT,CAAA;gBACH,CAAC;gBAED,OAAO,CACL,gBAAM,SAAS,EAAC,sCAAsC,aACpD,KAAC,KAAK,IAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAC,8BAA8B,iBAAa,MAAM,GAAG,EAC3F,KAAC,IAAI,cAAE,YAAY,GAAQ,IACtB,CACR,CAAA;YACH,CAAC;YAED,KAAK,eAAe,CAAC,IAAI;gBACvB,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,YAC7C,KAAC,IAAI,IAAC,SAAS,EAAC,qBAAqB,YAAE,YAAY,GAAQ,GACtD,CACR,CAAA;YAEH;gBACE,OAAO,KAAC,IAAI,cAAE,YAAY,GAAQ,CAAA;QACtC,CAAC;IACH,CAAC,CAAA;IAED,+EAA+E;IAC/E,OAAO,cAAK,SAAS,EAAE,SAAS,YAAG,WAAW,EAAE,GAAO,CAAA;AACzD,CAAC;AAED,CAAC;AAAC,gBAAsE,CAAC,WAAW,GAAG,kBAAkB,CAAA;AAEzG,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * DisplayFieldFileAudio Component
3
+ *
4
+ * Nature-specific display for audio files.
5
+ * Renders a compact HTML5 audio player with native controls
6
+ * and file metadata.
7
+ *
8
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_AUDIO).
9
+ */
10
+ import * as React from "react";
11
+ import type { DisplayFieldFileAudioProps } from '@wildo-ai/saas-frontend-lib';
12
+ declare function DisplayFieldFileAudio({ metadata, fileId, className, showDownload, showSize, }: DisplayFieldFileAudioProps): React.JSX.Element;
13
+ export { DisplayFieldFileAudio };
14
+ //# sourceMappingURL=display-field-file-audio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-audio.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-audio.tsx"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAM7E,iBAAS,qBAAqB,CAAC,EAC7B,QAAQ,EACR,MAAM,EACN,SAAS,EACT,YAAmB,EACnB,QAAe,GAChB,EAAE,0BAA0B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAmEhD;AAID,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ /**
4
+ * DisplayFieldFileAudio Component
5
+ *
6
+ * Nature-specific display for audio files.
7
+ * Renders a compact HTML5 audio player with native controls
8
+ * and file metadata.
9
+ *
10
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_AUDIO).
11
+ */
12
+ import * as React from "react";
13
+ import { Text, useIconRegistry, StandardIconReference, IconSize, useI18n } from "@wildo-ai/saas-frontend-lib";
14
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
15
+ import { formatFileSize } from "@wildo-ai/zod-decorators";
16
+ // =============================================================================
17
+ // COMPONENT
18
+ // =============================================================================
19
+ function DisplayFieldFileAudio({ metadata, fileId, className, showDownload = true, showSize = true, }) {
20
+ const { renderIcon } = useIconRegistry();
21
+ const { tComponent, isReady } = useI18n({ component: [FrontendComponentType.LOW_LEVEL_FORM_FIELD, FrontendComponentType.LOW_LEVEL_FORM_FIELD_FILE] });
22
+ const [audioError, setAudioError] = React.useState(false);
23
+ const audioUrl = metadata.url;
24
+ // No URL or audio failed — fallback to download card
25
+ if (audioError || !audioUrl) {
26
+ return (_jsxs("div", { className: `flex items-center gap-group p-card-sm rounded-md border bg-muted/30 ${className ?? ''}`, children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.FILE_AUDIO, { size: IconSize.LG, className: "text-muted-foreground" }) }), _jsxs("div", { className: "flex-1 min-w-0", children: [_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 && _jsx("span", { children: formatFileSize(metadata.size) }), metadata.extension && _jsx("span", { className: "uppercase", children: metadata.extension }), audioError && _jsx("span", { className: "text-destructive", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_AUDIO, 'audio_load_error') })] })] }), showDownload && audioUrl && (_jsx("a", { href: audioUrl, download: metadata.filename, className: "text-primary hover:underline text-sm shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_AUDIO, 'download') }))] }));
27
+ }
28
+ return (_jsxs("div", { className: `flex items-center gap-group p-card-sm rounded-md border bg-muted/30 ${className ?? ''}`, children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.FILE_AUDIO, { size: IconSize.LG, className: "text-muted-foreground" }) }), _jsxs("div", { className: "flex-1 min-w-0 space-y-item", children: [_jsxs("div", { className: "flex items-center gap-group", children: [_jsx(Text, { className: "font-medium truncate max-w-48", children: metadata.filename }), showSize && _jsx("span", { className: "text-xs text-muted-foreground", children: formatFileSize(metadata.size) }), metadata.extension && _jsx("span", { className: "text-xs text-muted-foreground uppercase", children: metadata.extension })] }), _jsxs("audio", { controls: true, preload: "metadata", className: "w-full h-8", onError: () => setAudioError(true), children: [_jsx("source", { src: audioUrl, type: metadata.mimeType }), tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_AUDIO, 'unsupported_format')] })] }), showDownload && (_jsx("a", { href: audioUrl, download: metadata.filename, className: "text-primary hover:underline text-sm shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_AUDIO, 'download') }))] }));
29
+ }
30
+ ;
31
+ DisplayFieldFileAudio.displayName = "DisplayFieldFileAudio";
32
+ export { DisplayFieldFileAudio };
33
+ //# sourceMappingURL=display-field-file-audio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-audio.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-audio.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * DisplayFieldFileDocument Component
3
+ *
4
+ * Nature-specific display for document files (PDF, Office).
5
+ * - PDF: Embeds in an iframe using the browser's native PDF viewer.
6
+ * - Office docs: Enhanced file card with type-specific icon + download button.
7
+ *
8
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_DOCUMENT).
9
+ */
10
+ import * as React from "react";
11
+ import type { DisplayFieldFileDocumentProps } from '@wildo-ai/saas-frontend-lib';
12
+ declare function DisplayFieldFileDocument({ metadata, fileId, className, showDownload, showSize, }: DisplayFieldFileDocumentProps): React.JSX.Element;
13
+ export { DisplayFieldFileDocument };
14
+ //# sourceMappingURL=display-field-file-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-document.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-document.tsx"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAA;AAiChF,iBAAS,wBAAwB,CAAC,EAChC,QAAQ,EACR,MAAM,EACN,SAAS,EACT,YAAmB,EACnB,QAAe,GAChB,EAAE,6BAA6B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAkEnD;AAID,OAAO,EAAE,wBAAwB,EAAE,CAAA"}
@@ -0,0 +1,57 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Text, useIconRegistry, StandardIconReference, IconSize, useI18n } from "@wildo-ai/saas-frontend-lib";
4
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
5
+ import { formatFileSize } from "@wildo-ai/zod-decorators";
6
+ // =============================================================================
7
+ // HELPERS
8
+ // =============================================================================
9
+ /** Check if a MIME type is a PDF */
10
+ function isPdf(mimeType) {
11
+ return mimeType === 'application/pdf';
12
+ }
13
+ /** Get the appropriate icon for a document type */
14
+ function getDocumentIconRef(mimeType) {
15
+ if (isPdf(mimeType))
16
+ return StandardIconReference.FILE_TEXT;
17
+ if (mimeType.includes('spreadsheet') || mimeType.includes('excel'))
18
+ return StandardIconReference.FILE_SPREADSHEET;
19
+ if (mimeType.includes('presentation') || mimeType.includes('powerpoint'))
20
+ return StandardIconReference.FILE_PRESENTATION;
21
+ if (mimeType.includes('document') || mimeType.includes('word'))
22
+ return StandardIconReference.FILE_TEXT;
23
+ return StandardIconReference.FILE_TEXT;
24
+ }
25
+ /** Get a human-readable document type label */
26
+ function getDocumentTypeLabel(mimeType, extension) {
27
+ if (isPdf(mimeType))
28
+ return 'PDF';
29
+ if (mimeType.includes('spreadsheet') || mimeType.includes('excel'))
30
+ return extension?.toUpperCase() || 'Spreadsheet';
31
+ if (mimeType.includes('presentation') || mimeType.includes('powerpoint'))
32
+ return extension?.toUpperCase() || 'Presentation';
33
+ if (mimeType.includes('document') || mimeType.includes('word'))
34
+ return extension?.toUpperCase() || 'Document';
35
+ return extension?.toUpperCase() || 'Document';
36
+ }
37
+ // =============================================================================
38
+ // COMPONENT
39
+ // =============================================================================
40
+ function DisplayFieldFileDocument({ metadata, fileId, className, showDownload = true, showSize = true, }) {
41
+ const { renderIcon } = useIconRegistry();
42
+ const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_DOCUMENT });
43
+ const documentUrl = metadata.url;
44
+ const isPdfDocument = isPdf(metadata.mimeType);
45
+ const docIcon = getDocumentIconRef(metadata.mimeType);
46
+ const docTypeLabel = getDocumentTypeLabel(metadata.mimeType, metadata.extension);
47
+ // PDF with URL — render embedded viewer
48
+ if (isPdfDocument && documentUrl) {
49
+ return (_jsxs("div", { className: `space-y-item ${className ?? ''}`, children: [_jsx("div", { className: "w-full max-w-2xl rounded-md overflow-hidden border bg-muted/20", children: _jsx("iframe", { src: documentUrl, title: metadata.filename, className: "w-full h-96 border-0", loading: "lazy" }) }), _jsxs("div", { className: "flex items-center gap-group text-xs text-muted-foreground", children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(docIcon, { size: IconSize.SM }) }), _jsx("span", { className: "font-medium text-foreground truncate max-w-48", children: metadata.filename }), _jsx("span", { className: "uppercase", children: docTypeLabel }), showSize && _jsx("span", { children: formatFileSize(metadata.size) }), showDownload && (_jsx("a", { href: documentUrl, download: metadata.filename, className: "text-primary hover:underline ms-auto shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_DOCUMENT, 'download') }))] })] }));
50
+ }
51
+ // Non-PDF or no URL — enhanced file card with type-specific icon
52
+ return (_jsxs("div", { className: `flex items-center gap-group p-card-sm rounded-md border bg-muted/30 ${className ?? ''}`, children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(docIcon, { size: IconSize.LG, className: "text-muted-foreground" }) }), _jsxs("div", { className: "flex-1 min-w-0", children: [_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: [_jsx("span", { className: "uppercase", children: docTypeLabel }), showSize && _jsx("span", { children: formatFileSize(metadata.size) })] })] }), showDownload && documentUrl && (_jsx("a", { href: documentUrl, target: "_blank", rel: "noopener noreferrer", className: "text-primary hover:underline text-sm shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_DOCUMENT, 'open_document') }))] }));
53
+ }
54
+ ;
55
+ DisplayFieldFileDocument.displayName = "DisplayFieldFileDocument";
56
+ export { DisplayFieldFileDocument };
57
+ //# sourceMappingURL=display-field-file-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-document.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-document.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * DisplayFieldFileGallery Component
3
+ *
4
+ * Nature-specific display for multiple image files.
5
+ * Renders a thumbnail grid with click-to-enlarge lightbox
6
+ * and prev/next navigation.
7
+ *
8
+ * Used when: multiple: true + nature is IMAGE (or all files are images based on MIME).
9
+ * Non-image files in a mixed collection render as small icon cards within the grid.
10
+ *
11
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY).
12
+ */
13
+ import * as React from "react";
14
+ import type { DisplayFieldFileGalleryProps } from '@wildo-ai/saas-frontend-lib';
15
+ declare function DisplayFieldFileGallery({ metadataList, fileIds, className, columns, showDownload, }: DisplayFieldFileGalleryProps): React.JSX.Element;
16
+ export { DisplayFieldFileGallery };
17
+ //# sourceMappingURL=display-field-file-gallery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-gallery.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-gallery.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAA;AAc/E,iBAAS,uBAAuB,CAAC,EAC/B,YAAY,EACZ,OAAO,EACP,SAAS,EACT,OAAW,EACX,YAAmB,GACpB,EAAE,4BAA4B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAgKlD;AAID,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
@@ -0,0 +1,87 @@
1
+ "use client";
2
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
3
+ /**
4
+ * DisplayFieldFileGallery Component
5
+ *
6
+ * Nature-specific display for multiple image files.
7
+ * Renders a thumbnail grid with click-to-enlarge lightbox
8
+ * and prev/next navigation.
9
+ *
10
+ * Used when: multiple: true + nature is IMAGE (or all files are images based on MIME).
11
+ * Non-image files in a mixed collection render as small icon cards within the grid.
12
+ *
13
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY).
14
+ */
15
+ import * as React from "react";
16
+ import { Text } from "@wildo-ai/saas-frontend-lib";
17
+ import { useIconRegistry, StandardIconReference, IconSize, useI18n } from "@wildo-ai/saas-frontend-lib";
18
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
19
+ // =============================================================================
20
+ // HELPERS
21
+ // =============================================================================
22
+ function isImageMimeType(mimeType) {
23
+ return mimeType.startsWith('image/');
24
+ }
25
+ // =============================================================================
26
+ // COMPONENT
27
+ // =============================================================================
28
+ function DisplayFieldFileGallery({ metadataList, fileIds, className, columns = 4, showDownload = true, }) {
29
+ const { renderIcon } = useIconRegistry();
30
+ const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY });
31
+ const [lightboxIndex, setLightboxIndex] = React.useState(null);
32
+ // Separate images from non-images for rendering strategy
33
+ const imageIndices = React.useMemo(() => metadataList.map((m, i) => isImageMimeType(m.mimeType) ? i : -1).filter(i => i >= 0), [metadataList]);
34
+ const imageCount = imageIndices.length;
35
+ // Navigate lightbox
36
+ const goToNext = React.useCallback(() => {
37
+ if (lightboxIndex === null)
38
+ return;
39
+ // Find next image index after current
40
+ const currentImagePos = imageIndices.indexOf(lightboxIndex);
41
+ if (currentImagePos < imageIndices.length - 1) {
42
+ setLightboxIndex(imageIndices[currentImagePos + 1]);
43
+ }
44
+ }, [lightboxIndex, imageIndices]);
45
+ const goToPrev = React.useCallback(() => {
46
+ if (lightboxIndex === null)
47
+ return;
48
+ const currentImagePos = imageIndices.indexOf(lightboxIndex);
49
+ if (currentImagePos > 0) {
50
+ setLightboxIndex(imageIndices[currentImagePos - 1]);
51
+ }
52
+ }, [lightboxIndex, imageIndices]);
53
+ // Keyboard navigation for lightbox
54
+ React.useEffect(() => {
55
+ if (lightboxIndex === null)
56
+ return;
57
+ const handleKeyDown = (e) => {
58
+ if (e.key === 'Escape')
59
+ setLightboxIndex(null);
60
+ if (e.key === 'ArrowRight')
61
+ goToNext();
62
+ if (e.key === 'ArrowLeft')
63
+ goToPrev();
64
+ };
65
+ document.addEventListener('keydown', handleKeyDown);
66
+ return () => document.removeEventListener('keydown', handleKeyDown);
67
+ }, [lightboxIndex, goToNext, goToPrev]);
68
+ const gridClass = columns !== 4
69
+ ? `grid gap-item`
70
+ : `grid gap-item grid-cols-2 sm:grid-cols-3 md:grid-cols-4`;
71
+ const gridStyle = columns !== 4
72
+ ? { gridTemplateColumns: `repeat(${columns}, minmax(0, 1fr))` }
73
+ : undefined;
74
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `space-y-item ${className ?? ''}`, children: [_jsxs(Text, { className: "text-xs text-muted-foreground", children: [tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY, 'images_count', { count: imageCount }), metadataList.length > imageCount && ` + ${metadataList.length - imageCount} file${metadataList.length - imageCount !== 1 ? 's' : ''}`] }), _jsx("div", { className: gridClass, style: gridStyle, children: metadataList.map((meta, index) => {
75
+ const isImage = isImageMimeType(meta.mimeType);
76
+ const thumbUrl = meta.thumbnailUrl || meta.url;
77
+ if (isImage && thumbUrl) {
78
+ return (_jsx("button", { type: "button", onClick: () => setLightboxIndex(index), className: "aspect-square rounded-md overflow-hidden border bg-muted/20 cursor-zoom-in hover:ring-2 hover:ring-primary/30 transition-shadow focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", "aria-label": `${meta.filename} — ${tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY, 'click_to_browse')}`, children: _jsx("img", { src: thumbUrl, alt: meta.filename, className: "w-full h-full object-cover", loading: "lazy" }) }, fileIds[index]));
79
+ }
80
+ // Non-image file — render as icon card within grid
81
+ return (_jsxs("div", { className: "aspect-square rounded-md overflow-hidden border bg-muted/30 flex flex-col items-center justify-center gap-1 p-2", children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.FILE, { size: IconSize.MD, className: "text-muted-foreground" }) }), _jsx(Text, { className: "text-xs text-muted-foreground truncate max-w-full text-center", children: meta.filename })] }, fileIds[index]));
82
+ }) })] }), lightboxIndex !== null && metadataList[lightboxIndex] && (_jsxs("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/80 backdrop-blur-sm", onClick: () => setLightboxIndex(null), role: "dialog", "aria-modal": "true", "aria-label": metadataList[lightboxIndex].filename, children: [_jsx("button", { type: "button", onClick: () => setLightboxIndex(null), className: "absolute top-4 right-4 text-white/80 hover:text-white z-10", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY, 'close'), children: renderIcon(StandardIconReference.CLOSE, { size: IconSize.LG, className: "text-white" }) }), imageIndices.indexOf(lightboxIndex) > 0 && (_jsx("button", { type: "button", onClick: (e) => { e.stopPropagation(); goToPrev(); }, className: "absolute left-4 top-1/2 -translate-y-1/2 text-white/80 hover:text-white z-10 p-2 rounded-full bg-black/40", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY, 'previous'), children: renderIcon(StandardIconReference.CHEVRON_LEFT, { size: IconSize.LG, className: "text-white" }) })), imageIndices.indexOf(lightboxIndex) < imageIndices.length - 1 && (_jsx("button", { type: "button", onClick: (e) => { e.stopPropagation(); goToNext(); }, className: "absolute right-4 top-1/2 -translate-y-1/2 text-white/80 hover:text-white z-10 p-2 rounded-full bg-black/40", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_GALLERY, 'next'), children: renderIcon(StandardIconReference.CHEVRON_RIGHT, { size: IconSize.LG, className: "text-white" }) })), _jsx("img", { src: metadataList[lightboxIndex].url || metadataList[lightboxIndex].thumbnailUrl || '', alt: metadataList[lightboxIndex].filename, className: "max-w-[90vw] max-h-[85vh] object-contain rounded-md shadow-[var(--shadow-xl)]", onClick: (e) => e.stopPropagation() }), _jsxs("div", { className: "absolute bottom-4 left-1/2 -translate-x-1/2 text-white/80 text-sm bg-black/40 px-3 py-1 rounded-full", children: [imageIndices.indexOf(lightboxIndex) + 1, " / ", imageCount] })] }))] }));
83
+ }
84
+ ;
85
+ DisplayFieldFileGallery.displayName = "DisplayFieldFileGallery";
86
+ export { DisplayFieldFileGallery };
87
+ //# sourceMappingURL=display-field-file-gallery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-gallery.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-gallery.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * DisplayFieldFileImage Component
3
+ *
4
+ * Nature-specific display for image files.
5
+ * Renders a responsive preview with click-to-enlarge (lightbox),
6
+ * dimensions info, and download link.
7
+ *
8
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE),
9
+ * so custom apps can override with their own image display implementation.
10
+ */
11
+ import * as React from "react";
12
+ import type { DisplayFieldFileImageProps } from '@wildo-ai/saas-frontend-lib';
13
+ declare function DisplayFieldFileImage({ metadata, fileId, className, showDownload, showSize, showDimensions, }: DisplayFieldFileImageProps): React.JSX.Element;
14
+ export { DisplayFieldFileImage };
15
+ //# sourceMappingURL=display-field-file-image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-image.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-image.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAM7E,iBAAS,qBAAqB,CAAC,EAC7B,QAAQ,EACR,MAAM,EACN,SAAS,EACT,YAAmB,EACnB,QAAe,EACf,cAAqB,GACtB,EAAE,0BAA0B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAiHhD;AAID,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
3
+ /**
4
+ * DisplayFieldFileImage Component
5
+ *
6
+ * Nature-specific display for image files.
7
+ * Renders a responsive preview with click-to-enlarge (lightbox),
8
+ * dimensions info, and download link.
9
+ *
10
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE),
11
+ * so custom apps can override with their own image display implementation.
12
+ */
13
+ import * as React from "react";
14
+ import { Text, useIconRegistry, StandardIconReference, IconSize, useI18n } from "@wildo-ai/saas-frontend-lib";
15
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
16
+ import { formatFileSize } from "@wildo-ai/zod-decorators";
17
+ // =============================================================================
18
+ // COMPONENT
19
+ // =============================================================================
20
+ function DisplayFieldFileImage({ metadata, fileId, className, showDownload = true, showSize = true, showDimensions = true, }) {
21
+ const { renderIcon } = useIconRegistry();
22
+ const { tComponent, isReady } = useI18n({ component: [FrontendComponentType.LOW_LEVEL_FORM_FIELD, FrontendComponentType.LOW_LEVEL_FORM_FIELD_FILE] });
23
+ const [isLightboxOpen, setIsLightboxOpen] = React.useState(false);
24
+ const [imageError, setImageError] = React.useState(false);
25
+ // Close lightbox on Escape key — uses document listener to work regardless of focus
26
+ React.useEffect(() => {
27
+ if (!isLightboxOpen)
28
+ return;
29
+ const handleKeyDown = (e) => {
30
+ if (e.key === 'Escape')
31
+ setIsLightboxOpen(false);
32
+ };
33
+ document.addEventListener('keydown', handleKeyDown);
34
+ return () => document.removeEventListener('keydown', handleKeyDown);
35
+ }, [isLightboxOpen]);
36
+ const imageUrl = metadata.url;
37
+ const thumbnailUrl = metadata.thumbnailUrl || metadata.url;
38
+ const hasDimensions = metadata.width !== undefined && metadata.height !== undefined;
39
+ // Image failed to load — fall back to file card with download link
40
+ if (imageError || !imageUrl) {
41
+ return (_jsxs("div", { className: `flex items-center gap-group p-card-sm rounded-md border bg-muted/30 ${className ?? ''}`, children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.FILE_IMAGE, { size: IconSize.LG, className: "text-muted-foreground" }) }), _jsxs("div", { className: "flex-1 min-w-0", children: [_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 && _jsx("span", { children: formatFileSize(metadata.size) }), hasDimensions && showDimensions && _jsxs("span", { children: [metadata.width, "\u00D7", metadata.height] }), imageError && _jsx("span", { className: "text-destructive", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE, 'image_load_error') })] })] }), showDownload && imageUrl && (_jsx("a", { href: imageUrl, download: metadata.filename, className: "text-primary hover:underline text-sm shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE, 'download') }))] }));
42
+ }
43
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `space-y-item ${className ?? ''}`, children: [_jsx("button", { type: "button", onClick: () => setIsLightboxOpen(true), className: "block w-full max-w-md cursor-zoom-in rounded-md overflow-hidden border bg-muted/20 hover:ring-2 hover:ring-primary/30 transition-shadow focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE, 'click_to_enlarge'), children: _jsx("img", { src: thumbnailUrl, alt: metadata.filename, className: "w-full h-auto object-contain max-h-64", loading: "lazy", onError: () => setImageError(true) }) }), _jsxs("div", { className: "flex items-center gap-group text-xs text-muted-foreground", children: [_jsx("span", { className: "font-medium text-foreground truncate max-w-48", children: metadata.filename }), showSize && _jsx("span", { children: formatFileSize(metadata.size) }), hasDimensions && showDimensions && _jsxs("span", { children: [metadata.width, "\u00D7", metadata.height] }), metadata.extension && _jsx("span", { className: "uppercase", children: metadata.extension }), showDownload && (_jsx("a", { href: imageUrl, download: metadata.filename, className: "text-primary hover:underline ms-auto shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE, 'download') }))] })] }), isLightboxOpen && (_jsxs("div", { className: "fixed inset-0 z-50 flex items-center justify-center bg-black/80 backdrop-blur-sm", onClick: () => setIsLightboxOpen(false), role: "dialog", "aria-modal": "true", "aria-label": metadata.filename, children: [_jsx("button", { type: "button", onClick: () => setIsLightboxOpen(false), className: "absolute top-4 right-4 text-white/80 hover:text-white z-10", "aria-label": tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE, 'close'), children: renderIcon(StandardIconReference.CLOSE, { size: IconSize.LG, className: "text-white" }) }), _jsx("img", { src: imageUrl, alt: metadata.filename, className: "max-w-[90vw] max-h-[90vh] object-contain rounded-md shadow-[var(--shadow-xl)]", onClick: (e) => e.stopPropagation() })] }))] }));
44
+ }
45
+ ;
46
+ DisplayFieldFileImage.displayName = "DisplayFieldFileImage";
47
+ export { DisplayFieldFileImage };
48
+ //# sourceMappingURL=display-field-file-image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-image.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-image.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * DisplayFieldFileVideo Component
3
+ *
4
+ * Nature-specific display for video files.
5
+ * Renders an HTML5 video player with native controls,
6
+ * thumbnail poster, and download fallback for unsupported formats.
7
+ *
8
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO).
9
+ */
10
+ import * as React from "react";
11
+ import type { DisplayFieldFileVideoProps } from '@wildo-ai/saas-frontend-lib';
12
+ declare function DisplayFieldFileVideo({ metadata, fileId, className, showDownload, showSize, }: DisplayFieldFileVideoProps): React.JSX.Element;
13
+ export { DisplayFieldFileVideo };
14
+ //# sourceMappingURL=display-field-file-video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-video.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-video.tsx"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAA;AAM7E,iBAAS,qBAAqB,CAAC,EAC7B,QAAQ,EACR,MAAM,EACN,SAAS,EACT,YAAmB,EACnB,QAAe,GAChB,EAAE,0BAA0B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAgEhD;AAID,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
@@ -0,0 +1,34 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ /**
4
+ * DisplayFieldFileVideo Component
5
+ *
6
+ * Nature-specific display for video files.
7
+ * Renders an HTML5 video player with native controls,
8
+ * thumbnail poster, and download fallback for unsupported formats.
9
+ *
10
+ * Resolved via the component registry (LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO).
11
+ */
12
+ import * as React from "react";
13
+ import { Text, useIconRegistry, StandardIconReference, IconSize, useI18n } from "@wildo-ai/saas-frontend-lib";
14
+ import { FrontendComponentType } from "@wildo-ai/presets-components-models";
15
+ import { formatFileSize } from "@wildo-ai/zod-decorators";
16
+ // =============================================================================
17
+ // COMPONENT
18
+ // =============================================================================
19
+ function DisplayFieldFileVideo({ metadata, fileId, className, showDownload = true, showSize = true, }) {
20
+ const { renderIcon } = useIconRegistry();
21
+ const { tComponent, isReady } = useI18n({ component: FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO });
22
+ const [videoError, setVideoError] = React.useState(false);
23
+ const videoUrl = metadata.url;
24
+ const posterUrl = metadata.thumbnailUrl;
25
+ // No URL or video failed to load — fallback to card with download
26
+ if (videoError || !videoUrl) {
27
+ return (_jsxs("div", { className: `flex items-center gap-group p-card-sm rounded-md border bg-muted/30 ${className ?? ''}`, children: [_jsx("span", { "aria-hidden": "true", children: renderIcon(StandardIconReference.FILE_VIDEO, { size: IconSize.LG, className: "text-muted-foreground" }) }), _jsxs("div", { className: "flex-1 min-w-0", children: [_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 && _jsx("span", { children: formatFileSize(metadata.size) }), metadata.extension && _jsx("span", { className: "uppercase", children: metadata.extension }), videoError && _jsx("span", { className: "text-destructive", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO, 'video_load_error') })] })] }), showDownload && videoUrl && (_jsx("a", { href: videoUrl, download: metadata.filename, className: "text-primary hover:underline text-sm shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO, 'download') }))] }));
28
+ }
29
+ return (_jsxs("div", { className: `space-y-item ${className ?? ''}`, children: [_jsx("div", { className: "w-full max-w-lg rounded-md overflow-hidden border bg-black", children: _jsxs("video", { controls: true, preload: "metadata", className: "w-full h-auto max-h-80", poster: posterUrl, onError: () => setVideoError(true), children: [_jsx("source", { src: videoUrl, type: metadata.mimeType }), _jsx(Text, { className: "p-card-sm text-muted-foreground", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO, 'unsupported_format') })] }) }), _jsxs("div", { className: "flex items-center gap-group text-xs text-muted-foreground", children: [_jsx("span", { className: "font-medium text-foreground truncate max-w-48", children: metadata.filename }), showSize && _jsx("span", { children: formatFileSize(metadata.size) }), metadata.extension && _jsx("span", { className: "uppercase", children: metadata.extension }), showDownload && (_jsx("a", { href: videoUrl, download: metadata.filename, className: "text-primary hover:underline ms-auto shrink-0", children: tComponent(FrontendComponentType.LOW_LEVEL_DISPLAY_FIELD_FILE_VIDEO, 'download') }))] })] }));
30
+ }
31
+ ;
32
+ DisplayFieldFileVideo.displayName = "DisplayFieldFileVideo";
33
+ export { DisplayFieldFileVideo };
34
+ //# sourceMappingURL=display-field-file-video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file-video.js","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file-video.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * DisplayFieldFile Component
3
+ *
4
+ * Root display component for file fields. Acts as both:
5
+ * 1. Metadata fetcher — loads file metadata from server via authenticated httpOperations
6
+ * 2. Nature router — delegates rendering to nature-specific display components
7
+ *
8
+ * Nature routing priority:
9
+ * 1. Schema metadata `fileConfig.nature` (explicit, from z_file({ nature: FileNature.IMAGE }))
10
+ * 2. Fetched metadata MIME type detection (from server response)
11
+ * 3. Generic file card (fallback for unknown types / archives)
12
+ *
13
+ * For multiple images → gallery display. For mixed multiple → individual cards.
14
+ *
15
+ * Nature-specific sub-components are imported directly within this preset.
16
+ * Custom apps can override the entire file display by registering a new preset
17
+ * for LOW_LEVEL_DISPLAY_FIELD_FILE, or override individual nature renderers
18
+ * by registering for LOW_LEVEL_DISPLAY_FIELD_FILE_IMAGE etc. at the wrapper level.
19
+ */
20
+ import * as React from "react";
21
+ import type { DisplayFieldFileProps } from '@wildo-ai/saas-frontend-lib';
22
+ /**
23
+ * DisplayFieldFile component
24
+ *
25
+ * Renders a file reference with:
26
+ * - Filename with link
27
+ * - File size
28
+ * - File type icon/badge
29
+ * - Download option
30
+ */
31
+ declare function DisplayFieldFile({ schema, value, className, endpoints, showSize, showType, showDownload, httpOperations, }: DisplayFieldFileProps): React.JSX.Element;
32
+ export { DisplayFieldFile };
33
+ //# sourceMappingURL=display-field-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"display-field-file.d.ts","sourceRoot":"","sources":["../../../../../src/components/data-display/formatters/display-field-file.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AA0B9B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAoCxE;;;;;;;;GAQG;AACH,iBAAS,gBAAgB,CAAC,EACxB,MAAM,EACN,KAAK,EACL,SAAS,EACT,SAAS,EACT,QAAe,EACf,QAAe,EACf,YAAmB,EACnB,cAAc,GACf,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA4T3C;AAID,OAAO,EAAE,gBAAgB,EAAE,CAAA"}