@pstdio/ui 0.26.0 → 0.35.0

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 (620) hide show
  1. package/dist/EquationComponent-DDd5UoIP.js +65 -0
  2. package/dist/EquationComponent-DDd5UoIP.js.map +1 -0
  3. package/dist/MermaidComponent-DGDnQ6pb.js +90 -0
  4. package/dist/MermaidComponent-DGDnQ6pb.js.map +1 -0
  5. package/dist/browser-storage-C_ipoNwP.js +37 -0
  6. package/dist/browser-storage-C_ipoNwP.js.map +1 -0
  7. package/dist/chat-ui.d.ts +688 -2
  8. package/dist/chat-ui.js +3271 -2848
  9. package/dist/chat-ui.js.map +1 -1
  10. package/dist/data-table-stats-row-DNJG8tLZ.js +415 -0
  11. package/dist/data-table-stats-row-DNJG8tLZ.js.map +1 -0
  12. package/dist/data-table.d.ts +143 -2
  13. package/dist/data-table.js +1216 -1188
  14. package/dist/data-table.js.map +1 -1
  15. package/dist/diff-bubble-DZsarmSG.js +61 -0
  16. package/dist/diff-bubble-DZsarmSG.js.map +1 -0
  17. package/dist/diff-drawer-45rpk3aq.js +776 -0
  18. package/dist/diff-drawer-45rpk3aq.js.map +1 -0
  19. package/dist/diff-editor-CGpeyoCE.js +124 -0
  20. package/dist/diff-editor-CGpeyoCE.js.map +1 -0
  21. package/dist/diff-size-Dydn_Uw5.js +61 -0
  22. package/dist/diff-size-Dydn_Uw5.js.map +1 -0
  23. package/dist/diff-viewer-hGkaF_zW.js +558 -0
  24. package/dist/diff-viewer-hGkaF_zW.js.map +1 -0
  25. package/dist/diff.d.ts +128 -2
  26. package/dist/diff.js +163 -1302
  27. package/dist/diff.js.map +1 -1
  28. package/dist/empty-state-3mVV_pV-.js +38 -0
  29. package/dist/empty-state-3mVV_pV-.js.map +1 -0
  30. package/dist/file-change-badge-0QFNv82B.js +64 -0
  31. package/dist/file-change-badge-0QFNv82B.js.map +1 -0
  32. package/dist/index-BfFLdci8.d.ts +189 -0
  33. package/dist/index-Dd6e8lU_.d.ts +61 -0
  34. package/dist/index-DlmvvQ6x.d.ts +143 -0
  35. package/dist/index.d.ts +1508 -40
  36. package/dist/index.js +3167 -2707
  37. package/dist/index.js.map +1 -1
  38. package/dist/kanban-renderer.d.ts +337 -2
  39. package/dist/kanban-renderer.js +1413 -1085
  40. package/dist/kanban-renderer.js.map +1 -1
  41. package/dist/list-row-De9R2zKU.js +1008 -0
  42. package/dist/list-row-De9R2zKU.js.map +1 -0
  43. package/dist/mermaid-renderer-DImi0fDp.js +553 -0
  44. package/dist/mermaid-renderer-DImi0fDp.js.map +1 -0
  45. package/dist/mermaid.d.ts +12 -2
  46. package/dist/mermaid.js +2 -5
  47. package/dist/monaco-browser-CLRPSE4-.js +14 -0
  48. package/dist/monaco-browser-CLRPSE4-.js.map +1 -0
  49. package/dist/param-editor-IJzw1cA2.js +225 -0
  50. package/dist/param-editor-IJzw1cA2.js.map +1 -0
  51. package/dist/param-editor-field-DscIjv8s.js +2368 -0
  52. package/dist/param-editor-field-DscIjv8s.js.map +1 -0
  53. package/dist/param-editor.d.ts +407 -2
  54. package/dist/param-editor.js +3 -47
  55. package/dist/prism-pSHJejZx.js +646 -0
  56. package/dist/prism-pSHJejZx.js.map +1 -0
  57. package/dist/radio-CiFrDN6O.js +54 -0
  58. package/dist/radio-CiFrDN6O.js.map +1 -0
  59. package/dist/resource-badge-95WPVlZf.d.ts +76 -0
  60. package/dist/rich-text-DtQpHBlX.js +7018 -0
  61. package/dist/rich-text-DtQpHBlX.js.map +1 -0
  62. package/dist/rich-text.d.ts +3 -2
  63. package/dist/rich-text.js +2 -429
  64. package/dist/rolldown-runtime-Dy4uBu1J.js +11 -0
  65. package/dist/scroll-area-Cr1lNXAr.js +100 -0
  66. package/dist/scroll-area-Cr1lNXAr.js.map +1 -0
  67. package/dist/slider-hwHYe98I.js +423 -0
  68. package/dist/slider-hwHYe98I.js.map +1 -0
  69. package/dist/style.css +2 -1
  70. package/dist/terminal.d.ts +203 -2
  71. package/dist/terminal.js +324 -360
  72. package/dist/terminal.js.map +1 -1
  73. package/dist/theme-kSkOHzbV.js +2852 -0
  74. package/dist/theme-kSkOHzbV.js.map +1 -0
  75. package/dist/theme-preference-pzfuK5cH.js +101 -0
  76. package/dist/theme-preference-pzfuK5cH.js.map +1 -0
  77. package/dist/theme.d.ts +3 -2
  78. package/dist/theme.js +2 -15
  79. package/dist/tree-list-BUfDQz3v.js +1449 -0
  80. package/dist/tree-list-BUfDQz3v.js.map +1 -0
  81. package/dist/types-yjKBk07w.d.ts +161 -0
  82. package/dist/workspace-badge-9g78pXHS.js +245 -0
  83. package/dist/workspace-badge-9g78pXHS.js.map +1 -0
  84. package/dist/workspace-badge-CkJ_jTQw.d.ts +75 -0
  85. package/dist-monaco/assets/codicon-ngg6Pgfi.ttf +0 -0
  86. package/dist-monaco/assets/css.worker-DFdt6_zu.js +89 -0
  87. package/dist-monaco/assets/editor.worker-O-CH8JUO.js +26 -0
  88. package/dist-monaco/assets/html.worker-JUzsMP-j.js +502 -0
  89. package/dist-monaco/assets/json.worker-B4dEhy0e.js +58 -0
  90. package/dist-monaco/assets/ts.worker-CmEKzkmF.js +67734 -0
  91. package/dist-monaco/monaco.css +1 -0
  92. package/dist-monaco/monaco.js +1201 -0
  93. package/package.json +26 -13
  94. package/dist/EquationComponent-DeDYHvqY.js +0 -62
  95. package/dist/EquationComponent-DeDYHvqY.js.map +0 -1
  96. package/dist/MermaidComponent-X__B6qib.js +0 -60
  97. package/dist/MermaidComponent-X__B6qib.js.map +0 -1
  98. package/dist/activity-timeline-BynMjXSB.js +0 -283
  99. package/dist/activity-timeline-BynMjXSB.js.map +0 -1
  100. package/dist/alert-ubcrW24X.js +0 -33
  101. package/dist/alert-ubcrW24X.js.map +0 -1
  102. package/dist/browser-storage-BinyFNJX.js +0 -40
  103. package/dist/browser-storage-BinyFNJX.js.map +0 -1
  104. package/dist/components/activity/activity-avatar.d.ts +0 -9
  105. package/dist/components/activity/activity-comment.d.ts +0 -27
  106. package/dist/components/activity/activity-composer.d.ts +0 -18
  107. package/dist/components/activity/activity-event.d.ts +0 -12
  108. package/dist/components/activity/activity-root.d.ts +0 -15
  109. package/dist/components/activity/activity-timeline.d.ts +0 -6
  110. package/dist/components/activity/activity.types.d.ts +0 -5
  111. package/dist/components/activity/index.d.ts +0 -25
  112. package/dist/components/chat-ui/components/ai-conversation.d.ts +0 -603
  113. package/dist/components/chat-ui/components/ai-message.d.ts +0 -91
  114. package/dist/components/chat-ui/components/ai-response.d.ts +0 -5
  115. package/dist/components/chat-ui/components/approval-prompt.d.ts +0 -8
  116. package/dist/components/chat-ui/components/attachment-list.d.ts +0 -23
  117. package/dist/components/chat-ui/components/auto-scroll.d.ts +0 -37
  118. package/dist/components/chat-ui/components/chat-history-story.d.ts +0 -14
  119. package/dist/components/chat-ui/components/chat-input-actions.d.ts +0 -13
  120. package/dist/components/chat-ui/components/chat-input-attachments.d.ts +0 -12
  121. package/dist/components/chat-ui/components/chat-input-history.d.ts +0 -6
  122. package/dist/components/chat-ui/components/chat-input-question-prompt.d.ts +0 -36
  123. package/dist/components/chat-ui/components/chat-input.d.ts +0 -33
  124. package/dist/components/chat-ui/components/chat-message-animation.d.ts +0 -22
  125. package/dist/components/chat-ui/components/chat-message-list-items.d.ts +0 -17
  126. package/dist/components/chat-ui/components/chat-message-list.d.ts +0 -12
  127. package/dist/components/chat-ui/components/chat-panel-composer.d.ts +0 -49
  128. package/dist/components/chat-ui/components/chat-panel-sticky-user-message.d.ts +0 -13
  129. package/dist/components/chat-ui/components/chat-panel.d.ts +0 -45
  130. package/dist/components/chat-ui/components/chat-skeleton.d.ts +0 -1
  131. package/dist/components/chat-ui/components/composer-constants.d.ts +0 -1
  132. package/dist/components/chat-ui/components/conversation-browse.d.ts +0 -22
  133. package/dist/components/chat-ui/components/message-action-panel.d.ts +0 -10
  134. package/dist/components/chat-ui/components/message-parts-renderer.d.ts +0 -13
  135. package/dist/components/chat-ui/components/message-types.d.ts +0 -116
  136. package/dist/components/chat-ui/components/model-swap-separator.d.ts +0 -5
  137. package/dist/components/chat-ui/components/queued-follow-up-list-state.d.ts +0 -4
  138. package/dist/components/chat-ui/components/queued-follow-up-list.d.ts +0 -11
  139. package/dist/components/chat-ui/components/send-button.d.ts +0 -7
  140. package/dist/components/chat-ui/components/timeline-title.d.ts +0 -6
  141. package/dist/components/chat-ui/components/timeline-tool-blocks.d.ts +0 -14
  142. package/dist/components/chat-ui/components/timeline.d.ts +0 -113
  143. package/dist/components/chat-ui/components/tool-invocation-timeline.d.ts +0 -8
  144. package/dist/components/chat-ui/components/use-chat-input-history.d.ts +0 -16
  145. package/dist/components/chat-ui/components/working-indicator.d.ts +0 -9
  146. package/dist/components/chat-ui/components/workspace-hub.d.ts +0 -19
  147. package/dist/components/chat-ui/index.d.ts +0 -19
  148. package/dist/components/chat-ui/mocks/library/index.d.ts +0 -10
  149. package/dist/components/chat-ui/performance/chat-mount-metrics.d.ts +0 -37
  150. package/dist/components/chat-ui/performance/chat-panel.perf.d.ts +0 -18
  151. package/dist/components/chat-ui/performance/chat-performance-fixtures.d.ts +0 -28
  152. package/dist/components/chat-ui/performance/chat-performance-panel.d.ts +0 -23
  153. package/dist/components/chat-ui/performance/chat-performance-story-utils.d.ts +0 -30
  154. package/dist/components/chat-ui/tool-rendering/apply-patch-renderer.d.ts +0 -2
  155. package/dist/components/chat-ui/tool-rendering/build-timeline.d.ts +0 -13
  156. package/dist/components/chat-ui/tool-rendering/default-renderers.d.ts +0 -13
  157. package/dist/components/chat-ui/tool-rendering/edit-renderer.d.ts +0 -2
  158. package/dist/components/chat-ui/tool-rendering/index.d.ts +0 -3
  159. package/dist/components/chat-ui/tool-rendering/question-prompt.d.ts +0 -9
  160. package/dist/components/chat-ui/tool-rendering/question-renderer.d.ts +0 -10
  161. package/dist/components/chat-ui/tool-rendering/shared.d.ts +0 -53
  162. package/dist/components/chat-ui/tool-rendering/standard-renderers.d.ts +0 -7
  163. package/dist/components/chat-ui/tool-rendering/todowrite-renderer.d.ts +0 -10
  164. package/dist/components/chat-ui/tool-rendering/types.d.ts +0 -12
  165. package/dist/components/chat-ui/utils/diff.d.ts +0 -21
  166. package/dist/components/chat-ui/utils/editor-state.d.ts +0 -1
  167. package/dist/components/chat-ui/utils/get-icon.d.ts +0 -36
  168. package/dist/components/chat-ui/utils/tool-name.d.ts +0 -2
  169. package/dist/components/command-palette/index.d.ts +0 -4
  170. package/dist/components/command-palette/palette-filter.d.ts +0 -23
  171. package/dist/components/command-palette/palette-list.d.ts +0 -11
  172. package/dist/components/command-palette/palette-shortcut.d.ts +0 -12
  173. package/dist/components/command-palette/palette.d.ts +0 -48
  174. package/dist/components/data-table/build-columns.d.ts +0 -16
  175. package/dist/components/data-table/categorical-color-cell.d.ts +0 -8
  176. package/dist/components/data-table/color-cell-style.d.ts +0 -13
  177. package/dist/components/data-table/color-scale-cell.d.ts +0 -7
  178. package/dist/components/data-table/data-table-column-menu.d.ts +0 -17
  179. package/dist/components/data-table/data-table-header.d.ts +0 -12
  180. package/dist/components/data-table/data-table-row-display.d.ts +0 -11
  181. package/dist/components/data-table/data-table-skeleton.d.ts +0 -13
  182. package/dist/components/data-table/data-table-stat-chart.d.ts +0 -21
  183. package/dist/components/data-table/data-table-state.d.ts +0 -27
  184. package/dist/components/data-table/data-table-stats-row.d.ts +0 -11
  185. package/dist/components/data-table/data-table-stats.d.ts +0 -19
  186. package/dist/components/data-table/data-table-table-parts.d.ts +0 -22
  187. package/dist/components/data-table/data-table.d.ts +0 -2
  188. package/dist/components/data-table/data-table.story-descriptions.d.ts +0 -6
  189. package/dist/components/data-table/data-table.story-fixtures.d.ts +0 -6
  190. package/dist/components/data-table/edit-mode-data-table-body.d.ts +0 -30
  191. package/dist/components/data-table/edit-mode-data-table-cell.d.ts +0 -16
  192. package/dist/components/data-table/edit-mode-data-table-editors.d.ts +0 -19
  193. package/dist/components/data-table/edit-mode-data-table-header.d.ts +0 -24
  194. package/dist/components/data-table/edit-mode-data-table-selection.d.ts +0 -12
  195. package/dist/components/data-table/edit-mode-data-table.d.ts +0 -2
  196. package/dist/components/data-table/edit-mode-story.d.ts +0 -5
  197. package/dist/components/data-table/friendly-json-display.d.ts +0 -31
  198. package/dist/components/data-table/helpers.d.ts +0 -10
  199. package/dist/components/data-table/index.d.ts +0 -7
  200. package/dist/components/data-table/json-cell.d.ts +0 -6
  201. package/dist/components/data-table/pagination-footer.d.ts +0 -11
  202. package/dist/components/data-table/selection-toolbar.d.ts +0 -11
  203. package/dist/components/data-table/types.d.ts +0 -117
  204. package/dist/components/diff-viewer/build-changed-files-tree.d.ts +0 -4
  205. package/dist/components/diff-viewer/code-editor.d.ts +0 -45
  206. package/dist/components/diff-viewer/diff-bubble.d.ts +0 -14
  207. package/dist/components/diff-viewer/diff-card-body.d.ts +0 -60
  208. package/dist/components/diff-viewer/diff-card-content.d.ts +0 -23
  209. package/dist/components/diff-viewer/diff-card-load-state.d.ts +0 -9
  210. package/dist/components/diff-viewer/diff-card.d.ts +0 -46
  211. package/dist/components/diff-viewer/diff-drawer-empty-state.d.ts +0 -1
  212. package/dist/components/diff-viewer/diff-drawer-height.d.ts +0 -10
  213. package/dist/components/diff-viewer/diff-drawer-scroll.d.ts +0 -28
  214. package/dist/components/diff-viewer/diff-drawer.d.ts +0 -29
  215. package/dist/components/diff-viewer/diff-editor.d.ts +0 -20
  216. package/dist/components/diff-viewer/diff-size.d.ts +0 -16
  217. package/dist/components/diff-viewer/diff-view-adapter.d.ts +0 -27
  218. package/dist/components/diff-viewer/diff-viewer-options-menu.d.ts +0 -16
  219. package/dist/components/diff-viewer/diff-viewer.d.ts +0 -14
  220. package/dist/components/diff-viewer/diff-viewer.store.d.ts +0 -21
  221. package/dist/components/diff-viewer/file-change-badge.d.ts +0 -3
  222. package/dist/components/diff-viewer/file-list-panel.d.ts +0 -18
  223. package/dist/components/diff-viewer/index.d.ts +0 -9
  224. package/dist/components/diff-viewer/monaco-browser.d.ts +0 -1
  225. package/dist/components/diff-viewer/types.d.ts +0 -13
  226. package/dist/components/diff-viewer/use-selected-diff-scroll.d.ts +0 -23
  227. package/dist/components/file-browser/column-file-browser.d.ts +0 -20
  228. package/dist/components/internal/performance-panel.d.ts +0 -40
  229. package/dist/components/internal/style-guide.d.ts +0 -14
  230. package/dist/components/internal/token-editor-controls.d.ts +0 -8
  231. package/dist/components/internal/token-editor-data.d.ts +0 -40
  232. package/dist/components/internal/token-editor-state.d.ts +0 -22
  233. package/dist/components/kanban-renderer/collection-badge.d.ts +0 -7
  234. package/dist/components/kanban-renderer/display-menu.d.ts +0 -16
  235. package/dist/components/kanban-renderer/filter-menu.d.ts +0 -12
  236. package/dist/components/kanban-renderer/index.d.ts +0 -19
  237. package/dist/components/kanban-renderer/kanban-renderer-attribute-badge.d.ts +0 -7
  238. package/dist/components/kanban-renderer/kanban-renderer-badge-helpers.d.ts +0 -46
  239. package/dist/components/kanban-renderer/kanban-renderer-board-column-header.d.ts +0 -8
  240. package/dist/components/kanban-renderer/kanban-renderer-board-group-section.d.ts +0 -17
  241. package/dist/components/kanban-renderer/kanban-renderer-board-move.d.ts +0 -21
  242. package/dist/components/kanban-renderer/kanban-renderer-board.d.ts +0 -49
  243. package/dist/components/kanban-renderer/kanban-renderer-card.d.ts +0 -17
  244. package/dist/components/kanban-renderer/kanban-renderer-content.d.ts +0 -27
  245. package/dist/components/kanban-renderer/kanban-renderer-create-dialog.d.ts +0 -12
  246. package/dist/components/kanban-renderer/kanban-renderer-create-field.d.ts +0 -10
  247. package/dist/components/kanban-renderer/kanban-renderer-enum-helpers.d.ts +0 -10
  248. package/dist/components/kanban-renderer/kanban-renderer-grouping.d.ts +0 -23
  249. package/dist/components/kanban-renderer/kanban-renderer-helpers.d.ts +0 -58
  250. package/dist/components/kanban-renderer/kanban-renderer-list-items.d.ts +0 -25
  251. package/dist/components/kanban-renderer/kanban-renderer-list.d.ts +0 -43
  252. package/dist/components/kanban-renderer/kanban-renderer-story-fixtures.d.ts +0 -14
  253. package/dist/components/kanban-renderer/kanban-renderer-toolbar.d.ts +0 -15
  254. package/dist/components/kanban-renderer/kanban-renderer-view-bar.d.ts +0 -14
  255. package/dist/components/kanban-renderer/kanban-renderer-views.d.ts +0 -12
  256. package/dist/components/kanban-renderer/kanban-renderer.d.ts +0 -43
  257. package/dist/components/kanban-renderer/types.d.ts +0 -159
  258. package/dist/components/kanban-renderer/use-kanban-renderer-store.d.ts +0 -78
  259. package/dist/components/kanban-renderer/use-resolved-attributes.d.ts +0 -14
  260. package/dist/components/layout/header.d.ts +0 -7
  261. package/dist/components/layout/horizontal-menu-stack.d.ts +0 -6
  262. package/dist/components/layout/index.d.ts +0 -8
  263. package/dist/components/layout/item-section.d.ts +0 -11
  264. package/dist/components/layout/panel-header.constants.d.ts +0 -3
  265. package/dist/components/layout/resizable-split-layout.d.ts +0 -22
  266. package/dist/components/layout/resizable-split-layout.geometry.d.ts +0 -56
  267. package/dist/components/layout/resizable-split-layout.handle.d.ts +0 -25
  268. package/dist/components/layout/resizable-split-layout.panels.d.ts +0 -29
  269. package/dist/components/layout/resizable-split-layout.root-size.d.ts +0 -3
  270. package/dist/components/list-row/list-row-actions.d.ts +0 -11
  271. package/dist/components/list-row/list-row-chrome.d.ts +0 -11
  272. package/dist/components/list-row/list-row-content.d.ts +0 -17
  273. package/dist/components/list-row/list-row-menu.d.ts +0 -12
  274. package/dist/components/list-row/list-row-root-props.d.ts +0 -34
  275. package/dist/components/list-row/list-row.d.ts +0 -2
  276. package/dist/components/list-row/list-row.types.d.ts +0 -109
  277. package/dist/components/list-row/searchable-action-menu.d.ts +0 -6
  278. package/dist/components/mermaid-renderer/download-png.d.ts +0 -7
  279. package/dist/components/mermaid-renderer/index.d.ts +0 -2
  280. package/dist/components/mermaid-renderer/mermaid-error-state.d.ts +0 -6
  281. package/dist/components/mermaid-renderer/mermaid-fixtures.d.ts +0 -9
  282. package/dist/components/mermaid-renderer/mermaid-fullscreen.d.ts +0 -10
  283. package/dist/components/mermaid-renderer/mermaid-renderer.d.ts +0 -8
  284. package/dist/components/mermaid-renderer/mermaid-svg-view.d.ts +0 -12
  285. package/dist/components/mermaid-renderer/mermaid-toolbar.d.ts +0 -12
  286. package/dist/components/mermaid-renderer/mermaid-zoom.d.ts +0 -6
  287. package/dist/components/mermaid-renderer/svg-data-url.d.ts +0 -6
  288. package/dist/components/mermaid-renderer/use-mermaid-render.d.ts +0 -5
  289. package/dist/components/notification-center/index.d.ts +0 -2
  290. package/dist/components/notification-center/notification-center.d.ts +0 -2
  291. package/dist/components/notification-center/notification-center.types.d.ts +0 -37
  292. package/dist/components/overlays/attached-menu.d.ts +0 -6
  293. package/dist/components/overlays/attached-panel.d.ts +0 -9
  294. package/dist/components/overlays/attachment-chip.d.ts +0 -13
  295. package/dist/components/overlays/bubble-button.d.ts +0 -10
  296. package/dist/components/overlays/bubble-panel.d.ts +0 -18
  297. package/dist/components/overlays/delete-confirmation-modal.d.ts +0 -13
  298. package/dist/components/overlays/dialog-accept-shortcut.d.ts +0 -12
  299. package/dist/components/overlays/index.d.ts +0 -17
  300. package/dist/components/overlays/repo-picker-dialog.d.ts +0 -25
  301. package/dist/components/overlays/resource-context-menu.d.ts +0 -35
  302. package/dist/components/overlays/search-modal-content.d.ts +0 -20
  303. package/dist/components/overlays/searchable-menu-input.d.ts +0 -9
  304. package/dist/components/overlays/searchable-menu.d.ts +0 -65
  305. package/dist/components/param-editor/index.d.ts +0 -31
  306. package/dist/components/param-editor/inputs/action-input.d.ts +0 -14
  307. package/dist/components/param-editor/inputs/anchor-grid-input.d.ts +0 -12
  308. package/dist/components/param-editor/inputs/anchor-grid.d.ts +0 -4
  309. package/dist/components/param-editor/inputs/boolean-input.d.ts +0 -13
  310. package/dist/components/param-editor/inputs/color-input.d.ts +0 -14
  311. package/dist/components/param-editor/inputs/date-input.d.ts +0 -16
  312. package/dist/components/param-editor/inputs/file-upload-input.d.ts +0 -15
  313. package/dist/components/param-editor/inputs/file-upload-value.d.ts +0 -7
  314. package/dist/components/param-editor/inputs/horizontal-text-input.d.ts +0 -13
  315. package/dist/components/param-editor/inputs/markdown-input.d.ts +0 -13
  316. package/dist/components/param-editor/inputs/number-input.d.ts +0 -18
  317. package/dist/components/param-editor/inputs/numeric-value.d.ts +0 -6
  318. package/dist/components/param-editor/inputs/range-input.d.ts +0 -18
  319. package/dist/components/param-editor/inputs/range-value.d.ts +0 -5
  320. package/dist/components/param-editor/inputs/resource-input-chips.d.ts +0 -15
  321. package/dist/components/param-editor/inputs/resource-input.d.ts +0 -20
  322. package/dist/components/param-editor/inputs/segmented-input.d.ts +0 -15
  323. package/dist/components/param-editor/inputs/selection-input.d.ts +0 -27
  324. package/dist/components/param-editor/inputs/selection-menu.d.ts +0 -39
  325. package/dist/components/param-editor/inputs/slider-marks.d.ts +0 -5
  326. package/dist/components/param-editor/inputs/text-input.d.ts +0 -14
  327. package/dist/components/param-editor/inputs/vector-input.d.ts +0 -17
  328. package/dist/components/param-editor/inputs/vector-value.d.ts +0 -7
  329. package/dist/components/param-editor/param-editor-advanced-field.d.ts +0 -14
  330. package/dist/components/param-editor/param-editor-control-fixtures.d.ts +0 -24
  331. package/dist/components/param-editor/param-editor-control-item.d.ts +0 -15
  332. package/dist/components/param-editor/param-editor-control-list.d.ts +0 -5
  333. package/dist/components/param-editor/param-editor-field-label.d.ts +0 -1
  334. package/dist/components/param-editor/param-editor-field.d.ts +0 -13
  335. package/dist/components/param-editor/param-editor-horizontal.d.ts +0 -11
  336. package/dist/components/param-editor/param-editor-inline-group.d.ts +0 -5
  337. package/dist/components/param-editor/param-editor-label.d.ts +0 -7
  338. package/dist/components/param-editor/param-editor-presentation.d.ts +0 -3
  339. package/dist/components/param-editor/param-editor-read-only-field.d.ts +0 -9
  340. package/dist/components/param-editor/param-editor-read-only-value.d.ts +0 -8
  341. package/dist/components/param-editor/param-editor-row.d.ts +0 -17
  342. package/dist/components/param-editor/param-editor-section.d.ts +0 -17
  343. package/dist/components/param-editor/param-editor.d.ts +0 -12
  344. package/dist/components/param-editor/param-editor.types.d.ts +0 -31
  345. package/dist/components/param-editor/resolve-param-value.d.ts +0 -2
  346. package/dist/components/primitives/alert.d.ts +0 -9
  347. package/dist/components/primitives/breadcrumb.d.ts +0 -20
  348. package/dist/components/primitives/checkbox.d.ts +0 -8
  349. package/dist/components/primitives/chip.d.ts +0 -4
  350. package/dist/components/primitives/content-placeholder.d.ts +0 -6
  351. package/dist/components/primitives/empty-state.d.ts +0 -12
  352. package/dist/components/primitives/error-boundary.d.ts +0 -26
  353. package/dist/components/primitives/glyph-icon.d.ts +0 -16
  354. package/dist/components/primitives/icon-color-picker.d.ts +0 -15
  355. package/dist/components/primitives/icon-options.d.ts +0 -301
  356. package/dist/components/primitives/index.d.ts +0 -39
  357. package/dist/components/primitives/info-card.d.ts +0 -12
  358. package/dist/components/primitives/integration-card.d.ts +0 -12
  359. package/dist/components/primitives/number-input.d.ts +0 -6
  360. package/dist/components/primitives/radio.d.ts +0 -8
  361. package/dist/components/primitives/resource-badge.d.ts +0 -64
  362. package/dist/components/primitives/scroll-area.d.ts +0 -17
  363. package/dist/components/primitives/segmented-control.d.ts +0 -20
  364. package/dist/components/primitives/session-indicator.d.ts +0 -15
  365. package/dist/components/primitives/simple-card.d.ts +0 -5
  366. package/dist/components/primitives/slider.d.ts +0 -5
  367. package/dist/components/primitives/switch.d.ts +0 -15
  368. package/dist/components/primitives/tag-swatch.d.ts +0 -10
  369. package/dist/components/primitives/toaster.d.ts +0 -3
  370. package/dist/components/primitives/tooltip.d.ts +0 -11
  371. package/dist/components/primitives/workspace-badge.d.ts +0 -23
  372. package/dist/components/rich-text/collaborative-markdown-editor/awareness-cursors.d.ts +0 -5
  373. package/dist/components/rich-text/collaborative-markdown-editor/collaborative-markdown-editor.d.ts +0 -9
  374. package/dist/components/rich-text/index.d.ts +0 -19
  375. package/dist/components/rich-text/lazy-markdown-editor.d.ts +0 -2
  376. package/dist/components/rich-text/markdown-editor/markdown-editor-scrolling.play.d.ts +0 -4
  377. package/dist/components/rich-text/markdown-editor/markdown-editor.d.ts +0 -17
  378. package/dist/components/rich-text/markdown-editor/markdown-table.story-fixture.d.ts +0 -3
  379. package/dist/components/rich-text/markdown-editor/plugins/MarkdownSectionNavigationPlugin.d.ts +0 -8
  380. package/dist/components/rich-text/markdown-editor/plugins/MarkdownSlashCommandPlugin.d.ts +0 -1
  381. package/dist/components/rich-text/markdown-editor/plugins/ReferenceLinkPlugin/ReferenceLinkNode.d.ts +0 -21
  382. package/dist/components/rich-text/markdown-editor/plugins/ReferenceLinkPlugin/ReferenceLinkTransformer.d.ts +0 -2
  383. package/dist/components/rich-text/markdown-editor/plugins/ReferenceLinkPlugin/index.d.ts +0 -2
  384. package/dist/components/rich-text/markdown-editor/plugins/markdown-history-plugin.d.ts +0 -1
  385. package/dist/components/rich-text/markdown-editor/plugins/markdown-section-navigation.d.ts +0 -20
  386. package/dist/components/rich-text/prompt-input/commands.d.ts +0 -2
  387. package/dist/components/rich-text/prompt-input/events.d.ts +0 -2
  388. package/dist/components/rich-text/prompt-input/plugins/CommentPlugin/CommentPlugin.d.ts +0 -1
  389. package/dist/components/rich-text/prompt-input/plugins/CommentPlugin/hooks/useCommentCommands.d.ts +0 -3
  390. package/dist/components/rich-text/prompt-input/plugins/CommentPlugin/hooks/useCommentSchema.d.ts +0 -1
  391. package/dist/components/rich-text/prompt-input/plugins/CommentPlugin/nodes/CommentNode/CommentNode.d.ts +0 -16
  392. package/dist/components/rich-text/prompt-input/plugins/ImperativeAPIPlugin.d.ts +0 -7
  393. package/dist/components/rich-text/prompt-input/plugins/KeyboardShortcutPlugin.d.ts +0 -6
  394. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/ReferenceMenuOption.d.ts +0 -12
  395. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/ReferenceMenuPlugin.d.ts +0 -11
  396. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/components/ReferenceMenu/ReferenceMenu.d.ts +0 -9
  397. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/components/ReferenceMenu/ReferenceMenuItem.d.ts +0 -12
  398. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/constants.d.ts +0 -2
  399. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/hooks/useContextLookup.d.ts +0 -14
  400. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/utils/checkForTriggers.d.ts +0 -9
  401. package/dist/components/rich-text/prompt-input/plugins/ReferenceMenuPlugin/utils/getSortedMenuOptions.d.ts +0 -2
  402. package/dist/components/rich-text/prompt-input/plugins/ReferencePlugin/ReferencePlugin.d.ts +0 -7
  403. package/dist/components/rich-text/prompt-input/plugins/ReferencePlugin/nodes/ReferenceNode/ReferenceNode.d.ts +0 -25
  404. package/dist/components/rich-text/prompt-input/plugins/keyboard-shortcuts.d.ts +0 -11
  405. package/dist/components/rich-text/prompt-input/prompt-input.d.ts +0 -27
  406. package/dist/components/rich-text/prompt-input/theme/prompt-input-theme.d.ts +0 -3
  407. package/dist/components/rich-text/prompt-input/utils.d.ts +0 -22
  408. package/dist/components/rich-text/resource-activity-feed/resource-activity-feed.d.ts +0 -58
  409. package/dist/components/rich-text/rich-message/plugins/ReferenceLinkPlugin/ReferenceLinkNode.d.ts +0 -21
  410. package/dist/components/rich-text/rich-message/plugins/ReferenceLinkPlugin/ReferenceLinkTransformer.d.ts +0 -2
  411. package/dist/components/rich-text/rich-message/plugins/ReferenceLinkPlugin/index.d.ts +0 -2
  412. package/dist/components/rich-text/rich-message/rich-message.d.ts +0 -10
  413. package/dist/components/rich-text/shared/components/content-editable.d.ts +0 -9
  414. package/dist/components/rich-text/shared/components/default-rich-text-components.d.ts +0 -3
  415. package/dist/components/rich-text/shared/editor-config.d.ts +0 -5
  416. package/dist/components/rich-text/shared/lexical-code.d.ts +0 -2
  417. package/dist/components/rich-text/shared/markdown-ast.d.ts +0 -7
  418. package/dist/components/rich-text/shared/markdown-codec.d.ts +0 -3
  419. package/dist/components/rich-text/shared/markdown-export.d.ts +0 -2
  420. package/dist/components/rich-text/shared/markdown-import.d.ts +0 -2
  421. package/dist/components/rich-text/shared/markdown-inline.d.ts +0 -5
  422. package/dist/components/rich-text/shared/markdown-source-document.d.ts +0 -7
  423. package/dist/components/rich-text/shared/markdown-source-links.d.ts +0 -11
  424. package/dist/components/rich-text/shared/markdown-source-map.d.ts +0 -10
  425. package/dist/components/rich-text/shared/markdown-table.d.ts +0 -41
  426. package/dist/components/rich-text/shared/markdown-url-context.d.ts +0 -9
  427. package/dist/components/rich-text/shared/markdown-url.d.ts +0 -3
  428. package/dist/components/rich-text/shared/nodes/DataTableNode.d.ts +0 -24
  429. package/dist/components/rich-text/shared/nodes/MarkdownImageNode.d.ts +0 -35
  430. package/dist/components/rich-text/shared/nodes/MarkdownLinkNode.d.ts +0 -18
  431. package/dist/components/rich-text/shared/nodes/RawHtmlNode.d.ts +0 -31
  432. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeBlockActionsPlugin.d.ts +0 -4
  433. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeBlockPlugin.d.ts +0 -3
  434. package/dist/components/rich-text/shared/plugins/CodePlugin/CodeHighlightingPlugin.d.ts +0 -1
  435. package/dist/components/rich-text/shared/plugins/EquationPlugin/EquationComponent.d.ts +0 -6
  436. package/dist/components/rich-text/shared/plugins/EquationPlugin/EquationNode.d.ts +0 -26
  437. package/dist/components/rich-text/shared/plugins/EquationPlugin/EquationPlugin.d.ts +0 -4
  438. package/dist/components/rich-text/shared/plugins/EquationPlugin/KatexRenderer.d.ts +0 -4
  439. package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/FloatingTextFormatToolbarPlugin.d.ts +0 -4
  440. package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/floating-toolbar-buttons.d.ts +0 -18
  441. package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/index.d.ts +0 -1
  442. package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/resolve-block-type.d.ts +0 -17
  443. package/dist/components/rich-text/shared/plugins/FloatingTextFormatToolbarPlugin/should-show-floating-toolbar.d.ts +0 -12
  444. package/dist/components/rich-text/shared/plugins/HorizontalRulePlugin/HorizontalRuleNode.d.ts +0 -13
  445. package/dist/components/rich-text/shared/plugins/HorizontalRulePlugin/horizontalRule.d.ts +0 -2
  446. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/LinkEditorPlugin.d.ts +0 -4
  447. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/LinkPlugin.d.ts +0 -1
  448. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/commands.d.ts +0 -2
  449. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/index.d.ts +0 -3
  450. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/link-editor-content.d.ts +0 -18
  451. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/getSelectedNode.d.ts +0 -2
  452. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/link-edit-state.d.ts +0 -1
  453. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/selection-link-url.d.ts +0 -2
  454. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/setFloatingElemPos.d.ts +0 -1
  455. package/dist/components/rich-text/shared/plugins/LinkEditorPlugin/utils/url.d.ts +0 -2
  456. package/dist/components/rich-text/shared/plugins/MermaidPlugin/MermaidComponent.d.ts +0 -6
  457. package/dist/components/rich-text/shared/plugins/MermaidPlugin/MermaidNode.d.ts +0 -23
  458. package/dist/components/rich-text/shared/plugins/StateUpdatePlugin.d.ts +0 -6
  459. package/dist/components/rich-text/shared/plugins/ToggleEditablePlugin.d.ts +0 -3
  460. package/dist/components/rich-text/shared/plugins/TreeViewPlugin/TreeViewPlugin.d.ts +0 -1
  461. package/dist/components/rich-text/shared/prism-global.d.ts +0 -2
  462. package/dist/components/rich-text/shared/transformers/markdown-transformers-test-utils.d.ts +0 -3
  463. package/dist/components/rich-text/shared/transformers/markdown-transformers.d.ts +0 -16
  464. package/dist/components/rich-text/shared/types/rich-text-components.d.ts +0 -15
  465. package/dist/components/rich-text/theme/rich-text-theme.d.ts +0 -3
  466. package/dist/components/rich-text/types.d.ts +0 -8
  467. package/dist/components/rich-text/utils/inferResourceType.d.ts +0 -1
  468. package/dist/components/rich-text/utils/markdown.d.ts +0 -5
  469. package/dist/components/rich-text/utils/mediaType.d.ts +0 -1
  470. package/dist/components/sidenav/sidenav-footer.d.ts +0 -6
  471. package/dist/components/sidenav/sidenav-header.d.ts +0 -6
  472. package/dist/components/sidenav/sidenav.d.ts +0 -2
  473. package/dist/components/sidenav/sidenav.store.d.ts +0 -49
  474. package/dist/components/sidenav/sidenav.types.d.ts +0 -31
  475. package/dist/components/tab-strip/tab-visibility-filter.d.ts +0 -22
  476. package/dist/components/tab-strip/tab-visibility.store.d.ts +0 -41
  477. package/dist/components/tab-strip/window-tabs.d.ts +0 -15
  478. package/dist/components/tab-strip/window-title-bar.d.ts +0 -6
  479. package/dist/components/tag-editor/index.d.ts +0 -8
  480. package/dist/components/tag-editor/tag-editor-heading.d.ts +0 -11
  481. package/dist/components/tag-editor/tag-editor-row.d.ts +0 -20
  482. package/dist/components/tag-editor/tag-editor-save-bar.d.ts +0 -13
  483. package/dist/components/tag-editor/tag-editor.d.ts +0 -2
  484. package/dist/components/tag-editor/tag-editor.types.d.ts +0 -57
  485. package/dist/components/tag-editor/tag-settings-panel.d.ts +0 -30
  486. package/dist/components/terminal/bind-session.d.ts +0 -33
  487. package/dist/components/terminal/index.d.ts +0 -6
  488. package/dist/components/terminal/scripted-bridge.d.ts +0 -35
  489. package/dist/components/terminal/terminal-contract.d.ts +0 -22
  490. package/dist/components/terminal/terminal-theme.d.ts +0 -12
  491. package/dist/components/terminal/terminal.d.ts +0 -56
  492. package/dist/components/terminal/types.d.ts +0 -35
  493. package/dist/components/terminal/use-terminal-session.d.ts +0 -21
  494. package/dist/components/tree-list/tree-list-background.d.ts +0 -8
  495. package/dist/components/tree-list/tree-list-drag-provider.d.ts +0 -13
  496. package/dist/components/tree-list/tree-list-drag.d.ts +0 -7
  497. package/dist/components/tree-list/tree-list-inline-creation-story.d.ts +0 -3
  498. package/dist/components/tree-list/tree-list-inline-input.d.ts +0 -9
  499. package/dist/components/tree-list/tree-list-model.d.ts +0 -58
  500. package/dist/components/tree-list/tree-list-move-surface.d.ts +0 -7
  501. package/dist/components/tree-list/tree-list-node-row.d.ts +0 -21
  502. package/dist/components/tree-list/tree-list-order-filter.d.ts +0 -2
  503. package/dist/components/tree-list/tree-list-order.store.d.ts +0 -45
  504. package/dist/components/tree-list/tree-list-reorder.d.ts +0 -24
  505. package/dist/components/tree-list/tree-list-section-header.d.ts +0 -14
  506. package/dist/components/tree-list/tree-list-sortable.d.ts +0 -24
  507. package/dist/components/tree-list/tree-list-visibility-filter.d.ts +0 -24
  508. package/dist/components/tree-list/tree-list-visibility.store.d.ts +0 -45
  509. package/dist/components/tree-list/tree-list.d.ts +0 -41
  510. package/dist/components/tree-list/tree-list.types.d.ts +0 -63
  511. package/dist/components/tree-list/use-tree-list-keyboard-navigation.d.ts +0 -15
  512. package/dist/diff-bubble-DvUPRnfB.js +0 -183
  513. package/dist/diff-bubble-DvUPRnfB.js.map +0 -1
  514. package/dist/edit-mode-data-table-Nfmfi7bz.js +0 -847
  515. package/dist/edit-mode-data-table-Nfmfi7bz.js.map +0 -1
  516. package/dist/empty-state-Bo4HVrgr.js +0 -34
  517. package/dist/empty-state-Bo4HVrgr.js.map +0 -1
  518. package/dist/foundations/gallery/gallery-frame.d.ts +0 -21
  519. package/dist/foundations/gallery/sections/badges-section.d.ts +0 -1
  520. package/dist/foundations/gallery/sections/buttons-section.d.ts +0 -1
  521. package/dist/foundations/gallery/sections/composite-chat-section.d.ts +0 -1
  522. package/dist/foundations/gallery/sections/composites-section.d.ts +0 -1
  523. package/dist/foundations/gallery/sections/feedback-section.d.ts +0 -1
  524. package/dist/foundations/gallery/sections/input-authoring-card.d.ts +0 -1
  525. package/dist/foundations/gallery/sections/inputs-section.d.ts +0 -1
  526. package/dist/foundations/gallery/sections/layout-section.d.ts +0 -1
  527. package/dist/foundations/gallery/sections/navigation-identity-section.d.ts +0 -1
  528. package/dist/foundations/gallery/sections/overlays-section.d.ts +0 -1
  529. package/dist/foundations/gallery/sections/panels-section.d.ts +0 -1
  530. package/dist/foundations/gallery/sections/param-editor-composite-card.d.ts +0 -1
  531. package/dist/foundations/gallery/sections/settings-composite-cards.d.ts +0 -1
  532. package/dist/kanban-renderer-toolbar-Buek4icz.js +0 -1375
  533. package/dist/kanban-renderer-toolbar-Buek4icz.js.map +0 -1
  534. package/dist/lazy-markdown-editor-PzIBc9-l.js +0 -42
  535. package/dist/lazy-markdown-editor-PzIBc9-l.js.map +0 -1
  536. package/dist/list-row-DHzRa9-O.js +0 -815
  537. package/dist/list-row-DHzRa9-O.js.map +0 -1
  538. package/dist/markdown-BCfPxNpb.js +0 -1663
  539. package/dist/markdown-BCfPxNpb.js.map +0 -1
  540. package/dist/markdown-editor-CsJ4KNGu.js +0 -1034
  541. package/dist/markdown-editor-CsJ4KNGu.js.map +0 -1
  542. package/dist/mermaid-renderer-D0YP0FmJ.js +0 -425
  543. package/dist/mermaid-renderer-D0YP0FmJ.js.map +0 -1
  544. package/dist/mermaid.js.map +0 -1
  545. package/dist/monaco-browser-l82HnffN.js +0 -22
  546. package/dist/monaco-browser-l82HnffN.js.map +0 -1
  547. package/dist/param-editor-CFM2Nf3l.js +0 -161
  548. package/dist/param-editor-CFM2Nf3l.js.map +0 -1
  549. package/dist/param-editor-field-Bj-AGUY6.js +0 -1728
  550. package/dist/param-editor-field-Bj-AGUY6.js.map +0 -1
  551. package/dist/param-editor.js.map +0 -1
  552. package/dist/prism-n5gcERyD.js +0 -202
  553. package/dist/prism-n5gcERyD.js.map +0 -1
  554. package/dist/radio-BfjibByI.js +0 -51
  555. package/dist/radio-BfjibByI.js.map +0 -1
  556. package/dist/rich-message-q6Y6QJOq.js +0 -633
  557. package/dist/rich-message-q6Y6QJOq.js.map +0 -1
  558. package/dist/rich-text.js.map +0 -1
  559. package/dist/scroll-area-BMbg1WcD.js +0 -91
  560. package/dist/scroll-area-BMbg1WcD.js.map +0 -1
  561. package/dist/slider-DBHjdxsU.js +0 -1092
  562. package/dist/slider-DBHjdxsU.js.map +0 -1
  563. package/dist/test-utils/local-storage.d.ts +0 -1
  564. package/dist/theme/custom/index.d.ts +0 -2
  565. package/dist/theme/custom/vscode-theme.d.ts +0 -32
  566. package/dist/theme/global.d.ts +0 -62
  567. package/dist/theme/index.d.ts +0 -3
  568. package/dist/theme/primitives/colors.d.ts +0 -1081
  569. package/dist/theme/primitives/fonts.d.ts +0 -84
  570. package/dist/theme/primitives/sizes.d.ts +0 -207
  571. package/dist/theme/recipes/activity-comment.d.ts +0 -36
  572. package/dist/theme/recipes/alert.d.ts +0 -1
  573. package/dist/theme/recipes/badge.d.ts +0 -58
  574. package/dist/theme/recipes/button.d.ts +0 -188
  575. package/dist/theme/recipes/color-picker.d.ts +0 -18
  576. package/dist/theme/recipes/dialog.d.ts +0 -1
  577. package/dist/theme/recipes/divider.d.ts +0 -1
  578. package/dist/theme/recipes/drawer.d.ts +0 -1
  579. package/dist/theme/recipes/editable.d.ts +0 -46
  580. package/dist/theme/recipes/form.d.ts +0 -1
  581. package/dist/theme/recipes/input.d.ts +0 -94
  582. package/dist/theme/recipes/kbd.d.ts +0 -41
  583. package/dist/theme/recipes/menu.d.ts +0 -1
  584. package/dist/theme/recipes/number-input.d.ts +0 -98
  585. package/dist/theme/recipes/popover.d.ts +0 -16
  586. package/dist/theme/recipes/progress-circle.d.ts +0 -28
  587. package/dist/theme/recipes/resizable-split-layout.d.ts +0 -106
  588. package/dist/theme/recipes/segmented-control.d.ts +0 -22
  589. package/dist/theme/recipes/skeleton.d.ts +0 -1
  590. package/dist/theme/recipes/switch.d.ts +0 -18
  591. package/dist/theme/recipes/tabs.d.ts +0 -80
  592. package/dist/theme/recipes/textarea.d.ts +0 -62
  593. package/dist/theme/recipes/timeline.d.ts +0 -83
  594. package/dist/theme/recipes/tooltip.d.ts +0 -1
  595. package/dist/theme/recipes/window-title-bar.d.ts +0 -19
  596. package/dist/theme/shadowless-default-config.d.ts +0 -2
  597. package/dist/theme/theme.d.ts +0 -2
  598. package/dist/theme/tokens/borders.d.ts +0 -17
  599. package/dist/theme/tokens/colors-background.d.ts +0 -260
  600. package/dist/theme/tokens/colors-visualization.d.ts +0 -162
  601. package/dist/theme/tokens/colors.d.ts +0 -878
  602. package/dist/theme/tokens/layer-styles.d.ts +0 -1
  603. package/dist/theme/tokens/text.d.ts +0 -1
  604. package/dist/theme-AzJH4Om3.js +0 -3999
  605. package/dist/theme-AzJH4Om3.js.map +0 -1
  606. package/dist/theme-preference-DxGW1qg-.js +0 -114
  607. package/dist/theme-preference-DxGW1qg-.js.map +0 -1
  608. package/dist/theme.js.map +0 -1
  609. package/dist/tree-list-CPjbGTvs.js +0 -1348
  610. package/dist/tree-list-CPjbGTvs.js.map +0 -1
  611. package/dist/utils/apply-file-icon-theme-preference.d.ts +0 -35
  612. package/dist/utils/apply-theme-preference.d.ts +0 -22
  613. package/dist/utils/browser-storage.d.ts +0 -7
  614. package/dist/utils/file-icon-theme-preference.d.ts +0 -15
  615. package/dist/utils/get-file-type-icon.d.ts +0 -2
  616. package/dist/utils/prism.d.ts +0 -1
  617. package/dist/utils/resolve-file-icon-element.d.ts +0 -8
  618. package/dist/utils/theme-preference.d.ts +0 -20
  619. package/dist/workspace-badge-CuOcmnZc.js +0 -175
  620. package/dist/workspace-badge-CuOcmnZc.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"param-editor-field-DscIjv8s.js","names":["HStack","Icon","Text","Info","Tooltip","ParamEditorLabelProps","name","description","compact","ParamEditorLabel","props","$","_c","t0","undefined","t1","t2","t3","t4","t5","placement","strategy","hideWhenDetached","t6","_c","Tooltip","Box","Flex","ReactNode","ParamEditorFieldLabel","ControlItemOrientation","ParamEditorControlItemProps","name","description","hideLabel","fullWidth","orientation","labelTrailing","children","ParamEditorControlItem","props","$","_c","t0","t1","t2","undefined","t3","label","resolved","header","t4","t5","_c","ParamEditorFieldLabel","Box","BoxProps","ReactNode","ParamEditorReadOnlyValueProps","Omit","children","preserveWhitespace","ParamEditorReadOnlyValue","props","$","_c","boxProps","t0","undefined","t1","t2","_c","useEffect","useState","Switch","ParamEditorControlItem","ParamEditorReadOnlyValue","BooleanInputProps","id","name","description","defaultValue","onChange","value","readOnly","hideLabel","fullWidth","size","BooleanInput","props","$","_c","t0","undefined","setValue","t1","t2","t3","String","t4","t5","details","checked","t6","_c","Switch","Box","ColorPicker","ColorPickerValueChangeDetails","Flex","parseColor","FocusEvent","ReactFocusEvent","useEffect","useRef","useState","ParamEditorLabel","ParamEditorReadOnlyValue","ColorInputProps","id","defaultValue","name","onChange","value","description","readOnly","hideLabel","tooltipPlacement","fullWidth","size","ColorInput","props","$","_c","t0","t1","t2","undefined","setValue","open","setOpen","rootRef","contentRef","timeoutRef","t3","nextColor","current","clearTimeout","setTimeout","scheduleChange","t4","t5","t6","t7","isInsidePicker","target","node","Node","contains","handleOutsideInteraction","event","document","addEventListener","removeEventListener","t8","newColor","handleChange","t9","Symbol","for","event_0","root","currentTarget","ownerDocument","activeElement","handleBlur","t10","valueElement","t11","t12","t13","details","t14","details_0","toString","t15","onOpenChange","onFocusOutside","onInteractOutside","onBlur","onValueChange","disabled","rootProps","t16","t17","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","picker","t28","_c","Box","Flex","Input","useEffect","useRef","useState","ParamEditorLabel","ParamEditorReadOnlyValue","DateInputProps","id","defaultValue","name","min","max","onChange","value","description","readOnly","hideLabel","tooltipPlacement","fullWidth","size","DateInput","props","$","_c","t0","t1","t2","undefined","setValue","timeoutRef","t3","nextValue","current","clearTimeout","setTimeout","scheduleChange","t4","t5","t6","newValue","handleChange","t7","valueElement","t8","t9","e","target","_temp","e_1","_temp2","e_0","key","currentTarget","blur","e_2","_c","_temp","_temp2","Box","Flex","Input","Textarea","useEffect","useRef","useState","ParamEditorLabel","ParamEditorReadOnlyValue","HorizontalTextInputProps","id","defaultValue","name","onChange","value","description","readOnly","hideLabel","tooltipPlacement","size","HorizontalTextInput","props","$","_c","t0","t1","undefined","setValue","isExpanded","setIsExpanded","timeoutRef","t2","nextValue","current","clearTimeout","setTimeout","scheduleChange","t3","t4","t5","newValue","handleChange","t6","handleClick","t7","trim","length","handleBlur","t8","Symbol","for","e","key","preventDefault","handleKeyDown","t9","t10","t11","e_0","target","_temp","borderColor","boxShadow","e_2","e_1","currentTarget","blur","_c","_temp","Box","Flex","Input","Stack","useEffect","useState","LazyMarkdownEditor","ParamEditorFieldLabel","ParamEditorReadOnlyValue","MarkdownInputProps","id","name","description","defaultValue","placeholder","onChange","value","readOnly","presentation","size","MarkdownInput","props","$","_c","t0","t1","undefined","setValue","isExpanded","setIsExpanded","t2","t3","t4","next","commit","t5","editorValue","editor","t6","label","t7","event","target","borderColor","event_0","key","preventDefault","t8","_c","ParamEditorFieldLabel","Box","Flex","NumberInputValueChangeDetails","SliderValueChangeDetails","useEffect","useRef","useState","NumberInputField","NumberInputRoot","Slider","ParamEditorLabel","ParamEditorReadOnlyValue","NumberInputProps","id","defaultValue","name","step","min","max","onChange","value","description","readOnly","hideLabel","hideSlider","tooltipPlacement","fullWidth","size","NumberInput","props","$","_c","t0","t1","t2","t3","t4","undefined","setValue","isRange","showSlider","useFullWidthLayout","timeoutRef","t5","nextValue","current","clearTimeout","setTimeout","scheduleChange","t6","t7","t8","valueElement","t9","t10","details","next","Number","isNaN","valueAsNumber","_temp","details_0","next_0","_temp2","details_1","details_2","e","key","currentTarget","blur","e_0","NumberInput","_c","_temp","_temp2","Slider","Icon","Text","Wrap","Chip","getIconComponent","ResourceBadge","ResourceOption","ResourceRefValue","optionIcon","option","icon","color","openExternal","href","window","open","copyToClipboard","text","navigator","clipboard","writeText","catch","undefined","ResourceChipProps","onOpenResource","ref","onRemove","ResourceChip","props","$","_c","isReference","Boolean","copyText","t0","name","length","handleSelect","t1","t2","t3","t4","t5","ResourceChipListProps","options","optionId","emptyText","ResourceChipList","id","map","_c","Button","Flex","Icon","IconButton","Menu","Portal","Check","ChevronDown","Square","SquareCheck","ReactNode","ListRow","SearchableMenu","SearchableMenuItem","getIconComponent","SelectionGroup","SelectionMenuOption","id","name","icon","color","description","disabled","SelectionMenuProps","triggerLabel","options","selectedIds","multiSelect","reselectable","searchable","searchPlaceholder","emptyText","group","fullWidth","triggerVariant","triggerAriaLabel","size","onToggle","optionId","onGroupChange","selectionIndicator","selected","selectionIconComponent","option","undefined","selectionOptionIcon","boxSize","SelectionMenu","props","$","_c","t0","t1","t2","t3","t4","t5","t6","some","defaultValue","canChangeGroup","Boolean","t7","t8","option_0","includes","canChangeValue","isDisabled","bg","borderColor","outline","boxShadow","trigger","t9","t10","option_1","label","searchText","filter","join","secondaryLabel","isSelected","onSelect","map","items","selectedGroup","find","option_2","t11","option_3","selectedLabel","placeholder","toLowerCase","selectedIcon","ariaLabel","showSearch","emptyState","item","t12","option_4","t13","_c","canChangeValue","Box","Flex","Icon","Stack","Plus","ReactNode","useEffect","useRef","useState","ResourceOption","ResourceRefValue","ParamEditorLabel","ResourceChipList","SelectionMenu","selectionOptionIcon","ResourceInputProps","id","name","description","defaultValue","options","onChange","value","onOpenResource","ref","readOnly","editable","multiSelect","placeholder","emptyText","fullWidth","presentation","size","toIds","Array","isArray","resolveOptions","ids","map","find","option","filter","Boolean","FieldShellProps","label","control","FieldShell","props","$","_c","t0","t1","ResourceSelectMenuProps","triggerLabel","selectedIds","triggerVariant","triggerAriaLabel","onToggle","optionId","ResourceSelectMenu","ResourceInput","t2","t3","t4","undefined","setValue","timeoutRef","t5","t6","emitChange","next","current","clearTimeout","scheduleChange","next_0","setTimeout","selectedOptions","interactive","t7","t8","toggleOption","next_1","includes","entry","next_2","removeOption","optionId_0","next_3","entry_0","t9","Symbol","for","length","selected","t10","_c","Box","Flex","useEffect","useState","SelectionGroup","ParamEditorLabel","ParamEditorReadOnlyValue","SelectionMenu","SelectionMenuOption","selectionOptionIcon","SelectionInputProps","id","defaultValue","name","options","onChange","value","description","readOnly","hideLabel","multiSelect","tooltipPlacement","placeholder","fullWidth","clearable","disabled","searchable","searchPlaceholder","emptyText","group","size","SelectionInput","props","$","_c","t0","t1","t2","t3","t4","t5","t6","undefined","setValue","groupValue","setGroupValue","t7","t8","t9","t10","t11","t12","Array","isArray","selectedIds","t13","names","map","selectedId","find","option","filter","_temp","length","join","slice","toString","getDisplayText","t14","nextValue","commit","t15","optionId","includes","item","handleToggle","t16","optionId_0","handleGroupChange","T0","label","t17","t18","Symbol","for","bb0","triggerOption","option_0","t19","t20","t21","valueElement","t22","t23","menu","t24","optionName","Boolean","_c","_temp","_Fragment","Box","Flex","Input","Textarea","useEffect","useRef","useState","ParamEditorLabel","ParamEditorReadOnlyValue","TextInputProps","id","defaultValue","name","onChange","value","description","readOnly","singleLine","hideLabel","fullWidth","size","TextInput","props","$","_c","t0","t1","t2","t3","undefined","setValue","timeoutRef","t4","nextValue","current","clearTimeout","setTimeout","scheduleChange","t5","t6","t7","newValue","handleChange","t8","handleBlur","t9","t10","valueElement","t11","t12","e","target","_temp","e_1","_temp2","e_3","e_0","key","currentTarget","blur","e_2","_c","_temp","_temp2","Button","Flex","useEffect","useState","ActionOption","ParamEditorControlItem","SelectionMenu","ActionInputProps","id","name","description","defaultValue","options","onChange","value","readOnly","fullWidth","presentation","ActionInput","props","$","_c","t0","undefined","active","setActive","t1","t2","t3","optionId","run","horizontal","t4","find","option","selectedName","t5","t6","option_0","disabled","bg","borderColor","outline","boxShadow","map","row","t7","_c","AnchorGridValue","ANCHOR_GRID_VALUES","isAnchorGridValue","value","includes","Box","Grid","IconButton","useEffect","useState","AnchorGridValue","ParamEditorControlItem","ParamEditorReadOnlyValue","ANCHOR_GRID_VALUES","AnchorGridInputProps","id","name","description","defaultValue","onChange","value","readOnly","fullWidth","AnchorGridInput","props","$","_c","setValue","t0","t1","t2","next","select","t3","t4","map","anchor","selected","bg","grid","t5","t6","_c","FileUploadValue","FileUploadSummaryState","valueId","file","File","index","name","size","toString","lastModified","createFileUploadValues","files","existing","multiple","offset","length","selected","map","id","status","const","slice","getFileUploadSummary","values","states","state","find","candidate","some","value","count","filter","Button","Flex","Icon","Spinner","Stack","Text","Wrap","CircleAlert","CircleCheck","Clock3","Paperclip","useEffect","useRef","useState","AttachmentChip","FileUploadValue","ParamEditorControlItem","createFileUploadValues","getFileUploadSummary","FileUploadInputProps","id","name","description","defaultValue","accept","multiple","uploadLabel","onChange","value","readOnly","presentation","UploadStatus","props","$","_c","values","noun","summary","t0","t1","t2","t3","t4","Symbol","for","bb0","state","count","toString","t5","t6","queued","uploading","complete","error","empty","labels","t7","icon","t8","t9","t10","t11","UploadQueue","onRemove","length","file","map","FileUploadInput","undefined","setValues","inputRef","next","commit","valueId","filter","remove","current","click","button","event","Array","from","currentTarget","files","input","t12","_c","clampToRange","value","min","max","lower","Math","upper","snapToStep","step","origin","steps","round","formatUnitValue","unit","rounded","Number","isInteger","toFixed","RangeValue","clampToRange","snapToStep","normalizeRange","value","min","max","step","first","second","start","Math","end","updateRangeHandle","index","next","draft","Box","Flex","SliderMarksProps","count","SliderMarks","props","$","_c","t0","Array","from","length","_","index","positions","t1","map","_temp","position","_c","_temp","Box","Button","Flex","Icon","Popover","SliderValueChangeDetails","Stack","Text","ChevronDown","useEffect","useState","Slider","RangeValue","ParamEditorControlItem","ParamEditorReadOnlyValue","formatUnitValue","normalizeRange","SliderMarks","RangeInputProps","id","name","description","defaultValue","min","max","step","unit","markerCount","onChange","value","readOnly","fullWidth","presentation","RangeInput","props","$","_c","t0","t1","undefined","t2","setValue","t3","t4","t5","t6","label","horizontal","t7","t8","trailing","details","t9","details_0","next","t10","t11","t12","slider","t13","Symbol","for","placement","offset","mainAxis","t14","t15","t16","t17","t18","t19","t20","_c","Slider","Box","Button","Group","useEffect","useState","SegmentedOption","ParamEditorControlItem","ParamEditorReadOnlyValue","SelectionMenu","SegmentedInputProps","id","name","description","defaultValue","options","variant","onChange","value","readOnly","fullWidth","presentation","SegmentedInput","props","$","_c","t0","t1","undefined","setValue","t2","t3","t4","next","select","t5","find","option","selectedName","horizontal","t6","t7","t8","Symbol","for","borderColor","boxShadow","t9","t10","option_0","selected","indicatorColor","map","group","t11","_c","Flex","FlexProps","ParamEditorInlineGroupProps","ParamEditorInlineGroup","props","$","_c","children","rest","t0","_c","VectorValue","clampToRange","VectorBounds","min","max","clampAxis","value","bounds","undefined","Number","NEGATIVE_INFINITY","POSITIVE_INFINITY","updateVectorAxis","axis","next","clamped","x","y","Flex","Text","useEffect","useState","VectorValue","ParamEditorControlItem","ParamEditorInlineGroup","ParamEditorReadOnlyValue","NumberInput","updateVectorAxis","VectorInputProps","id","name","description","defaultValue","xLabel","yLabel","min","max","step","onChange","value","readOnly","fullWidth","VectorAxisFieldProps","label","fieldId","onCommit","VectorAxisField","props","$","_c","t0","t1","_","next","t2","t3","VectorInput","undefined","setValue","t4","t5","axis","updated","commitAxis","t6","x","y","t7","t8","next_0","t9","t10","next_1","t11","t12","t13","_c","NumberInput","ParamValueMap","resolveParamValue","defaultValues","paramId","fallback","T","undefined","ActionInput","AnchorGridInput","FileUploadInput","RangeInput","SegmentedInput","VectorInput","Param","ParamValue","ParamValueMap","resolveParamValue","AdvancedParam","Extract","type","ParamEditorAdvancedFieldProps","param","defaultValues","onChange","id","value","readOnly","fullWidth","presentation","ParamEditorAdvancedField","props","$","_c","t0","t1","t2","common","t3","name","t4","description","t5","defaultValue","t6","markerCount","max","min","step","unit","options","variant","xLabel","yLabel","t7","accept","multiple","uploadLabel","_c","Param","isParamEditorRichControl","param","type","isParamEditorHorizontalControl","Badge","HStack","Image","Param","ParamEditorControlItem","ParamEditorReadOnlyValue","ParamEditorReadOnlyFieldProps","param","Extract","type","fullWidth","formatPrimitive","value","String","ReadOnlyContent","props","$","_c","Array","isArray","length","t0","Symbol","for","map","_temp","t1","alt","images","src","_temp2","t2","ParamEditorReadOnlyField","description","name","item","index","image","_c","Box","Flex","BooleanInput","ColorInput","DateInput","HorizontalTextInput","MarkdownInput","NumberInput","ResourceInput","SelectionInput","TextInput","Param","ParamValue","ParamValueMap","ResourceRefValue","ParamEditorAdvancedField","ParamEditorLabel","isParamEditorRichControl","ParamEditorReadOnlyField","ParamEditorReadOnlyValue","resolveParamValue","ParamEditorFieldProps","param","defaultValues","onChange","id","value","onOpenResource","ref","readOnly","fullWidth","presentation","size","PropertyField","props","$","_c","t0","description","name","t1","t2","ParamEditorField","undefined","horizontal","t3","richControl","t4","t5","t6","common","type","t7","t8","t9","defaultValue","t10","max","min","step","singleLine","t11","placeholder","group","clearable","disabled","emptyText","multiSelect","options","searchPlaceholder","searchable","editable","_c","NumberInput","Switch$1","ResourceBadge","ListRow","getIconComponent","Slider$1","NumberInputField","LazyMarkdownEditor","NumberInputRoot","ParamEditorLabel","$","c","t0","props","compact","t1","t2","t3","t4","name","Text","t5","description","Tooltip$1","Icon","Info","t6","HStack","ParamEditorControlItem","hideLabel","fullWidth","orientation","label","header","labelTrailing","Flex","children","Box","ParamEditorReadOnlyValue","boxProps","BooleanInput","size","value","setValue","useState","defaultValue","useEffect","readOnly","id","onChange","details","ColorInput","open","setOpen","rootRef","useRef","contentRef","timeoutRef","nextColor","scheduleChange","t7","isInsidePicker","node","target","handleOutsideInteraction","event","t8","newColor","handleChange","t9","root","event_0","handleBlur","t10","valueElement","t11","t12","parseColor","t13","t14","details_0","t15","rootProps","t16","t17","ColorPicker","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","picker","t28","DateInput","nextValue","newValue","max","min","Input","_temp$6","e_1","_temp2$3","e_0","e_2","HorizontalTextInput","isExpanded","setIsExpanded","handleClick","handleKeyDown","Textarea","_temp$5","MarkdownInput","presentation","next","commit","placeholder","editorValue","editor","Stack","NumberInput$1","step","hideSlider","showSlider","useFullWidthLayout","_temp$4","next_0","_temp2$2","details_1","details_2","optionIcon","option","openExternal","href","copyToClipboard","text","ResourceChip","Chip","onOpenResource","handleSelect","onRemove","ResourceChipList","options","emptyText","Wrap","selectionIndicator","multiSelect","selected","SquareCheck","Square","Check","selectionIconComponent","selectionOptionIcon","SelectionMenu","reselectable","searchable","searchPlaceholder","triggerVariant","group","onGroupChange","canChangeGroup","selectedIds","option_0","isDisabled","disabled","triggerAriaLabel","triggerLabel","IconButton","Button","ChevronDown","trigger","onToggle","option_1","items","selectedGroup","option_2","Menu","SearchableMenu","option_3","item","option_4","Portal","toIds","resolveOptions","ids","FieldShell","control","ResourceSelectMenu","ResourceInput","editable","emitChange","selectedOptions","interactive","toggleOption","next_1","optionId","entry","next_2","removeOption","next_3","entry_0","optionId_0","Plus","SelectionInput","clearable","groupValue","setGroupValue","names","selectedId","_temp$3","getDisplayText","handleToggle","handleGroupChange","T0","triggerOption","Fragment","menu","optionName","TextInput","singleLine","_temp$2","_temp2$1","e_3","ActionInput","active","setActive","run","horizontal","selectedName","row","ANCHOR_GRID_VALUES","isAnchorGridValue","AnchorGridInput","select","anchor","Grid","grid","valueId","file","index","createFileUploadValues","offset","multiple","existing","files","getFileUploadSummary","state","values","candidate","UploadStatus","noun","summary","labels","Spinner","CircleAlert","CircleCheck","Clock3","icon","UploadQueue","AttachmentChip","FileUploadInput","uploadLabel","setValues","inputRef","remove","Paperclip","button","accept","input","clampToRange","lower","upper","snapToStep","origin","formatUnitValue","rounded","unit","normalizeRange","first","second","start","end","SliderMarks","count","positions","_temp$1","position","RangeInput","trailing","markerCount","slider","Popover","SegmentedInput","variant","Group","ParamEditorInlineGroup","rest","clampAxis","bounds","updateVectorAxis","clamped","axis","VectorAxisField","onCommit","fieldId","VectorInput","xLabel","yLabel","updated","commitAxis","resolveParamValue","defaultValues","paramId","fallback","ParamEditorAdvancedField","param","common","isParamEditorRichControl","isParamEditorHorizontalControl","formatPrimitive","ReadOnlyContent","_temp","images","_temp2","ParamEditorReadOnlyField","Badge","Image","image","PropertyField","ParamEditorField","richControl"],"sources":["../src/components/param-editor/param-editor-label.tsx","../src/components/param-editor/param-editor-control-item.tsx","../src/components/param-editor/param-editor-read-only-value.tsx","../src/components/param-editor/inputs/boolean-input.tsx","../src/components/param-editor/inputs/color-input.tsx","../src/components/param-editor/inputs/date-input.tsx","../src/components/param-editor/inputs/horizontal-text-input.tsx","../src/components/param-editor/inputs/markdown-input.tsx","../src/components/param-editor/inputs/number-input.tsx","../src/components/param-editor/inputs/resource-input-chips.tsx","../src/components/param-editor/inputs/selection-menu.tsx","../src/components/param-editor/inputs/resource-input.tsx","../src/components/param-editor/inputs/selection-input.tsx","../src/components/param-editor/inputs/text-input.tsx","../src/components/param-editor/inputs/action-input.tsx","../src/components/param-editor/inputs/anchor-grid.ts","../src/components/param-editor/inputs/anchor-grid-input.tsx","../src/components/param-editor/inputs/file-upload-value.ts","../src/components/param-editor/inputs/file-upload-input.tsx","../src/components/param-editor/inputs/numeric-value.ts","../src/components/param-editor/inputs/range-value.ts","../src/components/param-editor/inputs/slider-marks.tsx","../src/components/param-editor/inputs/range-input.tsx","../src/components/param-editor/inputs/segmented-input.tsx","../src/components/param-editor/param-editor-inline-group.tsx","../src/components/param-editor/inputs/vector-value.ts","../src/components/param-editor/inputs/vector-input.tsx","../src/components/param-editor/resolve-param-value.ts","../src/components/param-editor/param-editor-advanced-field.tsx","../src/components/param-editor/param-editor-presentation.ts","../src/components/param-editor/param-editor-read-only-field.tsx","../src/components/param-editor/param-editor-field.tsx"],"sourcesContent":["import { HStack, Icon, Text } from \"@chakra-ui/react\";\nimport { Info } from \"lucide-react\";\nimport { Tooltip } from \"../primitives/tooltip\";\n\ninterface ParamEditorLabelProps {\n name: string;\n description?: string;\n compact?: boolean;\n}\n\nexport const ParamEditorLabel = (props: ParamEditorLabelProps) => {\n const { name, description, compact = false } = props;\n\n return (\n <HStack gap=\"1\" alignItems=\"center\" minW=\"0\">\n <Text\n textStyle={compact ? \"label/XS/medium\" : \"label/S/medium\"}\n color=\"fg.muted\"\n letterSpacing={compact ? \"0.08em\" : undefined}\n textTransform={compact ? \"uppercase\" : undefined}\n truncate\n >\n {name}\n </Text>\n {description ? (\n <Tooltip\n content={description}\n portalled={false}\n positioning={{ placement: \"bottom-start\", strategy: \"fixed\", hideWhenDetached: true }}\n >\n <Icon\n asChild\n role=\"img\"\n aria-label={`About ${name}`}\n aria-hidden={false}\n focusable=\"true\"\n tabIndex={0}\n boxSize=\"3\"\n color=\"fg.muted\"\n flexShrink={0}\n >\n <Info />\n </Icon>\n </Tooltip>\n ) : null}\n </HStack>\n );\n};\n","import { Box, Flex } from \"@chakra-ui/react\";\nimport type { ReactNode } from \"react\";\nimport { ParamEditorFieldLabel } from \"./param-editor-field-label\";\n\ntype ControlItemOrientation = \"auto\" | \"inline\" | \"stacked\";\n\ninterface ParamEditorControlItemProps {\n name?: string;\n description?: string;\n hideLabel?: boolean;\n fullWidth?: boolean;\n /** `auto` renders inline when compact and stacked when full-width. */\n orientation?: ControlItemOrientation;\n /** Rendered on the label row, right-aligned (e.g. an editable value readout). */\n labelTrailing?: ReactNode;\n children: ReactNode;\n}\n\n// Shared row scaffold for control layouts: a labelled control that renders either\n// inline (label left / control right) or stacked (label above the control).\nexport const ParamEditorControlItem = (props: ParamEditorControlItemProps) => {\n const {\n name,\n description,\n hideLabel = false,\n fullWidth = false,\n orientation = \"auto\",\n labelTrailing,\n children,\n } = props;\n\n const label = hideLabel || !name ? null : <ParamEditorFieldLabel name={name} description={description} />;\n const resolved = orientation === \"auto\" ? (fullWidth ? \"stacked\" : \"inline\") : orientation;\n\n if (resolved === \"stacked\") {\n const header = label || labelTrailing;\n return (\n <Box minW=\"0\">\n {header ? (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" gap=\"xs\" mb=\"xs\" minW=\"0\">\n {label}\n {labelTrailing}\n </Flex>\n ) : null}\n {children}\n </Box>\n );\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\" minW=\"0\">\n {label}\n <Flex alignItems=\"center\" gap=\"xs\" minW=\"0\">\n {labelTrailing}\n {children}\n </Flex>\n </Flex>\n );\n};\n","import { Box, type BoxProps } from \"@chakra-ui/react\";\nimport type { ReactNode } from \"react\";\n\ninterface ParamEditorReadOnlyValueProps extends Omit<BoxProps, \"children\"> {\n children: ReactNode;\n preserveWhitespace?: boolean;\n}\n\nexport const ParamEditorReadOnlyValue = (props: ParamEditorReadOnlyValueProps) => {\n const { children, preserveWhitespace = false, ...boxProps } = props;\n\n return (\n <Box minW=\"0\" textStyle=\"label/S/regular\" whiteSpace={preserveWhitespace ? \"pre-wrap\" : undefined} {...boxProps}>\n {children}\n </Box>\n );\n};\n","import { useEffect, useState } from \"react\";\nimport { Switch } from \"@/components/primitives/switch\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface BooleanInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: boolean;\n onChange: (id: string, value: boolean) => void;\n readOnly?: boolean;\n hideLabel?: boolean;\n fullWidth?: boolean;\n size?: \"xs\" | \"sm\";\n}\n\nexport const BooleanInput = (props: BooleanInputProps) => {\n const { id, name, description, defaultValue, onChange, readOnly, hideLabel, fullWidth, size = \"sm\" } = props;\n const [value, setValue] = useState(defaultValue);\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n if (readOnly) {\n return (\n <ParamEditorControlItem\n name={name}\n description={description}\n hideLabel={hideLabel}\n fullWidth={fullWidth}\n orientation=\"inline\"\n >\n <ParamEditorReadOnlyValue>{String(value)}</ParamEditorReadOnlyValue>\n </ParamEditorControlItem>\n );\n }\n\n return (\n <ParamEditorControlItem\n name={name}\n description={description}\n hideLabel={hideLabel}\n fullWidth={fullWidth}\n orientation=\"inline\"\n >\n <Switch\n size={size}\n checked={value}\n inputProps={{ \"aria-label\": name }}\n onCheckedChange={(details) => {\n setValue(details.checked);\n onChange(id, details.checked);\n }}\n />\n </ParamEditorControlItem>\n );\n};\n","import { Box, ColorPicker, type ColorPickerValueChangeDetails, Flex, parseColor } from \"@chakra-ui/react\";\nimport { type FocusEvent as ReactFocusEvent, useEffect, useRef, useState } from \"react\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface ColorInputProps {\n id: string;\n defaultValue: string;\n name: string;\n onChange: (id: string, value: string) => void;\n description: string;\n readOnly?: boolean;\n hideLabel?: boolean;\n tooltipPlacement?: \"top\" | \"right\" | \"bottom\" | \"left\";\n fullWidth?: boolean;\n size?: \"xs\" | \"sm\";\n}\n\nexport const ColorInput = (props: ColorInputProps) => {\n const {\n id,\n defaultValue,\n name,\n onChange,\n description,\n readOnly,\n hideLabel = false,\n fullWidth = false,\n size = \"sm\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n const [open, setOpen] = useState(false);\n const rootRef = useRef<HTMLDivElement>(null);\n const contentRef = useRef<HTMLDivElement>(null);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const scheduleChange = (nextColor: string) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(() => onChange(id, nextColor), 540);\n };\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n useEffect(() => {\n if (!open) return;\n\n const isInsidePicker = (target: EventTarget | null) => {\n const node = target as Node;\n return rootRef.current?.contains(node) || contentRef.current?.contains(node);\n };\n\n const handleOutsideInteraction = (event: FocusEvent | PointerEvent) => {\n if (isInsidePicker(event.target)) return;\n\n setOpen(false);\n };\n\n document.addEventListener(\"focusin\", handleOutsideInteraction, true);\n document.addEventListener(\"pointerdown\", handleOutsideInteraction, true);\n document.addEventListener(\"click\", handleOutsideInteraction, true);\n\n return () => {\n document.removeEventListener(\"focusin\", handleOutsideInteraction, true);\n document.removeEventListener(\"pointerdown\", handleOutsideInteraction, true);\n document.removeEventListener(\"click\", handleOutsideInteraction, true);\n };\n }, [open]);\n\n const handleChange = (newColor: string) => {\n setValue(newColor);\n scheduleChange(newColor);\n };\n\n const handleBlur = (event: ReactFocusEvent<HTMLDivElement>) => {\n const root = event.currentTarget;\n\n setTimeout(() => {\n if (!root.contains(root.ownerDocument.activeElement)) setOpen(false);\n });\n };\n\n if (readOnly) {\n const valueElement = (\n <ParamEditorReadOnlyValue>\n <Flex alignItems=\"center\" gap=\"xs\">\n <Box boxSize=\"0.75rem\" borderRadius=\"xs\" bg={value} />\n <Box as=\"span\">{value}</Box>\n </Flex>\n </ParamEditorReadOnlyValue>\n );\n\n if (fullWidth) {\n return (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n {valueElement}\n </Box>\n );\n }\n\n return (\n <Box>\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n {valueElement}\n </Flex>\n </Box>\n );\n }\n\n const rootProps = {\n value: parseColor(value),\n open,\n onOpenChange: (details: { open: boolean }) => setOpen(details.open),\n onFocusOutside: () => setOpen(false),\n onInteractOutside: () => setOpen(false),\n onBlur: handleBlur,\n onValueChange: (details: ColorPickerValueChangeDetails) => handleChange(details.value.toString(\"hex\")),\n disabled: readOnly,\n };\n\n const picker = (\n <ColorPicker.Root ref={rootRef} {...rootProps} size={size} width={fullWidth ? \"100%\" : \"8.75rem\"} maxW=\"100%\">\n <ColorPicker.HiddenInput />\n <ColorPicker.Label srOnly>{name}</ColorPicker.Label>\n <ColorPicker.Control>\n <ColorPicker.Input readOnly={readOnly} onFocus={() => setOpen(false)} />\n <ColorPicker.Trigger />\n </ColorPicker.Control>\n <ColorPicker.Positioner>\n <ColorPicker.Content ref={contentRef} onBlur={handleBlur}>\n <ColorPicker.Area />\n <ColorPicker.Sliders />\n <ColorPicker.SwatchGroup>\n <ColorPicker.SwatchTrigger value={value}>\n <ColorPicker.Swatch value={value} />\n </ColorPicker.SwatchTrigger>\n </ColorPicker.SwatchGroup>\n </ColorPicker.Content>\n </ColorPicker.Positioner>\n </ColorPicker.Root>\n );\n\n return (\n <Box>\n {fullWidth ? (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n {picker}\n </Box>\n ) : (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n {picker}\n </Flex>\n )}\n </Box>\n );\n};\n","import { Box, Flex, Input } from \"@chakra-ui/react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface DateInputProps {\n id: string;\n defaultValue: string;\n name: string;\n min?: string;\n max?: string;\n onChange: (id: string, value: string) => void;\n description: string;\n readOnly?: boolean;\n hideLabel?: boolean;\n tooltipPlacement?: \"top\" | \"right\" | \"bottom\" | \"left\";\n fullWidth?: boolean;\n size?: \"xs\" | \"sm\";\n}\n\nexport const DateInput = (props: DateInputProps) => {\n const {\n id,\n defaultValue,\n name,\n min,\n max,\n onChange,\n description,\n readOnly,\n hideLabel = false,\n fullWidth = false,\n size = \"sm\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const scheduleChange = (nextValue: string) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(() => onChange(id, nextValue), 540);\n };\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const handleChange = (newValue: string) => {\n setValue(newValue);\n scheduleChange(newValue);\n };\n\n if (readOnly) {\n const valueElement = <ParamEditorReadOnlyValue>{value}</ParamEditorReadOnlyValue>;\n\n if (fullWidth) {\n return (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n {valueElement}\n </Box>\n );\n }\n\n return (\n <Box>\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n {valueElement}\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box>\n {fullWidth ? (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n <Input\n className=\"nodrag\"\n readOnly={readOnly}\n width=\"100%\"\n size={size}\n type=\"date\"\n placeholder={hideLabel ? name : undefined}\n value={value}\n min={min}\n max={max}\n onChange={(e) => handleChange(e.target.value)}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n </Box>\n ) : (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n <Input\n className=\"nodrag\"\n readOnly={readOnly}\n width=\"8.75rem\"\n size={size}\n type=\"date\"\n placeholder={hideLabel ? name : undefined}\n value={value}\n min={min}\n max={max}\n onChange={(e) => handleChange(e.target.value)}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n </Flex>\n )}\n </Box>\n );\n};\n","import { Box, Flex, Input, Textarea } from \"@chakra-ui/react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface HorizontalTextInputProps {\n id: string;\n defaultValue: string;\n name: string;\n onChange: (id: string, value: string) => void;\n description: string;\n readOnly?: boolean;\n hideLabel?: boolean;\n tooltipPlacement?: \"top\" | \"right\" | \"bottom\" | \"left\";\n size?: \"xs\" | \"sm\";\n}\n\nexport const HorizontalTextInput = (props: HorizontalTextInputProps) => {\n const { id, defaultValue, name, onChange, description, readOnly, hideLabel = false, size = \"sm\" } = props;\n const [value, setValue] = useState(defaultValue);\n const [isExpanded, setIsExpanded] = useState(false);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const scheduleChange = (nextValue: string) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(() => onChange(id, nextValue), 540);\n };\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const handleChange = (newValue: string) => {\n setValue(newValue);\n scheduleChange(newValue);\n };\n\n const handleClick = () => {\n if (!readOnly) {\n setIsExpanded(true);\n }\n };\n\n const handleBlur = () => {\n // Only collapse if the value is empty\n if (value.trim().length === 0) {\n setIsExpanded(false);\n }\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n // Allow users to collapse with Escape key\n if (e.key === \"Escape\") {\n setIsExpanded(false);\n e.preventDefault();\n }\n };\n\n if (readOnly) {\n return (\n <Box position=\"relative\" flex=\"1\" minW=\"12.5rem\">\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n <ParamEditorReadOnlyValue preserveWhitespace>{value}</ParamEditorReadOnlyValue>\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box position=\"relative\" flex=\"1\" minW=\"12.5rem\">\n <Box position=\"relative\" minHeight=\"2rem\">\n {!isExpanded ? (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" height=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n <Input\n aria-label={name}\n className=\"nodrag\"\n readOnly={readOnly}\n flex=\"1\"\n maxW=\"12.5rem\"\n size={size}\n type=\"text\"\n placeholder={hideLabel ? name : undefined}\n value={value}\n onClick={handleClick}\n onChange={(e) => handleChange(e.target.value)}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n </Flex>\n ) : (\n <Box\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n right=\"0\"\n zIndex=\"10\"\n bg=\"bg\"\n borderWidth=\"1px\"\n borderStyle=\"solid\"\n borderColor=\"border\"\n borderRadius=\"lg\"\n p=\"2\"\n transition=\"border-color 0.2s ease-in-out\"\n boxShadow=\"none\"\n _hover={{ borderColor: \"border.accent-light\" }}\n _active={{ borderColor: \"border.accent-light\" }}\n _focusWithin={{ borderColor: \"border.accent-light\", boxShadow: \"none\" }}\n >\n {!hideLabel && (\n <Box mb=\"sm\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n <Textarea\n aria-label={name}\n className=\"nodrag\"\n readOnly={readOnly}\n width=\"100%\"\n size={size}\n placeholder={hideLabel ? name : undefined}\n value={value}\n onChange={(e) => handleChange(e.target.value)}\n onBlur={handleBlur}\n onKeyDown={handleKeyDown}\n rows={3}\n resize=\"vertical\"\n autoFocus\n />\n </Box>\n )}\n </Box>\n </Box>\n );\n};\n","import { Box, Flex, Input, Stack } from \"@chakra-ui/react\";\nimport { useEffect, useState } from \"react\";\nimport { LazyMarkdownEditor } from \"@/components/rich-text\";\nimport { ParamEditorFieldLabel } from \"../param-editor-field-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface MarkdownInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: string;\n placeholder?: string;\n onChange: (id: string, value: string) => void;\n readOnly?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n size?: \"xs\" | \"sm\";\n}\n\nexport const MarkdownInput = (props: MarkdownInputProps) => {\n const {\n id,\n name,\n description,\n defaultValue,\n placeholder,\n onChange,\n readOnly,\n presentation = \"stacked\",\n size = \"sm\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n const [isExpanded, setIsExpanded] = useState(false);\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const commit = (next: string) => {\n setValue(next);\n onChange(id, next);\n };\n\n const editor = (editorValue: string) => (\n <Box borderWidth=\"1px\" borderColor=\"border\" borderRadius=\"xs\" minH=\"7rem\" minW=\"0\" overflow=\"visible\" width=\"full\">\n <LazyMarkdownEditor\n defaultState={editorValue}\n isEditable={!readOnly}\n placeholder={placeholder}\n scrollable={false}\n onChange={commit}\n />\n </Box>\n );\n const label = <ParamEditorFieldLabel name={name} description={description} />;\n\n if (presentation === \"horizontal\") {\n if (readOnly) {\n return (\n <Box position=\"relative\" flex=\"1\" minW=\"12.5rem\">\n <Flex alignItems=\"center\" minHeight=\"2rem\">\n <ParamEditorReadOnlyValue preserveWhitespace>{value}</ParamEditorReadOnlyValue>\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box position=\"relative\" flex=\"1\" minW=\"12.5rem\">\n <Box position=\"relative\" minHeight=\"2rem\">\n {!isExpanded ? (\n <Input\n className=\"nodrag\"\n flex=\"1\"\n maxW=\"12.5rem\"\n size={size}\n type=\"text\"\n placeholder={name}\n value={value}\n onClick={() => {\n setIsExpanded(true);\n }}\n onChange={(event) => commit(event.target.value)}\n />\n ) : (\n <Box\n position=\"absolute\"\n top=\"0\"\n left=\"0\"\n right=\"0\"\n zIndex=\"10\"\n bg=\"bg\"\n borderWidth=\"1px\"\n borderColor=\"border\"\n borderRadius=\"lg\"\n p=\"2\"\n transition=\"border-color 0.2s ease-in-out\"\n _hover={{ borderColor: \"border.accent-light\" }}\n _focusWithin={{ borderColor: \"border.accent-light\" }}\n onKeyDown={(event) => {\n if (event.key === \"Escape\") {\n setIsExpanded(false);\n event.preventDefault();\n }\n }}\n >\n {editor(value)}\n </Box>\n )}\n </Box>\n </Box>\n );\n }\n\n return (\n <Stack gap=\"xs\" minW=\"0\" width=\"full\">\n {label}\n {editor(value)}\n </Stack>\n );\n};\n","import { Box, Flex, type NumberInputValueChangeDetails, type SliderValueChangeDetails } from \"@chakra-ui/react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { NumberInputField, NumberInputRoot } from \"@/components/primitives/number-input\";\nimport { Slider } from \"@/components/primitives/slider\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface NumberInputProps {\n id: string;\n defaultValue: number;\n name: string;\n step?: number;\n min?: number;\n max?: number;\n onChange: (id: string, value: number) => void;\n description: string;\n readOnly?: boolean;\n hideLabel?: boolean;\n hideSlider?: boolean;\n tooltipPlacement?: \"top\" | \"right\" | \"bottom\" | \"left\";\n fullWidth?: boolean;\n size?: \"xs\" | \"sm\";\n}\n\nexport const NumberInput = (props: NumberInputProps) => {\n const {\n id,\n defaultValue,\n name,\n step = 1,\n min,\n max,\n onChange,\n description,\n readOnly,\n hideLabel = false,\n hideSlider = false,\n fullWidth = false,\n size = \"sm\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n const isRange = min !== undefined && max !== undefined;\n const showSlider = isRange && !hideSlider;\n const useFullWidthLayout = fullWidth && !showSlider;\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const scheduleChange = (nextValue: number) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(() => onChange(id, nextValue), 540);\n };\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n if (readOnly) {\n const valueElement = <ParamEditorReadOnlyValue>{value}</ParamEditorReadOnlyValue>;\n\n if (fullWidth) {\n return (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n {valueElement}\n </Box>\n );\n }\n\n return (\n <Box>\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n {valueElement}\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box>\n {useFullWidthLayout ? (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n <NumberInputRoot\n disabled={readOnly}\n width=\"100%\"\n size={size}\n value={`${value}`}\n step={step}\n min={min}\n max={max}\n onValueChange={(details: NumberInputValueChangeDetails) => {\n const next = Number.isNaN(details.valueAsNumber) ? (min ?? 0) : details.valueAsNumber;\n setValue(next);\n scheduleChange(next);\n }}\n >\n <NumberInputField\n className=\"nodrag\"\n readOnly={readOnly}\n placeholder={hideLabel ? name : undefined}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n </NumberInputRoot>\n </Box>\n ) : (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n <NumberInputRoot\n disabled={readOnly}\n width=\"5rem\"\n size={size}\n value={`${value}`}\n step={step}\n min={min}\n max={max}\n onValueChange={(details: NumberInputValueChangeDetails) => {\n const next = Number.isNaN(details.valueAsNumber) ? (min ?? 0) : details.valueAsNumber;\n setValue(next);\n scheduleChange(next);\n }}\n >\n <NumberInputField\n className=\"nodrag\"\n readOnly={readOnly}\n placeholder={hideLabel ? name : undefined}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n </NumberInputRoot>\n </Flex>\n )}\n {showSlider && (\n <Slider\n disabled={readOnly}\n value={[value]}\n step={step}\n min={min}\n max={max}\n onValueChange={(details: SliderValueChangeDetails) => {\n setValue(details.value[0]);\n }}\n onValueChangeEnd={(details: SliderValueChangeDetails) => {\n onChange(id, details.value[0]);\n }}\n />\n )}\n </Box>\n );\n};\n","import { Icon, Text, Wrap } from \"@chakra-ui/react\";\nimport { Chip } from \"../../primitives/chip\";\nimport { getIconComponent } from \"../../primitives/icon-options\";\nimport { ResourceBadge } from \"../../primitives/resource-badge\";\nimport type { ResourceOption, ResourceRefValue } from \"../param-editor.types\";\n\nconst optionIcon = (option: ResourceOption) => (\n <Icon as={getIconComponent(option.icon)} boxSize=\"14px\" color={option.color ? `${option.color}.500` : \"fg.muted\"} />\n);\n\nconst openExternal = (href: string) => window.open(href, \"_blank\", \"noreferrer\");\n\nconst copyToClipboard = (text: string) => void navigator.clipboard?.writeText(text).catch(() => undefined);\n\ninterface ResourceChipProps {\n option: ResourceOption;\n onOpenResource?: (ref: ResourceRefValue) => void;\n onRemove?: () => void;\n}\n\n// A chip opens its external href in a new tab, opens its internal ref via the host, or\n// copies its text to the clipboard — whichever the option declares.\nexport const ResourceChip = (props: ResourceChipProps) => {\n const { option, onOpenResource, onRemove } = props;\n const isReference = Boolean(option.href || option.ref || option.copyText);\n\n if (!isReference) {\n return <Chip>{option.name}</Chip>;\n }\n\n const handleSelect =\n option.href && option.href.length > 0\n ? () => openExternal(option.href!)\n : option.ref && onOpenResource\n ? () => onOpenResource(option.ref!)\n : option.copyText\n ? () => copyToClipboard(option.copyText!)\n : undefined;\n\n return (\n <ResourceBadge\n fileName={option.name}\n icon={optionIcon(option)}\n size=\"md\"\n onSelect={handleSelect ? () => handleSelect() : undefined}\n onRemove={onRemove ? () => onRemove() : undefined}\n />\n );\n};\n\ninterface ResourceChipListProps {\n options: ResourceOption[];\n onOpenResource?: (ref: ResourceRefValue) => void;\n onRemove?: (optionId: string) => void;\n emptyText?: string;\n}\n\nexport const ResourceChipList = (props: ResourceChipListProps) => {\n const { options, onOpenResource, onRemove, emptyText } = props;\n\n if (options.length === 0) {\n return (\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\">\n {emptyText ?? \"None\"}\n </Text>\n );\n }\n\n return (\n <Wrap gap=\"2xs\">\n {options.map((option) => (\n <ResourceChip\n key={option.id}\n option={option}\n onOpenResource={onOpenResource}\n onRemove={onRemove ? () => onRemove(option.id) : undefined}\n />\n ))}\n </Wrap>\n );\n};\n","import { Button, Flex, Icon, IconButton, Menu, Portal } from \"@chakra-ui/react\";\nimport { Check, ChevronDown, Square, SquareCheck } from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { ListRow } from \"../../list-row/list-row\";\nimport { SearchableMenu, type SearchableMenuItem } from \"../../overlays/searchable-menu\";\nimport { getIconComponent } from \"../../primitives\";\nimport type { SelectionGroup } from \"../param-editor.types\";\n\nexport interface SelectionMenuOption {\n id: string;\n name: string;\n icon?: string;\n /** Palette key (e.g. \"blue\") applied to the option's icon. */\n color?: string;\n description?: string;\n disabled?: boolean;\n}\n\nexport interface SelectionMenuProps {\n triggerLabel: ReactNode;\n options: SelectionMenuOption[];\n selectedIds: string[];\n multiSelect: boolean;\n /** Selecting the active item can clear a value or repeat an action. */\n reselectable?: boolean;\n disabled?: boolean;\n searchable?: boolean;\n searchPlaceholder?: string;\n emptyText?: string;\n group?: SelectionGroup;\n fullWidth?: boolean;\n triggerVariant?: \"button\" | \"icon\";\n triggerAriaLabel?: string;\n size?: \"xs\" | \"sm\";\n onToggle: (optionId: string) => void;\n onGroupChange?: (optionId: string) => void;\n}\n\nexport const selectionIndicator = (multiSelect: boolean, selected: boolean) => {\n if (multiSelect)\n return <Icon as={selected ? SquareCheck : Square} boxSize=\"14px\" color={selected ? \"fg\" : \"fg.muted\"} />;\n return selected ? <Icon as={Check} boxSize=\"14px\" color=\"fg\" /> : null;\n};\n\nconst selectionIconComponent = (option: SelectionMenuOption | undefined) =>\n option?.icon ? getIconComponent(option.icon) : undefined;\n\nexport const selectionOptionIcon = (option: SelectionMenuOption | undefined, boxSize: string) => {\n if (!option?.icon) return null;\n return (\n <Icon\n as={getIconComponent(option.icon)}\n boxSize={boxSize}\n color={option.color ? `${option.color}.500` : \"fg.muted\"}\n />\n );\n};\n\n/**\n * The single dropdown behind every option picker in the editor — selection\n * params and editable resource params alike. Sharing it is what keeps a\n * resource attribute and a command param from drifting into two looks.\n *\n * Clearable single-selects clear by re-picking the selected option.\n */\nexport const SelectionMenu = (props: SelectionMenuProps) => {\n const {\n triggerLabel,\n options,\n selectedIds,\n multiSelect,\n reselectable = false,\n disabled,\n searchable = false,\n searchPlaceholder = \"Search options…\",\n emptyText = \"No options found\",\n group,\n fullWidth,\n triggerVariant = \"button\",\n triggerAriaLabel,\n size = \"sm\",\n onToggle,\n onGroupChange,\n } = props;\n const canChangeGroup = Boolean(\n onGroupChange &&\n group &&\n !group.disabled &&\n group.options.some((option) => !option.disabled && option.id !== group.defaultValue),\n );\n const canChangeValue = options.some(\n (option) => !option.disabled && (multiSelect || reselectable || !selectedIds.includes(option.id)),\n );\n const isDisabled = disabled || (!canChangeValue && !canChangeGroup);\n const trigger =\n triggerVariant === \"icon\" ? (\n <IconButton aria-label={triggerAriaLabel ?? \"Open options\"} size=\"2xs\" variant=\"ghost\" disabled={isDisabled}>\n {triggerLabel}\n </IconButton>\n ) : (\n <Button\n size={size}\n borderWidth=\"1px\"\n borderStyle=\"solid\"\n borderColor=\"border\"\n disabled={isDisabled}\n textStyle={size === \"xs\" ? \"label/XS\" : \"label/S/regular\"}\n width={fullWidth ? \"100%\" : undefined}\n _hover={{ bg: \"bg.hover\", borderColor: \"border.accent-light\" }}\n _active={{ bg: \"bg.active\", borderColor: \"border.accent-light\" }}\n _expanded={{ bg: \"bg.active\", borderColor: \"border.accent-light\" }}\n _focusVisible={{ borderColor: \"border.accent-light\", outline: \"none\", boxShadow: \"none\" }}\n >\n <Flex alignItems=\"center\" justifyContent=\"space-between\" gap=\"xs\" w={fullWidth ? \"full\" : undefined}>\n <Flex alignItems=\"center\" gap=\"xs\">\n {triggerLabel}\n </Flex>\n <ChevronDown size={14} />\n </Flex>\n </Button>\n );\n\n if (searchable || group) {\n const items: SearchableMenuItem[] = options.map((option) => ({\n id: option.id,\n label: option.name,\n searchText: [option.id, option.description].filter(Boolean).join(\" \"),\n secondaryLabel: option.description,\n icon: selectionIconComponent(option),\n isDisabled: option.disabled,\n isSelected: selectedIds.includes(option.id),\n onSelect: () => onToggle(option.id),\n }));\n const selectedGroup = group?.options.find((option) => option.id === group.defaultValue);\n\n return (\n <SearchableMenu\n trigger={trigger}\n items={items}\n listId={group?.defaultValue}\n showSearch={searchable}\n searchPlaceholder={searchPlaceholder}\n closeOnSelect={!multiSelect}\n emptyState={\n <Menu.Item value=\"empty\" disabled asChild>\n <ListRow asChild variant=\"full-width\" id=\"empty\" label={emptyText} disabled />\n </Menu.Item>\n }\n parentList={\n group\n ? {\n items: group.options.map((option) => ({\n id: option.id,\n label: option.name,\n searchText: [option.id, option.description].filter(Boolean).join(\" \"),\n secondaryLabel: option.description,\n icon: selectionIconComponent(option),\n isDisabled: option.disabled,\n isSelected: option.id === group.defaultValue,\n })),\n selectedLabel: selectedGroup?.name ?? group.placeholder ?? `Select ${group.name.toLowerCase()}`,\n selectedIcon: selectionIconComponent(selectedGroup),\n ariaLabel: group.name,\n disabled: !canChangeGroup,\n showSearch: group.searchable,\n searchPlaceholder: group.searchPlaceholder ?? `Search ${group.name.toLowerCase()}…`,\n emptyState: (\n <Menu.Item value=\"group-empty\" disabled asChild>\n <ListRow\n asChild\n variant=\"full-width\"\n id=\"group-empty\"\n label={group.emptyText ?? `No ${group.name.toLowerCase()} found`}\n disabled\n />\n </Menu.Item>\n ),\n onSelect: (item) => onGroupChange?.(item.id),\n }\n : undefined\n }\n />\n );\n }\n\n return (\n <Menu.Root closeOnSelect={!multiSelect}>\n <Menu.Trigger asChild>{trigger}</Menu.Trigger>\n {/* Portaled like every other menu: rendered inline it is clipped by the\n panel's overflow and can extend past the viewport. */}\n <Portal>\n <Menu.Positioner>\n <Menu.Content>\n {options.map((option) => {\n const selected = selectedIds.includes(option.id);\n return (\n <Menu.Item key={option.id} value={option.id} disabled={option.disabled} asChild>\n <ListRow\n asChild\n variant=\"full-width\"\n role={multiSelect ? \"menuitemcheckbox\" : \"menuitemradio\"}\n aria-checked={selected}\n id={option.id}\n label={option.name}\n icon={selectionOptionIcon(option, \"16px\")}\n tooltip={option.description}\n disabled={option.disabled}\n isSelected={selected}\n endContent={selectionIndicator(multiSelect, selected)}\n onActivate={() => onToggle(option.id)}\n />\n </Menu.Item>\n );\n })}\n </Menu.Content>\n </Menu.Positioner>\n </Portal>\n </Menu.Root>\n );\n};\n","import { Box, Flex, Icon, Stack } from \"@chakra-ui/react\";\nimport { Plus } from \"lucide-react\";\nimport type { ReactNode } from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport type { ResourceOption, ResourceRefValue } from \"../param-editor.types\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ResourceChipList } from \"./resource-input-chips\";\nimport { SelectionMenu, selectionOptionIcon } from \"./selection-menu\";\n\ninterface ResourceInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: string | string[];\n options: ResourceOption[];\n onChange: (id: string, value: string | string[]) => void;\n onOpenResource?: (ref: ResourceRefValue) => void;\n readOnly?: boolean;\n editable?: boolean;\n multiSelect?: boolean;\n placeholder?: string;\n emptyText?: string;\n fullWidth?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n size?: \"xs\" | \"sm\";\n}\n\nconst toIds = (value: string | string[]) => {\n if (Array.isArray(value)) return value;\n return value ? [value] : [];\n};\n\nconst resolveOptions = (ids: string[], options: ResourceOption[]) =>\n ids\n .map((id) => options.find((option) => option.id === id))\n .filter((option): option is ResourceOption => Boolean(option));\n\ninterface FieldShellProps {\n fullWidth: boolean;\n label: ReactNode;\n control: ReactNode;\n presentation: \"stacked\" | \"horizontal\";\n}\n\nconst FieldShell = (props: FieldShellProps) => {\n const { fullWidth, label, control, presentation } = props;\n\n if (presentation === \"horizontal\") {\n return (\n <Stack gap=\"2xs\" alignItems=\"start\" minW=\"0\">\n {label}\n {control}\n </Stack>\n );\n }\n\n if (fullWidth) {\n return (\n <Box>\n <Box mb=\"xs\">{label}</Box>\n {control}\n </Box>\n );\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {label}\n {control}\n </Flex>\n );\n};\n\ninterface ResourceSelectMenuProps {\n triggerLabel: ReactNode;\n options: ResourceOption[];\n selectedIds: string[];\n multiSelect: boolean;\n triggerVariant?: \"button\" | \"icon\";\n triggerAriaLabel?: string;\n size?: \"xs\" | \"sm\";\n onToggle: (optionId: string) => void;\n}\n\n// Resource params share the editor's one dropdown, so a ticket property and a\n// command param cannot drift into two looks.\nconst ResourceSelectMenu = (props: ResourceSelectMenuProps) => {\n const { triggerLabel, options, selectedIds, multiSelect, triggerVariant, triggerAriaLabel, size, onToggle } = props;\n\n return (\n <SelectionMenu\n triggerLabel={triggerLabel}\n options={options}\n selectedIds={selectedIds}\n multiSelect={multiSelect}\n reselectable\n triggerVariant={triggerVariant}\n triggerAriaLabel={triggerAriaLabel}\n size={size}\n onToggle={onToggle}\n />\n );\n};\n\nexport const ResourceInput = (props: ResourceInputProps) => {\n const {\n id,\n name,\n description,\n defaultValue,\n options,\n onChange,\n onOpenResource,\n readOnly,\n editable = false,\n multiSelect = false,\n placeholder,\n emptyText,\n fullWidth = false,\n presentation = \"stacked\",\n size = \"sm\",\n } = props;\n\n const [value, setValue] = useState(defaultValue);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const emitChange = (next: string | string[]) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n onChange(id, next);\n };\n\n // Debounce multi-select toggles so a burst of menu clicks makes one update call.\n const scheduleChange = (next: string | string[]) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(() => onChange(id, next), 540);\n };\n\n const selectedIds = toIds(value);\n const selectedOptions = resolveOptions(selectedIds, options);\n const interactive = editable && !readOnly;\n\n const label = <ParamEditorLabel name={name} description={description} compact={presentation === \"horizontal\"} />;\n\n if (!interactive) {\n return (\n <FieldShell\n fullWidth={fullWidth}\n label={label}\n presentation={presentation}\n control={<ResourceChipList options={selectedOptions} onOpenResource={onOpenResource} emptyText={emptyText} />}\n />\n );\n }\n\n const toggleOption = (optionId: string) => {\n if (multiSelect) {\n const next = selectedIds.includes(optionId)\n ? selectedIds.filter((entry) => entry !== optionId)\n : [...selectedIds, optionId];\n setValue(next);\n scheduleChange(next);\n return;\n }\n // Re-picking the selected option clears it.\n const next = selectedIds.includes(optionId) ? \"\" : optionId;\n setValue(next);\n emitChange(next);\n };\n\n const removeOption = (optionId: string) => {\n const next = selectedIds.filter((entry) => entry !== optionId);\n setValue(next);\n scheduleChange(next);\n };\n\n if (multiSelect) {\n const control = (\n <Flex gap=\"2xs\" alignItems=\"center\" flexWrap=\"wrap\" minW=\"0\">\n {selectedOptions.length > 0 ? (\n <ResourceChipList\n options={selectedOptions}\n onOpenResource={onOpenResource}\n onRemove={removeOption}\n emptyText={emptyText}\n />\n ) : null}\n <ResourceSelectMenu\n triggerLabel={<Icon as={Plus} boxSize=\"12px\" />}\n options={options}\n selectedIds={selectedIds}\n multiSelect\n triggerVariant=\"icon\"\n triggerAriaLabel={placeholder ?? `Add ${name}`}\n size={size}\n onToggle={toggleOption}\n />\n </Flex>\n );\n\n return <FieldShell fullWidth={fullWidth} label={label} control={control} presentation={presentation} />;\n }\n\n const selected = selectedOptions[0];\n const triggerLabel = selected ? (\n <Flex align=\"center\" gap=\"2xs\" minW=\"0\">\n {selectionOptionIcon(selected, \"14px\")}\n {selected.name}\n </Flex>\n ) : (\n (placeholder ?? \"Select\")\n );\n\n return (\n <FieldShell\n fullWidth={fullWidth}\n label={label}\n presentation={presentation}\n control={\n <ResourceSelectMenu\n triggerLabel={triggerLabel}\n options={options}\n selectedIds={selectedIds}\n multiSelect={false}\n size={size}\n onToggle={toggleOption}\n />\n }\n />\n );\n};\n","import { Box, Flex } from \"@chakra-ui/react\";\nimport { useEffect, useState } from \"react\";\nimport type { SelectionGroup } from \"../param-editor.types\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\nimport { SelectionMenu, type SelectionMenuOption, selectionOptionIcon } from \"./selection-menu\";\n\ninterface SelectionInputProps {\n id: string;\n defaultValue: string | string[];\n name: string;\n options: SelectionMenuOption[];\n onChange: (id: string, value: string | string[]) => void;\n description: string;\n readOnly?: boolean;\n hideLabel?: boolean;\n multiSelect?: boolean;\n tooltipPlacement?: \"top\" | \"right\" | \"bottom\" | \"left\";\n placeholder?: string;\n fullWidth?: boolean;\n /** Re-picking the selected option clears it. */\n clearable?: boolean;\n /** Inert, but still rendered as a control. */\n disabled?: boolean;\n searchable?: boolean;\n searchPlaceholder?: string;\n emptyText?: string;\n group?: SelectionGroup;\n size?: \"xs\" | \"sm\";\n}\n\nexport const SelectionInput = (props: SelectionInputProps) => {\n const {\n id,\n defaultValue,\n name,\n options,\n onChange,\n description,\n readOnly,\n hideLabel = false,\n multiSelect = false,\n placeholder,\n fullWidth = false,\n clearable = false,\n disabled = false,\n searchable = false,\n searchPlaceholder,\n emptyText,\n group,\n size = \"sm\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n const [groupValue, setGroupValue] = useState(group?.defaultValue ?? \"\");\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n useEffect(() => {\n setGroupValue(group?.defaultValue ?? \"\");\n }, [group?.defaultValue]);\n\n const selectedIds = multiSelect\n ? Array.isArray(value)\n ? value\n : []\n : typeof value === \"string\" && value\n ? [value]\n : [];\n\n const getDisplayText = () => {\n const names = selectedIds\n .map((selectedId) => options.find((option) => option.id === selectedId)?.name)\n .filter((optionName): optionName is string => Boolean(optionName));\n\n if (names.length === 0) return placeholder || \"Select\";\n if (names.length <= 3) return names.join(\", \");\n return `${names.slice(0, 3).join(\", \")} +${(names.length - 3).toString()}`;\n };\n\n const commit = (nextValue: string | string[]) => {\n setValue(nextValue);\n onChange(id, nextValue);\n };\n\n const handleToggle = (optionId: string) => {\n if (!multiSelect) {\n // Re-picking the selected option clears it, so a single-select needs no\n // extra \"none\" row cluttering the list.\n commit(clearable && selectedIds.includes(optionId) ? \"\" : optionId);\n return;\n }\n commit(\n selectedIds.includes(optionId) ? selectedIds.filter((item) => item !== optionId) : [...selectedIds, optionId],\n );\n };\n\n const handleGroupChange = (optionId: string) => {\n if (!group || optionId === groupValue) return;\n setGroupValue(optionId);\n onChange(group.id, optionId);\n };\n\n // Only a lone selection can colour the trigger; a multi-pick has no single icon.\n const triggerOption = selectedIds.length === 1 ? options.find((option) => option.id === selectedIds[0]) : undefined;\n const label = !hideLabel ? <ParamEditorLabel name={name} description={description} /> : null;\n\n if (readOnly) {\n const valueElement = <ParamEditorReadOnlyValue>{getDisplayText()}</ParamEditorReadOnlyValue>;\n\n if (fullWidth)\n return (\n <Box>\n {label ? <Box mb=\"xs\">{label}</Box> : null}\n {valueElement}\n </Box>\n );\n\n return (\n <Box>\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {label}\n {valueElement}\n </Flex>\n </Box>\n );\n }\n\n const menu = (\n <SelectionMenu\n triggerLabel={\n <>\n {selectionOptionIcon(triggerOption, \"14px\")}\n {getDisplayText()}\n </>\n }\n options={options}\n selectedIds={selectedIds}\n multiSelect={multiSelect}\n reselectable={clearable}\n disabled={disabled}\n searchable={searchable}\n searchPlaceholder={searchPlaceholder}\n emptyText={emptyText}\n group={group ? { ...group, defaultValue: groupValue } : undefined}\n fullWidth={fullWidth}\n size={size}\n onToggle={handleToggle}\n onGroupChange={handleGroupChange}\n />\n );\n\n if (fullWidth)\n return (\n <Box>\n {label ? <Box mb=\"xs\">{label}</Box> : null}\n {menu}\n </Box>\n );\n\n return (\n <Box>\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {label}\n {menu}\n </Flex>\n </Box>\n );\n};\n","import { Box, Flex, Input, Textarea } from \"@chakra-ui/react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { ParamEditorLabel } from \"../param-editor-label\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\n\ninterface TextInputProps {\n id: string;\n defaultValue: string;\n name: string;\n onChange: (id: string, value: string) => void;\n description: string;\n readOnly?: boolean;\n singleLine?: boolean;\n hideLabel?: boolean;\n fullWidth?: boolean;\n size?: \"xs\" | \"sm\";\n}\n\nexport const TextInput = (props: TextInputProps) => {\n const {\n id,\n defaultValue,\n name,\n onChange,\n description,\n readOnly,\n singleLine = true,\n hideLabel = false,\n fullWidth = false,\n size = \"sm\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const scheduleChange = (nextValue: string) => {\n if (timeoutRef.current) clearTimeout(timeoutRef.current);\n timeoutRef.current = setTimeout(() => onChange(id, nextValue), 540);\n };\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const handleChange = (newValue: string) => {\n setValue(newValue);\n scheduleChange(newValue);\n };\n\n // Leaving the field is a commit: a form submitted inside the debounce window\n // would otherwise send the value as it was before the last keystrokes.\n const handleBlur = () => {\n if (!timeoutRef.current) return;\n clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n onChange(id, value);\n };\n\n if (readOnly) {\n const valueElement = <ParamEditorReadOnlyValue preserveWhitespace={!singleLine}>{value}</ParamEditorReadOnlyValue>;\n\n if (singleLine && !fullWidth) {\n return (\n <Box>\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n {valueElement}\n </Flex>\n </Box>\n );\n }\n\n return (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n {valueElement}\n </Box>\n );\n }\n\n return (\n <Box>\n {singleLine && !fullWidth ? (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n {!hideLabel && <ParamEditorLabel name={name} description={description} />}\n <Input\n aria-label={name}\n className=\"nodrag\"\n readOnly={readOnly}\n flex=\"1\"\n maxW=\"12.5rem\"\n size={size}\n type=\"text\"\n placeholder={hideLabel ? name : undefined}\n value={value}\n onChange={(e) => handleChange(e.target.value)}\n onBlur={handleBlur}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n </Flex>\n ) : (\n <Box>\n {!hideLabel && (\n <Box mb=\"xs\">\n <ParamEditorLabel name={name} description={description} />\n </Box>\n )}\n {singleLine ? (\n <Input\n aria-label={name}\n className=\"nodrag\"\n readOnly={readOnly}\n width=\"100%\"\n size={size}\n type=\"text\"\n placeholder={hideLabel ? name : undefined}\n value={value}\n onChange={(e) => handleChange(e.target.value)}\n onBlur={handleBlur}\n onKeyUp={(e) => {\n if (e.key === \"Enter\") {\n e.currentTarget.blur();\n }\n }}\n />\n ) : (\n <Textarea\n aria-label={name}\n className=\"nodrag\"\n readOnly={readOnly}\n width=\"100%\"\n size={size}\n placeholder={hideLabel ? name : undefined}\n value={value}\n onChange={(e) => handleChange(e.target.value)}\n onBlur={handleBlur}\n rows={3}\n resize=\"vertical\"\n />\n )}\n </Box>\n )}\n </Box>\n );\n};\n","import { Button, Flex } from \"@chakra-ui/react\";\nimport { useEffect, useState } from \"react\";\nimport type { ActionOption } from \"../param-editor.types\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { SelectionMenu } from \"./selection-menu\";\n\ninterface ActionInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue?: string;\n options: ActionOption[];\n onChange: (id: string, value: string) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n}\n\nexport const ActionInput = (props: ActionInputProps) => {\n const { id, name, description, defaultValue, options, onChange, readOnly, presentation = \"stacked\" } = props;\n const [active, setActive] = useState(defaultValue);\n\n useEffect(() => {\n setActive(defaultValue);\n }, [defaultValue]);\n\n const run = (optionId: string) => {\n setActive(optionId);\n onChange(id, optionId);\n };\n const horizontal = presentation === \"horizontal\";\n const selectedName = options.find((option) => option.id === active)?.name ?? name;\n\n if (horizontal) {\n return (\n <SelectionMenu\n triggerLabel={selectedName}\n options={options}\n selectedIds={active ? [active] : []}\n multiSelect={false}\n reselectable\n disabled={readOnly}\n onToggle={run}\n />\n );\n }\n\n const row = (\n <Flex gap=\"xs\" wrap=\"wrap\">\n {options.map((option) => (\n <Button\n key={option.id}\n size=\"xs\"\n variant={active === option.id ? \"subtle\" : \"outline\"}\n disabled={option.disabled || readOnly}\n _hover={{ bg: \"bg.hover\", borderColor: \"border.accent-light\" }}\n _active={{ bg: \"bg.active\", borderColor: \"border.accent-light\" }}\n _focusVisible={{ borderColor: \"border.accent-light\", outline: \"none\", boxShadow: \"none\" }}\n onClick={() => run(option.id)}\n >\n {option.name}\n </Button>\n ))}\n </Flex>\n );\n\n return (\n <ParamEditorControlItem name={name} description={description} orientation=\"stacked\">\n {row}\n </ParamEditorControlItem>\n );\n};\n","import type { AnchorGridValue } from \"../param-editor.types\";\n\n/** The nine anchors in row-major order (top-left → bottom-right). */\nexport const ANCHOR_GRID_VALUES: AnchorGridValue[] = [\n \"top-left\",\n \"top\",\n \"top-right\",\n \"left\",\n \"center\",\n \"right\",\n \"bottom-left\",\n \"bottom\",\n \"bottom-right\",\n];\n\nexport const isAnchorGridValue = (value: unknown): value is AnchorGridValue =>\n typeof value === \"string\" && (ANCHOR_GRID_VALUES as string[]).includes(value);\n","import { Box, Grid, IconButton } from \"@chakra-ui/react\";\nimport { useEffect, useState } from \"react\";\nimport type { AnchorGridValue } from \"../param-editor.types\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\nimport { ANCHOR_GRID_VALUES } from \"./anchor-grid\";\n\ninterface AnchorGridInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: AnchorGridValue;\n onChange: (id: string, value: AnchorGridValue) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n}\n\nexport const AnchorGridInput = (props: AnchorGridInputProps) => {\n const { id, name, description, defaultValue, onChange, readOnly, fullWidth } = props;\n const [value, setValue] = useState<AnchorGridValue>(defaultValue);\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const select = (next: AnchorGridValue) => {\n setValue(next);\n onChange(id, next);\n };\n\n if (readOnly) {\n return (\n <ParamEditorControlItem name={name} description={description} fullWidth={fullWidth}>\n <ParamEditorReadOnlyValue>{value}</ParamEditorReadOnlyValue>\n </ParamEditorControlItem>\n );\n }\n\n const grid = (\n <Grid\n templateColumns=\"repeat(3, 1.5rem)\"\n gap=\"1px\"\n width=\"fit-content\"\n bg=\"border.subtle\"\n p=\"1px\"\n borderRadius=\"sm\"\n overflow=\"hidden\"\n >\n {ANCHOR_GRID_VALUES.map((anchor) => {\n const selected = anchor === value;\n return (\n <IconButton\n key={anchor}\n aria-label={anchor}\n aria-pressed={selected}\n size=\"2xs\"\n variant=\"ghost\"\n bg={selected ? \"fg\" : \"bg\"}\n _hover={{ bg: selected ? \"fg\" : \"bg.muted\" }}\n borderRadius=\"0\"\n onClick={() => select(anchor)}\n >\n <Box boxSize=\"0.375rem\" borderRadius=\"full\" bg={selected ? \"bg\" : \"fg.muted\"} />\n </IconButton>\n );\n })}\n </Grid>\n );\n\n return (\n <ParamEditorControlItem name={name} description={description} orientation={fullWidth ? \"stacked\" : \"inline\"}>\n {grid}\n </ParamEditorControlItem>\n );\n};\n","import type { FileUploadValue } from \"../param-editor.types\";\n\nexport type FileUploadSummaryState = \"empty\" | \"queued\" | \"uploading\" | \"complete\" | \"error\";\n\nconst valueId = (file: File, index: number) =>\n `${file.name}-${file.size.toString()}-${file.lastModified.toString()}-${index.toString()}`;\n\nexport const createFileUploadValues = (\n files: File[],\n existing: FileUploadValue[],\n multiple: boolean,\n): FileUploadValue[] => {\n const offset = multiple ? existing.length : 0;\n const selected = files.map((file, index) => ({\n id: valueId(file, offset + index),\n file,\n status: \"queued\" as const,\n }));\n\n return multiple ? [...existing, ...selected] : selected.slice(0, 1);\n};\n\nexport const getFileUploadSummary = (values: FileUploadValue[]) => {\n const states: FileUploadSummaryState[] = [\"uploading\", \"error\", \"queued\", \"complete\"];\n const state = states.find((candidate) => values.some((value) => value.status === candidate)) ?? \"empty\";\n const count = state === \"empty\" ? 0 : values.filter((value) => value.status === state).length;\n\n return { state, count };\n};\n","import { Button, Flex, Icon, Spinner, Stack, Text, Wrap } from \"@chakra-ui/react\";\nimport { CircleAlert, CircleCheck, Clock3, Paperclip } from \"lucide-react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { AttachmentChip } from \"@/components/overlays/attachment-chip\";\nimport type { FileUploadValue } from \"../param-editor.types\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { createFileUploadValues, getFileUploadSummary } from \"./file-upload-value\";\n\ninterface FileUploadInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: FileUploadValue[];\n accept?: string;\n multiple?: boolean;\n uploadLabel?: string;\n onChange: (id: string, value: FileUploadValue[]) => void;\n readOnly?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n}\n\nconst UploadStatus = (props: { values: FileUploadValue[] }) => {\n const { values } = props;\n const summary = getFileUploadSummary(values);\n if (summary.state === \"empty\") return null;\n\n const noun = summary.count === 1 ? \"file\" : \"files\";\n const labels = {\n queued: `${summary.count.toString()} ${noun} queued`,\n uploading: `Uploading ${summary.count.toString()} ${noun}`,\n complete: `${summary.count.toString()} ${noun} uploaded`,\n error: `${summary.count.toString()} ${noun} failed`,\n empty: \"\",\n };\n const icon =\n summary.state === \"uploading\" ? (\n <Spinner boxSize=\"12px\" borderWidth=\"1px\" />\n ) : (\n <Icon\n as={summary.state === \"error\" ? CircleAlert : summary.state === \"complete\" ? CircleCheck : Clock3}\n boxSize=\"12px\"\n />\n );\n\n return (\n <Flex alignItems=\"center\" gap=\"2xs\" color={summary.state === \"error\" ? \"fg.error\" : \"fg.muted\"}>\n {icon}\n <Text textStyle=\"label/XS/medium\">{labels[summary.state]}</Text>\n </Flex>\n );\n};\n\nconst UploadQueue = (props: { readOnly?: boolean; values: FileUploadValue[]; onRemove: (valueId: string) => void }) => {\n const { readOnly, values, onRemove } = props;\n if (values.length === 0) return null;\n\n return (\n <Stack gap=\"2xs\" minW=\"0\">\n <UploadStatus values={values} />\n <Wrap gap=\"2xs\">\n {values.map((value) => (\n <AttachmentChip\n key={value.id}\n file={value.file}\n disabled={readOnly}\n removeLabel={`Remove ${value.file.name}`}\n onRemove={() => onRemove(value.id)}\n />\n ))}\n </Wrap>\n </Stack>\n );\n};\n\nexport const FileUploadInput = (props: FileUploadInputProps) => {\n const {\n id,\n name,\n description,\n defaultValue,\n accept,\n multiple = true,\n uploadLabel = \"Attach files\",\n onChange,\n readOnly,\n presentation = \"stacked\",\n } = props;\n const [values, setValues] = useState(defaultValue);\n const inputRef = useRef<HTMLInputElement>(null);\n\n useEffect(() => {\n setValues(defaultValue);\n }, [defaultValue]);\n\n const commit = (next: FileUploadValue[]) => {\n setValues(next);\n onChange(id, next);\n };\n const remove = (valueId: string) => commit(values.filter((value) => value.id !== valueId));\n const button = readOnly ? null : (\n <Button size=\"xs\" variant=\"ghost\" flexShrink={0} onClick={() => inputRef.current?.click()}>\n <Icon as={Paperclip} boxSize=\"14px\" />\n {uploadLabel}\n </Button>\n );\n const input = (\n <input\n ref={inputRef}\n hidden\n type=\"file\"\n accept={accept}\n multiple={multiple}\n onChange={(event) => {\n commit(createFileUploadValues(Array.from(event.currentTarget.files ?? []), values, multiple));\n event.currentTarget.value = \"\";\n }}\n />\n );\n\n if (presentation === \"horizontal\") {\n return (\n <Flex alignItems=\"center\" gap=\"sm\" minW=\"0\" width=\"full\">\n {input}\n {button}\n <UploadQueue readOnly={readOnly} values={values} onRemove={remove} />\n </Flex>\n );\n }\n\n return (\n <ParamEditorControlItem name={name} description={description} orientation=\"stacked\">\n <Stack alignItems=\"start\" gap=\"xs\" minW=\"0\">\n {input}\n {button}\n <UploadQueue readOnly={readOnly} values={values} onRemove={remove} />\n </Stack>\n </ParamEditorControlItem>\n );\n};\n","/** Clamp `value` into the inclusive range, tolerating an inverted min/max. */\nexport const clampToRange = (value: number, min: number, max: number) => {\n const lower = Math.min(min, max);\n const upper = Math.max(min, max);\n if (value < lower) return lower;\n if (value > upper) return upper;\n return value;\n};\n\n/** Snap `value` to the nearest multiple of `step` measured from `origin`. */\nexport const snapToStep = (value: number, step: number, origin = 0) => {\n if (!(step > 0)) return value;\n const steps = Math.round((value - origin) / step);\n return origin + steps * step;\n};\n\n/** Format a number with an optional unit suffix, trimming float noise. */\nexport const formatUnitValue = (value: number, unit?: string) => {\n const rounded = Number.isInteger(value) ? `${value}` : `${Number(value.toFixed(3))}`;\n return unit ? `${rounded}${unit}` : rounded;\n};\n","import type { RangeValue } from \"../param-editor.types\";\nimport { clampToRange, snapToStep } from \"./numeric-value\";\n\n/** Order both handles and clamp (and optionally snap) them into `[min, max]`. */\nexport const normalizeRange = (value: RangeValue, min: number, max: number, step?: number): RangeValue => {\n const first = clampToRange(value[0], min, max);\n const second = clampToRange(value[1], min, max);\n let start = Math.min(first, second);\n let end = Math.max(first, second);\n if (step && step > 0) {\n start = clampToRange(snapToStep(start, step, min), min, max);\n end = clampToRange(snapToStep(end, step, min), min, max);\n }\n return [start, end];\n};\n\n/** Replace a single handle, keeping the pair ordered. */\nexport const updateRangeHandle = (\n value: RangeValue,\n index: 0 | 1,\n next: number,\n min: number,\n max: number,\n step?: number,\n): RangeValue => {\n const draft: RangeValue = index === 0 ? [next, value[1]] : [value[0], next];\n return normalizeRange(draft, min, max, step);\n};\n","import { Box, Flex } from \"@chakra-ui/react\";\n\ninterface SliderMarksProps {\n count?: number;\n}\n\n// Evenly-spaced tick marks rendered under a slider track. Purely decorative.\nexport const SliderMarks = (props: SliderMarksProps) => {\n const { count } = props;\n if (!count || count < 2) return null;\n const positions = Array.from({ length: count }, (_, index) => index / (count - 1));\n\n return (\n <Flex justifyContent=\"space-between\" mt=\"2xs\" aria-hidden=\"true\">\n {positions.map((position) => (\n <Box key={position} width=\"1px\" height=\"0.375rem\" bg=\"border.subtle\" />\n ))}\n </Flex>\n );\n};\n","import { Box, Button, Flex, Icon, Popover, type SliderValueChangeDetails, Stack, Text } from \"@chakra-ui/react\";\nimport { ChevronDown } from \"lucide-react\";\nimport { useEffect, useState } from \"react\";\nimport { Slider } from \"@/components/primitives/slider\";\nimport type { RangeValue } from \"../param-editor.types\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\nimport { formatUnitValue } from \"./numeric-value\";\nimport { normalizeRange } from \"./range-value\";\nimport { SliderMarks } from \"./slider-marks\";\n\ninterface RangeInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: RangeValue;\n min: number;\n max: number;\n step?: number;\n unit?: string;\n markerCount?: number;\n onChange: (id: string, value: RangeValue) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n}\n\nexport const RangeInput = (props: RangeInputProps) => {\n const {\n id,\n name,\n description,\n defaultValue,\n min,\n max,\n step = 1,\n unit,\n markerCount,\n onChange,\n readOnly,\n fullWidth,\n presentation = \"stacked\",\n } = props;\n\n const [value, setValue] = useState<RangeValue>(() => normalizeRange(defaultValue, min, max, step));\n\n useEffect(() => {\n setValue(normalizeRange(defaultValue, min, max, step));\n }, [defaultValue, min, max, step]);\n\n const label = `${formatUnitValue(value[0], unit)} – ${formatUnitValue(value[1], unit)}`;\n const horizontal = presentation === \"horizontal\";\n\n if (readOnly) {\n if (horizontal) {\n return <ParamEditorReadOnlyValue>{label}</ParamEditorReadOnlyValue>;\n }\n\n return (\n <ParamEditorControlItem name={name} description={description} fullWidth={fullWidth}>\n <ParamEditorReadOnlyValue>{label}</ParamEditorReadOnlyValue>\n </ParamEditorControlItem>\n );\n }\n\n const trailing = (\n <Text textStyle=\"label/S/regular\" color=\"fg.muted\" whiteSpace=\"nowrap\">\n {label}\n </Text>\n );\n const slider = (\n <Box>\n <Slider\n size=\"sm\"\n value={value}\n min={min}\n max={max}\n step={step}\n onValueChange={(details: SliderValueChangeDetails) =>\n setValue(normalizeRange(details.value as RangeValue, min, max, step))\n }\n onValueChangeEnd={(details: SliderValueChangeDetails) => {\n const next = normalizeRange(details.value as RangeValue, min, max, step);\n setValue(next);\n onChange(id, next);\n }}\n />\n <SliderMarks count={markerCount} />\n </Box>\n );\n\n if (horizontal) {\n return (\n <Popover.Root positioning={{ placement: \"bottom-start\", offset: { mainAxis: 4 } }}>\n <Popover.Trigger asChild>\n <Button size=\"xs\" variant=\"ghost\" aria-label={`${name}: ${label}`}>\n {label}\n <Icon as={ChevronDown} boxSize=\"14px\" />\n </Button>\n </Popover.Trigger>\n <Popover.Positioner>\n <Popover.Content width=\"60\" padding=\"sm\" background=\"bg\">\n <Stack gap=\"xs\">\n <Flex alignItems=\"center\" justifyContent=\"space-between\" gap=\"xs\">\n <Text textStyle=\"label/S/medium\">{name}</Text>\n {trailing}\n </Flex>\n {slider}\n </Stack>\n </Popover.Content>\n </Popover.Positioner>\n </Popover.Root>\n );\n }\n\n return (\n <ParamEditorControlItem name={name} description={description} orientation=\"stacked\" labelTrailing={trailing}>\n {slider}\n </ParamEditorControlItem>\n );\n};\n","import { Box, Button, Group } from \"@chakra-ui/react\";\nimport { useEffect, useState } from \"react\";\nimport type { SegmentedOption } from \"../param-editor.types\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\nimport { SelectionMenu } from \"./selection-menu\";\n\ninterface SegmentedInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: string;\n options: SegmentedOption[];\n variant?: \"default\" | \"dots\";\n onChange: (id: string, value: string) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n}\n\nexport const SegmentedInput = (props: SegmentedInputProps) => {\n const {\n id,\n name,\n description,\n defaultValue,\n options,\n variant = \"default\",\n onChange,\n readOnly,\n fullWidth,\n presentation = \"stacked\",\n } = props;\n const [value, setValue] = useState(defaultValue);\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const select = (next: string) => {\n setValue(next);\n onChange(id, next);\n };\n\n const selectedName = options.find((option) => option.id === value)?.name ?? value;\n const horizontal = presentation === \"horizontal\";\n\n if (readOnly) {\n return (\n <ParamEditorControlItem name={name} description={description} hideLabel={horizontal} fullWidth={fullWidth}>\n <ParamEditorReadOnlyValue>{selectedName}</ParamEditorReadOnlyValue>\n </ParamEditorControlItem>\n );\n }\n\n if (horizontal) {\n return (\n <SelectionMenu\n triggerLabel={selectedName}\n options={options}\n selectedIds={[value]}\n multiSelect={false}\n onToggle={select}\n />\n );\n }\n\n const group = (\n <Group\n attached\n width=\"full\"\n borderWidth=\"1px\"\n borderColor=\"border\"\n borderRadius=\"xs\"\n overflow=\"hidden\"\n transition=\"border-color 0.2s ease-in-out\"\n _hover={{ borderColor: \"border.accent-light\" }}\n _active={{ borderColor: \"border.accent-light\" }}\n _focusWithin={{ borderColor: \"border.accent-light\", boxShadow: \"none\" }}\n >\n {options.map((option) => {\n const selected = option.id === value;\n return (\n <Button\n key={option.id}\n flex=\"1\"\n size=\"xs\"\n variant={selected ? \"subtle\" : \"ghost\"}\n borderRadius=\"0\"\n aria-pressed={selected}\n onClick={() => select(option.id)}\n >\n {variant === \"dots\" ? (\n <Box boxSize=\"0.5rem\" borderRadius=\"full\" bg={option.indicatorColor ?? \"fg.muted\"} mr=\"1\" />\n ) : null}\n {option.name}\n </Button>\n );\n })}\n </Group>\n );\n\n return (\n <ParamEditorControlItem name={name} description={description} orientation=\"stacked\">\n {group}\n </ParamEditorControlItem>\n );\n};\n","import { Flex, type FlexProps } from \"@chakra-ui/react\";\n\ninterface ParamEditorInlineGroupProps extends FlexProps {}\n\n// A horizontal row of controls that share a line (e.g. paired x/y inputs).\nexport const ParamEditorInlineGroup = (props: ParamEditorInlineGroupProps) => {\n const { children, ...rest } = props;\n\n return (\n <Flex alignItems=\"center\" gap=\"xs\" minW=\"0\" {...rest}>\n {children}\n </Flex>\n );\n};\n","import type { VectorValue } from \"../param-editor.types\";\nimport { clampToRange } from \"./numeric-value\";\n\nexport interface VectorBounds {\n min?: number;\n max?: number;\n}\n\nconst clampAxis = (value: number, bounds: VectorBounds) => {\n if (bounds.min === undefined && bounds.max === undefined) return value;\n const min = bounds.min ?? Number.NEGATIVE_INFINITY;\n const max = bounds.max ?? Number.POSITIVE_INFINITY;\n return clampToRange(value, min, max);\n};\n\n/** Update a single axis without dropping the other, clamping into optional bounds. */\nexport const updateVectorAxis = (\n value: VectorValue,\n axis: \"x\" | \"y\",\n next: number,\n bounds: VectorBounds = {},\n): VectorValue => {\n const clamped = clampAxis(next, bounds);\n return axis === \"x\" ? { x: clamped, y: value.y } : { x: value.x, y: clamped };\n};\n","import { Flex, Text } from \"@chakra-ui/react\";\nimport { useEffect, useState } from \"react\";\nimport type { VectorValue } from \"../param-editor.types\";\nimport { ParamEditorControlItem } from \"../param-editor-control-item\";\nimport { ParamEditorInlineGroup } from \"../param-editor-inline-group\";\nimport { ParamEditorReadOnlyValue } from \"../param-editor-read-only-value\";\nimport { NumberInput } from \"./number-input\";\nimport { updateVectorAxis } from \"./vector-value\";\n\ninterface VectorInputProps {\n id: string;\n name: string;\n description?: string;\n defaultValue: VectorValue;\n xLabel?: string;\n yLabel?: string;\n min?: number;\n max?: number;\n step?: number;\n onChange: (id: string, value: VectorValue) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n}\n\ninterface VectorAxisFieldProps {\n label: string;\n fieldId: string;\n value: number;\n min?: number;\n max?: number;\n step?: number;\n onCommit: (value: number) => void;\n}\n\n// A single axis: the shared NumberInput (label/slider hidden) prefixed with its axis letter.\nconst VectorAxisField = (props: VectorAxisFieldProps) => {\n const { label, fieldId, value, min, max, step, onCommit } = props;\n\n return (\n <Flex alignItems=\"center\" gap=\"1\" flexShrink={0}>\n <Text textStyle=\"label/XS/regular\" color=\"fg.muted\" width=\"1rem\" flexShrink={0}>\n {label}\n </Text>\n <NumberInput\n id={fieldId}\n name={label}\n description=\"\"\n defaultValue={value}\n min={min}\n max={max}\n step={step}\n hideLabel\n hideSlider\n onChange={(_, next) => onCommit(next)}\n />\n </Flex>\n );\n};\n\nexport const VectorInput = (props: VectorInputProps) => {\n const {\n id,\n name,\n description,\n defaultValue,\n xLabel = \"X\",\n yLabel = \"Y\",\n min,\n max,\n step = 1,\n onChange,\n readOnly,\n } = props;\n const [value, setValue] = useState<VectorValue>(defaultValue);\n\n useEffect(() => {\n setValue(defaultValue);\n }, [defaultValue]);\n\n const commitAxis = (axis: \"x\" | \"y\", next: number) => {\n const updated = updateVectorAxis(value, axis, next, { min, max });\n setValue(updated);\n onChange(id, updated);\n };\n\n if (readOnly) {\n return (\n <ParamEditorControlItem name={name} description={description}>\n <ParamEditorReadOnlyValue>{`${value.x}, ${value.y}`}</ParamEditorReadOnlyValue>\n </ParamEditorControlItem>\n );\n }\n\n return (\n <ParamEditorControlItem name={name} description={description} orientation=\"stacked\">\n <ParamEditorInlineGroup>\n <VectorAxisField\n label={xLabel}\n fieldId={`${id}.x`}\n value={value.x}\n min={min}\n max={max}\n step={step}\n onCommit={(next) => commitAxis(\"x\", next)}\n />\n <VectorAxisField\n label={yLabel}\n fieldId={`${id}.y`}\n value={value.y}\n min={min}\n max={max}\n step={step}\n onCommit={(next) => commitAxis(\"y\", next)}\n />\n </ParamEditorInlineGroup>\n </ParamEditorControlItem>\n );\n};\n","import type { ParamValueMap } from \"./param-editor.types\";\n\nexport const resolveParamValue = <T>(defaultValues: ParamValueMap, paramId: string, fallback: T) =>\n defaultValues[paramId] === undefined ? fallback : (defaultValues[paramId] as T);\n","import { ActionInput } from \"./inputs/action-input\";\nimport { AnchorGridInput } from \"./inputs/anchor-grid-input\";\nimport { FileUploadInput } from \"./inputs/file-upload-input\";\nimport { RangeInput } from \"./inputs/range-input\";\nimport { SegmentedInput } from \"./inputs/segmented-input\";\nimport { VectorInput } from \"./inputs/vector-input\";\nimport type { Param, ParamValue, ParamValueMap } from \"./param-editor.types\";\nimport { resolveParamValue } from \"./resolve-param-value\";\n\ntype AdvancedParam = Extract<\n Param,\n { type: \"range\" | \"segmented\" | \"actions\" | \"anchorGrid\" | \"vector\" | \"fileUpload\" }\n>;\n\ninterface ParamEditorAdvancedFieldProps {\n param: AdvancedParam;\n defaultValues: ParamValueMap;\n onChange: (id: string, value: ParamValue) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n presentation: \"stacked\" | \"horizontal\";\n}\n\nexport const ParamEditorAdvancedField = (props: ParamEditorAdvancedFieldProps) => {\n const { param, defaultValues, onChange, readOnly, fullWidth, presentation } = props;\n const common = {\n id: param.id,\n readOnly: readOnly || param.readOnly,\n onChange,\n fullWidth: presentation === \"horizontal\" ? false : fullWidth,\n };\n\n switch (param.type) {\n case \"range\":\n return (\n <RangeInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n min={param.min}\n max={param.max}\n step={param.step}\n unit={param.unit}\n markerCount={param.markerCount}\n presentation={presentation}\n />\n );\n case \"segmented\":\n return (\n <SegmentedInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n options={param.options}\n variant={param.variant}\n presentation={presentation}\n />\n );\n case \"actions\":\n return (\n <ActionInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n options={param.options}\n presentation={presentation}\n />\n );\n case \"anchorGrid\":\n if (presentation === \"horizontal\") return null;\n return (\n <AnchorGridInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n />\n );\n case \"vector\":\n return (\n <VectorInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n xLabel={param.xLabel}\n yLabel={param.yLabel}\n min={param.min}\n max={param.max}\n step={param.step}\n />\n );\n case \"fileUpload\":\n return (\n <FileUploadInput\n id={param.id}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n accept={param.accept}\n multiple={param.multiple}\n uploadLabel={param.uploadLabel}\n readOnly={common.readOnly}\n presentation={presentation}\n onChange={onChange}\n />\n );\n }\n};\n","import type { Param } from \"./param-editor.types\";\n\nexport const isParamEditorRichControl = (param: Param) => param.type === \"fileUpload\";\n\nexport const isParamEditorHorizontalControl = (param: Param) => param.type !== \"anchorGrid\";\n","import { Badge, HStack, Image } from \"@chakra-ui/react\";\nimport type { Param } from \"./param-editor.types\";\nimport { ParamEditorControlItem } from \"./param-editor-control-item\";\nimport { ParamEditorReadOnlyValue } from \"./param-editor-read-only-value\";\n\ninterface ParamEditorReadOnlyFieldProps {\n param: Extract<Param, { type: \"readOnly\" }>;\n fullWidth?: boolean;\n}\n\nconst formatPrimitive = (value: string | number | boolean | null) => {\n if (value === null || value === \"\") return \"Not provided\";\n return String(value);\n};\n\nconst ReadOnlyContent = (props: Pick<ParamEditorReadOnlyFieldProps[\"param\"], \"value\">) => {\n const { value } = props;\n\n if (Array.isArray(value)) {\n if (value.length === 0) {\n return <ParamEditorReadOnlyValue color=\"fg.muted\">None</ParamEditorReadOnlyValue>;\n }\n\n return (\n <HStack gap=\"2xs\" flexWrap=\"wrap\">\n {value.map((item, index) => (\n <Badge key={`${String(item)}-${index}`} variant=\"subtle\" colorPalette=\"gray\">\n {formatPrimitive(item)}\n </Badge>\n ))}\n </HStack>\n );\n }\n\n if (typeof value === \"object\" && value !== null) {\n const images = value.type === \"image\" ? [{ src: value.src, alt: value.alt }] : value.images;\n return (\n <HStack gap=\"2xs\" flexWrap=\"wrap\">\n {images.map((image) => (\n <Image\n key={`${image.src}-${image.alt}`}\n src={image.src}\n alt={image.alt}\n width=\"96px\"\n height=\"72px\"\n borderRadius=\"sm\"\n borderWidth=\"1px\"\n borderColor=\"border.subtle\"\n objectFit=\"cover\"\n />\n ))}\n </HStack>\n );\n }\n\n if (typeof value === \"boolean\") {\n return <ParamEditorReadOnlyValue>{formatPrimitive(value)}</ParamEditorReadOnlyValue>;\n }\n\n return (\n <ParamEditorReadOnlyValue color={value === null || value === \"\" ? \"fg.muted\" : \"fg\"}>\n {formatPrimitive(value)}\n </ParamEditorReadOnlyValue>\n );\n};\n\nexport const ParamEditorReadOnlyField = (props: ParamEditorReadOnlyFieldProps) => {\n const { param, fullWidth } = props;\n\n return (\n <ParamEditorControlItem name={param.name} description={param.description} fullWidth={fullWidth}>\n <ReadOnlyContent value={param.value} />\n </ParamEditorControlItem>\n );\n};\n","import { Box, Flex } from \"@chakra-ui/react\";\nimport { BooleanInput } from \"./inputs/boolean-input\";\nimport { ColorInput } from \"./inputs/color-input\";\nimport { DateInput } from \"./inputs/date-input\";\nimport { HorizontalTextInput } from \"./inputs/horizontal-text-input\";\nimport { MarkdownInput } from \"./inputs/markdown-input\";\nimport { NumberInput } from \"./inputs/number-input\";\nimport { ResourceInput } from \"./inputs/resource-input\";\nimport { SelectionInput } from \"./inputs/selection-input\";\nimport { TextInput } from \"./inputs/text-input\";\nimport type { Param, ParamValue, ParamValueMap, ResourceRefValue } from \"./param-editor.types\";\nimport { ParamEditorAdvancedField } from \"./param-editor-advanced-field\";\nimport { ParamEditorLabel } from \"./param-editor-label\";\nimport { isParamEditorRichControl } from \"./param-editor-presentation\";\nimport { ParamEditorReadOnlyField } from \"./param-editor-read-only-field\";\nimport { ParamEditorReadOnlyValue } from \"./param-editor-read-only-value\";\nimport { resolveParamValue } from \"./resolve-param-value\";\n\ninterface ParamEditorFieldProps {\n param: Param;\n defaultValues: ParamValueMap;\n onChange: (id: string, value: ParamValue) => void;\n onOpenResource?: (ref: ResourceRefValue) => void;\n readOnly?: boolean;\n fullWidth?: boolean;\n presentation?: \"stacked\" | \"horizontal\";\n size?: \"xs\" | \"sm\";\n}\n\nconst PropertyField = (props: { param: Extract<Param, { type: \"property\" }>; fullWidth?: boolean }) => {\n const { param, fullWidth } = props;\n\n if (fullWidth) {\n return (\n <Box>\n <Box mb=\"xs\">\n <ParamEditorLabel name={param.name} description={param.description} />\n </Box>\n <ParamEditorReadOnlyValue>{param.value}</ParamEditorReadOnlyValue>\n </Box>\n );\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"space-between\" minHeight=\"2rem\" gap=\"xs\">\n <ParamEditorLabel name={param.name} description={param.description} />\n <ParamEditorReadOnlyValue>{param.value}</ParamEditorReadOnlyValue>\n </Flex>\n );\n};\n\nexport const ParamEditorField = (props: ParamEditorFieldProps) => {\n const {\n param,\n defaultValues,\n onChange,\n onOpenResource,\n readOnly,\n fullWidth = false,\n presentation = \"stacked\",\n size = \"sm\",\n } = props;\n const horizontal = presentation === \"horizontal\";\n const richControl = isParamEditorRichControl(param);\n const common = {\n id: param.id,\n readOnly: readOnly || param.readOnly,\n onChange,\n fullWidth: horizontal ? richControl : fullWidth,\n size,\n };\n\n switch (param.type) {\n case \"number\":\n return (\n <NumberInput\n {...common}\n name={param.name}\n description={param.description || \"\"}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n min={param.min}\n max={param.max}\n step={param.step}\n hideLabel={horizontal}\n hideSlider={horizontal}\n />\n );\n case \"boolean\":\n return (\n <BooleanInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n hideLabel={horizontal}\n />\n );\n case \"text\":\n if (horizontal) {\n return (\n <HorizontalTextInput\n {...common}\n name={param.name}\n description={param.description || \"\"}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n hideLabel\n />\n );\n }\n return (\n <TextInput\n {...common}\n name={param.name}\n description={param.description || \"\"}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n singleLine={param.singleLine}\n />\n );\n case \"markdown\":\n return (\n <MarkdownInput\n id={param.id}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n placeholder={param.placeholder}\n readOnly={common.readOnly}\n presentation={presentation}\n size={size}\n onChange={onChange}\n />\n );\n case \"selection\":\n return (\n <SelectionInput\n {...common}\n name={param.name}\n description={param.description || \"\"}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n options={param.options}\n multiSelect={param.multiSelect}\n placeholder={param.placeholder}\n clearable={param.clearable}\n disabled={param.disabled}\n searchable={param.searchable}\n searchPlaceholder={param.searchPlaceholder}\n emptyText={param.emptyText}\n group={\n param.group\n ? {\n ...param.group,\n defaultValue: resolveParamValue(defaultValues, param.group.id, param.group.defaultValue),\n }\n : undefined\n }\n hideLabel={horizontal}\n />\n );\n case \"date\":\n return (\n <DateInput\n {...common}\n name={param.name}\n description={param.description || \"\"}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n min={param.min}\n max={param.max}\n hideLabel={horizontal}\n />\n );\n case \"color\":\n return (\n <ColorInput\n {...common}\n name={param.name}\n description={param.description || \"\"}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n hideLabel={horizontal}\n />\n );\n case \"property\":\n return <PropertyField param={param} fullWidth={horizontal ? false : fullWidth} />;\n case \"readOnly\":\n return <ParamEditorReadOnlyField param={param} fullWidth={horizontal ? false : fullWidth} />;\n case \"resource\":\n return (\n <ResourceInput\n {...common}\n name={param.name}\n description={param.description}\n defaultValue={resolveParamValue(defaultValues, param.id, param.defaultValue)}\n options={param.options}\n multiSelect={param.multiSelect}\n editable={param.editable}\n placeholder={param.placeholder}\n emptyText={param.emptyText}\n onOpenResource={onOpenResource}\n presentation={presentation}\n />\n );\n case \"range\":\n case \"segmented\":\n case \"actions\":\n case \"anchorGrid\":\n case \"vector\":\n case \"fileUpload\":\n return (\n <ParamEditorAdvancedField\n param={param}\n defaultValues={defaultValues}\n onChange={onChange}\n readOnly={readOnly}\n fullWidth={fullWidth}\n presentation={presentation}\n />\n );\n default:\n return null;\n }\n};\n"],"mappings":"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"}