@wildo-ai/presets-components 1.1.3 → 1.1.5

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 (707) hide show
  1. package/dist/esm/components/actions/action-bar.d.ts.map +1 -1
  2. package/dist/esm/components/actions/action-bar.js +61 -7
  3. package/dist/esm/components/actions/action-bar.js.map +1 -1
  4. package/dist/esm/components/actions/action-bar.labels.d.ts.map +1 -1
  5. package/dist/esm/components/actions/action-button.d.ts.map +1 -1
  6. package/dist/esm/components/actions/action-button.js +3 -3
  7. package/dist/esm/components/actions/action-button.js.map +1 -1
  8. package/dist/esm/components/actions/action-button.labels.d.ts.map +1 -1
  9. package/dist/esm/components/actions/button-group.d.ts.map +1 -1
  10. package/dist/esm/components/actions/button.d.ts.map +1 -1
  11. package/dist/esm/components/actions/button.js +62 -3
  12. package/dist/esm/components/actions/button.js.map +1 -1
  13. package/dist/esm/components/actions/button.labels.d.ts.map +1 -1
  14. package/dist/esm/components/ai-elements/artifacts/artifact-browser.d.ts.map +1 -1
  15. package/dist/esm/components/ai-elements/artifacts/artifact.d.ts.map +1 -1
  16. package/dist/esm/components/ai-elements/artifacts/artifact.labels.d.ts.map +1 -1
  17. package/dist/esm/components/ai-elements/artifacts/code-block.d.ts.map +1 -1
  18. package/dist/esm/components/ai-elements/artifacts/code-block.js +1 -1
  19. package/dist/esm/components/ai-elements/artifacts/code-block.js.map +1 -1
  20. package/dist/esm/components/ai-elements/artifacts/code-block.labels.d.ts.map +1 -1
  21. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts +4 -0
  22. package/dist/esm/components/ai-elements/artifacts/diff-block.d.ts.map +1 -0
  23. package/dist/esm/components/ai-elements/artifacts/diff-block.js +165 -0
  24. package/dist/esm/components/ai-elements/artifacts/diff-block.js.map +1 -0
  25. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.d.ts +3 -0
  26. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.d.ts.map +1 -0
  27. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.js +63 -0
  28. package/dist/esm/components/ai-elements/artifacts/diff-block.labels.js.map +1 -0
  29. package/dist/esm/components/ai-elements/artifacts/image.d.ts.map +1 -1
  30. package/dist/esm/components/ai-elements/artifacts/image.labels.d.ts.map +1 -1
  31. package/dist/esm/components/ai-elements/artifacts/shiki-highlighter-runtime.d.ts.map +1 -1
  32. package/dist/esm/components/ai-elements/artifacts/shiki-highlighter.lazy.d.ts.map +1 -1
  33. package/dist/esm/components/ai-elements/artifacts/web-preview.d.ts.map +1 -1
  34. package/dist/esm/components/ai-elements/artifacts/web-preview.labels.d.ts.map +1 -1
  35. package/dist/esm/components/ai-elements/chat/conversation.d.ts.map +1 -1
  36. package/dist/esm/components/ai-elements/chat/conversation.labels.d.ts.map +1 -1
  37. package/dist/esm/components/ai-elements/chat/message.d.ts.map +1 -1
  38. package/dist/esm/components/ai-elements/chat/message.labels.d.ts.map +1 -1
  39. package/dist/esm/components/ai-elements/chat/prompt-input.d.ts.map +1 -1
  40. package/dist/esm/components/ai-elements/chat/prompt-input.labels.d.ts.map +1 -1
  41. package/dist/esm/components/ai-elements/chat/sources.d.ts.map +1 -1
  42. package/dist/esm/components/ai-elements/chat/sources.labels.d.ts.map +1 -1
  43. package/dist/esm/components/ai-elements/chat/suggestion.d.ts.map +1 -1
  44. package/dist/esm/components/ai-elements/chat/suggestion.labels.d.ts.map +1 -1
  45. package/dist/esm/components/ai-elements/decision/approval-argument-fields.d.ts +68 -0
  46. package/dist/esm/components/ai-elements/decision/approval-argument-fields.d.ts.map +1 -0
  47. package/dist/esm/components/ai-elements/decision/approval-argument-fields.js +208 -0
  48. package/dist/esm/components/ai-elements/decision/approval-argument-fields.js.map +1 -0
  49. package/dist/esm/components/ai-elements/decision/approval.d.ts +36 -4
  50. package/dist/esm/components/ai-elements/decision/approval.d.ts.map +1 -1
  51. package/dist/esm/components/ai-elements/decision/approval.js +77 -7
  52. package/dist/esm/components/ai-elements/decision/approval.js.map +1 -1
  53. package/dist/esm/components/ai-elements/decision/decision-request.d.ts.map +1 -1
  54. package/dist/esm/components/ai-elements/decision/decision-request.labels.d.ts.map +1 -1
  55. package/dist/esm/components/ai-elements/execution/confirmation.d.ts.map +1 -1
  56. package/dist/esm/components/ai-elements/execution/confirmation.labels.d.ts.map +1 -1
  57. package/dist/esm/components/ai-elements/execution/queue.d.ts.map +1 -1
  58. package/dist/esm/components/ai-elements/execution/queue.labels.d.ts.map +1 -1
  59. package/dist/esm/components/ai-elements/execution/task.d.ts.map +1 -1
  60. package/dist/esm/components/ai-elements/execution/task.js +1 -1
  61. package/dist/esm/components/ai-elements/execution/task.js.map +1 -1
  62. package/dist/esm/components/ai-elements/execution/task.labels.d.ts.map +1 -1
  63. package/dist/esm/components/ai-elements/execution/tool.d.ts.map +1 -1
  64. package/dist/esm/components/ai-elements/execution/tool.js +8 -1
  65. package/dist/esm/components/ai-elements/execution/tool.js.map +1 -1
  66. package/dist/esm/components/ai-elements/execution/tool.labels.d.ts.map +1 -1
  67. package/dist/esm/components/ai-elements/graph/canvas.d.ts.map +1 -1
  68. package/dist/esm/components/ai-elements/graph/canvas.labels.d.ts.map +1 -1
  69. package/dist/esm/components/ai-elements/graph/connection.d.ts.map +1 -1
  70. package/dist/esm/components/ai-elements/graph/connection.labels.d.ts.map +1 -1
  71. package/dist/esm/components/ai-elements/graph/controls.d.ts.map +1 -1
  72. package/dist/esm/components/ai-elements/graph/controls.labels.d.ts.map +1 -1
  73. package/dist/esm/components/ai-elements/graph/edge.d.ts.map +1 -1
  74. package/dist/esm/components/ai-elements/graph/edge.labels.d.ts.map +1 -1
  75. package/dist/esm/components/ai-elements/graph/graph-runtime.d.ts.map +1 -1
  76. package/dist/esm/components/ai-elements/graph/graph.lazy.d.ts.map +1 -1
  77. package/dist/esm/components/ai-elements/graph/graph.lazy.js +15 -15
  78. package/dist/esm/components/ai-elements/graph/graph.lazy.js.map +1 -1
  79. package/dist/esm/components/ai-elements/graph/node.d.ts.map +1 -1
  80. package/dist/esm/components/ai-elements/graph/node.labels.d.ts.map +1 -1
  81. package/dist/esm/components/ai-elements/graph/panel.d.ts.map +1 -1
  82. package/dist/esm/components/ai-elements/graph/panel.labels.d.ts.map +1 -1
  83. package/dist/esm/components/ai-elements/graph/toolbar.d.ts.map +1 -1
  84. package/dist/esm/components/ai-elements/graph/toolbar.labels.d.ts.map +1 -1
  85. package/dist/esm/components/ai-elements/meta/agent.d.ts +0 -1
  86. package/dist/esm/components/ai-elements/meta/agent.d.ts.map +1 -1
  87. package/dist/esm/components/ai-elements/meta/agent.js +23 -18
  88. package/dist/esm/components/ai-elements/meta/agent.js.map +1 -1
  89. package/dist/esm/components/ai-elements/meta/context.d.ts.map +1 -1
  90. package/dist/esm/components/ai-elements/meta/context.labels.d.ts.map +1 -1
  91. package/dist/esm/components/ai-elements/meta/context.lazy.d.ts.map +1 -1
  92. package/dist/esm/components/ai-elements/meta/context.lazy.js +13 -11
  93. package/dist/esm/components/ai-elements/meta/context.lazy.js.map +1 -1
  94. package/dist/esm/components/ai-elements/meta/model-selector.d.ts.map +1 -1
  95. package/dist/esm/components/ai-elements/meta/model-selector.labels.d.ts.map +1 -1
  96. package/dist/esm/components/ai-elements/meta/open-in-chat.d.ts.map +1 -1
  97. package/dist/esm/components/ai-elements/meta/open-in-chat.labels.d.ts.map +1 -1
  98. package/dist/esm/components/ai-elements/shared/loader.d.ts.map +1 -1
  99. package/dist/esm/components/ai-elements/shared/loader.labels.d.ts.map +1 -1
  100. package/dist/esm/components/ai-elements/shared/shimmer.d.ts.map +1 -1
  101. package/dist/esm/components/ai-elements/shared/shimmer.labels.d.ts.map +1 -1
  102. package/dist/esm/components/ai-elements/stream/execution-stream.d.ts.map +1 -1
  103. package/dist/esm/components/ai-elements/stream/execution-stream.labels.d.ts.map +1 -1
  104. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts +6 -0
  105. package/dist/esm/components/ai-elements/trace/chain-of-thought.d.ts.map +1 -1
  106. package/dist/esm/components/ai-elements/trace/chain-of-thought.js +13 -1
  107. package/dist/esm/components/ai-elements/trace/chain-of-thought.js.map +1 -1
  108. package/dist/esm/components/ai-elements/trace/chain-of-thought.labels.d.ts.map +1 -1
  109. package/dist/esm/components/ai-elements/trace/checkpoint.d.ts.map +1 -1
  110. package/dist/esm/components/ai-elements/trace/checkpoint.labels.d.ts.map +1 -1
  111. package/dist/esm/components/ai-elements/trace/inline-citation.d.ts.map +1 -1
  112. package/dist/esm/components/ai-elements/trace/inline-citation.labels.d.ts.map +1 -1
  113. package/dist/esm/components/ai-elements/trace/plan.d.ts.map +1 -1
  114. package/dist/esm/components/ai-elements/trace/plan.labels.d.ts.map +1 -1
  115. package/dist/esm/components/ai-elements/trace/reasoning.d.ts.map +1 -1
  116. package/dist/esm/components/ai-elements/trace/reasoning.labels.d.ts.map +1 -1
  117. package/dist/esm/components/app/app-layout-consent-gate.d.ts +23 -0
  118. package/dist/esm/components/app/app-layout-consent-gate.d.ts.map +1 -0
  119. package/dist/esm/components/app/app-layout-consent-gate.js +133 -0
  120. package/dist/esm/components/app/app-layout-consent-gate.js.map +1 -0
  121. package/dist/esm/components/app/app-layout-document-acceptance-gate.d.ts +19 -0
  122. package/dist/esm/components/app/app-layout-document-acceptance-gate.d.ts.map +1 -0
  123. package/dist/esm/components/app/app-layout-document-acceptance-gate.js +56 -0
  124. package/dist/esm/components/app/app-layout-document-acceptance-gate.js.map +1 -0
  125. package/dist/esm/components/app/app-layout-main-container.d.ts.map +1 -1
  126. package/dist/esm/components/app/app-layout-main-container.labels.d.ts.map +1 -1
  127. package/dist/esm/components/app/app-layout-main-container.labels.js +21 -0
  128. package/dist/esm/components/app/app-layout-main-container.labels.js.map +1 -1
  129. package/dist/esm/components/app/public-layout-main-container.d.ts +1 -1
  130. package/dist/esm/components/app/public-layout-main-container.d.ts.map +1 -1
  131. package/dist/esm/components/app/public-layout-main-container.js +9 -8
  132. package/dist/esm/components/app/public-layout-main-container.js.map +1 -1
  133. package/dist/esm/components/app/public-layout-main-container.labels.d.ts.map +1 -1
  134. package/dist/esm/components/app/public-layout-terms.d.ts +46 -0
  135. package/dist/esm/components/app/public-layout-terms.d.ts.map +1 -0
  136. package/dist/esm/components/app/public-layout-terms.js +137 -0
  137. package/dist/esm/components/app/public-layout-terms.js.map +1 -0
  138. package/dist/esm/components/billing/billing-format.utils.d.ts.map +1 -1
  139. package/dist/esm/components/billing/billing-invoice-history.d.ts +1 -1
  140. package/dist/esm/components/billing/billing-invoice-history.d.ts.map +1 -1
  141. package/dist/esm/components/billing/billing-invoice-history.js +3 -1
  142. package/dist/esm/components/billing/billing-invoice-history.js.map +1 -1
  143. package/dist/esm/components/billing/billing-invoice-history.labels.d.ts.map +1 -1
  144. package/dist/esm/components/billing/billing-invoice-history.labels.js +1 -0
  145. package/dist/esm/components/billing/billing-invoice-history.labels.js.map +1 -1
  146. package/dist/esm/components/billing/billing-plan-change-preview.d.ts +5 -0
  147. package/dist/esm/components/billing/billing-plan-change-preview.d.ts.map +1 -0
  148. package/dist/esm/components/billing/billing-plan-change-preview.js +22 -0
  149. package/dist/esm/components/billing/billing-plan-change-preview.js.map +1 -0
  150. package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts +3 -0
  151. package/dist/esm/components/billing/billing-plan-change-preview.labels.d.ts.map +1 -0
  152. package/dist/esm/components/billing/billing-plan-change-preview.labels.js +19 -0
  153. package/dist/esm/components/billing/billing-plan-change-preview.labels.js.map +1 -0
  154. package/dist/esm/components/billing/billing-portal-link.d.ts +1 -1
  155. package/dist/esm/components/billing/billing-portal-link.d.ts.map +1 -1
  156. package/dist/esm/components/billing/billing-portal-link.js +3 -1
  157. package/dist/esm/components/billing/billing-portal-link.js.map +1 -1
  158. package/dist/esm/components/billing/billing-portal-link.labels.d.ts.map +1 -1
  159. package/dist/esm/components/billing/billing-portal-link.labels.js +1 -0
  160. package/dist/esm/components/billing/billing-portal-link.labels.js.map +1 -1
  161. package/dist/esm/components/billing/billing-pricing-table.d.ts +1 -1
  162. package/dist/esm/components/billing/billing-pricing-table.d.ts.map +1 -1
  163. package/dist/esm/components/billing/billing-pricing-table.js +4 -2
  164. package/dist/esm/components/billing/billing-pricing-table.js.map +1 -1
  165. package/dist/esm/components/billing/billing-pricing-table.labels.d.ts.map +1 -1
  166. package/dist/esm/components/billing/billing-pricing-table.labels.js +1 -0
  167. package/dist/esm/components/billing/billing-pricing-table.labels.js.map +1 -1
  168. package/dist/esm/components/billing/billing-subscription-status.d.ts +1 -1
  169. package/dist/esm/components/billing/billing-subscription-status.d.ts.map +1 -1
  170. package/dist/esm/components/billing/billing-subscription-status.js +3 -1
  171. package/dist/esm/components/billing/billing-subscription-status.js.map +1 -1
  172. package/dist/esm/components/billing/billing-subscription-status.labels.d.ts.map +1 -1
  173. package/dist/esm/components/billing/billing-subscription-status.labels.js +1 -0
  174. package/dist/esm/components/billing/billing-subscription-status.labels.js.map +1 -1
  175. package/dist/esm/components/billing/billing-usage-dashboard.d.ts +1 -1
  176. package/dist/esm/components/billing/billing-usage-dashboard.d.ts.map +1 -1
  177. package/dist/esm/components/billing/billing-usage-dashboard.js +4 -4
  178. package/dist/esm/components/billing/billing-usage-dashboard.js.map +1 -1
  179. package/dist/esm/components/billing/billing-usage-dashboard.labels.d.ts.map +1 -1
  180. package/dist/esm/components/billing/billing-usage-dashboard.labels.js +2 -0
  181. package/dist/esm/components/billing/billing-usage-dashboard.labels.js.map +1 -1
  182. package/dist/esm/components/data-display/avatar.d.ts.map +1 -1
  183. package/dist/esm/components/data-display/avatar.labels.d.ts.map +1 -1
  184. package/dist/esm/components/data-display/badge.d.ts.map +1 -1
  185. package/dist/esm/components/data-display/badge.js +16 -15
  186. package/dist/esm/components/data-display/badge.js.map +1 -1
  187. package/dist/esm/components/data-display/badge.labels.d.ts.map +1 -1
  188. package/dist/esm/components/data-display/description-list.d.ts +2 -1
  189. package/dist/esm/components/data-display/description-list.d.ts.map +1 -1
  190. package/dist/esm/components/data-display/description-list.js +24 -8
  191. package/dist/esm/components/data-display/description-list.js.map +1 -1
  192. package/dist/esm/components/data-display/description-list.labels.d.ts.map +1 -1
  193. package/dist/esm/components/data-display/duration.d.ts +15 -0
  194. package/dist/esm/components/data-display/duration.d.ts.map +1 -0
  195. package/dist/esm/components/data-display/duration.js +50 -0
  196. package/dist/esm/components/data-display/duration.js.map +1 -0
  197. package/dist/esm/components/data-display/duration.labels.d.ts +15 -0
  198. package/dist/esm/components/data-display/duration.labels.d.ts.map +1 -0
  199. package/dist/esm/components/data-display/duration.labels.js +35 -0
  200. package/dist/esm/components/data-display/duration.labels.js.map +1 -0
  201. package/dist/esm/components/data-display/formatters/display-field-address.d.ts +21 -0
  202. package/dist/esm/components/data-display/formatters/display-field-address.d.ts.map +1 -0
  203. package/dist/esm/components/data-display/formatters/display-field-address.js +75 -0
  204. package/dist/esm/components/data-display/formatters/display-field-address.js.map +1 -0
  205. package/dist/esm/components/data-display/formatters/display-field-address.labels.d.ts +3 -0
  206. package/dist/esm/components/data-display/formatters/display-field-address.labels.d.ts.map +1 -0
  207. package/dist/esm/components/data-display/formatters/display-field-address.labels.js +13 -0
  208. package/dist/esm/components/data-display/formatters/display-field-address.labels.js.map +1 -0
  209. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.d.ts.map +1 -1
  210. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js +6 -2
  211. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.js.map +1 -1
  212. package/dist/esm/components/data-display/formatters/display-field-bigdecimal.labels.d.ts.map +1 -1
  213. package/dist/esm/components/data-display/formatters/display-field-boolean.d.ts.map +1 -1
  214. package/dist/esm/components/data-display/formatters/display-field-boolean.js +2 -2
  215. package/dist/esm/components/data-display/formatters/display-field-boolean.js.map +1 -1
  216. package/dist/esm/components/data-display/formatters/display-field-boolean.labels.d.ts.map +1 -1
  217. package/dist/esm/components/data-display/formatters/display-field-code.d.ts.map +1 -1
  218. package/dist/esm/components/data-display/formatters/display-field-code.js +2 -2
  219. package/dist/esm/components/data-display/formatters/display-field-code.js.map +1 -1
  220. package/dist/esm/components/data-display/formatters/display-field-code.labels.d.ts.map +1 -1
  221. package/dist/esm/components/data-display/formatters/display-field-date.d.ts +3 -3
  222. package/dist/esm/components/data-display/formatters/display-field-date.d.ts.map +1 -1
  223. package/dist/esm/components/data-display/formatters/display-field-date.js +17 -4
  224. package/dist/esm/components/data-display/formatters/display-field-date.js.map +1 -1
  225. package/dist/esm/components/data-display/formatters/display-field-date.labels.d.ts.map +1 -1
  226. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts +3 -3
  227. package/dist/esm/components/data-display/formatters/display-field-datetime.d.ts.map +1 -1
  228. package/dist/esm/components/data-display/formatters/display-field-datetime.js +17 -4
  229. package/dist/esm/components/data-display/formatters/display-field-datetime.js.map +1 -1
  230. package/dist/esm/components/data-display/formatters/display-field-datetime.labels.d.ts.map +1 -1
  231. package/dist/esm/components/data-display/formatters/display-field-duration.d.ts.map +1 -1
  232. package/dist/esm/components/data-display/formatters/display-field-duration.labels.d.ts.map +1 -1
  233. package/dist/esm/components/data-display/formatters/display-field-enum.d.ts.map +1 -1
  234. package/dist/esm/components/data-display/formatters/display-field-enum.js +12 -8
  235. package/dist/esm/components/data-display/formatters/display-field-enum.js.map +1 -1
  236. package/dist/esm/components/data-display/formatters/display-field-enum.labels.d.ts.map +1 -1
  237. package/dist/esm/components/data-display/formatters/display-field-file-audio.d.ts.map +1 -1
  238. package/dist/esm/components/data-display/formatters/display-field-file-audio.js +2 -1
  239. package/dist/esm/components/data-display/formatters/display-field-file-audio.js.map +1 -1
  240. package/dist/esm/components/data-display/formatters/display-field-file-audio.labels.d.ts.map +1 -1
  241. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts +4 -1
  242. package/dist/esm/components/data-display/formatters/display-field-file-document.d.ts.map +1 -1
  243. package/dist/esm/components/data-display/formatters/display-field-file-document.js +18 -5
  244. package/dist/esm/components/data-display/formatters/display-field-file-document.js.map +1 -1
  245. package/dist/esm/components/data-display/formatters/display-field-file-document.labels.d.ts.map +1 -1
  246. package/dist/esm/components/data-display/formatters/display-field-file-document.labels.js +20 -0
  247. package/dist/esm/components/data-display/formatters/display-field-file-document.labels.js.map +1 -1
  248. package/dist/esm/components/data-display/formatters/display-field-file-gallery.d.ts.map +1 -1
  249. package/dist/esm/components/data-display/formatters/display-field-file-gallery.labels.d.ts.map +1 -1
  250. package/dist/esm/components/data-display/formatters/display-field-file-image.d.ts.map +1 -1
  251. package/dist/esm/components/data-display/formatters/display-field-file-image.js +3 -1
  252. package/dist/esm/components/data-display/formatters/display-field-file-image.js.map +1 -1
  253. package/dist/esm/components/data-display/formatters/display-field-file-image.labels.d.ts.map +1 -1
  254. package/dist/esm/components/data-display/formatters/display-field-file-video.d.ts.map +1 -1
  255. package/dist/esm/components/data-display/formatters/display-field-file-video.labels.d.ts.map +1 -1
  256. package/dist/esm/components/data-display/formatters/display-field-file.d.ts.map +1 -1
  257. package/dist/esm/components/data-display/formatters/display-field-file.js +2 -2
  258. package/dist/esm/components/data-display/formatters/display-field-file.js.map +1 -1
  259. package/dist/esm/components/data-display/formatters/display-field-file.labels.d.ts.map +1 -1
  260. package/dist/esm/components/data-display/formatters/display-field-file.labels.js +1 -0
  261. package/dist/esm/components/data-display/formatters/display-field-file.labels.js.map +1 -1
  262. package/dist/esm/components/data-display/formatters/display-field-format.utils.d.ts.map +1 -1
  263. package/dist/esm/components/data-display/formatters/display-field-i18n.utils.d.ts.map +1 -1
  264. package/dist/esm/components/data-display/formatters/display-field-money.d.ts.map +1 -1
  265. package/dist/esm/components/data-display/formatters/display-field-money.labels.d.ts.map +1 -1
  266. package/dist/esm/components/data-display/formatters/display-field-number.d.ts.map +1 -1
  267. package/dist/esm/components/data-display/formatters/display-field-number.js +2 -2
  268. package/dist/esm/components/data-display/formatters/display-field-number.js.map +1 -1
  269. package/dist/esm/components/data-display/formatters/display-field-number.labels.d.ts.map +1 -1
  270. package/dist/esm/components/data-display/formatters/display-field-phone.d.ts.map +1 -1
  271. package/dist/esm/components/data-display/formatters/display-field-phone.labels.d.ts.map +1 -1
  272. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.d.ts.map +1 -1
  273. package/dist/esm/components/data-display/formatters/display-field-range-bigdecimal.labels.d.ts.map +1 -1
  274. package/dist/esm/components/data-display/formatters/display-field-range-date.d.ts.map +1 -1
  275. package/dist/esm/components/data-display/formatters/display-field-range-date.labels.d.ts.map +1 -1
  276. package/dist/esm/components/data-display/formatters/display-field-range-datetime.d.ts.map +1 -1
  277. package/dist/esm/components/data-display/formatters/display-field-range-datetime.labels.d.ts.map +1 -1
  278. package/dist/esm/components/data-display/formatters/display-field-range-money.d.ts.map +1 -1
  279. package/dist/esm/components/data-display/formatters/display-field-range-money.labels.d.ts.map +1 -1
  280. package/dist/esm/components/data-display/formatters/display-field-range-number.d.ts.map +1 -1
  281. package/dist/esm/components/data-display/formatters/display-field-range-number.labels.d.ts.map +1 -1
  282. package/dist/esm/components/data-display/formatters/display-field-range-time.d.ts.map +1 -1
  283. package/dist/esm/components/data-display/formatters/display-field-range-time.labels.d.ts.map +1 -1
  284. package/dist/esm/components/data-display/formatters/display-field-string.d.ts.map +1 -1
  285. package/dist/esm/components/data-display/formatters/display-field-string.js +82 -7
  286. package/dist/esm/components/data-display/formatters/display-field-string.js.map +1 -1
  287. package/dist/esm/components/data-display/formatters/display-field-string.labels.d.ts.map +1 -1
  288. package/dist/esm/components/data-display/formatters/display-field-time.d.ts.map +1 -1
  289. package/dist/esm/components/data-display/formatters/display-field-time.labels.d.ts.map +1 -1
  290. package/dist/esm/components/data-display/identifier.d.ts +19 -0
  291. package/dist/esm/components/data-display/identifier.d.ts.map +1 -0
  292. package/dist/esm/components/data-display/identifier.js +21 -0
  293. package/dist/esm/components/data-display/identifier.js.map +1 -0
  294. package/dist/esm/components/data-display/kbd.d.ts +17 -0
  295. package/dist/esm/components/data-display/kbd.d.ts.map +1 -0
  296. package/dist/esm/components/data-display/kbd.js +18 -0
  297. package/dist/esm/components/data-display/kbd.js.map +1 -0
  298. package/dist/esm/components/data-display/markdown-content.d.ts.map +1 -1
  299. package/dist/esm/components/data-display/markdown-stream-runtime.d.ts.map +1 -1
  300. package/dist/esm/components/data-display/markdown-stream.lazy.d.ts.map +1 -1
  301. package/dist/esm/components/data-display/markdown-stream.lazy.js +13 -2
  302. package/dist/esm/components/data-display/markdown-stream.lazy.js.map +1 -1
  303. package/dist/esm/components/data-display/notification-indicator.d.ts.map +1 -1
  304. package/dist/esm/components/data-display/notification-indicator.js +3 -11
  305. package/dist/esm/components/data-display/notification-indicator.js.map +1 -1
  306. package/dist/esm/components/data-display/notification-indicator.labels.d.ts.map +1 -1
  307. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.d.ts +63 -0
  308. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.d.ts.map +1 -0
  309. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.js +75 -0
  310. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.js.map +1 -0
  311. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.d.ts +32 -0
  312. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.d.ts.map +1 -0
  313. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.js +36 -0
  314. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer-worker.vite.js.map +1 -0
  315. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.d.ts +46 -6
  316. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.d.ts.map +1 -1
  317. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.js +70 -46
  318. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.js.map +1 -1
  319. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts +12 -2
  320. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.d.ts.map +1 -1
  321. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.js +3 -2
  322. package/dist/esm/components/data-display/pdf-viewer/pdf-viewer.lazy.js.map +1 -1
  323. package/dist/esm/components/data-display/timeline.d.ts +3 -0
  324. package/dist/esm/components/data-display/timeline.d.ts.map +1 -0
  325. package/dist/esm/components/data-display/timeline.js +92 -0
  326. package/dist/esm/components/data-display/timeline.js.map +1 -0
  327. package/dist/esm/components/feedback/celebration-overlay.d.ts +13 -4
  328. package/dist/esm/components/feedback/celebration-overlay.d.ts.map +1 -1
  329. package/dist/esm/components/feedback/celebration-overlay.js +146 -22
  330. package/dist/esm/components/feedback/celebration-overlay.js.map +1 -1
  331. package/dist/esm/components/feedback/celebration-overlay.labels.d.ts.map +1 -1
  332. package/dist/esm/components/feedback/danger-zone.d.ts.map +1 -1
  333. package/dist/esm/components/feedback/danger-zone.labels.d.ts.map +1 -1
  334. package/dist/esm/components/feedback/empty-state.d.ts.map +1 -1
  335. package/dist/esm/components/feedback/empty-state.js +11 -1
  336. package/dist/esm/components/feedback/empty-state.js.map +1 -1
  337. package/dist/esm/components/feedback/empty-state.labels.d.ts.map +1 -1
  338. package/dist/esm/components/feedback/error-display.d.ts.map +1 -1
  339. package/dist/esm/components/feedback/error-display.labels.d.ts.map +1 -1
  340. package/dist/esm/components/feedback/features/feature-limit-indicator.d.ts.map +1 -1
  341. package/dist/esm/components/feedback/features/feature-limit-indicator.labels.d.ts.map +1 -1
  342. package/dist/esm/components/feedback/features/feature-lock-badge.d.ts.map +1 -1
  343. package/dist/esm/components/feedback/features/feature-lock-badge.labels.d.ts.map +1 -1
  344. package/dist/esm/components/feedback/features/feature-unavailable-dialog.d.ts.map +1 -1
  345. package/dist/esm/components/feedback/features/feature-unavailable-dialog.labels.d.ts.map +1 -1
  346. package/dist/esm/components/feedback/features/feature-unavailable-prompt.d.ts.map +1 -1
  347. package/dist/esm/components/feedback/features/feature-unavailable-prompt.js.map +1 -1
  348. package/dist/esm/components/feedback/features/feature-unavailable-prompt.labels.d.ts.map +1 -1
  349. package/dist/esm/components/feedback/loading-overlay.d.ts.map +1 -1
  350. package/dist/esm/components/feedback/loading-overlay.labels.d.ts.map +1 -1
  351. package/dist/esm/components/feedback/loading-spinner.d.ts.map +1 -1
  352. package/dist/esm/components/feedback/loading-spinner.labels.d.ts.map +1 -1
  353. package/dist/esm/components/feedback/notification-center.d.ts.map +1 -1
  354. package/dist/esm/components/feedback/notification-center.js +6 -6
  355. package/dist/esm/components/feedback/notification-center.js.map +1 -1
  356. package/dist/esm/components/feedback/operations-confirm-critical.d.ts +1 -1
  357. package/dist/esm/components/feedback/operations-confirm-critical.d.ts.map +1 -1
  358. package/dist/esm/components/feedback/operations-confirm-critical.js +9 -7
  359. package/dist/esm/components/feedback/operations-confirm-critical.js.map +1 -1
  360. package/dist/esm/components/feedback/operations-confirm-critical.labels.d.ts.map +1 -1
  361. package/dist/esm/components/feedback/progress.d.ts.map +1 -1
  362. package/dist/esm/components/feedback/progress.labels.d.ts.map +1 -1
  363. package/dist/esm/components/feedback/skeleton.d.ts.map +1 -1
  364. package/dist/esm/components/feedback/skeleton.labels.d.ts.map +1 -1
  365. package/dist/esm/components/feedback/toast.d.ts.map +1 -1
  366. package/dist/esm/components/feedback/toast.labels.d.ts.map +1 -1
  367. package/dist/esm/components/form/autosave-indicator.d.ts.map +1 -1
  368. package/dist/esm/components/form/autosave-indicator.labels.d.ts.map +1 -1
  369. package/dist/esm/components/form/chromes/field.d.ts.map +1 -1
  370. package/dist/esm/components/form/chromes/field.js +11 -3
  371. package/dist/esm/components/form/chromes/field.js.map +1 -1
  372. package/dist/esm/components/form/chromes/field.labels.d.ts.map +1 -1
  373. package/dist/esm/components/form/chromes/form-primitive.d.ts.map +1 -1
  374. package/dist/esm/components/form/chromes/form-primitive.labels.d.ts.map +1 -1
  375. package/dist/esm/components/form/chromes/form-primitive.labels.js +28 -0
  376. package/dist/esm/components/form/chromes/form-primitive.labels.js.map +1 -1
  377. package/dist/esm/components/form/combobox.d.ts.map +1 -1
  378. package/dist/esm/components/form/combobox.js +4 -3
  379. package/dist/esm/components/form/combobox.js.map +1 -1
  380. package/dist/esm/components/form/combobox.labels.d.ts.map +1 -1
  381. package/dist/esm/components/form/controls/boolean/checkbox.d.ts.map +1 -1
  382. package/dist/esm/components/form/controls/boolean/checkbox.js +2 -2
  383. package/dist/esm/components/form/controls/boolean/checkbox.js.map +1 -1
  384. package/dist/esm/components/form/controls/boolean/checkbox.labels.d.ts.map +1 -1
  385. package/dist/esm/components/form/controls/boolean/switch.d.ts.map +1 -1
  386. package/dist/esm/components/form/controls/boolean/switch.labels.d.ts.map +1 -1
  387. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.d.ts.map +1 -1
  388. package/dist/esm/components/form/controls/boolean/toggle-group-boolean.labels.d.ts.map +1 -1
  389. package/dist/esm/components/form/controls/boolean/toggle.d.ts.map +1 -1
  390. package/dist/esm/components/form/controls/boolean/toggle.labels.d.ts.map +1 -1
  391. package/dist/esm/components/form/controls/code-editor/cm6-editor-appearance.d.ts.map +1 -1
  392. package/dist/esm/components/form/controls/code-editor/cm6-editor.d.ts.map +1 -1
  393. package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.d.ts.map +1 -1
  394. package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.js +11 -2
  395. package/dist/esm/components/form/controls/code-editor/cm6-editor.lazy.js.map +1 -1
  396. package/dist/esm/components/form/controls/code-editor/form-field-code.d.ts.map +1 -1
  397. package/dist/esm/components/form/controls/code-editor/markdown-editor.d.ts.map +1 -1
  398. package/dist/esm/components/form/controls/date-time/calendar.d.ts.map +1 -1
  399. package/dist/esm/components/form/controls/date-time/calendar.labels.d.ts.map +1 -1
  400. package/dist/esm/components/form/controls/date-time/date-range-picker.d.ts.map +1 -1
  401. package/dist/esm/components/form/controls/date-time/date-range-picker.labels.d.ts.map +1 -1
  402. package/dist/esm/components/form/controls/date-time/datepicker.d.ts.map +1 -1
  403. package/dist/esm/components/form/controls/date-time/datepicker.labels.d.ts.map +1 -1
  404. package/dist/esm/components/form/controls/date-time/datetime-picker.d.ts.map +1 -1
  405. package/dist/esm/components/form/controls/date-time/datetime-picker.labels.d.ts.map +1 -1
  406. package/dist/esm/components/form/controls/date-time/datetime-range-picker.d.ts.map +1 -1
  407. package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.d.ts.map +1 -1
  408. package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.js +11 -2
  409. package/dist/esm/components/form/controls/date-time/datetime-range-picker.labels.js.map +1 -1
  410. package/dist/esm/components/form/controls/date-time/time-picker.d.ts.map +1 -1
  411. package/dist/esm/components/form/controls/date-time/time-picker.labels.d.ts.map +1 -1
  412. package/dist/esm/components/form/controls/date-time/time-range-picker.d.ts.map +1 -1
  413. package/dist/esm/components/form/controls/date-time/time-range-picker.labels.d.ts.map +1 -1
  414. package/dist/esm/components/form/controls/date-time/time-range-picker.labels.js +11 -2
  415. package/dist/esm/components/form/controls/date-time/time-range-picker.labels.js.map +1 -1
  416. package/dist/esm/components/form/controls/enum/radio.d.ts +1 -1
  417. package/dist/esm/components/form/controls/enum/radio.d.ts.map +1 -1
  418. package/dist/esm/components/form/controls/enum/radio.js +13 -12
  419. package/dist/esm/components/form/controls/enum/radio.js.map +1 -1
  420. package/dist/esm/components/form/controls/enum/radio.labels.d.ts.map +1 -1
  421. package/dist/esm/components/form/controls/enum/select-multiple.d.ts.map +1 -1
  422. package/dist/esm/components/form/controls/enum/select-multiple.js +5 -3
  423. package/dist/esm/components/form/controls/enum/select-multiple.js.map +1 -1
  424. package/dist/esm/components/form/controls/enum/select-multiple.labels.d.ts.map +1 -1
  425. package/dist/esm/components/form/controls/enum/select.d.ts.map +1 -1
  426. package/dist/esm/components/form/controls/enum/select.labels.d.ts.map +1 -1
  427. package/dist/esm/components/form/controls/enum/toggle-group.d.ts.map +1 -1
  428. package/dist/esm/components/form/controls/enum/toggle-group.js +96 -5
  429. package/dist/esm/components/form/controls/enum/toggle-group.js.map +1 -1
  430. package/dist/esm/components/form/controls/enum/toggle-group.labels.d.ts.map +1 -1
  431. package/dist/esm/components/form/controls/file/file-upload.d.ts.map +1 -1
  432. package/dist/esm/components/form/controls/file/file-upload.labels.d.ts.map +1 -1
  433. package/dist/esm/components/form/controls/file/image-crop.d.ts.map +1 -1
  434. package/dist/esm/components/form/controls/file/image-crop.labels.d.ts.map +1 -1
  435. package/dist/esm/components/form/controls/file/providers/dropbox-picker.d.ts +44 -0
  436. package/dist/esm/components/form/controls/file/providers/dropbox-picker.d.ts.map +1 -0
  437. package/dist/esm/components/form/controls/file/providers/dropbox-picker.js +137 -0
  438. package/dist/esm/components/form/controls/file/providers/dropbox-picker.js.map +1 -0
  439. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.d.ts +22 -0
  440. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.d.ts.map +1 -0
  441. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.js +27 -0
  442. package/dist/esm/components/form/controls/file/providers/dropbox-picker.lazy.js.map +1 -0
  443. package/dist/esm/components/form/controls/file/providers/google-drive-picker.d.ts +54 -0
  444. package/dist/esm/components/form/controls/file/providers/google-drive-picker.d.ts.map +1 -0
  445. package/dist/esm/components/form/controls/file/providers/google-drive-picker.js +159 -0
  446. package/dist/esm/components/form/controls/file/providers/google-drive-picker.js.map +1 -0
  447. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.d.ts +22 -0
  448. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.d.ts.map +1 -0
  449. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.js +27 -0
  450. package/dist/esm/components/form/controls/file/providers/google-drive-picker.lazy.js.map +1 -0
  451. package/dist/esm/components/form/controls/file/providers/onedrive-picker.d.ts +41 -0
  452. package/dist/esm/components/form/controls/file/providers/onedrive-picker.d.ts.map +1 -0
  453. package/dist/esm/components/form/controls/file/providers/onedrive-picker.js +129 -0
  454. package/dist/esm/components/form/controls/file/providers/onedrive-picker.js.map +1 -0
  455. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.d.ts +22 -0
  456. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.d.ts.map +1 -0
  457. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.js +27 -0
  458. package/dist/esm/components/form/controls/file/providers/onedrive-picker.lazy.js.map +1 -0
  459. package/dist/esm/components/form/controls/input-group.d.ts.map +1 -1
  460. package/dist/esm/components/form/controls/input-group.labels.d.ts.map +1 -1
  461. package/dist/esm/components/form/controls/input.d.ts.map +1 -1
  462. package/dist/esm/components/form/controls/input.labels.d.ts.map +1 -1
  463. package/dist/esm/components/form/controls/number/slider.d.ts.map +1 -1
  464. package/dist/esm/components/form/controls/number/slider.labels.d.ts.map +1 -1
  465. package/dist/esm/components/form/controls/number/slider.labels.js +9 -2
  466. package/dist/esm/components/form/controls/number/slider.labels.js.map +1 -1
  467. package/dist/esm/components/form/controls/string/color-input.d.ts.map +1 -1
  468. package/dist/esm/components/form/controls/string/color-input.labels.d.ts.map +1 -1
  469. package/dist/esm/components/form/controls/string/color-picker-surface.d.ts.map +1 -1
  470. package/dist/esm/components/form/controls/string/color-picker-surface.js.map +1 -1
  471. package/dist/esm/components/form/controls/string/inline-edit-text.d.ts.map +1 -1
  472. package/dist/esm/components/form/controls/string/input-otp.d.ts.map +1 -1
  473. package/dist/esm/components/form/controls/string/input-otp.labels.d.ts.map +1 -1
  474. package/dist/esm/components/form/controls/string/password-input.d.ts.map +1 -1
  475. package/dist/esm/components/form/controls/string/password-input.labels.d.ts.map +1 -1
  476. package/dist/esm/components/form/controls/string/password-input.labels.js +9 -2
  477. package/dist/esm/components/form/controls/string/password-input.labels.js.map +1 -1
  478. package/dist/esm/components/form/controls/string/textarea.d.ts.map +1 -1
  479. package/dist/esm/components/form/controls/string/textarea.labels.d.ts.map +1 -1
  480. package/dist/esm/components/layout/aspect-ratio.d.ts.map +1 -1
  481. package/dist/esm/components/layout/aspect-ratio.labels.d.ts.map +1 -1
  482. package/dist/esm/components/layout/carousel.d.ts.map +1 -1
  483. package/dist/esm/components/layout/carousel.labels.d.ts.map +1 -1
  484. package/dist/esm/components/layout/divider.d.ts.map +1 -1
  485. package/dist/esm/components/layout/divider.labels.d.ts.map +1 -1
  486. package/dist/esm/components/layout/resizable.d.ts.map +1 -1
  487. package/dist/esm/components/layout/resizable.labels.d.ts.map +1 -1
  488. package/dist/esm/components/layout/scroll-area.d.ts.map +1 -1
  489. package/dist/esm/components/layout/scroll-area.labels.d.ts.map +1 -1
  490. package/dist/esm/components/layout/separator.d.ts.map +1 -1
  491. package/dist/esm/components/layout/separator.labels.d.ts.map +1 -1
  492. package/dist/esm/components/navigation/app-level/activity-bar.d.ts.map +1 -1
  493. package/dist/esm/components/navigation/app-level/activity-bar.labels.d.ts.map +1 -1
  494. package/dist/esm/components/navigation/app-level/command-menu.d.ts.map +1 -1
  495. package/dist/esm/components/navigation/app-level/command-menu.js +2 -2
  496. package/dist/esm/components/navigation/app-level/command-menu.js.map +1 -1
  497. package/dist/esm/components/navigation/app-level/command-menu.labels.d.ts.map +1 -1
  498. package/dist/esm/components/navigation/app-level/control-panel.d.ts.map +1 -1
  499. package/dist/esm/components/navigation/app-level/control-panel.labels.d.ts.map +1 -1
  500. package/dist/esm/components/navigation/app-level/menu-user-org.d.ts.map +1 -1
  501. package/dist/esm/components/navigation/app-level/menu-user-org.labels.d.ts.map +1 -1
  502. package/dist/esm/components/navigation/app-level/menubar.d.ts.map +1 -1
  503. package/dist/esm/components/navigation/app-level/menubar.js +35 -13
  504. package/dist/esm/components/navigation/app-level/menubar.js.map +1 -1
  505. package/dist/esm/components/navigation/app-level/menubar.labels.d.ts.map +1 -1
  506. package/dist/esm/components/navigation/app-level/navigation-back.d.ts.map +1 -1
  507. package/dist/esm/components/navigation/app-level/navigation-back.js +10 -2
  508. package/dist/esm/components/navigation/app-level/navigation-back.js.map +1 -1
  509. package/dist/esm/components/navigation/app-level/navigation-back.labels.d.ts.map +1 -1
  510. package/dist/esm/components/navigation/app-level/notification-center.d.ts.map +1 -1
  511. package/dist/esm/components/navigation/app-level/notification-center.js.map +1 -1
  512. package/dist/esm/components/navigation/app-level/notification-center.labels.d.ts.map +1 -1
  513. package/dist/esm/components/navigation/app-level/notification-center.labels.js +15 -0
  514. package/dist/esm/components/navigation/app-level/notification-center.labels.js.map +1 -1
  515. package/dist/esm/components/navigation/app-level/quick-action-button.d.ts.map +1 -1
  516. package/dist/esm/components/navigation/app-level/quick-action-button.labels.d.ts.map +1 -1
  517. package/dist/esm/components/navigation/app-level/quick-action-button.labels.js +4 -0
  518. package/dist/esm/components/navigation/app-level/quick-action-button.labels.js.map +1 -1
  519. package/dist/esm/components/navigation/app-level/quick-switcher.d.ts.map +1 -1
  520. package/dist/esm/components/navigation/app-level/quick-switcher.labels.d.ts.map +1 -1
  521. package/dist/esm/components/navigation/app-level/sidebar.d.ts.map +1 -1
  522. package/dist/esm/components/navigation/app-level/sidebar.js +38 -22
  523. package/dist/esm/components/navigation/app-level/sidebar.js.map +1 -1
  524. package/dist/esm/components/navigation/app-level/sidebar.labels.d.ts.map +1 -1
  525. package/dist/esm/components/navigation/app-level/sidebar.labels.js +1 -0
  526. package/dist/esm/components/navigation/app-level/sidebar.labels.js.map +1 -1
  527. package/dist/esm/components/navigation/app-level/status-bar.d.ts.map +1 -1
  528. package/dist/esm/components/navigation/app-level/status-bar.labels.d.ts.map +1 -1
  529. package/dist/esm/components/navigation/app-level/toolbar.d.ts.map +1 -1
  530. package/dist/esm/components/navigation/app-level/toolbar.labels.d.ts.map +1 -1
  531. package/dist/esm/components/navigation/app-level/utility-panel.d.ts.map +1 -1
  532. package/dist/esm/components/navigation/app-level/utility-panel.js +30 -5
  533. package/dist/esm/components/navigation/app-level/utility-panel.js.map +1 -1
  534. package/dist/esm/components/navigation/app-level/utility-panel.labels.d.ts.map +1 -1
  535. package/dist/esm/components/navigation/app-level/utility-panel.labels.js.map +1 -1
  536. package/dist/esm/components/navigation/breadcrumb.d.ts.map +1 -1
  537. package/dist/esm/components/navigation/breadcrumb.labels.d.ts.map +1 -1
  538. package/dist/esm/components/navigation/command.d.ts.map +1 -1
  539. package/dist/esm/components/navigation/command.js +2 -2
  540. package/dist/esm/components/navigation/command.js.map +1 -1
  541. package/dist/esm/components/navigation/command.labels.d.ts.map +1 -1
  542. package/dist/esm/components/navigation/menu-bar.d.ts.map +1 -1
  543. package/dist/esm/components/navigation/menu-bar.labels.d.ts.map +1 -1
  544. package/dist/esm/components/navigation/navbar.d.ts.map +1 -1
  545. package/dist/esm/components/navigation/navbar.labels.d.ts.map +1 -1
  546. package/dist/esm/components/navigation/sidebar.d.ts.map +1 -1
  547. package/dist/esm/components/navigation/sidebar.labels.d.ts.map +1 -1
  548. package/dist/esm/components/overlays/containers/alert-dialog.d.ts.map +1 -1
  549. package/dist/esm/components/overlays/containers/alert-dialog.js +11 -1
  550. package/dist/esm/components/overlays/containers/alert-dialog.js.map +1 -1
  551. package/dist/esm/components/overlays/containers/alert-dialog.labels.d.ts.map +1 -1
  552. package/dist/esm/components/overlays/containers/alert.d.ts.map +1 -1
  553. package/dist/esm/components/overlays/containers/alert.labels.d.ts.map +1 -1
  554. package/dist/esm/components/overlays/containers/dialog.d.ts.map +1 -1
  555. package/dist/esm/components/overlays/containers/dialog.js +11 -1
  556. package/dist/esm/components/overlays/containers/dialog.js.map +1 -1
  557. package/dist/esm/components/overlays/containers/dialog.labels.d.ts.map +1 -1
  558. package/dist/esm/components/overlays/containers/drawer.d.ts.map +1 -1
  559. package/dist/esm/components/overlays/containers/drawer.labels.d.ts.map +1 -1
  560. package/dist/esm/components/overlays/containers/sheet.d.ts.map +1 -1
  561. package/dist/esm/components/overlays/containers/sheet.labels.d.ts.map +1 -1
  562. package/dist/esm/components/overlays/floating/context-menu.d.ts.map +1 -1
  563. package/dist/esm/components/overlays/floating/context-menu.labels.d.ts.map +1 -1
  564. package/dist/esm/components/overlays/floating/dropdown-menu.d.ts.map +1 -1
  565. package/dist/esm/components/overlays/floating/dropdown-menu.labels.d.ts.map +1 -1
  566. package/dist/esm/components/overlays/floating/hover-card.d.ts.map +1 -1
  567. package/dist/esm/components/overlays/floating/hover-card.labels.d.ts.map +1 -1
  568. package/dist/esm/components/overlays/floating/popover.d.ts.map +1 -1
  569. package/dist/esm/components/overlays/floating/popover.labels.d.ts.map +1 -1
  570. package/dist/esm/components/overlays/floating/tooltip.d.ts.map +1 -1
  571. package/dist/esm/components/overlays/floating/tooltip.labels.d.ts.map +1 -1
  572. package/dist/esm/components/sections/accordion.d.ts.map +1 -1
  573. package/dist/esm/components/sections/accordion.labels.d.ts.map +1 -1
  574. package/dist/esm/components/sections/card.d.ts.map +1 -1
  575. package/dist/esm/components/sections/card.js +71 -6
  576. package/dist/esm/components/sections/card.js.map +1 -1
  577. package/dist/esm/components/sections/card.labels.d.ts.map +1 -1
  578. package/dist/esm/components/sections/collapsible.d.ts.map +1 -1
  579. package/dist/esm/components/sections/collapsible.labels.d.ts.map +1 -1
  580. package/dist/esm/components/sections/content-section.d.ts.map +1 -1
  581. package/dist/esm/components/sections/content-section.js +36 -6
  582. package/dist/esm/components/sections/content-section.js.map +1 -1
  583. package/dist/esm/components/sections/disclosure-nesting.d.ts.map +1 -1
  584. package/dist/esm/components/sections/option-gesture.d.ts +15 -0
  585. package/dist/esm/components/sections/option-gesture.d.ts.map +1 -0
  586. package/dist/esm/components/sections/option-gesture.js +66 -0
  587. package/dist/esm/components/sections/option-gesture.js.map +1 -0
  588. package/dist/esm/components/sections/pagination.d.ts.map +1 -1
  589. package/dist/esm/components/sections/pagination.labels.d.ts.map +1 -1
  590. package/dist/esm/components/sections/stacked-layout.d.ts.map +1 -1
  591. package/dist/esm/components/sections/stacked-layout.labels.d.ts.map +1 -1
  592. package/dist/esm/components/sections/stepper.d.ts.map +1 -1
  593. package/dist/esm/components/sections/stepper.labels.d.ts.map +1 -1
  594. package/dist/esm/components/sections/table.d.ts.map +1 -1
  595. package/dist/esm/components/sections/table.labels.d.ts.map +1 -1
  596. package/dist/esm/components/sections/tabs.d.ts.map +1 -1
  597. package/dist/esm/components/sections/tabs.js +64 -15
  598. package/dist/esm/components/sections/tabs.js.map +1 -1
  599. package/dist/esm/components/sections/tabs.labels.d.ts.map +1 -1
  600. package/dist/esm/components/typography/heading.d.ts.map +1 -1
  601. package/dist/esm/components/typography/heading.labels.d.ts.map +1 -1
  602. package/dist/esm/components/typography/label.d.ts.map +1 -1
  603. package/dist/esm/components/typography/label.labels.d.ts.map +1 -1
  604. package/dist/esm/components/typography/link.d.ts.map +1 -1
  605. package/dist/esm/components/typography/link.js +9 -3
  606. package/dist/esm/components/typography/link.js.map +1 -1
  607. package/dist/esm/components/typography/link.labels.d.ts.map +1 -1
  608. package/dist/esm/components/typography/text.d.ts +1 -1
  609. package/dist/esm/components/typography/text.d.ts.map +1 -1
  610. package/dist/esm/components/typography/text.js +3 -2
  611. package/dist/esm/components/typography/text.js.map +1 -1
  612. package/dist/esm/components/typography/text.labels.d.ts.map +1 -1
  613. package/dist/esm/components/typography/truncated-text.d.ts.map +1 -1
  614. package/dist/esm/config/billing-shell.presets.d.ts.map +1 -1
  615. package/dist/esm/config/index.d.ts.map +1 -1
  616. package/dist/esm/config/preset-design-system.d.ts.map +1 -1
  617. package/dist/esm/config/preset-design-system.js +37 -60
  618. package/dist/esm/config/preset-design-system.js.map +1 -1
  619. package/dist/esm/config/preset-error-pages.d.ts.map +1 -1
  620. package/dist/esm/config/preset-kits.d.ts.map +1 -1
  621. package/dist/esm/config/preset-navigation.d.ts.map +1 -1
  622. package/dist/esm/config/preset-navigation.js +0 -5
  623. package/dist/esm/config/preset-navigation.js.map +1 -1
  624. package/dist/esm/config/preset-resources.d.ts.map +1 -1
  625. package/dist/esm/config/preset-shell.d.ts.map +1 -1
  626. package/dist/esm/config/preset-utils.d.ts.map +1 -1
  627. package/dist/esm/config/presets.d.ts.map +1 -1
  628. package/dist/esm/config/resources/application.resource-presets.d.ts +2 -0
  629. package/dist/esm/config/resources/application.resource-presets.d.ts.map +1 -1
  630. package/dist/esm/config/resources/application.resource-presets.js +163 -7
  631. package/dist/esm/config/resources/application.resource-presets.js.map +1 -1
  632. package/dist/esm/config/resources/billing.resource-presets.d.ts.map +1 -1
  633. package/dist/esm/config/resources/billing.resource-presets.js +1 -0
  634. package/dist/esm/config/resources/billing.resource-presets.js.map +1 -1
  635. package/dist/esm/config/resources/guidance.resource-presets.d.ts.map +1 -1
  636. package/dist/esm/config/resources/guidance.resource-presets.js +21 -5
  637. package/dist/esm/config/resources/guidance.resource-presets.js.map +1 -1
  638. package/dist/esm/config/resources/identity.resource-presets.d.ts.map +1 -1
  639. package/dist/esm/config/resources/identity.resource-presets.js +25 -3
  640. package/dist/esm/config/resources/identity.resource-presets.js.map +1 -1
  641. package/dist/esm/config/resources/index.d.ts.map +1 -1
  642. package/dist/esm/config/resources/index.js.map +1 -1
  643. package/dist/esm/config/resources/organizations.resource-presets.d.ts.map +1 -1
  644. package/dist/esm/config/resources/organizations.resource-presets.js +90 -12
  645. package/dist/esm/config/resources/organizations.resource-presets.js.map +1 -1
  646. package/dist/esm/config/resources/resource.config.utils.d.ts.map +1 -1
  647. package/dist/esm/config/resources/security.resource-presets.d.ts +8 -2
  648. package/dist/esm/config/resources/security.resource-presets.d.ts.map +1 -1
  649. package/dist/esm/config/resources/security.resource-presets.js +185 -29
  650. package/dist/esm/config/resources/security.resource-presets.js.map +1 -1
  651. package/dist/esm/config/resources/webhooks.resource-presets.d.ts.map +1 -1
  652. package/dist/esm/config/resources/webhooks.resource-presets.js +27 -2
  653. package/dist/esm/config/resources/webhooks.resource-presets.js.map +1 -1
  654. package/dist/esm/index.d.ts +7 -1
  655. package/dist/esm/index.d.ts.map +1 -1
  656. package/dist/esm/index.js +7 -1
  657. package/dist/esm/index.js.map +1 -1
  658. package/dist/esm/lottie/lottie.content.definitions.d.ts.map +1 -1
  659. package/dist/esm/lottie/lottie.definitions.d.ts.map +1 -1
  660. package/dist/esm/mermaid-stub.d.ts.map +1 -1
  661. package/dist/esm/registration/register-common-enums.d.ts.map +1 -1
  662. package/dist/esm/registration/register-common-enums.js +48 -34
  663. package/dist/esm/registration/register-common-enums.js.map +1 -1
  664. package/dist/esm/registration/register-default-animations.d.ts.map +1 -1
  665. package/dist/esm/registration/register-default-icons.d.ts.map +1 -1
  666. package/dist/esm/registration/register-default-icons.js +3 -1
  667. package/dist/esm/registration/register-default-icons.js.map +1 -1
  668. package/dist/esm/registration/register-default-presets.d.ts.map +1 -1
  669. package/dist/esm/registration/register-default-presets.js +36 -4
  670. package/dist/esm/registration/register-default-presets.js.map +1 -1
  671. package/dist/esm/registration/register-provider-components.d.ts +31 -0
  672. package/dist/esm/registration/register-provider-components.d.ts.map +1 -0
  673. package/dist/esm/registration/register-provider-components.js +50 -0
  674. package/dist/esm/registration/register-provider-components.js.map +1 -0
  675. package/dist/esm/shiki-subset.d.ts +11 -3
  676. package/dist/esm/shiki-subset.d.ts.map +1 -1
  677. package/dist/esm/shiki-subset.js +10 -2
  678. package/dist/esm/shiki-subset.js.map +1 -1
  679. package/dist/esm/theme-exports.d.ts.map +1 -1
  680. package/dist/esm/themes/cozy.theme.d.ts.map +1 -1
  681. package/dist/esm/themes/cozy.theme.js +19 -5
  682. package/dist/esm/themes/cozy.theme.js.map +1 -1
  683. package/dist/esm/themes/dense.theme.d.ts.map +1 -1
  684. package/dist/esm/themes/dense.theme.js +56 -10
  685. package/dist/esm/themes/dense.theme.js.map +1 -1
  686. package/dist/esm/themes/editorial.theme.d.ts.map +1 -1
  687. package/dist/esm/themes/editorial.theme.js +19 -5
  688. package/dist/esm/themes/editorial.theme.js.map +1 -1
  689. package/dist/esm/themes/glass.theme.d.ts.map +1 -1
  690. package/dist/esm/themes/glass.theme.js +5 -1
  691. package/dist/esm/themes/glass.theme.js.map +1 -1
  692. package/dist/esm/themes/neo-brutalist.theme.d.ts.map +1 -1
  693. package/dist/esm/themes/neo-brutalist.theme.js +9 -2
  694. package/dist/esm/themes/neo-brutalist.theme.js.map +1 -1
  695. package/dist/esm/themes/terminal.theme.d.ts.map +1 -1
  696. package/dist/esm/themes/terminal.theme.js +19 -5
  697. package/dist/esm/themes/terminal.theme.js.map +1 -1
  698. package/dist/esm/themes/trading.theme.d.ts.map +1 -1
  699. package/dist/esm/themes/trading.theme.js +22 -6
  700. package/dist/esm/themes/trading.theme.js.map +1 -1
  701. package/dist/tsconfig.build.tsbuildinfo +1 -1
  702. package/package.json +29 -44
  703. package/dist/esm/.native.tsbuildinfo +0 -1
  704. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts +0 -16
  705. package/dist/esm/components/form/controls/form-field-checkbox-group.d.ts.map +0 -1
  706. package/dist/esm/components/form/controls/form-field-checkbox-group.js +0 -143
  707. package/dist/esm/components/form/controls/form-field-checkbox-group.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"graph.lazy.js","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/graph.lazy.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\"\n\n/**\n * The ONLY public doors onto the `@xyflow/react` graph subtree.\n *\n * Lazy-boundary wrapper (`*.lazy.tsx` convention — `ChartView.lazy` / `pdf-viewer.lazy` /\n * `cm6-editor.lazy` precedent). It owns the `React.lazy(() => import('./graph-runtime'))` split\n * points and the Suspense fallbacks, and re-exports every props type via `import type` so callers\n * are fully typed with NO runtime edge onto the heavy module.\n *\n * ## Why the door exists — two reasons, both load-bearing\n *\n * 1. **Node consumers.** `canvas.tsx` imports `@xyflow/react/dist/style.css`. Node's ESM loader\n * has no `.css` handler, so while these leaves were reachable eagerly from this package's root\n * barrel, every Node process that value-imported a package root reaching them died with\n * `Unknown file extension \".css\"` at module load — including `@wildo-ai/saas-specifications`,\n * whose ~20 resource specifications import UI-behavior sources from that root, and therefore\n * the dev companion and the CLI.\n * 2. **Bundle size.** Eager registration + eager barrel export put the whole graph library in the\n * MAIN chunk of every generated application, including the ones that never render a graph.\n *\n * ## Why every door names the SAME specifier\n *\n * Rollup/Vite emit one async chunk per dynamically-imported MODULE. All fifteen doors below\n * dynamically import `./graph-runtime` and nothing else, so the bundler sees exactly one dynamic\n * target and emits exactly ONE async chunk holding `@xyflow/react` plus its extracted CSS asset.\n * Seven per-leaf split points would have produced either a duplicated library or an implicit\n * shared chunk, with the stylesheet attached to whichever chunk `canvas` happened to land in.\n * See `graph-runtime.ts` for the full rationale.\n *\n * ## Suspense fallbacks\n *\n * Doors that occupy layout reserve it with a `Skeleton`, never collapsing to zero height — the\n * one door that realistically suspends is whichever the host renders FIRST, and for an embedded\n * `<AI_Controls />` inside a host-owned `ReactFlow` that is not the canvas.\n *\n * `AI_Connection` and the `AI_Edge` family are the deliberate exception: they render inside the\n * canvas's `<svg>`, where a `<div>` skeleton is invalid DOM, and they are only ever mounted as\n * children of an already-resolved canvas — so the chunk is resident and their fallback is\n * unreachable in practice. Their fallback is `null` by that reasoning, not by omission.\n *\n * Everything except this wrapper (and tests) must import these components from HERE. A static\n * import of `./graph-runtime`, or of any leaf beneath it, from the eager graph silently merges the\n * whole payload back into the entry chunk — enforced by `pnpm check:lazy-boundaries`.\n */\n\nimport * as React from \"react\"\nimport { Skeleton } from \"@wildo-ai/saas-frontend-lib\"\nimport type { ConnectionLineComponent, EdgeProps } from \"@xyflow/react\"\n\nimport type { AI_CanvasProps } from \"./canvas\"\nimport type { AI_ControlsProps } from \"./controls\"\nimport type {\n AI_NodeActionProps,\n AI_NodeContentProps,\n AI_NodeDescriptionProps,\n AI_NodeFooterProps,\n AI_NodeHeaderProps,\n AI_NodeProps,\n AI_NodeTitleProps,\n} from \"./node\"\nimport type { AI_PanelProps } from \"./panel\"\nimport type { AI_ToolbarProps } from \"./toolbar\"\n\n/**\n * One `React.lazy` per exported symbol, every one of them resolving the SAME `./graph-runtime`\n * module. The module promise is created once by the ESM loader and reused, so the fifteen\n * factories below cost one network fetch and one module evaluation between them.\n */\nconst LazyCanvas = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Canvas })))\nconst LazyConnection = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Connection })))\nconst LazyControls = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Controls })))\nconst LazyEdgeTemporary = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Edge_Temporary })))\nconst LazyEdgeAnimated = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Edge_Animated })))\nconst LazyNode = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Node })))\nconst LazyNodeHeader = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeHeader })))\nconst LazyNodeTitle = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeTitle })))\nconst LazyNodeDescription = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeDescription })))\nconst LazyNodeAction = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeAction })))\nconst LazyNodeContent = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeContent })))\nconst LazyNodeFooter = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeFooter })))\nconst LazyPanel = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Panel })))\nconst LazyToolbar = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Toolbar })))\n\n// ─── Canvas ───────────────────────────────────────────────────────────────────\n\n/** The graph surface. Reserves a full-height block while the graph chunk loads. */\nexport const AI_Canvas = ({ ...props }: AI_CanvasProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"size-full min-h-64\" />}>\n <LazyCanvas {...props} />\n </React.Suspense>\n)\n\n// ─── SVG-context children (fallback `null` — see the module header) ───────────\n\n/** Connection line drawn while dragging an edge. Renders inside the canvas `<svg>`. */\nexport const AI_Connection: ConnectionLineComponent = (props): React.JSX.Element => (\n <React.Suspense fallback={null}>\n <LazyConnection {...props} />\n </React.Suspense>\n)\n\n/** Dashed placeholder edge. Renders inside the canvas `<svg>`. */\nexport const AI_Edge_Temporary = (props: EdgeProps): React.JSX.Element => (\n <React.Suspense fallback={null}>\n <LazyEdgeTemporary {...props} />\n </React.Suspense>\n)\n\n/** Bezier edge with a travelling marker. Renders inside the canvas `<svg>`. */\nexport const AI_Edge_Animated = (props: EdgeProps): React.JSX.Element => (\n <React.Suspense fallback={null}>\n <LazyEdgeAnimated {...props} />\n </React.Suspense>\n)\n\n/** Default edge — the temporary variant, preserving the pre-boundary export shape. */\nexport const AI_Edge: typeof AI_Edge_Temporary = AI_Edge_Temporary\n\n/** Variant map, preserving the pre-boundary export shape for `edgeTypes` registration. */\nexport const AI_EdgeVariants: {\n Temporary: typeof AI_Edge_Temporary\n Animated: typeof AI_Edge_Animated\n} = {\n Temporary: AI_Edge_Temporary,\n Animated: AI_Edge_Animated,\n}\n\n// ─── Canvas chrome ────────────────────────────────────────────────────────────\n\n/**\n * Zoom / fit controls. This is the door most likely to suspend FIRST: hosts embed it inside their\n * own `ReactFlow` rather than inside `AI_Canvas`, so it can be the component that pulls the chunk.\n */\nexport const AI_Controls = (props: AI_ControlsProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-24 w-8 rounded-md\" />}>\n <LazyControls {...props} />\n </React.Suspense>\n)\n\n/** Floating panel anchored to a canvas corner. */\nexport const AI_Panel = (props: AI_PanelProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"m-field h-8 w-24 rounded-md\" />}>\n <LazyPanel {...props} />\n </React.Suspense>\n)\n\n/** Node-anchored toolbar. */\nexport const AI_Toolbar = (props: AI_ToolbarProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-8 w-24 rounded-sm\" />}>\n <LazyToolbar {...props} />\n </React.Suspense>\n)\n\n// ─── Node family ──────────────────────────────────────────────────────────────\n\n/** Graph node card, with source/target handles. */\nexport const AI_Node = (props: AI_NodeProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-24 w-sm rounded-md\" />}>\n <LazyNode {...props} />\n </React.Suspense>\n)\n\n/** Node card header. */\nexport const AI_NodeHeader = (props: AI_NodeHeaderProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-10 w-full rounded-t-md\" />}>\n <LazyNodeHeader {...props} />\n </React.Suspense>\n)\n\n/** Node card title. */\nexport const AI_NodeTitle = (props: AI_NodeTitleProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-4 w-32\" />}>\n <LazyNodeTitle {...props} />\n </React.Suspense>\n)\n\n/** Node card description. */\nexport const AI_NodeDescription = (props: AI_NodeDescriptionProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-3 w-40\" />}>\n <LazyNodeDescription {...props} />\n </React.Suspense>\n)\n\n/** Node card action slot. */\nexport const AI_NodeAction = (props: AI_NodeActionProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-6 w-6 rounded-sm\" />}>\n <LazyNodeAction {...props} />\n </React.Suspense>\n)\n\n/** Node card body. */\nexport const AI_NodeContent = (props: AI_NodeContentProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-12 w-full\" />}>\n <LazyNodeContent {...props} />\n </React.Suspense>\n)\n\n/** Node card footer. */\nexport const AI_NodeFooter = (props: AI_NodeFooterProps): React.JSX.Element => (\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-8 w-full rounded-b-md\" />}>\n <LazyNodeFooter {...props} />\n </React.Suspense>\n)\n\nexport type { AI_CanvasProps } from \"./canvas\"\nexport type { AI_ControlsProps } from \"./controls\"\nexport type {\n AI_NodeActionProps,\n AI_NodeContentProps,\n AI_NodeDescriptionProps,\n AI_NodeFooterProps,\n AI_NodeHeaderProps,\n AI_NodeProps,\n AI_NodeTitleProps,\n} from \"./node\"\nexport type { AI_PanelProps } from \"./panel\"\nexport type { AI_ToolbarProps } from \"./toolbar\"\n"]}
1
+ {"version":3,"file":"graph.lazy.js","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/graph.lazy.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\"\n\n/**\n * The ONLY public doors onto the `@xyflow/react` graph subtree.\n *\n * Lazy-boundary wrapper (`*.lazy.tsx` convention — `ChartView.lazy` / `pdf-viewer.lazy` /\n * `cm6-editor.lazy` precedent). It owns the `React.lazy(() => import('./graph-runtime'))` split\n * points and the Suspense fallbacks, and re-exports every props type via `import type` so callers\n * are fully typed with NO runtime edge onto the heavy module.\n *\n * ## Why the door exists — two reasons, both load-bearing\n *\n * 1. **Node consumers.** `canvas.tsx` imports `@xyflow/react/dist/style.css`. Node's ESM loader\n * has no `.css` handler, so while these leaves were reachable eagerly from this package's root\n * barrel, every Node process that value-imported a package root reaching them died with\n * `Unknown file extension \".css\"` at module load — including `@wildo-ai/saas-specifications`,\n * whose ~20 resource specifications import UI-behavior sources from that root, and therefore\n * the dev companion and the CLI.\n * 2. **Bundle size.** Eager registration + eager barrel export put the whole graph library in the\n * MAIN chunk of every generated application, including the ones that never render a graph.\n *\n * ## Why every door names the SAME specifier\n *\n * Rollup/Vite emit one async chunk per dynamically-imported MODULE. All fifteen doors below\n * dynamically import `./graph-runtime` and nothing else, so the bundler sees exactly one dynamic\n * target and emits exactly ONE async chunk holding `@xyflow/react` plus its extracted CSS asset.\n * Seven per-leaf split points would have produced either a duplicated library or an implicit\n * shared chunk, with the stylesheet attached to whichever chunk `canvas` happened to land in.\n * See `graph-runtime.ts` for the full rationale.\n *\n * ## Suspense fallbacks\n *\n * Doors that occupy layout reserve it with a `Skeleton`, never collapsing to zero height — the\n * one door that realistically suspends is whichever the host renders FIRST, and for an embedded\n * `<AI_Controls />` inside a host-owned `ReactFlow` that is not the canvas.\n *\n * `AI_Connection` and the `AI_Edge` family are the deliberate exception: they render inside the\n * canvas's `<svg>`, where a `<div>` skeleton is invalid DOM, and they are only ever mounted as\n * children of an already-resolved canvas — so the chunk is resident and their fallback is\n * unreachable in practice. Their fallback is `null` by that reasoning, not by omission.\n *\n * Everything except this wrapper (and tests) must import these components from HERE. A static\n * import of `./graph-runtime`, or of any leaf beneath it, from the eager graph silently merges the\n * whole payload back into the entry chunk — enforced by `pnpm check:lazy-boundaries`.\n */\n\nimport * as React from \"react\"\nimport { LazyDoorErrorBoundary, LazyDoorUnavailableFrame, Skeleton } from \"@wildo-ai/saas-frontend-lib\"\nimport type { ConnectionLineComponent, EdgeProps } from \"@xyflow/react\"\n\nimport type { AI_CanvasProps } from \"./canvas\"\nimport type { AI_ControlsProps } from \"./controls\"\nimport type {\n AI_NodeActionProps,\n AI_NodeContentProps,\n AI_NodeDescriptionProps,\n AI_NodeFooterProps,\n AI_NodeHeaderProps,\n AI_NodeProps,\n AI_NodeTitleProps,\n} from \"./node\"\nimport type { AI_PanelProps } from \"./panel\"\nimport type { AI_ToolbarProps } from \"./toolbar\"\n\n/**\n * One `React.lazy` per exported symbol, every one of them resolving the SAME `./graph-runtime`\n * module. The module promise is created once by the ESM loader and reused, so the fifteen\n * factories below cost one network fetch and one module evaluation between them.\n */\nconst LazyCanvas = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Canvas })))\nconst LazyConnection = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Connection })))\nconst LazyControls = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Controls })))\nconst LazyEdgeTemporary = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Edge_Temporary })))\nconst LazyEdgeAnimated = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Edge_Animated })))\nconst LazyNode = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Node })))\nconst LazyNodeHeader = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeHeader })))\nconst LazyNodeTitle = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeTitle })))\nconst LazyNodeDescription = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeDescription })))\nconst LazyNodeAction = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeAction })))\nconst LazyNodeContent = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeContent })))\nconst LazyNodeFooter = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_NodeFooter })))\nconst LazyPanel = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Panel })))\nconst LazyToolbar = React.lazy(() => import(\"./graph-runtime\").then((m) => ({ default: m.AI_Toolbar })))\n\n// ─── Canvas ───────────────────────────────────────────────────────────────────\n\n/** The graph surface. Reserves a full-height block while the graph chunk loads. */\nexport const AI_Canvas = ({ ...props }: AI_CanvasProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Canvas\" fallback={<LazyDoorUnavailableFrame className=\"size-full min-h-64\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"size-full min-h-64\" />}>\n <LazyCanvas {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n// ─── SVG-context children (fallback `null` — see the module header) ───────────\n\n/** Connection line drawn while dragging an edge. Renders inside the canvas `<svg>`. */\nexport const AI_Connection: ConnectionLineComponent = (props): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Connection\" fallback={null}>\n <React.Suspense fallback={null}>\n <LazyConnection {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Dashed placeholder edge. Renders inside the canvas `<svg>`. */\nexport const AI_Edge_Temporary = (props: EdgeProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Edge_Temporary\" fallback={null}>\n <React.Suspense fallback={null}>\n <LazyEdgeTemporary {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Bezier edge with a travelling marker. Renders inside the canvas `<svg>`. */\nexport const AI_Edge_Animated = (props: EdgeProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Edge_Animated\" fallback={null}>\n <React.Suspense fallback={null}>\n <LazyEdgeAnimated {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Default edge — the temporary variant, preserving the pre-boundary export shape. */\nexport const AI_Edge: typeof AI_Edge_Temporary = AI_Edge_Temporary\n\n/** Variant map, preserving the pre-boundary export shape for `edgeTypes` registration. */\nexport const AI_EdgeVariants: {\n Temporary: typeof AI_Edge_Temporary\n Animated: typeof AI_Edge_Animated\n} = {\n Temporary: AI_Edge_Temporary,\n Animated: AI_Edge_Animated,\n}\n\n// ─── Canvas chrome ────────────────────────────────────────────────────────────\n\n/**\n * Zoom / fit controls. This is the door most likely to suspend FIRST: hosts embed it inside their\n * own `ReactFlow` rather than inside `AI_Canvas`, so it can be the component that pulls the chunk.\n */\nexport const AI_Controls = (props: AI_ControlsProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Controls\" fallback={<LazyDoorUnavailableFrame className=\"h-24 w-8 rounded-md\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-24 w-8 rounded-md\" />}>\n <LazyControls {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Floating panel anchored to a canvas corner. */\nexport const AI_Panel = (props: AI_PanelProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Panel\" fallback={<LazyDoorUnavailableFrame className=\"m-field h-8 w-24 rounded-md\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"m-field h-8 w-24 rounded-md\" />}>\n <LazyPanel {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node-anchored toolbar. */\nexport const AI_Toolbar = (props: AI_ToolbarProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Toolbar\" fallback={<LazyDoorUnavailableFrame className=\"h-8 w-24 rounded-sm\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-8 w-24 rounded-sm\" />}>\n <LazyToolbar {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n// ─── Node family ──────────────────────────────────────────────────────────────\n\n/** Graph node card, with source/target handles. */\nexport const AI_Node = (props: AI_NodeProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_Node\" fallback={<LazyDoorUnavailableFrame className=\"h-24 w-sm rounded-md\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-24 w-sm rounded-md\" />}>\n <LazyNode {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node card header. */\nexport const AI_NodeHeader = (props: AI_NodeHeaderProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_NodeHeader\" fallback={<LazyDoorUnavailableFrame className=\"h-10 w-full rounded-t-md\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-10 w-full rounded-t-md\" />}>\n <LazyNodeHeader {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node card title. */\nexport const AI_NodeTitle = (props: AI_NodeTitleProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_NodeTitle\" fallback={<LazyDoorUnavailableFrame className=\"h-4 w-32\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-4 w-32\" />}>\n <LazyNodeTitle {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node card description. */\nexport const AI_NodeDescription = (props: AI_NodeDescriptionProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_NodeDescription\" fallback={<LazyDoorUnavailableFrame className=\"h-3 w-40\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-3 w-40\" />}>\n <LazyNodeDescription {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node card action slot. */\nexport const AI_NodeAction = (props: AI_NodeActionProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_NodeAction\" fallback={<LazyDoorUnavailableFrame className=\"h-6 w-6 rounded-sm\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-6 w-6 rounded-sm\" />}>\n <LazyNodeAction {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node card body. */\nexport const AI_NodeContent = (props: AI_NodeContentProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_NodeContent\" fallback={<LazyDoorUnavailableFrame className=\"h-12 w-full\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-12 w-full\" />}>\n <LazyNodeContent {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\n/** Node card footer. */\nexport const AI_NodeFooter = (props: AI_NodeFooterProps): React.JSX.Element => (\n <LazyDoorErrorBoundary doorName=\"AI_NodeFooter\" fallback={<LazyDoorUnavailableFrame className=\"h-8 w-full rounded-b-md\" />}>\n <React.Suspense fallback={<Skeleton aria-hidden=\"true\" className=\"h-8 w-full rounded-b-md\" />}>\n <LazyNodeFooter {...props} />\n </React.Suspense>\n </LazyDoorErrorBoundary>\n)\n\nexport type { AI_CanvasProps } from \"./canvas\"\nexport type { AI_ControlsProps } from \"./controls\"\nexport type {\n AI_NodeActionProps,\n AI_NodeContentProps,\n AI_NodeDescriptionProps,\n AI_NodeFooterProps,\n AI_NodeHeaderProps,\n AI_NodeProps,\n AI_NodeTitleProps,\n} from \"./node\"\nexport type { AI_PanelProps } from \"./panel\"\nexport type { AI_ToolbarProps } from \"./toolbar\"\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/graph/node.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACV,UAAU,EACV,SAAS,EAGV,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG;IACvD,OAAO,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,kCAAkC,YAAY,KAAG,KAAK,CAAC,GAAG,CAAC,OAYlF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnE,eAAO,MAAM,aAAa,GAAI,yBAAyB,kBAAkB,KAAG,KAAK,CAAC,GAAG,CAAC,OAOrF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAEjE,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAmC,CAAC;AAEtG,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7E,eAAO,MAAM,kBAAkB,GAAI,OAAO,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAE7E,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnE,eAAO,MAAM,aAAa,GAAI,OAAO,kBAAkB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAoC,CAAC;AAEzG,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,WAAW,CAAC,CAAC;AAErE,eAAO,MAAM,cAAc,GAAI,yBAAyB,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OAEvF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnE,eAAO,MAAM,aAAa,GAAI,yBAAyB,kBAAkB,KAAG,KAAK,CAAC,GAAG,CAAC,OAOrF,CAAC"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/node.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,IAAI,EACJ,UAAU,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACV,UAAU,EACV,SAAS,EAGV,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG;IACvD,OAAO,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,kCAAkC,YAAY,KAAG,KAAK,CAAC,GAAG,CAAC,OAYlF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnE,eAAO,MAAM,aAAa,GAAI,yBAAyB,kBAAkB,KAAG,KAAK,CAAC,GAAG,CAAC,OAOrF,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAEjE,eAAO,MAAM,YAAY,GAAI,OAAO,iBAAiB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAmC,CAAC;AAEtG,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,OAAO,eAAe,CAAC,CAAC;AAE7E,eAAO,MAAM,kBAAkB,GAAI,OAAO,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAE7E,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnE,eAAO,MAAM,aAAa,GAAI,OAAO,kBAAkB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAoC,CAAC;AAEzG,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,WAAW,CAAC,CAAC;AAErE,eAAO,MAAM,cAAc,GAAI,yBAAyB,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OAEvF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEnE,eAAO,MAAM,aAAa,GAAI,yBAAyB,kBAAkB,KAAG,KAAK,CAAC,GAAG,CAAC,OAOrF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/graph/node.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM/H,eAAO,MAAM,oBAAoB,EAAE,mBAAmB,EAAO,CAAC"}
1
+ {"version":3,"file":"node.labels.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/node.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM/H,eAAO,MAAM,oBAAoB,EAAE,mBAAmB,EAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/graph/panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,cAAc,CAAC,CAAC;AAElE,eAAO,MAAM,QAAQ,GAAI,yBAAyB,aAAa,KAAG,KAAK,CAAC,GAAG,CAAC,OAkB3E,CAAC"}
1
+ {"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,OAAO,cAAc,CAAC,CAAC;AAElE,eAAO,MAAM,QAAQ,GAAI,yBAAyB,aAAa,KAAG,KAAK,CAAC,GAAG,CAAC,OAkB3E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/graph/panel.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM/H,eAAO,MAAM,qBAAqB,EAAE,mBAAmB,EAAO,CAAC"}
1
+ {"version":3,"file":"panel.labels.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/panel.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM/H,eAAO,MAAM,qBAAqB,EAAE,mBAAmB,EAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/graph/toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAY,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,WAAW,CAAC,CAAC;AAEjE,eAAO,MAAM,UAAU,GAAI,yBAAyB,eAAe,KAAG,KAAK,CAAC,GAAG,CAAC,OAS/E,CAAC"}
1
+ {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAY,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,WAAW,CAAC,CAAC;AAEjE,eAAO,MAAM,UAAU,GAAI,yBAAyB,eAAe,KAAG,KAAK,CAAC,GAAG,CAAC,OAS/E,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"toolbar.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/graph/toolbar.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM/H,eAAO,MAAM,uBAAuB,EAAE,mBAAmB,EAAO,CAAC"}
1
+ {"version":3,"file":"toolbar.labels.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/graph/toolbar.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM/H,eAAO,MAAM,uBAAuB,EAAE,mBAAmB,EAAO,CAAC"}
@@ -78,7 +78,6 @@ export type AgentData = {
78
78
  version?: string;
79
79
  createdAt?: string;
80
80
  updatedAt?: string;
81
- hasRagConfig?: boolean;
82
81
  };
83
82
  export type AI_AgentCapabilitiesProps = ComponentProps<"div"> & {
84
83
  capabilities?: AgentCapabilities;
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/meta/agent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/meta/agent.tsx"],"names":[],"mappings":"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"}
@@ -59,28 +59,33 @@ export const AI_AgentCapabilities = ({ capabilities, className, ...props }) => {
59
59
  return null;
60
60
  const funcRefs = capabilities?.tools?.functionRefs ?? [];
61
61
  /*
62
- * `mcpRefs` is CHECKED and still NOT RENDERED (#491).
62
+ * `mcpRefs` is rendered as DECLARED SERVERS, not as tools (#560).
63
63
  *
64
- * This card answers "what can this agent do", and it used to answer it wrongly: a core facet
65
- * composed a shipped bundle of refs, so a real agent showed a person "MCP servers: filesystem-mcp,
66
- * code-editor-mcp, git-mcp" while **no runtime path resolved any of them into a callable tool**.
67
- * That is not an unused field; it is a claim shown to a user about a reach the agent lacks.
64
+ * ## What changed, and why the note below needed correcting
68
65
  *
69
- * Since 2026-09-09 a ref must name an MCP server the APPLICATION declared, and the registry
70
- * refuses an agent whose refs name none — the bundle and the facet that composed it are gone. So a
71
- * ref reaching this component now denotes something real.
66
+ * This block used to end "Restore the block here in the same change that makes the refs callable,
67
+ * not before" — and asserted, on 2026-09-09, that "there is no MCP client anywhere in the engine"
68
+ * and "no credential is resolved at call time". Both are now false: `mcp-client.backend.service.ts`
69
+ * exists, and `AgentsBackendService` resolves `capabilities.tools.mcpRefs` into callable tools by
70
+ * DISCOVERING each server through `mcpClient.openSession(server, credential.token)`. The change the
71
+ * note was waiting for happened, in another session, and the note kept instructing the next reader
72
+ * not to do the thing that had become correct.
72
73
  *
73
- * It still does not denote a TOOL. `AgentsBackendService` resolves `functionRefs` and nothing
74
- * else: there is no MCP client anywhere in the engine (`saas-backend-lib/src/mcp/` is the SERVER
75
- * Wildo exposes), and no credential is resolved at call time. A declared server the agent cannot
76
- * call is a smaller lie than an invented one, and it is still a lie on a capability card.
74
+ * ## Why DECLARED SERVERS rather than the resolved tool list
77
75
  *
78
- * Restore the block here in the same change that makes the refs callable, not before — and when
79
- * you do, remember an unreachable server contributes no tools to a turn, so what this card shows
80
- * must be what the turn could actually use rather than what was declared.
76
+ * The original defect was a card claiming reach an agent did not have. The weaker version of it
77
+ * survives the fix: this card receives STATIC `capabilities` and cannot know what THIS turn
78
+ * discovered. Tools come from `openSession` at turn start, so an agent's usable MCP tools are fewer
79
+ * whenever a server is unreachable, a credential is unavailable, or the outbound guard refuses the
80
+ * target — and a count rendered here could be zero at the moment it is read.
81
+ *
82
+ * So the card says what it can say truthfully: this agent is CONFIGURED to reach these servers. No
83
+ * tool count, and a heading of its own, because the one thing it must not become is a second
84
+ * reading of the function-tool list beside it.
81
85
  */
82
- const hasAny = funcRefs.length > 0;
83
- return (_jsx("div", { className: cn("flex flex-col gap-card-sm", className), ...props, children: !hasAny ? (_jsx("p", { className: cn(descRecipe.base, "text-sm"), children: tComponent(CT, "noCapabilities") })) : (_jsx(_Fragment, { children: funcRefs.length > 0 && (_jsxs("div", { className: "flex flex-col gap-item", children: [_jsx("span", { className: "text-2xs font-medium text-muted-foreground", children: tComponent(CT, "functionRefs") }), _jsx("div", { className: "flex flex-wrap gap-item", children: funcRefs.map((ref) => (_jsx(Badge, { variant: "secondary", className: "text-2xs font-mono", children: ref }, ref))) })] })) })) }));
86
+ const mcpRefs = capabilities?.tools?.mcpRefs ?? [];
87
+ const hasAny = funcRefs.length > 0 || mcpRefs.length > 0;
88
+ return (_jsx("div", { className: cn("flex flex-col gap-card-sm", className), ...props, children: !hasAny ? (_jsx("p", { className: cn(descRecipe.base, "text-sm"), children: tComponent(CT, "noCapabilities") })) : (_jsxs(_Fragment, { children: [funcRefs.length > 0 && (_jsxs("div", { className: "flex flex-col gap-item", children: [_jsx("span", { className: "text-2xs font-medium text-muted-foreground", children: tComponent(CT, "functionRefs") }), _jsx("div", { className: "flex flex-wrap gap-item", children: funcRefs.map((ref) => (_jsx(Badge, { variant: "secondary", className: "text-2xs font-mono", children: ref }, ref))) })] })), mcpRefs.length > 0 && (_jsxs("div", { className: "flex flex-col gap-item", children: [_jsx("span", { className: "text-2xs font-medium text-muted-foreground", children: tComponent(CT, "mcpRefs") }), _jsx("div", { className: "flex flex-wrap gap-item", children: mcpRefs.map((ref) => (_jsx(Badge, { variant: "outline", className: "text-2xs font-mono", children: ref }, ref))) })] }))] })) }));
84
89
  };
85
90
  export const AI_AgentPromptSpec = ({ spec, className, ...props }) => {
86
91
  const { tComponent, isReady } = useI18n({ component: CT });
@@ -97,7 +102,7 @@ export const AI_AgentCard = ({ agent, defaultExpanded = false, className, ...pro
97
102
  const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);
98
103
  if (!isReady)
99
104
  return null;
100
- return (_jsx(Collapsible, { defaultOpen: defaultExpanded, children: _jsx(Surface, { asChild: true, emitPolicyVars: false, variant: SurfaceVariant.BASE, children: _jsxs("div", { className: cn(surfaceRecipe.base, className), ...props, children: [_jsx(CollapsibleTrigger, { asChild: true, children: _jsxs("button", { type: "button", className: "flex w-full items-center justify-between gap-element p-card-sm text-start hover:bg-muted/50", children: [_jsxs("div", { className: "flex flex-col gap-item min-w-0", children: [_jsxs("div", { className: "flex items-center gap-element", children: [_jsx("span", { className: "truncate text-sm font-medium", children: agent.displayName }), _jsx(Badge, { variant: STATUS_VARIANT[agent.status], className: "text-2xs shrink-0", children: tComponent(CT, STATUS_LABEL_KEY[agent.status]) }), _jsx(Badge, { variant: "outline", className: "text-2xs shrink-0", children: tComponent(CT, SKILL_LABEL_KEY[agent.promptSpec.skillType]) })] }), _jsx("p", { className: cn(descRecipe.base, "text-xs line-clamp-1"), children: agent.promptSpec.role })] }), agent.config?.modelName && (_jsx(Badge, { variant: "secondary", className: "text-2xs shrink-0", children: agent.config.modelName }))] }) }), _jsx(CollapsibleContent, { children: _jsxs("div", { className: "flex flex-col gap-card border-t p-card-sm", children: [_jsx(AI_AgentPromptSpec, { spec: agent.promptSpec }), _jsx(Section, { title: tComponent(CT, "capabilities"), children: _jsx(AI_AgentCapabilities, { capabilities: agent.capabilities }) }), agent.config && (_jsx(Section, { title: tComponent(CT, "model"), defaultOpen: false, children: _jsxs("div", { className: "flex flex-col gap-element text-sm", children: [agent.config.operationKey && (_jsxs("div", { className: "flex items-center gap-element", children: [_jsx("span", { className: cn(descRecipe.base, "text-xs"), children: tComponent(CT, "operationKey") }), _jsx("span", { className: "font-mono text-xs", children: agent.config.operationKey })] })), agent.config.seed != null && (_jsxs("div", { className: "flex items-center gap-element", children: [_jsx("span", { className: cn(descRecipe.base, "text-xs"), children: tComponent(CT, "seed") }), _jsx("span", { className: "font-mono text-xs", children: agent.config.seed })] }))] }) })), agent.hasRagConfig && (_jsx(Section, { title: tComponent(CT, "advanced"), defaultOpen: false, children: _jsx("div", { className: "flex flex-col gap-element text-sm", children: _jsxs("div", { className: "flex items-center gap-element", children: [_jsx(Badge, { variant: "outline", className: "text-2xs", children: tComponent(CT, "ragConfigured") }), _jsx("span", { className: cn(descRecipe.base, "text-xs"), children: tComponent(CT, "contextCuration") })] }) }) })), (agent.version || agent.createdAt) && (_jsxs("div", { className: "flex items-center gap-element pt-2 border-t", children: [agent.version && (_jsx(Badge, { variant: "outline", className: "text-2xs font-mono", children: agent.version })), agent.createdAt && (_jsx("span", { className: cn(descRecipe.base, "text-2xs"), children: new Date(agent.createdAt).toLocaleString() }))] }))] }) })] }) }) }));
105
+ return (_jsx(Collapsible, { defaultOpen: defaultExpanded, children: _jsx(Surface, { asChild: true, emitPolicyVars: false, variant: SurfaceVariant.BASE, children: _jsxs("div", { className: cn(surfaceRecipe.base, className), ...props, children: [_jsx(CollapsibleTrigger, { asChild: true, children: _jsxs("button", { type: "button", className: "flex w-full items-center justify-between gap-element p-card-sm text-start hover:bg-muted/50", children: [_jsxs("div", { className: "flex flex-col gap-item min-w-0", children: [_jsxs("div", { className: "flex items-center gap-element", children: [_jsx("span", { className: "truncate text-sm font-medium", children: agent.displayName }), _jsx(Badge, { variant: STATUS_VARIANT[agent.status], className: "text-2xs shrink-0", children: tComponent(CT, STATUS_LABEL_KEY[agent.status]) }), _jsx(Badge, { variant: "outline", className: "text-2xs shrink-0", children: tComponent(CT, SKILL_LABEL_KEY[agent.promptSpec.skillType]) })] }), _jsx("p", { className: cn(descRecipe.base, "text-xs line-clamp-1"), children: agent.promptSpec.role })] }), agent.config?.modelName && (_jsx(Badge, { variant: "secondary", className: "text-2xs shrink-0", children: agent.config.modelName }))] }) }), _jsx(CollapsibleContent, { children: _jsxs("div", { className: "flex flex-col gap-card border-t p-card-sm", children: [_jsx(AI_AgentPromptSpec, { spec: agent.promptSpec }), _jsx(Section, { title: tComponent(CT, "capabilities"), children: _jsx(AI_AgentCapabilities, { capabilities: agent.capabilities }) }), agent.config && (_jsx(Section, { title: tComponent(CT, "model"), defaultOpen: false, children: _jsxs("div", { className: "flex flex-col gap-element text-sm", children: [agent.config.operationKey && (_jsxs("div", { className: "flex items-center gap-element", children: [_jsx("span", { className: cn(descRecipe.base, "text-xs"), children: tComponent(CT, "operationKey") }), _jsx("span", { className: "font-mono text-xs", children: agent.config.operationKey })] })), agent.config.seed != null && (_jsxs("div", { className: "flex items-center gap-element", children: [_jsx("span", { className: cn(descRecipe.base, "text-xs"), children: tComponent(CT, "seed") }), _jsx("span", { className: "font-mono text-xs", children: agent.config.seed })] }))] }) })), (agent.version || agent.createdAt) && (_jsxs("div", { className: "flex items-center gap-element pt-2 border-t", children: [agent.version && (_jsx(Badge, { variant: "outline", className: "text-2xs font-mono", children: agent.version })), agent.createdAt && (_jsx("span", { className: cn(descRecipe.base, "text-2xs"), children: new Date(agent.createdAt).toLocaleString() }))] }))] }) })] }) }) }));
101
106
  };
102
107
  export const AI_AgentList = ({ agents, className, ...props }) => {
103
108
  const { tComponent, isReady } = useI18n({ component: CT });
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../../../src/components/ai-elements/meta/agent.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport {\n Badge,\n Button,\n ButtonVariants_Variant,\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n InputRoot,\n ScrollArea,\n cn,\n useUI,\n useI18n,\n Surface,\n} from '@wildo-ai/saas-frontend-lib';\n\nimport { UIBehavior, SurfaceVariant, TypographyVariant, FrontendComponentType, ButtonSize } from \"@wildo-ai/presets-components-models\";\nimport type { ComponentProps } from \"react\";\n\nconst CT: FrontendComponentType = FrontendComponentType.LOW_LEVEL_AI_AGENT_CONFIG;\n\n//===============================================================\n// Agent Configuration — Generic Preset Components\n//\n// BACKEND DEPENDENCIES:\n// - FlowsActors_Agent (ref, displayName, status, config, promptSpec, capabilities)\n// - FlowsActors_Agent_PromptSpec (identity, constraints, instructions, output, etc.)\n// - FlowsActors_Agent_Configuration (operationKey, seed, model config)\n//\n// FUTURE EXTENSIONS:\n// - agents-context.shared.schemas.ts: RAG configuration (vector store,\n// embedding, chunking, retrieval, reranking) — \"Agent Context Inspector\"\n// - prompt-ir.shared.schemas.ts: PromptIR compiled prompts, trust levels,\n// context sources — \"Agent Invocation Inspector\"\n//\n// Components render agent data from typed props. Wire to saas-models\n// via the saas-frontend-lib wrapper (flows-actors/agent-config.tsx).\n//===============================================================\n\n//===============================================================\n// Shared types — mirror agent schema shapes without imports\n//===============================================================\n\nexport type AgentStatus = \"ACTIVE\" | \"INACTIVE\" | \"DEPRECATED\";\nexport type AgentSkillType = \"GENERATION\" | \"ANALYSIS\" | \"TRANSFORMATION\" | \"DECISION\" | \"CHAT\" | \"CUSTOM\";\nexport type AgentVerbosity = \"LOW\" | \"MEDIUM\" | \"HIGH\";\nexport type AgentTone = \"NEUTRAL\" | \"CASUAL\" | \"FORMAL\" | \"TECHNICAL\";\nexport type AgentConstraintType = \"SECURITY\" | \"SAFETY\" | \"PRIVACY\" | \"SCOPE\" | \"COMPLIANCE\";\nexport type AgentUncertaintyPolicy = \"ASK\" | \"INFER\" | \"CONSERVATIVE\" | \"FAIL\";\n\nexport type AgentConstraint = {\n id: string;\n text: string;\n type: AgentConstraintType;\n onViolation?: \"refuse\" | \"warn\" | \"log\";\n};\n\nexport type AgentOutputSpec = {\n type?: string;\n fileFormat?: string;\n lengthGuidance?: AgentVerbosity;\n includeReasoning?: boolean;\n requiredSections?: string[];\n};\n\nexport type AgentUncertainty = {\n policy: AgentUncertaintyPolicy;\n confidenceThreshold?: number;\n};\n\nexport type AgentExample = {\n input: string;\n output: string;\n explanation?: string;\n};\n\nexport type AgentPromptSpec = {\n role: string;\n persona?: string;\n skillType: AgentSkillType;\n constraints?: AgentConstraint[];\n goal?: string;\n output?: AgentOutputSpec;\n instructions?: string[];\n hints?: string[];\n uncertainty?: AgentUncertainty;\n outOfScope?: string[];\n examples?: AgentExample[];\n style?: { verbosity?: AgentVerbosity; tone?: AgentTone };\n curation?: { maxItems?: number; minRelevance?: number; maxTokens?: number };\n promptFormatOverride?: string;\n metadata?: { version?: string; lastModified?: string; author?: string; changelog?: string };\n};\n\nexport type AgentCapabilities = {\n tools?: {\n functionRefs: string[];\n mcpRefs: string[];\n };\n};\n\nexport type AgentConfigData = {\n operationKey?: string;\n seed?: number;\n modelName?: string;\n};\n\nexport type AgentData = {\n ref: string;\n displayName: string;\n status: AgentStatus;\n promptSpec: AgentPromptSpec;\n capabilities?: AgentCapabilities;\n config?: AgentConfigData;\n version?: string;\n createdAt?: string;\n updatedAt?: string;\n hasRagConfig?: boolean;\n};\n\n//===============================================================\n// Status and skill type styling\n//===============================================================\n\nconst STATUS_VARIANT: Record<AgentStatus, \"default\" | \"secondary\" | \"destructive\" | \"outline\"> = {\n ACTIVE: \"default\",\n INACTIVE: \"secondary\",\n DEPRECATED: \"destructive\",\n};\n\nconst STATUS_LABEL_KEY: Record<AgentStatus, string> = {\n ACTIVE: \"statusActive\",\n INACTIVE: \"statusInactive\",\n DEPRECATED: \"statusDeprecated\",\n};\n\nconst SKILL_LABEL_KEY: Record<AgentSkillType, string> = {\n GENERATION: \"skillGeneration\",\n ANALYSIS: \"skillAnalysis\",\n TRANSFORMATION: \"skillTransformation\",\n DECISION: \"skillDecision\",\n CHAT: \"skillChat\",\n CUSTOM: \"skillCustom\",\n};\n\nconst CONSTRAINT_LABEL_KEY: Record<AgentConstraintType, string> = {\n SECURITY: \"constraintSecurity\",\n SAFETY: \"constraintSafety\",\n PRIVACY: \"constraintPrivacy\",\n SCOPE: \"constraintScope\",\n COMPLIANCE: \"constraintCompliance\",\n};\n\nconst VIOLATION_LABEL_KEY: Record<string, string> = {\n refuse: \"violationRefuse\",\n warn: \"violationWarn\",\n log: \"violationLog\",\n};\n\nconst UNCERTAINTY_LABEL_KEY: Record<AgentUncertaintyPolicy, string> = {\n ASK: \"policyAsk\",\n INFER: \"policyInfer\",\n CONSERVATIVE: \"policyConservative\",\n FAIL: \"policyFail\",\n};\n\n//===============================================================\n// Section — reusable collapsible section\n//===============================================================\n\nfunction Section({ title, children, defaultOpen = true }: {\n title: string;\n children: React.ReactNode;\n defaultOpen?: boolean;\n}): React.JSX.Element {\n const { getRecipe } = useUI();\n const surfaceInsetRecipe = getRecipe(UIBehavior.SURFACE, SurfaceVariant.INSET);\n\n return (\n <Collapsible defaultOpen={defaultOpen}>\n <CollapsibleTrigger asChild>\n <Surface asChild emitPolicyVars={false} variant={SurfaceVariant.INSET}>\n <button\n type=\"button\"\n className={cn(\n surfaceInsetRecipe.base,\n \"flex w-full items-center justify-between rounded-md px-card-sm py-1.5 text-xs font-semibold hover:bg-muted/70\",\n )}\n >\n {title}\n </button>\n </Surface>\n </CollapsibleTrigger>\n <CollapsibleContent>\n <div className=\"px-card-sm py-card-sm\">\n {children}\n </div>\n </CollapsibleContent>\n </Collapsible>\n );\n}\n\n//===============================================================\n// AI_AgentCapabilities\n//===============================================================\n\nexport type AI_AgentCapabilitiesProps = ComponentProps<\"div\"> & {\n capabilities?: AgentCapabilities;\n};\n\nexport const AI_AgentCapabilities = ({\n capabilities,\n className,\n ...props\n}: AI_AgentCapabilitiesProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n if (!isReady) return null;\n\n const funcRefs = capabilities?.tools?.functionRefs ?? [];\n /*\n * `mcpRefs` is CHECKED and still NOT RENDERED (#491).\n *\n * This card answers \"what can this agent do\", and it used to answer it wrongly: a core facet\n * composed a shipped bundle of refs, so a real agent showed a person \"MCP servers: filesystem-mcp,\n * code-editor-mcp, git-mcp\" while **no runtime path resolved any of them into a callable tool**.\n * That is not an unused field; it is a claim shown to a user about a reach the agent lacks.\n *\n * Since 2026-09-09 a ref must name an MCP server the APPLICATION declared, and the registry\n * refuses an agent whose refs name none — the bundle and the facet that composed it are gone. So a\n * ref reaching this component now denotes something real.\n *\n * It still does not denote a TOOL. `AgentsBackendService` resolves `functionRefs` and nothing\n * else: there is no MCP client anywhere in the engine (`saas-backend-lib/src/mcp/` is the SERVER\n * Wildo exposes), and no credential is resolved at call time. A declared server the agent cannot\n * call is a smaller lie than an invented one, and it is still a lie on a capability card.\n *\n * Restore the block here in the same change that makes the refs callable, not before — and when\n * you do, remember an unreachable server contributes no tools to a turn, so what this card shows\n * must be what the turn could actually use rather than what was declared.\n */\n const hasAny = funcRefs.length > 0;\n\n return (\n <div className={cn(\"flex flex-col gap-card-sm\", className)} {...props}>\n {!hasAny ? (\n <p className={cn(descRecipe.base, \"text-sm\")}>{tComponent(CT, \"noCapabilities\")}</p>\n ) : (\n <>\n {funcRefs.length > 0 && (\n <div className=\"flex flex-col gap-item\">\n <span className=\"text-2xs font-medium text-muted-foreground\">{tComponent(CT, \"functionRefs\")}</span>\n <div className=\"flex flex-wrap gap-item\">\n {funcRefs.map((ref) => (\n <Badge key={ref} variant=\"secondary\" className=\"text-2xs font-mono\">{ref}</Badge>\n ))}\n </div>\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\n//===============================================================\n// AI_AgentPromptSpec\n//===============================================================\n\nexport type AI_AgentPromptSpecProps = ComponentProps<\"div\"> & {\n spec: AgentPromptSpec;\n};\n\nexport const AI_AgentPromptSpec = ({\n spec,\n className,\n ...props\n}: AI_AgentPromptSpecProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n if (!isReady) return null;\n\n return (\n <div className={cn(\"flex flex-col gap-card-sm\", className)} {...props}>\n {/* Identity */}\n <Section title={tComponent(CT, \"identity\")}>\n <div className=\"flex flex-col gap-element text-sm\">\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs w-16 shrink-0\")}>{tComponent(CT, \"role\")}</span>\n <span>{spec.role}</span>\n </div>\n {spec.persona && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs w-16 shrink-0\")}>{tComponent(CT, \"persona\")}</span>\n <span>{spec.persona}</span>\n </div>\n )}\n <div className=\"flex items-center gap-element\">\n <Badge variant=\"outline\" className=\"text-2xs\">\n {tComponent(CT, SKILL_LABEL_KEY[spec.skillType])}\n </Badge>\n </div>\n </div>\n </Section>\n\n {/* Goal */}\n {spec.goal && (\n <Section title={tComponent(CT, \"goal\")}>\n <p className=\"text-sm\">{spec.goal}</p>\n </Section>\n )}\n\n {/* Constraints */}\n {spec.constraints && spec.constraints.length > 0 && (\n <Section title={tComponent(CT, \"constraints\")}>\n <div className=\"flex flex-col gap-2\">\n {spec.constraints.map((c) => (\n <Surface key={c.id} asChild emitPolicyVars={false} variant={SurfaceVariant.INSET}>\n <div className=\"flex items-start gap-element rounded-md border p-element\">\n <Badge variant=\"outline\" className=\"text-2xs shrink-0\">\n {tComponent(CT, CONSTRAINT_LABEL_KEY[c.type])}\n </Badge>\n <span className=\"flex-1 text-sm\">{c.text}</span>\n <Badge variant=\"secondary\" className=\"text-2xs shrink-0\">\n {tComponent(CT, VIOLATION_LABEL_KEY[c.onViolation ?? \"refuse\"])}\n </Badge>\n </div>\n </Surface>\n ))}\n </div>\n </Section>\n )}\n\n {/* Instructions */}\n {spec.instructions && spec.instructions.length > 0 && (\n <Section title={tComponent(CT, \"instructions\")}>\n <ol className=\"flex flex-col gap-item ps-4 text-sm list-decimal\">\n {spec.instructions.map((instr, i) => (\n <li key={i}>{instr}</li>\n ))}\n </ol>\n </Section>\n )}\n\n {/* Hints */}\n {spec.hints && spec.hints.length > 0 && (\n <Section title={tComponent(CT, \"hints\")} defaultOpen={false}>\n <ul className=\"flex flex-col gap-item ps-4 text-sm list-disc\">\n {spec.hints.map((hint, i) => (\n <li key={i}>{hint}</li>\n ))}\n </ul>\n </Section>\n )}\n\n {/* Out of Scope */}\n {spec.outOfScope && spec.outOfScope.length > 0 && (\n <Section title={tComponent(CT, \"outOfScope\")} defaultOpen={false}>\n <ul className=\"flex flex-col gap-item ps-4 text-sm list-disc\">\n {spec.outOfScope.map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </Section>\n )}\n\n {/* Examples */}\n {spec.examples && spec.examples.length > 0 && (\n <Section title={tComponent(CT, \"examples\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-card-sm\">\n {spec.examples.map((ex, i) => (\n <Surface key={i} asChild emitPolicyVars={false} variant={SurfaceVariant.INSET}>\n <div className=\"flex flex-col gap-element rounded-md border p-card-sm\">\n <div>\n <span className={cn(descRecipe.base, \"text-2xs\")}>{tComponent(CT, \"exampleInput\")}</span>\n <p className=\"text-sm mt-0.5\">{ex.input}</p>\n </div>\n <div>\n <span className={cn(descRecipe.base, \"text-2xs\")}>{tComponent(CT, \"exampleOutput\")}</span>\n <p className=\"text-sm mt-0.5\">{ex.output}</p>\n </div>\n {ex.explanation && (\n <div>\n <span className={cn(descRecipe.base, \"text-2xs\")}>{tComponent(CT, \"exampleExplanation\")}</span>\n <p className=\"text-sm mt-0.5\">{ex.explanation}</p>\n </div>\n )}\n </div>\n </Surface>\n ))}\n </div>\n </Section>\n )}\n\n {/* Output Spec */}\n {spec.output && (\n <Section title={tComponent(CT, \"output\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {spec.output.type && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputType\")}</span>\n <Badge variant=\"outline\" className=\"text-2xs\">{spec.output.type}</Badge>\n </div>\n )}\n {spec.output.fileFormat && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputFormat\")}</span>\n <span>{spec.output.fileFormat}</span>\n </div>\n )}\n {spec.output.lengthGuidance && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputLength\")}</span>\n <span>{spec.output.lengthGuidance}</span>\n </div>\n )}\n {spec.output.includeReasoning != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputReasoning\")}</span>\n <span>{spec.output.includeReasoning ? tComponent(CT, \"booleanYes\") : tComponent(CT, \"booleanNo\")}</span>\n </div>\n )}\n {spec.output.requiredSections && spec.output.requiredSections.length > 0 && (\n <div className=\"flex flex-col gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"requiredSections\")}</span>\n <div className=\"flex flex-wrap gap-item\">\n {spec.output.requiredSections.map((s) => (\n <Badge key={s} variant=\"outline\" className=\"text-2xs\">{s}</Badge>\n ))}\n </div>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Uncertainty */}\n {spec.uncertainty && (\n <Section title={tComponent(CT, \"uncertainty\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n <div className=\"flex items-center gap-element\">\n <Badge variant=\"secondary\" className=\"text-2xs\">\n {tComponent(CT, UNCERTAINTY_LABEL_KEY[spec.uncertainty.policy])}\n </Badge>\n </div>\n {spec.uncertainty.confidenceThreshold != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"confidenceThreshold\")}</span>\n <span>{(spec.uncertainty.confidenceThreshold * 100).toFixed(0)}%</span>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Style */}\n {spec.style && (\n <Section title={tComponent(CT, \"style\")} defaultOpen={false}>\n <div className=\"flex items-center gap-element text-sm\">\n {spec.style.verbosity && (\n <div className=\"flex items-center gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"verbosity\")}</span>\n <Badge variant=\"outline\" className=\"text-2xs\">{spec.style.verbosity}</Badge>\n </div>\n )}\n {spec.style.tone && (\n <div className=\"flex items-center gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"tone\")}</span>\n <Badge variant=\"outline\" className=\"text-2xs\">{spec.style.tone}</Badge>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Curation */}\n {spec.curation && (\n <Section title={tComponent(CT, \"curation\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {spec.curation.maxItems != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"maxItems\")}</span>\n <span>{spec.curation.maxItems}</span>\n </div>\n )}\n {spec.curation.minRelevance != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"minRelevance\")}</span>\n <span>{(spec.curation.minRelevance * 100).toFixed(0)}%</span>\n </div>\n )}\n {spec.curation.maxTokens != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"maxTokens\")}</span>\n <span>{spec.curation.maxTokens.toLocaleString()}</span>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Metadata */}\n {spec.metadata && (\n <Section title={tComponent(CT, \"metadata\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {spec.metadata.version && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"version\")}</span>\n <span className=\"font-mono\">{spec.metadata.version}</span>\n </div>\n )}\n {spec.metadata.author && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"author\")}</span>\n <span>{spec.metadata.author}</span>\n </div>\n )}\n {spec.metadata.lastModified && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"lastModified\")}</span>\n <span>{new Date(spec.metadata.lastModified).toLocaleString()}</span>\n </div>\n )}\n {spec.metadata.changelog && (\n <div className=\"flex flex-col gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"changelog\")}</span>\n <p className=\"text-sm whitespace-pre-wrap\">{spec.metadata.changelog}</p>\n </div>\n )}\n </div>\n </Section>\n )}\n </div>\n );\n};\n\n//===============================================================\n// AI_AgentCard\n//===============================================================\n\nexport type AI_AgentCardProps = ComponentProps<\"div\"> & {\n agent: AgentData;\n defaultExpanded?: boolean;\n};\n\nexport const AI_AgentCard = ({\n agent,\n defaultExpanded = false,\n className,\n ...props\n}: AI_AgentCardProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const surfaceRecipe = getRecipe(UIBehavior.SURFACE, SurfaceVariant.BASE);\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n if (!isReady) return null;\n\n return (\n <Collapsible defaultOpen={defaultExpanded}>\n <Surface asChild emitPolicyVars={false} variant={SurfaceVariant.BASE}>\n <div className={cn(surfaceRecipe.base, className)} {...props}>\n {/* Summary trigger */}\n <CollapsibleTrigger asChild>\n <button\n type=\"button\"\n className=\"flex w-full items-center justify-between gap-element p-card-sm text-start hover:bg-muted/50\"\n >\n <div className=\"flex flex-col gap-item min-w-0\">\n <div className=\"flex items-center gap-element\">\n <span className=\"truncate text-sm font-medium\">{agent.displayName}</span>\n <Badge variant={STATUS_VARIANT[agent.status]} className=\"text-2xs shrink-0\">\n {tComponent(CT, STATUS_LABEL_KEY[agent.status])}\n </Badge>\n <Badge variant=\"outline\" className=\"text-2xs shrink-0\">\n {tComponent(CT, SKILL_LABEL_KEY[agent.promptSpec.skillType])}\n </Badge>\n </div>\n <p className={cn(descRecipe.base, \"text-xs line-clamp-1\")}>{agent.promptSpec.role}</p>\n </div>\n {agent.config?.modelName && (\n <Badge variant=\"secondary\" className=\"text-2xs shrink-0\">\n {agent.config.modelName}\n </Badge>\n )}\n </button>\n </CollapsibleTrigger>\n\n {/* Expanded detail */}\n <CollapsibleContent>\n <div className=\"flex flex-col gap-card border-t p-card-sm\">\n {/* Prompt Spec */}\n <AI_AgentPromptSpec spec={agent.promptSpec} />\n\n {/* Capabilities */}\n <Section title={tComponent(CT, \"capabilities\")}>\n <AI_AgentCapabilities capabilities={agent.capabilities} />\n </Section>\n\n {/* LLM Config */}\n {agent.config && (\n <Section title={tComponent(CT, \"model\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {agent.config.operationKey && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"operationKey\")}</span>\n <span className=\"font-mono text-xs\">{agent.config.operationKey}</span>\n </div>\n )}\n {agent.config.seed != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"seed\")}</span>\n <span className=\"font-mono text-xs\">{agent.config.seed}</span>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Advanced — RAG / Context Curation */}\n {agent.hasRagConfig && (\n <Section title={tComponent(CT, \"advanced\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {/* BACKEND DEPENDENCY: agents-context.shared.schemas.ts\n RAG configuration (vector store, embedding, chunking, retrieval,\n reranking) is defined but not yet consumed by frontend.\n Future \"Agent Context Inspector\" feature. */}\n <div className=\"flex items-center gap-element\">\n <Badge variant=\"outline\" className=\"text-2xs\">{tComponent(CT, \"ragConfigured\")}</Badge>\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"contextCuration\")}</span>\n </div>\n </div>\n </Section>\n )}\n\n {/* Version / timestamps */}\n {(agent.version || agent.createdAt) && (\n <div className=\"flex items-center gap-element pt-2 border-t\">\n {agent.version && (\n <Badge variant=\"outline\" className=\"text-2xs font-mono\">{agent.version}</Badge>\n )}\n {agent.createdAt && (\n <span className={cn(descRecipe.base, \"text-2xs\")}>\n {new Date(agent.createdAt).toLocaleString()}\n </span>\n )}\n </div>\n )}\n </div>\n </CollapsibleContent>\n </div>\n </Surface>\n </Collapsible>\n );\n};\n\n//===============================================================\n// AI_AgentList\n//===============================================================\n\nexport type AI_AgentListProps = ComponentProps<\"div\"> & {\n agents: AgentData[];\n};\n\nexport const AI_AgentList = ({\n agents,\n className,\n ...props\n}: AI_AgentListProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n const [search, setSearch] = React.useState(\"\");\n const [statusFilter, setStatusFilter] = React.useState<AgentStatus | \"ALL\">(\"ALL\");\n const [skillFilter, setSkillFilter] = React.useState<AgentSkillType | \"ALL\">(\"ALL\");\n\n const filtered = React.useMemo(() => {\n let result = agents;\n\n if (search) {\n const q = search.toLowerCase();\n result = result.filter((a) =>\n a.displayName.toLowerCase().includes(q) ||\n a.promptSpec.role.toLowerCase().includes(q) ||\n a.ref.toLowerCase().includes(q)\n );\n }\n\n if (statusFilter !== \"ALL\") {\n result = result.filter((a) => a.status === statusFilter);\n }\n\n if (skillFilter !== \"ALL\") {\n result = result.filter((a) => a.promptSpec.skillType === skillFilter);\n }\n\n return result;\n }, [agents, search, statusFilter, skillFilter]);\n\n if (!isReady) return null;\n\n const statusOptions: Array<AgentStatus | \"ALL\"> = [\"ALL\", \"ACTIVE\", \"INACTIVE\", \"DEPRECATED\"];\n const skillOptions: Array<AgentSkillType | \"ALL\"> = [\"ALL\", \"GENERATION\", \"ANALYSIS\", \"TRANSFORMATION\", \"DECISION\", \"CHAT\", \"CUSTOM\"];\n\n return (\n <div className={cn(\"flex flex-col gap-card\", className)} {...props}>\n {/* Header */}\n <div className=\"flex items-center gap-element\">\n <h3 className=\"text-sm font-semibold\">{tComponent(CT, \"title\")}</h3>\n <Badge variant=\"secondary\" className=\"text-2xs\">\n {tComponent(CT, \"agentCount\", { count: String(agents.length) })}\n </Badge>\n </div>\n\n {/* Search */}\n <InputRoot\n type=\"text\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n placeholder={tComponent(CT, \"searchPlaceholder\")}\n className=\"h-8 text-xs\"\n />\n\n {/* Filters */}\n {/* V-5: candidate for Button/IconButton migration — see audit doc */}\n {/* (filter pills override SM ladder rung with h-7 + text-2xs; consider a dedicated FilterPill primitive */}\n {/* or a ButtonSize.XS rung — same pattern repeated in artifact-browser.tsx) */}\n <div className=\"flex flex-wrap gap-element\">\n <div className=\"flex gap-item\">\n {statusOptions.map((s) => (\n <Button\n key={s}\n type=\"button\"\n variant={statusFilter === s ? ButtonVariants_Variant.SECONDARY : ButtonVariants_Variant.GHOST}\n size={ButtonSize.XS}\n onClick={() => setStatusFilter(s)}\n >\n {s === \"ALL\" ? tComponent(CT, \"allStatuses\") : tComponent(CT, STATUS_LABEL_KEY[s])}\n </Button>\n ))}\n </div>\n <div className=\"flex gap-item\">\n {skillOptions.map((s) => (\n <Button\n key={s}\n type=\"button\"\n variant={skillFilter === s ? ButtonVariants_Variant.SECONDARY : ButtonVariants_Variant.GHOST}\n size={ButtonSize.XS}\n onClick={() => setSkillFilter(s)}\n >\n {s === \"ALL\" ? tComponent(CT, \"allSkills\") : tComponent(CT, SKILL_LABEL_KEY[s])}\n </Button>\n ))}\n </div>\n </div>\n\n {/* List */}\n {filtered.length === 0 ? (\n <p className={cn(descRecipe.base, \"py-card text-center text-sm\")}>\n {agents.length === 0 ? tComponent(CT, \"noAgents\") : tComponent(CT, \"noMatch\")}\n </p>\n ) : (\n <ScrollArea className=\"max-h-[600px]\">\n <div className=\"flex flex-col gap-card-sm\">\n {filtered.map((agent) => (\n <AI_AgentCard key={agent.ref} agent={agent} />\n ))}\n </div>\n </ScrollArea>\n )}\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/meta/agent.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,KAAK,EACL,MAAM,EACN,sBAAsB,EACtB,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,EAAE,EACF,KAAK,EACL,OAAO,EACP,OAAO,GACR,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAGvI,MAAM,EAAE,GAA0B,qBAAqB,CAAC,yBAAyB,CAAC;AAkGlF,iEAAiE;AACjE,iCAAiC;AACjC,iEAAiE;AAEjE,MAAM,cAAc,GAA6E;IAC/F,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE,aAAa;CAC1B,CAAC;AAEF,MAAM,gBAAgB,GAAgC;IACpD,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,gBAAgB;IAC1B,UAAU,EAAE,kBAAkB;CAC/B,CAAC;AAEF,MAAM,eAAe,GAAmC;IACtD,UAAU,EAAE,iBAAiB;IAC7B,QAAQ,EAAE,eAAe;IACzB,cAAc,EAAE,qBAAqB;IACrC,QAAQ,EAAE,eAAe;IACzB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;CACtB,CAAC;AAEF,MAAM,oBAAoB,GAAwC;IAChE,QAAQ,EAAE,oBAAoB;IAC9B,MAAM,EAAE,kBAAkB;IAC1B,OAAO,EAAE,mBAAmB;IAC5B,KAAK,EAAE,iBAAiB;IACxB,UAAU,EAAE,sBAAsB;CACnC,CAAC;AAEF,MAAM,mBAAmB,GAA2B;IAClD,MAAM,EAAE,iBAAiB;IACzB,IAAI,EAAE,eAAe;IACrB,GAAG,EAAE,cAAc;CACpB,CAAC;AAEF,MAAM,qBAAqB,GAA2C;IACpE,GAAG,EAAE,WAAW;IAChB,KAAK,EAAE,aAAa;IACpB,YAAY,EAAE,oBAAoB;IAClC,IAAI,EAAE,YAAY;CACnB,CAAC;AAEF,iEAAiE;AACjE,0CAA0C;AAC1C,iEAAiE;AAEjE,SAAS,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,EAIrD;IACC,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAC;IAC9B,MAAM,kBAAkB,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IAE/E,OAAO,CACL,MAAC,WAAW,IAAC,WAAW,EAAE,WAAW,aACnC,KAAC,kBAAkB,IAAC,OAAO,kBACzB,KAAC,OAAO,IAAC,OAAO,QAAC,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,YACnE,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CACX,kBAAkB,CAAC,IAAI,EACvB,+GAA+G,CAChH,YAEA,KAAK,GACC,GACD,GACS,EACrB,KAAC,kBAAkB,cACjB,cAAK,SAAS,EAAC,uBAAuB,YACnC,QAAQ,GACL,GACa,IACT,CACf,CAAC;AACJ,CAAC;AAUD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,YAAY,EACZ,SAAS,EACT,GAAG,KAAK,EACkB,EAA4B,EAAE;IACxD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEnF,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,MAAM,QAAQ,GAAG,YAAY,EAAE,KAAK,EAAE,YAAY,IAAI,EAAE,CAAC;IACzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,MAAM,OAAO,GAAG,YAAY,EAAE,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAEzD,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,2BAA2B,EAAE,SAAS,CAAC,KAAM,KAAK,YAClE,CAAC,MAAM,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,gBAAgB,CAAC,GAAK,CACrF,CAAC,CAAC,CAAC,CACF,8BACG,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CACtB,eAAK,SAAS,EAAC,wBAAwB,aACrC,eAAM,SAAS,EAAC,4CAA4C,YAAE,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACpG,cAAK,SAAS,EAAC,yBAAyB,YACrC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACrB,KAAC,KAAK,IAAW,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,oBAAoB,YAAE,GAAG,IAA5D,GAAG,CAAkE,CAClF,CAAC,GACE,IACF,CACP,EACA,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CACrB,eAAK,SAAS,EAAC,wBAAwB,aACrC,eAAM,SAAS,EAAC,4CAA4C,YAAE,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,GAAQ,EAC/F,cAAK,SAAS,EAAC,yBAAyB,YAErC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACpB,KAAC,KAAK,IAAW,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,oBAAoB,YAAE,GAAG,IAA1D,GAAG,CAAgE,CAChF,CAAC,GACE,IACF,CACP,IACA,CACJ,GACG,CACP,CAAC;AACJ,CAAC,CAAC;AAUF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,IAAI,EACJ,SAAS,EACT,GAAG,KAAK,EACgB,EAA4B,EAAE;IACtD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEnF,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,2BAA2B,EAAE,SAAS,CAAC,KAAM,KAAK,aAEnE,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,YACxC,eAAK,SAAS,EAAC,mCAAmC,aAChD,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,uBAAuB,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,GAAQ,EAC9F,yBAAO,IAAI,CAAC,IAAI,GAAQ,IACpB,EACL,IAAI,CAAC,OAAO,IAAI,CACf,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,uBAAuB,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,GAAQ,EACjG,yBAAO,IAAI,CAAC,OAAO,GAAQ,IACvB,CACP,EACD,cAAK,SAAS,EAAC,+BAA+B,YAC5C,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,YAC1C,UAAU,CAAC,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAC1C,GACJ,IACF,GACE,EAGT,IAAI,CAAC,IAAI,IAAI,CACZ,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,YACpC,YAAG,SAAS,EAAC,SAAS,YAAE,IAAI,CAAC,IAAI,GAAK,GAC9B,CACX,EAGA,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAClD,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,aAAa,CAAC,YAC3C,cAAK,SAAS,EAAC,qBAAqB,YACjC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAC3B,KAAC,OAAO,IAAY,OAAO,QAAC,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,YAC9E,eAAK,SAAS,EAAC,0DAA0D,aACvE,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,mBAAmB,YACnD,UAAU,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GACvC,EACR,eAAM,SAAS,EAAC,gBAAgB,YAAE,CAAC,CAAC,IAAI,GAAQ,EAChD,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,mBAAmB,YACrD,UAAU,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC,WAAW,IAAI,QAAQ,CAAC,CAAC,GACzD,IACJ,IATM,CAAC,CAAC,EAAE,CAUR,CACX,CAAC,GACE,GACE,CACX,EAGA,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CACpD,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,YAC5C,aAAI,SAAS,EAAC,kDAAkD,YAC7D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,uBAAa,KAAK,IAAT,CAAC,CAAc,CACzB,CAAC,GACC,GACG,CACX,EAGA,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACtC,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,YACzD,aAAI,SAAS,EAAC,+CAA+C,YAC1D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC3B,uBAAa,IAAI,IAAR,CAAC,CAAa,CACxB,CAAC,GACC,GACG,CACX,EAGA,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAChD,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,EAAE,WAAW,EAAE,KAAK,YAC9D,aAAI,SAAS,EAAC,+CAA+C,YAC1D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,uBAAa,IAAI,IAAR,CAAC,CAAa,CACxB,CAAC,GACC,GACG,CACX,EAGA,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5C,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,KAAK,YAC5D,cAAK,SAAS,EAAC,2BAA2B,YACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAC5B,KAAC,OAAO,IAAS,OAAO,QAAC,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,KAAK,YAC3E,eAAK,SAAS,EAAC,uDAAuD,aACpE,0BACE,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACzF,YAAG,SAAS,EAAC,gBAAgB,YAAE,EAAE,CAAC,KAAK,GAAK,IACxC,EACN,0BACE,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,eAAe,CAAC,GAAQ,EAC1F,YAAG,SAAS,EAAC,gBAAgB,YAAE,EAAE,CAAC,MAAM,GAAK,IACzC,EACL,EAAE,CAAC,WAAW,IAAI,CACjB,0BACE,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,oBAAoB,CAAC,GAAQ,EAC/F,YAAG,SAAS,EAAC,gBAAgB,YAAE,EAAE,CAAC,WAAW,GAAK,IAC9C,CACP,IACG,IAhBM,CAAC,CAiBL,CACX,CAAC,GACE,GACE,CACX,EAGA,IAAI,CAAC,MAAM,IAAI,CACd,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,KAAK,YAC1D,eAAK,SAAS,EAAC,mCAAmC,aAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CACnB,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,GAAQ,EACtF,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,YAAE,IAAI,CAAC,MAAM,CAAC,IAAI,GAAS,IACpE,CACP,EACA,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CACzB,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACxF,yBAAO,IAAI,CAAC,MAAM,CAAC,UAAU,GAAQ,IACjC,CACP,EACA,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,CAC7B,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACxF,yBAAO,IAAI,CAAC,MAAM,CAAC,cAAc,GAAQ,IACrC,CACP,EACA,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI,IAAI,CACvC,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,iBAAiB,CAAC,GAAQ,EAC3F,yBAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,GAAQ,IACpG,CACP,EACA,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1E,eAAK,SAAS,EAAC,wBAAwB,aACrC,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,kBAAkB,CAAC,GAAQ,EAC5F,cAAK,SAAS,EAAC,yBAAyB,YACrC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvC,KAAC,KAAK,IAAS,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,YAAE,CAAC,IAA5C,CAAC,CAAoD,CAClE,CAAC,GACE,IACF,CACP,IACG,GACE,CACX,EAGA,IAAI,CAAC,WAAW,IAAI,CACnB,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,aAAa,CAAC,EAAE,WAAW,EAAE,KAAK,YAC/D,eAAK,SAAS,EAAC,mCAAmC,aAChD,cAAK,SAAS,EAAC,+BAA+B,YAC5C,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,YAC5C,UAAU,CAAC,EAAE,EAAE,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GACzD,GACJ,EACL,IAAI,CAAC,WAAW,CAAC,mBAAmB,IAAI,IAAI,IAAI,CAC/C,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,qBAAqB,CAAC,GAAQ,EAC/F,2BAAO,CAAC,IAAI,CAAC,WAAW,CAAC,mBAAmB,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IACnE,CACP,IACG,GACE,CACX,EAGA,IAAI,CAAC,KAAK,IAAI,CACb,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,YACzD,eAAK,SAAS,EAAC,uCAAuC,aACnD,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CACvB,eAAK,SAAS,EAAC,4BAA4B,aACzC,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,GAAQ,EACrF,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,YAAE,IAAI,CAAC,KAAK,CAAC,SAAS,GAAS,IACxE,CACP,EACA,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAClB,eAAK,SAAS,EAAC,4BAA4B,aACzC,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,GAAQ,EAChF,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,UAAU,YAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAS,IACnE,CACP,IACG,GACE,CACX,EAGA,IAAI,CAAC,QAAQ,IAAI,CAChB,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,KAAK,YAC5D,eAAK,SAAS,EAAC,mCAAmC,aAC/C,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,IAAI,CACjC,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,GAAQ,EACpF,yBAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAQ,IACjC,CACP,EACA,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,IAAI,IAAI,CACrC,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACxF,2BAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IACzD,CACP,EACA,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,IAAI,CAClC,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,GAAQ,EACrF,yBAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,GAAQ,IACnD,CACP,IACG,GACE,CACX,EAGA,IAAI,CAAC,QAAQ,IAAI,CAChB,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,WAAW,EAAE,KAAK,YAC5D,eAAK,SAAS,EAAC,mCAAmC,aAC/C,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CACxB,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,GAAQ,EACnF,eAAM,SAAS,EAAC,WAAW,YAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAQ,IACtD,CACP,EACA,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CACvB,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAQ,EAClF,yBAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAQ,IAC/B,CACP,EACA,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,CAC7B,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACxF,yBAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,cAAc,EAAE,GAAQ,IAChE,CACP,EACA,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,CAC1B,eAAK,SAAS,EAAC,wBAAwB,aACrC,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,GAAQ,EACrF,YAAG,SAAS,EAAC,6BAA6B,YAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAK,IACpE,CACP,IACG,GACE,CACX,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAWF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,KAAK,EACL,eAAe,GAAG,KAAK,EACvB,SAAS,EACT,GAAG,KAAK,EACU,EAA4B,EAAE;IAChD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEnF,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,OAAO,CACL,KAAC,WAAW,IAAC,WAAW,EAAE,eAAe,YACvC,KAAC,OAAO,IAAC,OAAO,QAAC,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,IAAI,YAClE,eAAK,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,KAAM,KAAK,aAE1D,KAAC,kBAAkB,IAAC,OAAO,kBACzB,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,6FAA6F,aAEvG,eAAK,SAAS,EAAC,gCAAgC,aAC7C,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAC,8BAA8B,YAAE,KAAK,CAAC,WAAW,GAAQ,EACzE,KAAC,KAAK,IAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,EAAC,mBAAmB,YACxE,UAAU,CAAC,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GACzC,EACR,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,mBAAmB,YACnD,UAAU,CAAC,EAAE,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,GACtD,IACJ,EACN,YAAG,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,sBAAsB,CAAC,YAAG,KAAK,CAAC,UAAU,CAAC,IAAI,GAAK,IAClF,EACL,KAAK,CAAC,MAAM,EAAE,SAAS,IAAI,CAC1B,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,mBAAmB,YACrD,KAAK,CAAC,MAAM,CAAC,SAAS,GACjB,CACT,IACM,GACU,EAGrB,KAAC,kBAAkB,cACjB,eAAK,SAAS,EAAC,2CAA2C,aAExD,KAAC,kBAAkB,IAAC,IAAI,EAAE,KAAK,CAAC,UAAU,GAAI,EAGhD,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,YAC5C,KAAC,oBAAoB,IAAC,YAAY,EAAE,KAAK,CAAC,YAAY,GAAI,GAClD,EAGT,KAAK,CAAC,MAAM,IAAI,CACf,KAAC,OAAO,IAAC,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,YACzD,eAAK,SAAS,EAAC,mCAAmC,aAC/C,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,CAC5B,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,cAAc,CAAC,GAAQ,EACxF,eAAM,SAAS,EAAC,mBAAmB,YAAE,KAAK,CAAC,MAAM,CAAC,YAAY,GAAQ,IAClE,CACP,EACA,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,IAAI,CAC5B,eAAK,SAAS,EAAC,+BAA+B,aAC5C,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,YAAG,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,GAAQ,EAChF,eAAM,SAAS,EAAC,mBAAmB,YAAE,KAAK,CAAC,MAAM,CAAC,IAAI,GAAQ,IAC1D,CACP,IACG,GACE,CACX,EAGA,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CACrC,eAAK,SAAS,EAAC,6CAA6C,aACzD,KAAK,CAAC,OAAO,IAAI,CAChB,KAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,oBAAoB,YAAE,KAAK,CAAC,OAAO,GAAS,CAChF,EACA,KAAK,CAAC,SAAS,IAAI,CAClB,eAAM,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,YAC7C,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,GACtC,CACR,IACG,CACP,IACG,GACa,IACf,GACE,GACE,CACf,CAAC;AACJ,CAAC,CAAC;AAUF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,MAAM,EACN,SAAS,EACT,GAAG,KAAK,EACU,EAA4B,EAAE;IAChD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,CAAC;IAC9B,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAEnF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAsB,KAAK,CAAC,CAAC;IACnF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAyB,KAAK,CAAC,CAAC;IAEpF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAClC,IAAI,MAAM,GAAG,MAAM,CAAC;QAEpB,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC3B,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACvC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3C,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAChC,CAAC;QACJ,CAAC;QAED,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;YAC3B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC;IAEhD,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,MAAM,aAAa,GAA+B,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IAC9F,MAAM,YAAY,GAAkC,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEtI,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,wBAAwB,EAAE,SAAS,CAAC,KAAM,KAAK,aAEhE,eAAK,SAAS,EAAC,+BAA+B,aAC5C,aAAI,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,GAAM,EACpE,KAAC,KAAK,IAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,UAAU,YAC5C,UAAU,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GACzD,IACJ,EAGN,KAAC,SAAS,IACR,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC1C,WAAW,EAAE,UAAU,CAAC,EAAE,EAAE,mBAAmB,CAAC,EAChD,SAAS,EAAC,aAAa,GACvB,EAMF,eAAK,SAAS,EAAC,4BAA4B,aACzC,cAAK,SAAS,EAAC,eAAe,YAC3B,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACxB,KAAC,MAAM,IAEL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAC7F,IAAI,EAAE,UAAU,CAAC,EAAE,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,YAEhC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAN7E,CAAC,CAOC,CACV,CAAC,GACE,EACN,cAAK,SAAS,EAAC,eAAe,YAC3B,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvB,KAAC,MAAM,IAEL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,EAC5F,IAAI,EAAE,UAAU,CAAC,EAAE,EACnB,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,YAE/B,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,IAN1E,CAAC,CAOC,CACV,CAAC,GACE,IACF,EAGL,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACvB,YAAG,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,6BAA6B,CAAC,YAC7D,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC,GAC3E,CACL,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,SAAS,EAAC,eAAe,YACnC,cAAK,SAAS,EAAC,2BAA2B,YACvC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACvB,KAAC,YAAY,IAAiB,KAAK,EAAE,KAAK,IAAvB,KAAK,CAAC,GAAG,CAAkB,CAC/C,CAAC,GACE,GACK,CACd,IACG,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport {\n Badge,\n Button,\n ButtonVariants_Variant,\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n InputRoot,\n ScrollArea,\n cn,\n useUI,\n useI18n,\n Surface,\n} from '@wildo-ai/saas-frontend-lib';\n\nimport { UIBehavior, SurfaceVariant, TypographyVariant, FrontendComponentType, ButtonSize } from \"@wildo-ai/presets-components-models\";\nimport type { ComponentProps } from \"react\";\n\nconst CT: FrontendComponentType = FrontendComponentType.LOW_LEVEL_AI_AGENT_CONFIG;\n\n//===============================================================\n// Agent Configuration — Generic Preset Components\n//\n// BACKEND DEPENDENCIES:\n// - FlowsActors_Agent (ref, displayName, status, config, promptSpec, capabilities)\n// - FlowsActors_Agent_PromptSpec (identity, constraints, instructions, output, etc.)\n// - FlowsActors_Agent_Configuration (operationKey, seed, model config)\n//\n// FUTURE EXTENSIONS:\n// - prompt-ir.shared.schemas.ts: PromptIR compiled prompts, trust levels,\n// context sources — \"Agent Invocation Inspector\"\n//\n// Components render agent data from typed props. Wire to saas-models\n// via the saas-frontend-lib wrapper (flows-actors/agent-config.tsx).\n//===============================================================\n\n//===============================================================\n// Shared types — mirror agent schema shapes without imports\n//===============================================================\n\nexport type AgentStatus = \"ACTIVE\" | \"INACTIVE\" | \"DEPRECATED\";\nexport type AgentSkillType = \"GENERATION\" | \"ANALYSIS\" | \"TRANSFORMATION\" | \"DECISION\" | \"CHAT\" | \"CUSTOM\";\nexport type AgentVerbosity = \"LOW\" | \"MEDIUM\" | \"HIGH\";\nexport type AgentTone = \"NEUTRAL\" | \"CASUAL\" | \"FORMAL\" | \"TECHNICAL\";\nexport type AgentConstraintType = \"SECURITY\" | \"SAFETY\" | \"PRIVACY\" | \"SCOPE\" | \"COMPLIANCE\";\nexport type AgentUncertaintyPolicy = \"ASK\" | \"INFER\" | \"CONSERVATIVE\" | \"FAIL\";\n\nexport type AgentConstraint = {\n id: string;\n text: string;\n type: AgentConstraintType;\n onViolation?: \"refuse\" | \"warn\" | \"log\";\n};\n\nexport type AgentOutputSpec = {\n type?: string;\n fileFormat?: string;\n lengthGuidance?: AgentVerbosity;\n includeReasoning?: boolean;\n requiredSections?: string[];\n};\n\nexport type AgentUncertainty = {\n policy: AgentUncertaintyPolicy;\n confidenceThreshold?: number;\n};\n\nexport type AgentExample = {\n input: string;\n output: string;\n explanation?: string;\n};\n\nexport type AgentPromptSpec = {\n role: string;\n persona?: string;\n skillType: AgentSkillType;\n constraints?: AgentConstraint[];\n goal?: string;\n output?: AgentOutputSpec;\n instructions?: string[];\n hints?: string[];\n uncertainty?: AgentUncertainty;\n outOfScope?: string[];\n examples?: AgentExample[];\n style?: { verbosity?: AgentVerbosity; tone?: AgentTone };\n curation?: { maxItems?: number; minRelevance?: number; maxTokens?: number };\n promptFormatOverride?: string;\n metadata?: { version?: string; lastModified?: string; author?: string; changelog?: string };\n};\n\nexport type AgentCapabilities = {\n tools?: {\n functionRefs: string[];\n mcpRefs: string[];\n };\n};\n\nexport type AgentConfigData = {\n operationKey?: string;\n seed?: number;\n modelName?: string;\n};\n\nexport type AgentData = {\n ref: string;\n displayName: string;\n status: AgentStatus;\n promptSpec: AgentPromptSpec;\n capabilities?: AgentCapabilities;\n config?: AgentConfigData;\n version?: string;\n createdAt?: string;\n updatedAt?: string;\n};\n\n//===============================================================\n// Status and skill type styling\n//===============================================================\n\nconst STATUS_VARIANT: Record<AgentStatus, \"default\" | \"secondary\" | \"destructive\" | \"outline\"> = {\n ACTIVE: \"default\",\n INACTIVE: \"secondary\",\n DEPRECATED: \"destructive\",\n};\n\nconst STATUS_LABEL_KEY: Record<AgentStatus, string> = {\n ACTIVE: \"statusActive\",\n INACTIVE: \"statusInactive\",\n DEPRECATED: \"statusDeprecated\",\n};\n\nconst SKILL_LABEL_KEY: Record<AgentSkillType, string> = {\n GENERATION: \"skillGeneration\",\n ANALYSIS: \"skillAnalysis\",\n TRANSFORMATION: \"skillTransformation\",\n DECISION: \"skillDecision\",\n CHAT: \"skillChat\",\n CUSTOM: \"skillCustom\",\n};\n\nconst CONSTRAINT_LABEL_KEY: Record<AgentConstraintType, string> = {\n SECURITY: \"constraintSecurity\",\n SAFETY: \"constraintSafety\",\n PRIVACY: \"constraintPrivacy\",\n SCOPE: \"constraintScope\",\n COMPLIANCE: \"constraintCompliance\",\n};\n\nconst VIOLATION_LABEL_KEY: Record<string, string> = {\n refuse: \"violationRefuse\",\n warn: \"violationWarn\",\n log: \"violationLog\",\n};\n\nconst UNCERTAINTY_LABEL_KEY: Record<AgentUncertaintyPolicy, string> = {\n ASK: \"policyAsk\",\n INFER: \"policyInfer\",\n CONSERVATIVE: \"policyConservative\",\n FAIL: \"policyFail\",\n};\n\n//===============================================================\n// Section — reusable collapsible section\n//===============================================================\n\nfunction Section({ title, children, defaultOpen = true }: {\n title: string;\n children: React.ReactNode;\n defaultOpen?: boolean;\n}): React.JSX.Element {\n const { getRecipe } = useUI();\n const surfaceInsetRecipe = getRecipe(UIBehavior.SURFACE, SurfaceVariant.INSET);\n\n return (\n <Collapsible defaultOpen={defaultOpen}>\n <CollapsibleTrigger asChild>\n <Surface asChild emitPolicyVars={false} variant={SurfaceVariant.INSET}>\n <button\n type=\"button\"\n className={cn(\n surfaceInsetRecipe.base,\n \"flex w-full items-center justify-between rounded-md px-card-sm py-1.5 text-xs font-semibold hover:bg-muted/70\",\n )}\n >\n {title}\n </button>\n </Surface>\n </CollapsibleTrigger>\n <CollapsibleContent>\n <div className=\"px-card-sm py-card-sm\">\n {children}\n </div>\n </CollapsibleContent>\n </Collapsible>\n );\n}\n\n//===============================================================\n// AI_AgentCapabilities\n//===============================================================\n\nexport type AI_AgentCapabilitiesProps = ComponentProps<\"div\"> & {\n capabilities?: AgentCapabilities;\n};\n\nexport const AI_AgentCapabilities = ({\n capabilities,\n className,\n ...props\n}: AI_AgentCapabilitiesProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n if (!isReady) return null;\n\n const funcRefs = capabilities?.tools?.functionRefs ?? [];\n /*\n * `mcpRefs` is rendered as DECLARED SERVERS, not as tools (#560).\n *\n * ## What changed, and why the note below needed correcting\n *\n * This block used to end \"Restore the block here in the same change that makes the refs callable,\n * not before\" — and asserted, on 2026-09-09, that \"there is no MCP client anywhere in the engine\"\n * and \"no credential is resolved at call time\". Both are now false: `mcp-client.backend.service.ts`\n * exists, and `AgentsBackendService` resolves `capabilities.tools.mcpRefs` into callable tools by\n * DISCOVERING each server through `mcpClient.openSession(server, credential.token)`. The change the\n * note was waiting for happened, in another session, and the note kept instructing the next reader\n * not to do the thing that had become correct.\n *\n * ## Why DECLARED SERVERS rather than the resolved tool list\n *\n * The original defect was a card claiming reach an agent did not have. The weaker version of it\n * survives the fix: this card receives STATIC `capabilities` and cannot know what THIS turn\n * discovered. Tools come from `openSession` at turn start, so an agent's usable MCP tools are fewer\n * whenever a server is unreachable, a credential is unavailable, or the outbound guard refuses the\n * target — and a count rendered here could be zero at the moment it is read.\n *\n * So the card says what it can say truthfully: this agent is CONFIGURED to reach these servers. No\n * tool count, and a heading of its own, because the one thing it must not become is a second\n * reading of the function-tool list beside it.\n */\n const mcpRefs = capabilities?.tools?.mcpRefs ?? [];\n const hasAny = funcRefs.length > 0 || mcpRefs.length > 0;\n\n return (\n <div className={cn(\"flex flex-col gap-card-sm\", className)} {...props}>\n {!hasAny ? (\n <p className={cn(descRecipe.base, \"text-sm\")}>{tComponent(CT, \"noCapabilities\")}</p>\n ) : (\n <>\n {funcRefs.length > 0 && (\n <div className=\"flex flex-col gap-item\">\n <span className=\"text-2xs font-medium text-muted-foreground\">{tComponent(CT, \"functionRefs\")}</span>\n <div className=\"flex flex-wrap gap-item\">\n {funcRefs.map((ref) => (\n <Badge key={ref} variant=\"secondary\" className=\"text-2xs font-mono\">{ref}</Badge>\n ))}\n </div>\n </div>\n )}\n {mcpRefs.length > 0 && (\n <div className=\"flex flex-col gap-item\">\n <span className=\"text-2xs font-medium text-muted-foreground\">{tComponent(CT, \"mcpRefs\")}</span>\n <div className=\"flex flex-wrap gap-item\">\n {/* `outline`, so a declared server is not read as one of the resolved tools above it. */}\n {mcpRefs.map((ref) => (\n <Badge key={ref} variant=\"outline\" className=\"text-2xs font-mono\">{ref}</Badge>\n ))}\n </div>\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\n//===============================================================\n// AI_AgentPromptSpec\n//===============================================================\n\nexport type AI_AgentPromptSpecProps = ComponentProps<\"div\"> & {\n spec: AgentPromptSpec;\n};\n\nexport const AI_AgentPromptSpec = ({\n spec,\n className,\n ...props\n}: AI_AgentPromptSpecProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n if (!isReady) return null;\n\n return (\n <div className={cn(\"flex flex-col gap-card-sm\", className)} {...props}>\n {/* Identity */}\n <Section title={tComponent(CT, \"identity\")}>\n <div className=\"flex flex-col gap-element text-sm\">\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs w-16 shrink-0\")}>{tComponent(CT, \"role\")}</span>\n <span>{spec.role}</span>\n </div>\n {spec.persona && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs w-16 shrink-0\")}>{tComponent(CT, \"persona\")}</span>\n <span>{spec.persona}</span>\n </div>\n )}\n <div className=\"flex items-center gap-element\">\n <Badge variant=\"outline\" className=\"text-2xs\">\n {tComponent(CT, SKILL_LABEL_KEY[spec.skillType])}\n </Badge>\n </div>\n </div>\n </Section>\n\n {/* Goal */}\n {spec.goal && (\n <Section title={tComponent(CT, \"goal\")}>\n <p className=\"text-sm\">{spec.goal}</p>\n </Section>\n )}\n\n {/* Constraints */}\n {spec.constraints && spec.constraints.length > 0 && (\n <Section title={tComponent(CT, \"constraints\")}>\n <div className=\"flex flex-col gap-2\">\n {spec.constraints.map((c) => (\n <Surface key={c.id} asChild emitPolicyVars={false} variant={SurfaceVariant.INSET}>\n <div className=\"flex items-start gap-element rounded-md border p-element\">\n <Badge variant=\"outline\" className=\"text-2xs shrink-0\">\n {tComponent(CT, CONSTRAINT_LABEL_KEY[c.type])}\n </Badge>\n <span className=\"flex-1 text-sm\">{c.text}</span>\n <Badge variant=\"secondary\" className=\"text-2xs shrink-0\">\n {tComponent(CT, VIOLATION_LABEL_KEY[c.onViolation ?? \"refuse\"])}\n </Badge>\n </div>\n </Surface>\n ))}\n </div>\n </Section>\n )}\n\n {/* Instructions */}\n {spec.instructions && spec.instructions.length > 0 && (\n <Section title={tComponent(CT, \"instructions\")}>\n <ol className=\"flex flex-col gap-item ps-4 text-sm list-decimal\">\n {spec.instructions.map((instr, i) => (\n <li key={i}>{instr}</li>\n ))}\n </ol>\n </Section>\n )}\n\n {/* Hints */}\n {spec.hints && spec.hints.length > 0 && (\n <Section title={tComponent(CT, \"hints\")} defaultOpen={false}>\n <ul className=\"flex flex-col gap-item ps-4 text-sm list-disc\">\n {spec.hints.map((hint, i) => (\n <li key={i}>{hint}</li>\n ))}\n </ul>\n </Section>\n )}\n\n {/* Out of Scope */}\n {spec.outOfScope && spec.outOfScope.length > 0 && (\n <Section title={tComponent(CT, \"outOfScope\")} defaultOpen={false}>\n <ul className=\"flex flex-col gap-item ps-4 text-sm list-disc\">\n {spec.outOfScope.map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n </Section>\n )}\n\n {/* Examples */}\n {spec.examples && spec.examples.length > 0 && (\n <Section title={tComponent(CT, \"examples\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-card-sm\">\n {spec.examples.map((ex, i) => (\n <Surface key={i} asChild emitPolicyVars={false} variant={SurfaceVariant.INSET}>\n <div className=\"flex flex-col gap-element rounded-md border p-card-sm\">\n <div>\n <span className={cn(descRecipe.base, \"text-2xs\")}>{tComponent(CT, \"exampleInput\")}</span>\n <p className=\"text-sm mt-0.5\">{ex.input}</p>\n </div>\n <div>\n <span className={cn(descRecipe.base, \"text-2xs\")}>{tComponent(CT, \"exampleOutput\")}</span>\n <p className=\"text-sm mt-0.5\">{ex.output}</p>\n </div>\n {ex.explanation && (\n <div>\n <span className={cn(descRecipe.base, \"text-2xs\")}>{tComponent(CT, \"exampleExplanation\")}</span>\n <p className=\"text-sm mt-0.5\">{ex.explanation}</p>\n </div>\n )}\n </div>\n </Surface>\n ))}\n </div>\n </Section>\n )}\n\n {/* Output Spec */}\n {spec.output && (\n <Section title={tComponent(CT, \"output\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {spec.output.type && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputType\")}</span>\n <Badge variant=\"outline\" className=\"text-2xs\">{spec.output.type}</Badge>\n </div>\n )}\n {spec.output.fileFormat && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputFormat\")}</span>\n <span>{spec.output.fileFormat}</span>\n </div>\n )}\n {spec.output.lengthGuidance && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputLength\")}</span>\n <span>{spec.output.lengthGuidance}</span>\n </div>\n )}\n {spec.output.includeReasoning != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"outputReasoning\")}</span>\n <span>{spec.output.includeReasoning ? tComponent(CT, \"booleanYes\") : tComponent(CT, \"booleanNo\")}</span>\n </div>\n )}\n {spec.output.requiredSections && spec.output.requiredSections.length > 0 && (\n <div className=\"flex flex-col gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"requiredSections\")}</span>\n <div className=\"flex flex-wrap gap-item\">\n {spec.output.requiredSections.map((s) => (\n <Badge key={s} variant=\"outline\" className=\"text-2xs\">{s}</Badge>\n ))}\n </div>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Uncertainty */}\n {spec.uncertainty && (\n <Section title={tComponent(CT, \"uncertainty\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n <div className=\"flex items-center gap-element\">\n <Badge variant=\"secondary\" className=\"text-2xs\">\n {tComponent(CT, UNCERTAINTY_LABEL_KEY[spec.uncertainty.policy])}\n </Badge>\n </div>\n {spec.uncertainty.confidenceThreshold != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"confidenceThreshold\")}</span>\n <span>{(spec.uncertainty.confidenceThreshold * 100).toFixed(0)}%</span>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Style */}\n {spec.style && (\n <Section title={tComponent(CT, \"style\")} defaultOpen={false}>\n <div className=\"flex items-center gap-element text-sm\">\n {spec.style.verbosity && (\n <div className=\"flex items-center gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"verbosity\")}</span>\n <Badge variant=\"outline\" className=\"text-2xs\">{spec.style.verbosity}</Badge>\n </div>\n )}\n {spec.style.tone && (\n <div className=\"flex items-center gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"tone\")}</span>\n <Badge variant=\"outline\" className=\"text-2xs\">{spec.style.tone}</Badge>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Curation */}\n {spec.curation && (\n <Section title={tComponent(CT, \"curation\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {spec.curation.maxItems != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"maxItems\")}</span>\n <span>{spec.curation.maxItems}</span>\n </div>\n )}\n {spec.curation.minRelevance != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"minRelevance\")}</span>\n <span>{(spec.curation.minRelevance * 100).toFixed(0)}%</span>\n </div>\n )}\n {spec.curation.maxTokens != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"maxTokens\")}</span>\n <span>{spec.curation.maxTokens.toLocaleString()}</span>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Metadata */}\n {spec.metadata && (\n <Section title={tComponent(CT, \"metadata\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {spec.metadata.version && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"version\")}</span>\n <span className=\"font-mono\">{spec.metadata.version}</span>\n </div>\n )}\n {spec.metadata.author && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"author\")}</span>\n <span>{spec.metadata.author}</span>\n </div>\n )}\n {spec.metadata.lastModified && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"lastModified\")}</span>\n <span>{new Date(spec.metadata.lastModified).toLocaleString()}</span>\n </div>\n )}\n {spec.metadata.changelog && (\n <div className=\"flex flex-col gap-item\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"changelog\")}</span>\n <p className=\"text-sm whitespace-pre-wrap\">{spec.metadata.changelog}</p>\n </div>\n )}\n </div>\n </Section>\n )}\n </div>\n );\n};\n\n//===============================================================\n// AI_AgentCard\n//===============================================================\n\nexport type AI_AgentCardProps = ComponentProps<\"div\"> & {\n agent: AgentData;\n defaultExpanded?: boolean;\n};\n\nexport const AI_AgentCard = ({\n agent,\n defaultExpanded = false,\n className,\n ...props\n}: AI_AgentCardProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const surfaceRecipe = getRecipe(UIBehavior.SURFACE, SurfaceVariant.BASE);\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n if (!isReady) return null;\n\n return (\n <Collapsible defaultOpen={defaultExpanded}>\n <Surface asChild emitPolicyVars={false} variant={SurfaceVariant.BASE}>\n <div className={cn(surfaceRecipe.base, className)} {...props}>\n {/* Summary trigger */}\n <CollapsibleTrigger asChild>\n <button\n type=\"button\"\n className=\"flex w-full items-center justify-between gap-element p-card-sm text-start hover:bg-muted/50\"\n >\n <div className=\"flex flex-col gap-item min-w-0\">\n <div className=\"flex items-center gap-element\">\n <span className=\"truncate text-sm font-medium\">{agent.displayName}</span>\n <Badge variant={STATUS_VARIANT[agent.status]} className=\"text-2xs shrink-0\">\n {tComponent(CT, STATUS_LABEL_KEY[agent.status])}\n </Badge>\n <Badge variant=\"outline\" className=\"text-2xs shrink-0\">\n {tComponent(CT, SKILL_LABEL_KEY[agent.promptSpec.skillType])}\n </Badge>\n </div>\n <p className={cn(descRecipe.base, \"text-xs line-clamp-1\")}>{agent.promptSpec.role}</p>\n </div>\n {agent.config?.modelName && (\n <Badge variant=\"secondary\" className=\"text-2xs shrink-0\">\n {agent.config.modelName}\n </Badge>\n )}\n </button>\n </CollapsibleTrigger>\n\n {/* Expanded detail */}\n <CollapsibleContent>\n <div className=\"flex flex-col gap-card border-t p-card-sm\">\n {/* Prompt Spec */}\n <AI_AgentPromptSpec spec={agent.promptSpec} />\n\n {/* Capabilities */}\n <Section title={tComponent(CT, \"capabilities\")}>\n <AI_AgentCapabilities capabilities={agent.capabilities} />\n </Section>\n\n {/* LLM Config */}\n {agent.config && (\n <Section title={tComponent(CT, \"model\")} defaultOpen={false}>\n <div className=\"flex flex-col gap-element text-sm\">\n {agent.config.operationKey && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"operationKey\")}</span>\n <span className=\"font-mono text-xs\">{agent.config.operationKey}</span>\n </div>\n )}\n {agent.config.seed != null && (\n <div className=\"flex items-center gap-element\">\n <span className={cn(descRecipe.base, \"text-xs\")}>{tComponent(CT, \"seed\")}</span>\n <span className=\"font-mono text-xs\">{agent.config.seed}</span>\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* Version / timestamps */}\n {(agent.version || agent.createdAt) && (\n <div className=\"flex items-center gap-element pt-2 border-t\">\n {agent.version && (\n <Badge variant=\"outline\" className=\"text-2xs font-mono\">{agent.version}</Badge>\n )}\n {agent.createdAt && (\n <span className={cn(descRecipe.base, \"text-2xs\")}>\n {new Date(agent.createdAt).toLocaleString()}\n </span>\n )}\n </div>\n )}\n </div>\n </CollapsibleContent>\n </div>\n </Surface>\n </Collapsible>\n );\n};\n\n//===============================================================\n// AI_AgentList\n//===============================================================\n\nexport type AI_AgentListProps = ComponentProps<\"div\"> & {\n agents: AgentData[];\n};\n\nexport const AI_AgentList = ({\n agents,\n className,\n ...props\n}: AI_AgentListProps): React.JSX.Element | null => {\n const { tComponent, isReady } = useI18n({ component: CT });\n const { getRecipe } = useUI();\n const descRecipe = getRecipe(UIBehavior.TYPOGRAPHY, TypographyVariant.DESCRIPTION);\n\n const [search, setSearch] = React.useState(\"\");\n const [statusFilter, setStatusFilter] = React.useState<AgentStatus | \"ALL\">(\"ALL\");\n const [skillFilter, setSkillFilter] = React.useState<AgentSkillType | \"ALL\">(\"ALL\");\n\n const filtered = React.useMemo(() => {\n let result = agents;\n\n if (search) {\n const q = search.toLowerCase();\n result = result.filter((a) =>\n a.displayName.toLowerCase().includes(q) ||\n a.promptSpec.role.toLowerCase().includes(q) ||\n a.ref.toLowerCase().includes(q)\n );\n }\n\n if (statusFilter !== \"ALL\") {\n result = result.filter((a) => a.status === statusFilter);\n }\n\n if (skillFilter !== \"ALL\") {\n result = result.filter((a) => a.promptSpec.skillType === skillFilter);\n }\n\n return result;\n }, [agents, search, statusFilter, skillFilter]);\n\n if (!isReady) return null;\n\n const statusOptions: Array<AgentStatus | \"ALL\"> = [\"ALL\", \"ACTIVE\", \"INACTIVE\", \"DEPRECATED\"];\n const skillOptions: Array<AgentSkillType | \"ALL\"> = [\"ALL\", \"GENERATION\", \"ANALYSIS\", \"TRANSFORMATION\", \"DECISION\", \"CHAT\", \"CUSTOM\"];\n\n return (\n <div className={cn(\"flex flex-col gap-card\", className)} {...props}>\n {/* Header */}\n <div className=\"flex items-center gap-element\">\n <h3 className=\"text-sm font-semibold\">{tComponent(CT, \"title\")}</h3>\n <Badge variant=\"secondary\" className=\"text-2xs\">\n {tComponent(CT, \"agentCount\", { count: String(agents.length) })}\n </Badge>\n </div>\n\n {/* Search */}\n <InputRoot\n type=\"text\"\n value={search}\n onChange={(e) => setSearch(e.target.value)}\n placeholder={tComponent(CT, \"searchPlaceholder\")}\n className=\"h-8 text-xs\"\n />\n\n {/* Filters */}\n {/* V-5: candidate for Button/IconButton migration — see audit doc */}\n {/* (filter pills override SM ladder rung with h-7 + text-2xs; consider a dedicated FilterPill primitive */}\n {/* or a ButtonSize.XS rung — same pattern repeated in artifact-browser.tsx) */}\n <div className=\"flex flex-wrap gap-element\">\n <div className=\"flex gap-item\">\n {statusOptions.map((s) => (\n <Button\n key={s}\n type=\"button\"\n variant={statusFilter === s ? ButtonVariants_Variant.SECONDARY : ButtonVariants_Variant.GHOST}\n size={ButtonSize.XS}\n onClick={() => setStatusFilter(s)}\n >\n {s === \"ALL\" ? tComponent(CT, \"allStatuses\") : tComponent(CT, STATUS_LABEL_KEY[s])}\n </Button>\n ))}\n </div>\n <div className=\"flex gap-item\">\n {skillOptions.map((s) => (\n <Button\n key={s}\n type=\"button\"\n variant={skillFilter === s ? ButtonVariants_Variant.SECONDARY : ButtonVariants_Variant.GHOST}\n size={ButtonSize.XS}\n onClick={() => setSkillFilter(s)}\n >\n {s === \"ALL\" ? tComponent(CT, \"allSkills\") : tComponent(CT, SKILL_LABEL_KEY[s])}\n </Button>\n ))}\n </div>\n </div>\n\n {/* List */}\n {filtered.length === 0 ? (\n <p className={cn(descRecipe.base, \"py-card text-center text-sm\")}>\n {agents.length === 0 ? tComponent(CT, \"noAgents\") : tComponent(CT, \"noMatch\")}\n </p>\n ) : (\n <ScrollArea className=\"max-h-[600px]\">\n <div className=\"flex flex-col gap-card-sm\">\n {filtered.map((agent) => (\n <AI_AgentCard key={agent.ref} agent={agent} />\n ))}\n </div>\n </ScrollArea>\n )}\n </div>\n );\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/meta/context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,MAAM,EACN,SAAS,EACT,gBAAgB,EAOjB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,KAAK,cAAc,EAA6B,MAAM,OAAO,CAAC;AASvE,KAAK,OAAO,GAAG,MAAM,CAAC;AAEtB,KAAK,aAAa,GAAG;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAcF,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG,aAAa,CAAC;AAE/E,eAAO,MAAM,UAAU,GAAI,qDAMxB,eAAe,KAAG,KAAK,CAAC,GAAG,CAAC,OAW9B,CAAC;AA8CF,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,cAAc,GAAI,wBAAwB,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OA0BtF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1E,eAAO,MAAM,cAAc,GAAI,yBAG5B,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OAKlC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB,GAAI,mCAIlC,yBAAyB,KAAG,KAAK,CAAC,GAAG,CAAC,OAoCxC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB,GAAI,mCAIhC,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAItC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB,GAAI,mCAIlC,yBAAyB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAqClD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE3D,eAAO,MAAM,iBAAiB,GAAI,mCAI/B,sBAAsB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAqCjE,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB,GAAI,mCAIhC,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAqClE,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE/D,eAAO,MAAM,qBAAqB,GAAI,mCAInC,0BAA0B,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAsCrE,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE3D,eAAO,MAAM,iBAAiB,GAAI,mCAI/B,sBAAsB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAsCjE,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/meta/context.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EACL,MAAM,EACN,SAAS,EACT,gBAAgB,EAOjB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,KAAK,cAAc,EAA6B,MAAM,OAAO,CAAC;AASvE,KAAK,OAAO,GAAG,MAAM,CAAC;AAEtB,KAAK,aAAa,GAAG;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAcF,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG,aAAa,CAAC;AAE/E,eAAO,MAAM,UAAU,GAAI,qDAMxB,eAAe,KAAG,KAAK,CAAC,GAAG,CAAC,OAW9B,CAAC;AA8CF,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,cAAc,GAAI,wBAAwB,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OA0BtF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1E,eAAO,MAAM,cAAc,GAAI,yBAG5B,mBAAmB,KAAG,KAAK,CAAC,GAAG,CAAC,OAKlC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB,GAAI,mCAIlC,yBAAyB,KAAG,KAAK,CAAC,GAAG,CAAC,OAoCxC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB,GAAI,mCAIhC,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAItC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB,GAAI,mCAIlC,yBAAyB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAqClD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE3D,eAAO,MAAM,iBAAiB,GAAI,mCAI/B,sBAAsB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAqCjE,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB,GAAI,mCAIhC,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAqClE,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE/D,eAAO,MAAM,qBAAqB,GAAI,mCAInC,0BAA0B,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAsCrE,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE3D,eAAO,MAAM,iBAAiB,GAAI,mCAI/B,sBAAsB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,GAAG,IAsCjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.labels.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/meta/context.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM1I,eAAO,MAAM,uBAAuB,EAAE,mBAAmB,EAOxD,CAAC"}
1
+ {"version":3,"file":"context.labels.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/meta/context.labels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,KAAK,mBAAmB,EAA2B,MAAM,qCAAqC,CAAC;AAM1I,eAAO,MAAM,uBAAuB,EAAE,mBAAmB,EAOxD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.lazy.d.ts","sourceRoot":"","sources":["../../../../../src/components/ai-elements/meta/context.lazy.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,WAAW,CAAA;AAElB,YAAY,EACV,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,GACpB,CAAA;AAgBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAM5E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAM5E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMxF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMpF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMxF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMlF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMpF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAM1F;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAMlF"}
1
+ {"version":3,"file":"context.lazy.d.ts","sourceRoot":"","sources":["../../../../../../src/components/ai-elements/meta/context.lazy.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,WAAW,CAAA;AAElB,YAAY,EACV,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,mBAAmB,GACpB,CAAA;AAkBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQ5E;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQ5E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQxF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQpF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQxF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQlF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQpF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQ1F;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAQlF"}