@lostgradient/cinder 0.3.0 → 0.4.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 (921) hide show
  1. package/CHANGELOG.md +146 -0
  2. package/README.md +2 -2
  3. package/components.json +138 -86
  4. package/dist/_internal/locale-context.d.ts +9 -0
  5. package/dist/_internal/text-direction.d.ts +4 -0
  6. package/dist/_internal/tree-context.d.ts +2 -0
  7. package/dist/api-contract.d.ts +1 -1
  8. package/dist/components/_internal/create-command-list-state.svelte.d.ts +43 -0
  9. package/dist/components/_internal/create-sliding-dialog-state.svelte.d.ts +26 -0
  10. package/dist/components/access-gate/index.js +379 -513
  11. package/dist/components/alert/alert.css +1 -1
  12. package/dist/components/alert/alert.schema.js +4 -4
  13. package/dist/components/alert/alert.types.d.ts +4 -4
  14. package/dist/components/alert/index.js +4 -4
  15. package/dist/components/alert-dialog/index.js +9 -3
  16. package/dist/components/approval-card/approval-card-state.d.ts +3 -0
  17. package/dist/components/approval-card/approval-card.css +239 -0
  18. package/dist/components/approval-card/approval-card.schema.js +236 -0
  19. package/dist/components/approval-card/approval-card.svelte.d.ts +21 -0
  20. package/dist/components/approval-card/approval-card.types.d.ts +155 -0
  21. package/dist/components/{subscription-badge/subscription-badge.variables.js → approval-card/approval-card.variables.js} +4 -4
  22. package/dist/components/approval-card/index.d.ts +5 -0
  23. package/dist/components/approval-card/index.js +3794 -0
  24. package/dist/components/autocomplete/autocomplete.css +12 -1
  25. package/dist/components/autocomplete/index.js +106 -81
  26. package/dist/components/avatar-group/index.js +3 -2
  27. package/dist/components/badge/badge.schema.js +6 -3
  28. package/dist/components/badge/badge.svelte.d.ts +4 -0
  29. package/dist/components/badge/badge.types.d.ts +18 -4
  30. package/dist/components/badge/index.d.ts +1 -1
  31. package/dist/components/badge/index.js +99 -3
  32. package/dist/components/banner/banner.schema.js +2 -2
  33. package/dist/components/banner/banner.types.d.ts +1 -1
  34. package/dist/components/banner/index.js +3 -3
  35. package/dist/components/button/button.css +1 -1
  36. package/dist/components/capability-gate/capability-gate.css +15 -2
  37. package/dist/components/capability-gate/capability-gate.schema.js +4 -4
  38. package/dist/components/capability-gate/capability-gate.types.d.ts +6 -6
  39. package/dist/components/capability-gate/index.js +7 -7
  40. package/dist/components/chat/chat.schema.js +11 -26
  41. package/dist/components/chat/chat.types.d.ts +30 -15
  42. package/dist/components/chat/container/chat-events.d.ts +2 -2
  43. package/dist/components/chat/container/chat-history-trigger.svelte.d.ts +1 -1
  44. package/dist/components/chat/container/chat.svelte.d.ts +1 -1
  45. package/dist/components/chat/container/use-chat-scroll-state.svelte.d.ts +4 -4
  46. package/dist/components/chat/container/use-chat-unread-state.svelte.d.ts +6 -6
  47. package/dist/components/chat/index.d.ts +1 -1
  48. package/dist/components/chat/index.js +2257 -1913
  49. package/dist/components/chat/input/chat-input.svelte.d.ts +3 -1
  50. package/dist/components/chat-conversation-header/index.js +261 -29
  51. package/dist/components/chat-conversation-list/chat-conversation-list.css +13 -0
  52. package/dist/components/checkbox/checkbox.css +3 -0
  53. package/dist/components/checkbox/checkbox.schema.js +6 -1
  54. package/dist/components/checkbox/checkbox.types.d.ts +2 -0
  55. package/dist/components/checkbox/index.js +78 -22
  56. package/dist/components/checkbox-group/checkbox-group.css +3 -0
  57. package/dist/components/checkbox-group/checkbox-group.schema.js +4 -4
  58. package/dist/components/checkbox-group/checkbox-group.types.d.ts +12 -7
  59. package/dist/components/checkbox-group/index.js +50 -21
  60. package/dist/components/choice-grid/index.js +2 -2
  61. package/dist/components/choice-grid-item/index.js +2 -2
  62. package/dist/components/click-away-listener/click-away-listener.schema.js +3 -3
  63. package/dist/components/click-away-listener/click-away-listener.types.d.ts +3 -3
  64. package/dist/components/click-away-listener/index.js +3 -3
  65. package/dist/components/code-block/code-block.css +4 -3
  66. package/dist/components/code-block/index.js +6 -5
  67. package/dist/components/collapsible/collapsible.schema.js +2 -2
  68. package/dist/components/collapsible/collapsible.types.d.ts +2 -2
  69. package/dist/components/collapsible/index.js +3 -3
  70. package/dist/components/color-field/color-field.schema.js +3 -3
  71. package/dist/components/color-field/color-field.types.d.ts +2 -2
  72. package/dist/components/color-field/index.js +133 -69
  73. package/dist/components/color-picker/index.js +29 -18
  74. package/dist/components/color-swatch-picker/index.js +29 -18
  75. package/dist/components/combobox/combobox.schema.js +6 -2
  76. package/dist/components/combobox/combobox.types.d.ts +7 -1
  77. package/dist/components/combobox/index.js +112 -60
  78. package/dist/components/command-item/command-item.css +10 -0
  79. package/dist/components/command-item/command-item.schema.js +9 -1
  80. package/dist/components/command-item/command-item.types.d.ts +4 -0
  81. package/dist/components/command-item/index.js +9 -1
  82. package/dist/components/command-menu/index.js +257 -161
  83. package/dist/components/command-palette/command-palette.schema.js +2 -3
  84. package/dist/components/command-palette/command-palette.types.d.ts +1 -2
  85. package/dist/components/command-palette/index.js +282 -192
  86. package/dist/components/confirm-dialog/index.js +9 -3
  87. package/dist/components/context-menu/context-menu.context.d.ts +2 -0
  88. package/dist/components/context-menu/index.js +300 -40
  89. package/dist/components/context-menu-trigger/index.js +11 -8
  90. package/dist/components/copy-button/index.js +6 -5
  91. package/dist/components/data-grid/_internal/column-model.svelte.d.ts +1 -0
  92. package/dist/components/data-grid/data-grid.css +25 -0
  93. package/dist/components/data-grid/data-grid.schema.js +3 -3
  94. package/dist/components/data-grid/data-grid.types.d.ts +8 -2
  95. package/dist/components/data-grid/index.js +11 -8
  96. package/dist/components/data-list/data-list.schema.js +7 -10
  97. package/dist/components/data-list/data-list.types.d.ts +5 -9
  98. package/dist/components/data-list/index.js +15 -39
  99. package/dist/components/data-table/data-table.css +13 -0
  100. package/dist/components/data-table/index.js +32 -19
  101. package/dist/components/date-range-field/date-range-field.schema.js +7 -3
  102. package/dist/components/date-range-field/date-range-field.svelte.d.ts +2 -2
  103. package/dist/components/date-range-field/date-range-field.types.d.ts +15 -10
  104. package/dist/components/date-range-field/index.d.ts +1 -1
  105. package/dist/components/date-range-field/index.js +160 -17
  106. package/dist/components/diff-viewer/diff-front-matter.svelte.d.ts +2 -2
  107. package/dist/components/diff-viewer/diff-line.svelte.d.ts +2 -2
  108. package/dist/components/diff-viewer/diff-toolbar.svelte.d.ts +2 -2
  109. package/dist/components/diff-viewer/diff-viewer.svelte.d.ts +1 -1
  110. package/dist/components/diff-viewer/diff-viewer.types.d.ts +3 -3
  111. package/dist/components/diff-viewer/index.d.ts +1 -1
  112. package/dist/components/diff-viewer/index.js +171 -67
  113. package/dist/components/drawer/index.js +353 -283
  114. package/dist/components/dropdown/dropdown.css +7 -1
  115. package/dist/components/dropdown/dropdown.types.d.ts +3 -0
  116. package/dist/components/dropdown/index.js +267 -35
  117. package/dist/components/dropdown-group/dropdown-group.schema.js +4 -4
  118. package/dist/components/dropdown-group/dropdown-group.types.d.ts +4 -4
  119. package/dist/components/dropdown-group/index.js +7 -7
  120. package/dist/components/dropdown-item/dropdown-item.schema.js +9 -1
  121. package/dist/components/dropdown-item/dropdown-item.types.d.ts +5 -0
  122. package/dist/components/dropdown-item/index.js +13 -8
  123. package/dist/components/dropdown-menu/index.js +236 -14
  124. package/dist/components/dropdown-trigger/index.js +11 -12
  125. package/dist/components/event-stream-viewer/event-stream-viewer-keys.d.ts +6 -0
  126. package/dist/components/event-stream-viewer/event-stream-viewer.css +46 -0
  127. package/dist/components/event-stream-viewer/event-stream-viewer.schema.js +83 -10
  128. package/dist/components/event-stream-viewer/event-stream-viewer.svelte.d.ts +3 -3
  129. package/dist/components/event-stream-viewer/event-stream-viewer.types.d.ts +124 -3
  130. package/dist/components/event-stream-viewer/index.d.ts +1 -1
  131. package/dist/components/event-stream-viewer/index.js +764 -409
  132. package/dist/components/faceted-filter-bar/faceted-filter-bar.css +9 -0
  133. package/dist/components/faceted-filter-bar/index.js +25 -6
  134. package/dist/components/file-upload/file-upload.css +5 -5
  135. package/dist/components/floating-action-button/floating-action-button.css +22 -22
  136. package/dist/components/floating-action-button/floating-action-button.schema.js +5 -5
  137. package/dist/components/floating-action-button/floating-action-button.svelte.d.ts +1 -1
  138. package/dist/components/floating-action-button/floating-action-button.types.d.ts +21 -21
  139. package/dist/components/floating-action-button/index.d.ts +1 -1
  140. package/dist/components/floating-action-button/index.js +8 -8
  141. package/dist/components/form-field/form-field.css +3 -13
  142. package/dist/components/form-field/index.js +2 -2
  143. package/dist/components/hover-card/index.js +3 -2
  144. package/dist/components/input/index.js +131 -67
  145. package/dist/components/input/input.schema.js +6 -1
  146. package/dist/components/input/input.types.d.ts +2 -0
  147. package/dist/components/invocation-rule-builder/index.d.ts +1 -1
  148. package/dist/components/invocation-rule-builder/index.js +184 -107
  149. package/dist/components/invocation-rule-builder/invocation-rule-builder.css +63 -6
  150. package/dist/components/invocation-rule-builder/invocation-rule-builder.schema.js +133 -35
  151. package/dist/components/invocation-rule-builder/invocation-rule-builder.svelte.d.ts +2 -2
  152. package/dist/components/invocation-rule-builder/invocation-rule-builder.types.d.ts +85 -8
  153. package/dist/components/json-schema-editor/form-view.svelte.d.ts +1 -0
  154. package/dist/components/json-schema-editor/index.js +677 -357
  155. package/dist/components/json-schema-editor/json-schema-editor.css +6 -1
  156. package/dist/components/json-schema-editor/json-schema-toolbar.svelte.d.ts +1 -0
  157. package/dist/components/json-schema-editor/property-editor.svelte.d.ts +2 -0
  158. package/dist/components/json-schema-editor/property-list-validation.d.ts +1 -0
  159. package/dist/components/json-schema-editor/property-list.svelte.d.ts +1 -0
  160. package/dist/components/json-viewer/_json-viewer-node.svelte.d.ts +3 -0
  161. package/dist/components/json-viewer/index.js +112 -26
  162. package/dist/components/json-viewer/json-viewer.css +11 -0
  163. package/dist/components/kanban-board/index.js +18 -13
  164. package/dist/components/kanban-board/kanban-board.css +56 -3
  165. package/dist/components/keyboard-shortcuts/index.js +2 -2
  166. package/dist/components/keyboard-shortcuts/keyboard-shortcuts.css +2 -2
  167. package/dist/components/label/index.js +2 -2
  168. package/dist/components/label/label.css +2 -9
  169. package/dist/components/load-more/index.js +4 -4
  170. package/dist/components/load-more/load-more.css +13 -5
  171. package/dist/components/load-more/load-more.schema.js +4 -4
  172. package/dist/components/load-more/load-more.types.d.ts +3 -3
  173. package/dist/components/locale-provider/index.d.ts +4 -0
  174. package/dist/components/locale-provider/index.js +76 -0
  175. package/dist/components/{connection-indicator/connection-indicator.schema.js → locale-provider/locale-provider.schema.js} +18 -14
  176. package/dist/components/locale-provider/locale-provider.svelte.d.ts +17 -0
  177. package/dist/components/locale-provider/locale-provider.types.d.ts +17 -0
  178. package/dist/components/{connection-indicator/connection-indicator.variables.js → locale-provider/locale-provider.variables.js} +4 -4
  179. package/dist/components/markdown-editor/editor-toolbar/editor-toolbar.svelte.d.ts +2 -0
  180. package/dist/components/markdown-editor/index.js +437 -128
  181. package/dist/components/markdown-editor/markdown-editor.schema.js +4 -4
  182. package/dist/components/markdown-editor/markdown-editor.types.d.ts +4 -4
  183. package/dist/components/masonry/masonry.schema.js +4 -3
  184. package/dist/components/masonry/masonry.types.d.ts +13 -2
  185. package/dist/components/matrix-chart/index.js +245 -224
  186. package/dist/components/media-controls/index.js +7 -7
  187. package/dist/components/media-controls/media-controls.css +15 -4
  188. package/dist/components/media-controls/media-controls.schema.js +4 -4
  189. package/dist/components/media-controls/media-controls.types.d.ts +7 -7
  190. package/dist/components/menu-bar/menu-bar.css +11 -0
  191. package/dist/components/menu-bar/menu-bar.svelte.d.ts +1 -0
  192. package/dist/components/modal/index.js +9 -3
  193. package/dist/components/navigation-bar/index.js +4 -4
  194. package/dist/components/navigation-bar/navigation-bar.schema.js +2 -2
  195. package/dist/components/navigation-bar/navigation-bar.types.d.ts +1 -1
  196. package/dist/components/number-input/index.js +88 -42
  197. package/dist/components/number-input/number-input.schema.js +4 -3
  198. package/dist/components/number-input/number-input.types.d.ts +16 -5
  199. package/dist/components/payload-inspector/index.d.ts +1 -1
  200. package/dist/components/payload-inspector/index.js +271 -64
  201. package/dist/components/payload-inspector/payload-inspector.css +6 -0
  202. package/dist/components/payload-inspector/payload-inspector.schema.js +27 -15
  203. package/dist/components/payload-inspector/payload-inspector.svelte.d.ts +2 -2
  204. package/dist/components/payload-inspector/payload-inspector.types.d.ts +52 -3
  205. package/dist/components/permission-matrix/permission-matrix.css +10 -0
  206. package/dist/components/phone-input/index.js +56 -33
  207. package/dist/components/phone-input/phone-input.schema.js +2 -2
  208. package/dist/components/phone-input/phone-input.types.d.ts +3 -2
  209. package/dist/components/pin-input/index.js +46 -41
  210. package/dist/components/pin-input/pin-input.schema.js +9 -2
  211. package/dist/components/pin-input/pin-input.types.d.ts +10 -1
  212. package/dist/components/popover/index.js +11 -4
  213. package/dist/components/portal/index.js +3 -2
  214. package/dist/components/pricing-card/index.js +22 -7
  215. package/dist/components/radio-group/index.js +51 -21
  216. package/dist/components/radio-group/radio-group.css +3 -0
  217. package/dist/components/radio-group/radio-group.schema.js +3 -3
  218. package/dist/components/radio-group/radio-group.types.d.ts +6 -2
  219. package/dist/components/rating/index.js +1 -6
  220. package/dist/components/rating/rating.schema.js +9 -2
  221. package/dist/components/rating/rating.types.d.ts +6 -0
  222. package/dist/components/review-editor/comment-list.svelte.d.ts +1 -1
  223. package/dist/components/review-editor/index.d.ts +1 -1
  224. package/dist/components/review-editor/index.js +789 -314
  225. package/dist/components/review-editor/review-editor-controls.svelte.d.ts +1 -1
  226. package/dist/components/review-editor/review-editor-impl.svelte.d.ts +4 -4
  227. package/dist/components/review-editor/review-editor-selection-types.d.ts +1 -1
  228. package/dist/components/review-editor/review-editor-state.svelte.d.ts +1 -1
  229. package/dist/components/review-editor/review-editor-threads.svelte.d.ts +2 -2
  230. package/dist/components/review-editor/review-editor.svelte.d.ts +2 -1
  231. package/dist/components/review-editor/review-editor.types.d.ts +77 -3
  232. package/dist/components/review-editor/thread-popover.svelte.d.ts +1 -1
  233. package/dist/components/run-step-timeline/index.d.ts +1 -1
  234. package/dist/components/run-step-timeline/index.js +747 -273
  235. package/dist/components/run-step-timeline/run-step-timeline.css +25 -5
  236. package/dist/components/run-step-timeline/run-step-timeline.schema.js +351 -21
  237. package/dist/components/run-step-timeline/run-step-timeline.svelte.d.ts +1 -1
  238. package/dist/components/run-step-timeline/run-step-timeline.types.d.ts +184 -3
  239. package/dist/components/schema-form/index.d.ts +1 -1
  240. package/dist/components/schema-form/index.js +1916 -474
  241. package/dist/components/schema-form/schema-form-async.fixture.d.ts +1 -0
  242. package/dist/components/schema-form/schema-form-body.svelte.d.ts +25 -0
  243. package/dist/components/schema-form/schema-form-model.d.ts +1 -4
  244. package/dist/components/schema-form/schema-form-validation.d.ts +1 -2
  245. package/dist/components/schema-form/schema-form.css +12 -74
  246. package/dist/components/schema-form/schema-form.schema.js +10 -3
  247. package/dist/components/schema-form/schema-form.svelte.d.ts +3 -3
  248. package/dist/components/schema-form/schema-form.types.d.ts +15 -8
  249. package/dist/components/scroll-area/index.js +3 -3
  250. package/dist/components/scroll-area/scroll-area.schema.js +2 -2
  251. package/dist/components/scroll-area/scroll-area.types.d.ts +1 -1
  252. package/dist/components/secret-value-field/index.js +10 -4
  253. package/dist/components/secret-value-field/secret-value-field.svelte.d.ts +1 -1
  254. package/dist/components/segmented-control/segmented-control.css +22 -1
  255. package/dist/components/select/index.js +37 -24
  256. package/dist/components/select/select.css +9 -2
  257. package/dist/components/selection-popover/index.js +11 -4
  258. package/dist/components/share-card/index.js +3 -4
  259. package/dist/components/share-card/share-card.css +15 -4
  260. package/dist/components/sheet/index.js +365 -300
  261. package/dist/components/shortcut-hint/index.js +3 -3
  262. package/dist/components/sidebar/index.js +423 -353
  263. package/dist/components/sidebar/sidebar.schema.js +2 -2
  264. package/dist/components/sidebar/sidebar.types.d.ts +1 -1
  265. package/dist/components/slider/index.js +211 -9
  266. package/dist/components/slider/slider.css +14 -9
  267. package/dist/components/sortable-list/sortable-list.css +1 -1
  268. package/dist/components/spectrogram/index.js +224 -203
  269. package/dist/components/spectrum-chart/index.js +208 -187
  270. package/dist/components/speed-dial/index.js +11 -11
  271. package/dist/components/speed-dial/speed-dial.css +3 -3
  272. package/dist/components/speed-dial-action/index.js +9 -9
  273. package/dist/components/stat/index.js +26 -4
  274. package/dist/components/stat/stat.schema.js +2 -2
  275. package/dist/components/stat/stat.types.d.ts +2 -2
  276. package/dist/components/stat-group/index.js +26 -4
  277. package/dist/components/stat-group/stat-group.css +1 -1
  278. package/dist/components/status-dot/index.d.ts +1 -1
  279. package/dist/components/status-dot/index.js +47 -8
  280. package/dist/components/status-dot/status-dot.css +45 -1
  281. package/dist/components/status-dot/status-dot.schema.js +12 -5
  282. package/dist/components/status-dot/status-dot.svelte.d.ts +5 -1
  283. package/dist/components/status-dot/status-dot.types.d.ts +16 -6
  284. package/dist/components/steps/steps.css +3 -3
  285. package/dist/components/table/index.js +23 -17
  286. package/dist/components/table/table.css +10 -0
  287. package/dist/components/table/table.types.d.ts +3 -3
  288. package/dist/components/table-header/index.js +5 -5
  289. package/dist/components/table-header/table-header.schema.js +3 -3
  290. package/dist/components/table-header/table-header.types.d.ts +2 -2
  291. package/dist/components/table-header-cell/index.js +11 -5
  292. package/dist/components/table-row/index.js +7 -7
  293. package/dist/components/table-row/table-row.schema.js +3 -3
  294. package/dist/components/table-row/table-row.types.d.ts +6 -6
  295. package/dist/components/tabs/index.js +17 -4
  296. package/dist/components/tabs/tabs.schema.js +6 -1
  297. package/dist/components/tabs/tabs.types.d.ts +2 -0
  298. package/dist/components/textarea/index.js +37 -24
  299. package/dist/components/textarea/textarea.css +16 -1
  300. package/dist/components/time-field/index.d.ts +5 -0
  301. package/dist/components/time-field/index.js +456 -0
  302. package/dist/components/time-field/time-field.css +60 -0
  303. package/dist/components/time-field/time-field.schema.d.ts +3 -0
  304. package/dist/components/time-field/time-field.schema.js +107 -0
  305. package/dist/components/time-field/time-field.svelte.d.ts +18 -0
  306. package/dist/components/time-field/time-field.types.d.ts +63 -0
  307. package/dist/components/time-field/time-field.variables.d.ts +2 -0
  308. package/dist/components/{experimental/connection-indicator/index.js → time-field/time-field.variables.js} +5 -14
  309. package/dist/components/toggle/index.js +39 -7
  310. package/dist/components/toggle/toggle.schema.js +11 -2
  311. package/dist/components/toggle/toggle.types.d.ts +2 -0
  312. package/dist/components/tooltip/index.js +3 -2
  313. package/dist/components/transfer-list/index.js +41 -11
  314. package/dist/components/transfer-list/transfer-list.css +22 -0
  315. package/dist/components/transfer-list/transfer-list.schema.js +2 -2
  316. package/dist/components/transfer-list/transfer-list.types.d.ts +2 -2
  317. package/dist/components/tree/index.js +238 -153
  318. package/dist/components/tree/tree.css +69 -0
  319. package/dist/components/tree/tree.schema.js +3 -3
  320. package/dist/components/tree/tree.types.d.ts +2 -2
  321. package/dist/components/tree-item/index.js +107 -68
  322. package/dist/components/tree-item/tree-item.schema.js +5 -5
  323. package/dist/components/tree-item/tree-item.types.d.ts +4 -4
  324. package/dist/components/virtual-list/index.js +98 -63
  325. package/dist/components/waveform/index.js +185 -164
  326. package/dist/editor/attach.d.ts +2 -2
  327. package/dist/editor/attach.js +10 -16
  328. package/dist/editor/editor.js +6 -6
  329. package/dist/editor/keymap-plugin.d.ts +2 -2
  330. package/dist/editor/keymap-plugin.js +4 -4
  331. package/dist/editor/types.d.ts +11 -11
  332. package/dist/index.d.ts +14 -12
  333. package/dist/index.js +106 -105
  334. package/dist/server/components/access-gate/index.js +176 -305
  335. package/dist/server/components/alert/alert.schema.js +4 -4
  336. package/dist/server/components/alert/index.css +1 -1
  337. package/dist/server/components/alert/index.js +4 -4
  338. package/dist/server/components/alert-dialog/index.js +9 -3
  339. package/dist/server/components/approval-card/approval-card.schema.js +217 -0
  340. package/dist/server/components/approval-card/approval-card.variables.js +12 -0
  341. package/dist/server/components/approval-card/index.css +1767 -0
  342. package/dist/server/components/approval-card/index.js +2499 -0
  343. package/dist/server/components/autocomplete/index.css +12 -1
  344. package/dist/server/components/autocomplete/index.js +34 -24
  345. package/dist/server/components/badge/badge.schema.js +6 -3
  346. package/dist/server/components/badge/index.js +71 -4
  347. package/dist/server/components/banner/banner.schema.js +2 -2
  348. package/dist/server/components/banner/index.js +3 -3
  349. package/dist/server/components/button/index.css +1 -1
  350. package/dist/server/components/capability-gate/capability-gate.schema.js +4 -4
  351. package/dist/server/components/capability-gate/index.css +10 -2
  352. package/dist/server/components/capability-gate/index.js +5 -5
  353. package/dist/server/components/chat/chat.schema.js +11 -26
  354. package/dist/server/components/chat/index.js +695 -438
  355. package/dist/server/components/chat-conversation-header/index.css +7 -1
  356. package/dist/server/components/chat-conversation-header/index.js +215 -17
  357. package/dist/server/components/chat-conversation-list/index.css +8 -0
  358. package/dist/server/components/checkbox/checkbox.schema.js +6 -1
  359. package/dist/server/components/checkbox/index.css +3 -0
  360. package/dist/server/components/checkbox/index.js +41 -4
  361. package/dist/server/components/checkbox-group/checkbox-group.schema.js +4 -4
  362. package/dist/server/components/checkbox-group/index.css +3 -0
  363. package/dist/server/components/checkbox-group/index.js +23 -4
  364. package/dist/server/components/choice-grid/index.js +2 -2
  365. package/dist/server/components/choice-grid-item/index.js +2 -2
  366. package/dist/server/components/click-away-listener/click-away-listener.schema.js +3 -3
  367. package/dist/server/components/click-away-listener/index.js +2 -2
  368. package/dist/server/components/code-block/index.css +4 -3
  369. package/dist/server/components/code-block/index.js +1 -6
  370. package/dist/server/components/collapsible/collapsible.schema.js +2 -2
  371. package/dist/server/components/collapsible/index.js +3 -3
  372. package/dist/server/components/color-field/color-field.schema.js +3 -3
  373. package/dist/server/components/color-field/index.js +61 -17
  374. package/dist/server/components/color-picker/index.js +29 -12
  375. package/dist/server/components/color-swatch-picker/index.js +29 -12
  376. package/dist/server/components/combobox/combobox.schema.js +6 -2
  377. package/dist/server/components/combobox/index.js +61 -12
  378. package/dist/server/components/command-item/command-item.schema.js +9 -1
  379. package/dist/server/components/command-item/index.css +1 -0
  380. package/dist/server/components/command-item/index.js +10 -2
  381. package/dist/server/components/command-menu/index.css +1 -0
  382. package/dist/server/components/command-menu/index.js +193 -102
  383. package/dist/server/components/command-palette/command-palette.schema.js +2 -3
  384. package/dist/server/components/command-palette/index.css +1 -0
  385. package/dist/server/components/command-palette/index.js +190 -106
  386. package/dist/server/components/confirm-dialog/index.js +9 -3
  387. package/dist/server/components/context-menu/index.css +7 -1
  388. package/dist/server/components/context-menu/index.js +244 -26
  389. package/dist/server/components/context-menu-trigger/index.js +7 -4
  390. package/dist/server/components/copy-button/index.js +1 -6
  391. package/dist/server/components/data-grid/data-grid.schema.js +3 -3
  392. package/dist/server/components/data-grid/index.css +23 -0
  393. package/dist/server/components/data-grid/index.js +9 -7
  394. package/dist/server/components/data-list/data-list.schema.js +7 -10
  395. package/dist/server/components/data-list/index.js +7 -21
  396. package/dist/server/components/data-table/index.css +20 -0
  397. package/dist/server/components/data-table/index.js +26 -16
  398. package/dist/server/components/date-range-field/date-range-field.schema.js +7 -3
  399. package/dist/server/components/date-range-field/index.js +146 -12
  400. package/dist/server/components/diff-viewer/index.js +79 -7
  401. package/dist/server/components/drawer/index.js +260 -193
  402. package/dist/server/components/dropdown/index.css +7 -1
  403. package/dist/server/components/dropdown/index.js +221 -23
  404. package/dist/server/components/dropdown-group/dropdown-group.schema.js +4 -4
  405. package/dist/server/components/dropdown-group/index.js +7 -7
  406. package/dist/server/components/dropdown-item/dropdown-item.schema.js +9 -1
  407. package/dist/server/components/dropdown-item/index.js +12 -7
  408. package/dist/server/components/dropdown-menu/index.js +197 -13
  409. package/dist/server/components/dropdown-trigger/index.js +5 -2
  410. package/dist/server/components/event-stream-viewer/event-stream-viewer.schema.js +83 -10
  411. package/dist/server/components/event-stream-viewer/index.css +323 -0
  412. package/dist/server/components/event-stream-viewer/index.js +406 -139
  413. package/dist/server/components/faceted-filter-bar/index.css +10 -1
  414. package/dist/server/components/faceted-filter-bar/index.js +24 -6
  415. package/dist/server/components/file-upload/index.css +3 -3
  416. package/dist/server/components/floating-action-button/floating-action-button.schema.js +5 -5
  417. package/dist/server/components/floating-action-button/index.css +16 -16
  418. package/dist/server/components/floating-action-button/index.js +5 -5
  419. package/dist/server/components/form-field/index.css +0 -10
  420. package/dist/server/components/form-field/index.js +2 -2
  421. package/dist/server/components/input/index.js +59 -15
  422. package/dist/server/components/input/input.schema.js +6 -1
  423. package/dist/server/components/invocation-rule-builder/index.css +51 -6
  424. package/dist/server/components/invocation-rule-builder/index.js +56 -17
  425. package/dist/server/components/invocation-rule-builder/invocation-rule-builder.schema.js +133 -35
  426. package/dist/server/components/json-schema-editor/index.css +4 -1
  427. package/dist/server/components/json-schema-editor/index.js +282 -52
  428. package/dist/server/components/json-viewer/index.css +7 -1
  429. package/dist/server/components/json-viewer/index.js +83 -11
  430. package/dist/server/components/kanban-board/index.css +42 -3
  431. package/dist/server/components/kanban-board/index.js +7 -6
  432. package/dist/server/components/keyboard-shortcuts/index.css +2 -2
  433. package/dist/server/components/keyboard-shortcuts/index.js +2 -2
  434. package/dist/server/components/label/index.css +0 -10
  435. package/dist/server/components/label/index.js +2 -2
  436. package/dist/server/components/load-more/index.css +12 -4
  437. package/dist/server/components/load-more/index.js +5 -5
  438. package/dist/server/components/load-more/load-more.schema.js +4 -4
  439. package/dist/server/components/locale-provider/index.js +55 -0
  440. package/dist/server/components/locale-provider/locale-provider.schema.js +35 -0
  441. package/dist/server/components/locale-provider/locale-provider.variables.js +12 -0
  442. package/dist/server/components/markdown-editor/index.js +297 -60
  443. package/dist/server/components/markdown-editor/markdown-editor.schema.js +4 -4
  444. package/dist/server/components/masonry/masonry.schema.js +4 -3
  445. package/dist/server/components/matrix-chart/index.js +62 -39
  446. package/dist/server/components/media-controls/index.css +11 -3
  447. package/dist/server/components/media-controls/index.js +7 -7
  448. package/dist/server/components/media-controls/media-controls.schema.js +4 -4
  449. package/dist/server/components/menu-bar/index.css +15 -1
  450. package/dist/server/components/modal/index.js +9 -3
  451. package/dist/server/components/navigation-bar/index.js +3 -3
  452. package/dist/server/components/navigation-bar/navigation-bar.schema.js +2 -2
  453. package/dist/server/components/number-input/index.js +56 -18
  454. package/dist/server/components/number-input/number-input.schema.js +4 -3
  455. package/dist/server/components/payload-inspector/index.css +616 -0
  456. package/dist/server/components/payload-inspector/index.js +181 -22
  457. package/dist/server/components/payload-inspector/payload-inspector.schema.js +27 -15
  458. package/dist/server/components/permission-matrix/index.css +8 -0
  459. package/dist/server/components/phone-input/index.js +21 -3
  460. package/dist/server/components/phone-input/phone-input.schema.js +2 -2
  461. package/dist/server/components/pin-input/index.js +12 -7
  462. package/dist/server/components/pin-input/pin-input.schema.js +9 -2
  463. package/dist/server/components/popover/index.js +9 -3
  464. package/dist/server/components/pricing-card/index.js +22 -7
  465. package/dist/server/components/radio-group/index.css +3 -0
  466. package/dist/server/components/radio-group/index.js +24 -3
  467. package/dist/server/components/radio-group/radio-group.schema.js +3 -3
  468. package/dist/server/components/rating/rating.schema.js +9 -2
  469. package/dist/server/components/review-editor/index.js +426 -80
  470. package/dist/server/components/run-step-timeline/index.css +503 -6
  471. package/dist/server/components/run-step-timeline/index.js +455 -109
  472. package/dist/server/components/run-step-timeline/run-step-timeline.schema.js +351 -21
  473. package/dist/server/components/schema-form/index.css +11 -69
  474. package/dist/server/components/schema-form/index.js +1291 -218
  475. package/dist/server/components/schema-form/schema-form.schema.js +10 -3
  476. package/dist/server/components/scroll-area/index.js +3 -3
  477. package/dist/server/components/scroll-area/scroll-area.schema.js +2 -2
  478. package/dist/server/components/secret-value-field/index.js +4 -4
  479. package/dist/server/components/segmented-control/index.css +15 -1
  480. package/dist/server/components/select/index.css +9 -2
  481. package/dist/server/components/select/index.js +9 -2
  482. package/dist/server/components/selection-popover/index.js +9 -3
  483. package/dist/server/components/share-card/index.css +11 -3
  484. package/dist/server/components/share-card/index.js +1 -5
  485. package/dist/server/components/sheet/index.js +265 -195
  486. package/dist/server/components/sidebar/index.js +274 -207
  487. package/dist/server/components/sidebar/sidebar.schema.js +2 -2
  488. package/dist/server/components/slider/index.css +13 -9
  489. package/dist/server/components/slider/index.js +173 -4
  490. package/dist/server/components/sortable-list/index.css +1 -1
  491. package/dist/server/components/spectrogram/index.js +68 -45
  492. package/dist/server/components/spectrum-chart/index.js +54 -31
  493. package/dist/server/components/speed-dial/index.css +3 -3
  494. package/dist/server/components/speed-dial/index.js +8 -8
  495. package/dist/server/components/speed-dial-action/index.js +6 -6
  496. package/dist/server/components/stat/index.js +26 -4
  497. package/dist/server/components/stat/stat.schema.js +2 -2
  498. package/dist/server/components/stat-group/index.css +1 -1
  499. package/dist/server/components/stat-group/index.js +26 -4
  500. package/dist/server/components/status-dot/index.css +45 -1
  501. package/dist/server/components/status-dot/index.js +35 -7
  502. package/dist/server/components/status-dot/status-dot.schema.js +12 -5
  503. package/dist/server/components/steps/index.css +3 -3
  504. package/dist/server/components/table/index.css +8 -0
  505. package/dist/server/components/table/index.js +22 -16
  506. package/dist/server/components/table-header/index.js +6 -6
  507. package/dist/server/components/table-header/table-header.schema.js +3 -3
  508. package/dist/server/components/table-header-cell/index.js +9 -3
  509. package/dist/server/components/table-row/index.js +7 -7
  510. package/dist/server/components/table-row/table-row.schema.js +3 -3
  511. package/dist/server/components/tabs/index.js +18 -4
  512. package/dist/server/components/tabs/tabs.schema.js +6 -1
  513. package/dist/server/components/textarea/index.css +16 -1
  514. package/dist/server/components/textarea/index.js +9 -2
  515. package/dist/server/components/time-field/index.css +58 -0
  516. package/dist/server/components/time-field/index.js +291 -0
  517. package/dist/server/components/time-field/time-field.schema.js +88 -0
  518. package/dist/server/components/time-field/time-field.variables.js +12 -0
  519. package/dist/server/components/toggle/index.js +40 -7
  520. package/dist/server/components/toggle/toggle.schema.js +11 -2
  521. package/dist/server/components/transfer-list/index.css +16 -0
  522. package/dist/server/components/transfer-list/index.js +37 -11
  523. package/dist/server/components/transfer-list/transfer-list.schema.js +2 -2
  524. package/dist/server/components/tree/index.css +68 -0
  525. package/dist/server/components/tree/index.js +67 -20
  526. package/dist/server/components/tree/tree.schema.js +3 -3
  527. package/dist/server/components/tree-item/index.js +34 -13
  528. package/dist/server/components/tree-item/tree-item.schema.js +5 -5
  529. package/dist/server/components/virtual-list/index.js +36 -13
  530. package/dist/server/components/waveform/index.js +51 -28
  531. package/dist/server/editor/attach.d.ts +2 -2
  532. package/dist/server/editor/attach.js +10 -16
  533. package/dist/server/editor/editor.js +6 -6
  534. package/dist/server/editor/keymap-plugin.d.ts +2 -2
  535. package/dist/server/editor/keymap-plugin.js +4 -4
  536. package/dist/server/editor/types.d.ts +11 -11
  537. package/dist/server/index.css +2033 -1463
  538. package/dist/server/index.js +7203 -5135
  539. package/dist/utilities/attachments.d.ts +6 -6
  540. package/dist/utilities/value-change.d.ts +2 -0
  541. package/package.json +96 -63
  542. package/src/_internal/locale-context.ts +21 -0
  543. package/src/_internal/text-direction.ts +213 -0
  544. package/src/_internal/tree-context.ts +2 -0
  545. package/src/components/_internal/create-command-list-state.svelte.ts +171 -0
  546. package/src/components/_internal/create-sliding-dialog-state.svelte.ts +170 -0
  547. package/src/components/_radio/README.md +1 -1
  548. package/src/components/access-gate/access-gate-inline.svelte +3 -1
  549. package/src/components/alert/README.md +8 -8
  550. package/src/components/alert/alert.css +1 -1
  551. package/src/components/alert/alert.examples.json +4 -4
  552. package/src/components/alert/alert.svelte +3 -5
  553. package/src/components/alert/alert.types.ts +4 -4
  554. package/src/components/approval-card/README.md +92 -0
  555. package/src/components/approval-card/approval-card-state.ts +24 -0
  556. package/src/components/approval-card/approval-card.css +239 -0
  557. package/src/components/approval-card/approval-card.examples.json +25 -0
  558. package/src/components/approval-card/approval-card.svelte +583 -0
  559. package/src/components/approval-card/approval-card.types.ts +180 -0
  560. package/src/components/approval-card/index.ts +16 -0
  561. package/src/components/autocomplete/autocomplete.css +12 -1
  562. package/src/components/autocomplete/autocomplete.svelte +53 -27
  563. package/src/components/badge/README.md +8 -7
  564. package/src/components/badge/badge.svelte +80 -3
  565. package/src/components/badge/badge.types.ts +36 -13
  566. package/src/components/badge/index.ts +1 -1
  567. package/src/components/banner/README.md +2 -2
  568. package/src/components/banner/banner.examples.json +19 -0
  569. package/src/components/banner/banner.svelte +2 -2
  570. package/src/components/banner/banner.types.ts +1 -1
  571. package/src/components/button/button.css +1 -1
  572. package/src/components/callout/callout.examples.json +19 -0
  573. package/src/components/capability-gate/README.md +3 -3
  574. package/src/components/capability-gate/capability-gate.css +15 -2
  575. package/src/components/capability-gate/capability-gate.examples.json +1 -1
  576. package/src/components/capability-gate/capability-gate.svelte +7 -7
  577. package/src/components/capability-gate/capability-gate.types.ts +6 -6
  578. package/src/components/chat/README.md +6 -10
  579. package/src/components/chat/chat.examples.json +8 -8
  580. package/src/components/chat/chat.types.ts +31 -15
  581. package/src/components/chat/container/chat-events.ts +2 -2
  582. package/src/components/chat/container/chat-history-trigger.svelte +9 -1
  583. package/src/components/chat/container/chat.svelte +47 -46
  584. package/src/components/chat/container/use-chat-scroll-state.svelte.ts +21 -18
  585. package/src/components/chat/container/use-chat-unread-state.svelte.ts +19 -19
  586. package/src/components/chat/index.ts +1 -1
  587. package/src/components/chat/input/chat-input.svelte +35 -13
  588. package/src/components/chat/message/image-lightbox.svelte +38 -15
  589. package/src/components/chat/message/message-attachments.svelte +1 -1
  590. package/src/components/chat/message/parts/reasoning-part.svelte +8 -0
  591. package/src/components/chat/message/parts/tool-approval-part.svelte +22 -9
  592. package/src/components/chat-conversation-list/chat-conversation-list.css +13 -0
  593. package/src/components/checkbox/README.md +1 -0
  594. package/src/components/checkbox/checkbox.css +3 -0
  595. package/src/components/checkbox/checkbox.svelte +44 -2
  596. package/src/components/checkbox/checkbox.types.ts +2 -0
  597. package/src/components/checkbox-group/README.md +2 -2
  598. package/src/components/checkbox-group/checkbox-group.css +3 -0
  599. package/src/components/checkbox-group/checkbox-group.examples.json +13 -0
  600. package/src/components/checkbox-group/checkbox-group.svelte +23 -2
  601. package/src/components/checkbox-group/checkbox-group.types.ts +12 -7
  602. package/src/components/choice-grid-item/choice-grid-item.svelte +1 -1
  603. package/src/components/click-away-listener/README.md +2 -2
  604. package/src/components/click-away-listener/click-away-listener.examples.json +1 -1
  605. package/src/components/click-away-listener/click-away-listener.svelte +2 -2
  606. package/src/components/click-away-listener/click-away-listener.types.ts +3 -3
  607. package/src/components/code-block/code-block.css +4 -3
  608. package/src/components/collapsible/README.md +2 -2
  609. package/src/components/collapsible/collapsible.svelte +2 -2
  610. package/src/components/collapsible/collapsible.types.ts +5 -2
  611. package/src/components/color-field/README.md +18 -18
  612. package/src/components/color-field/color-field.svelte +2 -2
  613. package/src/components/color-field/color-field.types.ts +2 -2
  614. package/src/components/color-swatch-picker/color-swatch-picker.examples.json +13 -0
  615. package/src/components/color-swatch-picker/color-swatch-picker.svelte +38 -24
  616. package/src/components/combobox/README.md +2 -1
  617. package/src/components/combobox/combobox.svelte +38 -17
  618. package/src/components/combobox/combobox.types.ts +7 -1
  619. package/src/components/command-item/README.md +13 -11
  620. package/src/components/command-item/command-item.css +10 -0
  621. package/src/components/command-item/command-item.svelte +11 -0
  622. package/src/components/command-item/command-item.types.ts +4 -0
  623. package/src/components/command-menu/command-menu.svelte +21 -102
  624. package/src/components/command-palette/README.md +12 -12
  625. package/src/components/command-palette/command-palette.examples.json +3 -3
  626. package/src/components/command-palette/command-palette.svelte +17 -134
  627. package/src/components/command-palette/command-palette.types.ts +1 -2
  628. package/src/components/context-menu/context-menu.context.ts +2 -0
  629. package/src/components/context-menu/context-menu.svelte +35 -9
  630. package/src/components/context-menu-trigger/context-menu-trigger.svelte +9 -6
  631. package/src/components/copy-button/copy-button.svelte +4 -3
  632. package/src/components/data-grid/README.md +3 -3
  633. package/src/components/data-grid/_internal/column-model.svelte.ts +2 -0
  634. package/src/components/data-grid/data-grid.css +25 -0
  635. package/src/components/data-grid/data-grid.svelte +7 -7
  636. package/src/components/data-grid/data-grid.types.ts +8 -2
  637. package/src/components/data-list/README.md +9 -9
  638. package/src/components/data-list/data-list.examples.json +1 -1
  639. package/src/components/data-list/data-list.svelte +3 -9
  640. package/src/components/data-list/data-list.types.ts +5 -9
  641. package/src/components/data-table/data-table.css +13 -0
  642. package/src/components/data-table/data-table.svelte +13 -3
  643. package/src/components/date-range-field/README.md +9 -8
  644. package/src/components/date-range-field/date-range-field.svelte +193 -19
  645. package/src/components/date-range-field/date-range-field.types.ts +16 -10
  646. package/src/components/date-range-field/index.ts +1 -0
  647. package/src/components/diff-viewer/diff-front-matter.svelte +2 -2
  648. package/src/components/diff-viewer/diff-line.svelte +32 -8
  649. package/src/components/diff-viewer/diff-toolbar.svelte +3 -3
  650. package/src/components/diff-viewer/diff-viewer.svelte +4 -4
  651. package/src/components/diff-viewer/diff-viewer.types.ts +3 -3
  652. package/src/components/diff-viewer/index.ts +1 -1
  653. package/src/components/drawer/drawer.svelte +26 -145
  654. package/src/components/dropdown/dropdown.css +7 -1
  655. package/src/components/dropdown/dropdown.types.ts +3 -0
  656. package/src/components/dropdown-group/README.md +6 -6
  657. package/src/components/dropdown-group/dropdown-group.svelte +8 -8
  658. package/src/components/dropdown-group/dropdown-group.types.ts +4 -4
  659. package/src/components/dropdown-item/README.md +2 -0
  660. package/src/components/dropdown-item/dropdown-item.svelte +14 -11
  661. package/src/components/dropdown-item/dropdown-item.types.ts +5 -0
  662. package/src/components/dropdown-menu/dropdown-menu.svelte +42 -9
  663. package/src/components/dropdown-trigger/dropdown-trigger.svelte +4 -6
  664. package/src/components/event-stream-viewer/README.md +38 -16
  665. package/src/components/event-stream-viewer/event-stream-viewer-keys.ts +74 -0
  666. package/src/components/event-stream-viewer/event-stream-viewer.css +46 -0
  667. package/src/components/event-stream-viewer/event-stream-viewer.examples.json +6 -0
  668. package/src/components/event-stream-viewer/event-stream-viewer.svelte +262 -69
  669. package/src/components/event-stream-viewer/event-stream-viewer.types.ts +130 -3
  670. package/src/components/event-stream-viewer/index.ts +6 -0
  671. package/src/components/faceted-filter-bar/faceted-filter-bar.css +9 -0
  672. package/src/components/faceted-filter-bar/faceted-filter-bar.svelte +31 -5
  673. package/src/components/file-upload/file-upload.css +5 -5
  674. package/src/components/file-upload/file-upload.examples.json +13 -0
  675. package/src/components/floating-action-button/README.md +9 -9
  676. package/src/components/floating-action-button/floating-action-button.css +22 -22
  677. package/src/components/floating-action-button/floating-action-button.examples.json +1 -1
  678. package/src/components/floating-action-button/floating-action-button.svelte +7 -7
  679. package/src/components/floating-action-button/floating-action-button.types.ts +21 -21
  680. package/src/components/floating-action-button/index.ts +1 -1
  681. package/src/components/form-field/form-field.css +3 -13
  682. package/src/components/form-field/form-field.svelte +4 -1
  683. package/src/components/image/image.examples.json +13 -0
  684. package/src/components/input/README.md +16 -15
  685. package/src/components/input/input.examples.json +1 -1
  686. package/src/components/input/input.svelte +65 -28
  687. package/src/components/input/input.types.ts +2 -0
  688. package/src/components/invocation-rule-builder/README.md +14 -14
  689. package/src/components/invocation-rule-builder/index.ts +1 -0
  690. package/src/components/invocation-rule-builder/invocation-rule-builder.css +63 -6
  691. package/src/components/invocation-rule-builder/invocation-rule-builder.svelte +73 -16
  692. package/src/components/invocation-rule-builder/invocation-rule-builder.types.ts +99 -8
  693. package/src/components/json-schema-editor/form-view.svelte +3 -1
  694. package/src/components/json-schema-editor/json-schema-editor-impl.svelte +30 -18
  695. package/src/components/json-schema-editor/json-schema-editor.css +6 -1
  696. package/src/components/json-schema-editor/json-schema-toolbar.svelte +6 -0
  697. package/src/components/json-schema-editor/json-view.svelte +1 -1
  698. package/src/components/json-schema-editor/property-editor.svelte +38 -2
  699. package/src/components/json-schema-editor/property-list-validation.ts +10 -0
  700. package/src/components/json-schema-editor/property-list.svelte +48 -3
  701. package/src/components/json-viewer/_json-viewer-node.svelte +55 -9
  702. package/src/components/json-viewer/json-viewer.css +11 -0
  703. package/src/components/json-viewer/json-viewer.svelte +63 -1
  704. package/src/components/kanban-board/kanban-board.css +56 -3
  705. package/src/components/kanban-board/kanban-board.svelte +10 -3
  706. package/src/components/keyboard-shortcuts/keyboard-shortcuts.css +2 -2
  707. package/src/components/keyboard-shortcuts/keyboard-shortcuts.svelte +1 -1
  708. package/src/components/label/README.md +1 -1
  709. package/src/components/label/label.css +2 -9
  710. package/src/components/label/label.svelte +4 -2
  711. package/src/components/load-more/README.md +4 -4
  712. package/src/components/load-more/load-more.css +13 -5
  713. package/src/components/load-more/load-more.examples.json +2 -2
  714. package/src/components/load-more/load-more.svelte +4 -4
  715. package/src/components/load-more/load-more.types.ts +3 -3
  716. package/src/components/locale-provider/README.md +43 -0
  717. package/src/components/locale-provider/index.ts +5 -0
  718. package/src/components/locale-provider/locale-provider.svelte +40 -0
  719. package/src/components/locale-provider/locale-provider.types.ts +21 -0
  720. package/src/components/markdown-editor/README.md +3 -3
  721. package/src/components/markdown-editor/editor-toolbar/editor-toolbar.svelte +5 -2
  722. package/src/components/markdown-editor/editor-toolbar/link-popover.svelte +13 -0
  723. package/src/components/markdown-editor/editor-toolbar/toolbar-dropdown.svelte +2 -0
  724. package/src/components/markdown-editor/markdown-editor.svelte +14 -12
  725. package/src/components/markdown-editor/markdown-editor.types.ts +4 -4
  726. package/src/components/masonry/README.md +7 -7
  727. package/src/components/masonry/masonry.types.ts +24 -2
  728. package/src/components/matrix-chart/matrix-chart.svelte +7 -21
  729. package/src/components/media-controls/README.md +3 -3
  730. package/src/components/media-controls/media-controls.css +15 -4
  731. package/src/components/media-controls/media-controls.examples.json +1 -1
  732. package/src/components/media-controls/media-controls.svelte +6 -6
  733. package/src/components/media-controls/media-controls.types.ts +10 -7
  734. package/src/components/menu-bar/menu-bar.css +11 -0
  735. package/src/components/menu-bar/menu-bar.svelte +81 -12
  736. package/src/components/navigation-bar/README.md +1 -1
  737. package/src/components/navigation-bar/navigation-bar.examples.json +1 -1
  738. package/src/components/navigation-bar/navigation-bar.svelte +2 -2
  739. package/src/components/navigation-bar/navigation-bar.types.ts +1 -1
  740. package/src/components/number-input/README.md +18 -18
  741. package/src/components/number-input/number-input.examples.json +13 -0
  742. package/src/components/number-input/number-input.svelte +77 -38
  743. package/src/components/number-input/number-input.types.ts +15 -5
  744. package/src/components/pagination/README.md +3 -1
  745. package/src/components/payload-inspector/README.md +11 -11
  746. package/src/components/payload-inspector/index.ts +2 -0
  747. package/src/components/payload-inspector/payload-inspector.css +6 -0
  748. package/src/components/payload-inspector/payload-inspector.svelte +22 -4
  749. package/src/components/payload-inspector/payload-inspector.types.ts +54 -3
  750. package/src/components/permission-matrix/permission-matrix.css +10 -0
  751. package/src/components/phone-input/README.md +1 -1
  752. package/src/components/phone-input/phone-input.svelte +7 -1
  753. package/src/components/phone-input/phone-input.types.ts +3 -2
  754. package/src/components/pin-input/README.md +19 -19
  755. package/src/components/pin-input/pin-input.svelte +16 -12
  756. package/src/components/pin-input/pin-input.types.ts +10 -1
  757. package/src/components/portal/portal.utilities.svelte.ts +4 -1
  758. package/src/components/pricing-card/pricing-card.svelte +26 -1
  759. package/src/components/radio-group/README.md +12 -12
  760. package/src/components/radio-group/radio-group.css +3 -0
  761. package/src/components/radio-group/radio-group.examples.json +3 -3
  762. package/src/components/radio-group/radio-group.svelte +22 -2
  763. package/src/components/radio-group/radio-group.types.ts +6 -2
  764. package/src/components/rating/README.md +18 -18
  765. package/src/components/rating/rating.svelte +0 -8
  766. package/src/components/rating/rating.types.ts +6 -0
  767. package/src/components/review-editor/comment-list.svelte +1 -1
  768. package/src/components/review-editor/index.ts +1 -1
  769. package/src/components/review-editor/review-editor-controls.svelte +8 -3
  770. package/src/components/review-editor/review-editor-impl.svelte +11 -7
  771. package/src/components/review-editor/review-editor-selection-types.ts +1 -1
  772. package/src/components/review-editor/review-editor-selection.svelte.ts +1 -1
  773. package/src/components/review-editor/review-editor-state.svelte.ts +1 -1
  774. package/src/components/review-editor/review-editor-threads.svelte.ts +2 -2
  775. package/src/components/review-editor/review-editor.types.ts +91 -3
  776. package/src/components/review-editor/thread-popover.svelte +1 -1
  777. package/src/components/run-step-timeline/README.md +53 -6
  778. package/src/components/run-step-timeline/index.ts +6 -0
  779. package/src/components/run-step-timeline/run-step-timeline.css +25 -5
  780. package/src/components/run-step-timeline/run-step-timeline.examples.json +3 -3
  781. package/src/components/run-step-timeline/run-step-timeline.svelte +314 -78
  782. package/src/components/run-step-timeline/run-step-timeline.types.ts +190 -3
  783. package/src/components/schema-form/README.md +9 -9
  784. package/src/components/schema-form/index.ts +0 -1
  785. package/src/components/schema-form/schema-form-async.fixture.ts +101 -0
  786. package/src/components/schema-form/schema-form-body.svelte +646 -0
  787. package/src/components/schema-form/schema-form-model.ts +4 -44
  788. package/src/components/schema-form/schema-form-validation.ts +83 -46
  789. package/src/components/schema-form/schema-form.css +12 -74
  790. package/src/components/schema-form/schema-form.examples.json +0 -6
  791. package/src/components/schema-form/schema-form.svelte +30 -598
  792. package/src/components/schema-form/schema-form.types.ts +16 -12
  793. package/src/components/scroll-area/README.md +1 -1
  794. package/src/components/scroll-area/scroll-area.examples.json +3 -3
  795. package/src/components/scroll-area/scroll-area.svelte +5 -5
  796. package/src/components/scroll-area/scroll-area.types.ts +1 -1
  797. package/src/components/secret-value-field/secret-value-field.svelte +10 -6
  798. package/src/components/segmented-control/segmented-control.css +22 -1
  799. package/src/components/segmented-control/segmented-control.examples.json +2 -2
  800. package/src/components/select/select.css +9 -2
  801. package/src/components/select/select.svelte +6 -1
  802. package/src/components/selection-popover/selection-popover.examples.json +1 -1
  803. package/src/components/share-card/share-card.css +15 -4
  804. package/src/components/share-card/share-card.svelte +2 -4
  805. package/src/components/sheet/sheet.svelte +30 -145
  806. package/src/components/shortcut-hint/shortcut-hint.svelte +1 -1
  807. package/src/components/side-navigation/side-navigation.examples.json +1 -1
  808. package/src/components/sidebar/README.md +6 -2
  809. package/src/components/sidebar/sidebar.examples.json +1 -1
  810. package/src/components/sidebar/sidebar.svelte +4 -4
  811. package/src/components/sidebar/sidebar.types.ts +1 -1
  812. package/src/components/slider/slider.css +14 -9
  813. package/src/components/slider/slider.svelte +33 -2
  814. package/src/components/sortable-list/README.md +18 -1
  815. package/src/components/sortable-list/sortable-list.css +1 -1
  816. package/src/components/sortable-list/sortable-list.examples.json +13 -0
  817. package/src/components/spectrogram/spectrogram.examples.json +1 -0
  818. package/src/components/spectrogram/spectrogram.svelte +7 -19
  819. package/src/components/spectrum-chart/spectrum-chart.svelte +8 -20
  820. package/src/components/speed-dial/speed-dial.css +3 -3
  821. package/src/components/speed-dial/speed-dial.examples.json +1 -1
  822. package/src/components/speed-dial/speed-dial.svelte +2 -2
  823. package/src/components/speed-dial-action/speed-dial-action.svelte +1 -1
  824. package/src/components/stacked-list-item/stacked-list-item.examples.json +1 -1
  825. package/src/components/stat/README.md +1 -1
  826. package/src/components/stat/stat.svelte +7 -2
  827. package/src/components/stat/stat.types.ts +2 -2
  828. package/src/components/stat-group/stat-group.css +1 -1
  829. package/src/components/status-dot/README.md +9 -7
  830. package/src/components/status-dot/index.ts +6 -1
  831. package/src/components/status-dot/status-dot.css +45 -1
  832. package/src/components/status-dot/status-dot.examples.json +1 -1
  833. package/src/components/status-dot/status-dot.svelte +57 -8
  834. package/src/components/status-dot/status-dot.types.ts +17 -6
  835. package/src/components/steps/steps.css +3 -3
  836. package/src/components/table/table.css +10 -0
  837. package/src/components/table/table.examples.json +1 -1
  838. package/src/components/table/table.svelte +2 -2
  839. package/src/components/table/table.types.ts +3 -3
  840. package/src/components/table-header/README.md +2 -2
  841. package/src/components/table-header/table-header.svelte +5 -5
  842. package/src/components/table-header/table-header.types.ts +2 -2
  843. package/src/components/table-header-cell/table-header-cell.svelte +13 -2
  844. package/src/components/table-row/README.md +2 -2
  845. package/src/components/table-row/table-row.svelte +6 -6
  846. package/src/components/table-row/table-row.types.ts +6 -6
  847. package/src/components/tabs/README.md +1 -0
  848. package/src/components/tabs/tabs.svelte +11 -3
  849. package/src/components/tabs/tabs.types.ts +2 -0
  850. package/src/components/textarea/textarea.css +16 -1
  851. package/src/components/textarea/textarea.svelte +6 -1
  852. package/src/components/time-field/README.md +60 -0
  853. package/src/components/time-field/index.ts +6 -0
  854. package/src/components/time-field/time-field.css +60 -0
  855. package/src/components/time-field/time-field.examples.json +13 -0
  856. package/src/components/time-field/time-field.svelte +277 -0
  857. package/src/components/time-field/time-field.types.ts +70 -0
  858. package/src/components/toggle/README.md +12 -11
  859. package/src/components/toggle/toggle.svelte +19 -6
  860. package/src/components/toggle/toggle.types.ts +2 -0
  861. package/src/components/transfer-list/README.md +1 -1
  862. package/src/components/transfer-list/transfer-list.css +22 -0
  863. package/src/components/transfer-list/transfer-list.svelte +44 -10
  864. package/src/components/transfer-list/transfer-list.types.ts +5 -2
  865. package/src/components/tree/README.md +2 -2
  866. package/src/components/tree/tree.css +69 -0
  867. package/src/components/tree/tree.examples.json +1 -1
  868. package/src/components/tree/tree.svelte +52 -9
  869. package/src/components/tree/tree.types.ts +2 -2
  870. package/src/components/tree-item/README.md +4 -4
  871. package/src/components/tree-item/tree-item.svelte +42 -12
  872. package/src/components/tree-item/tree-item.types.ts +4 -4
  873. package/src/components/virtual-list/virtual-list.svelte +5 -5
  874. package/src/components/waveform/waveform.svelte +7 -19
  875. package/src/index.ts +40 -16
  876. package/src/styles/components/_field-label.css +20 -0
  877. package/src/styles/components/_input-frame.css +2 -1
  878. package/src/styles/components.css +3 -2
  879. package/src/styles/index.css +1 -0
  880. package/src/styles/tokens-base.css +3 -0
  881. package/src/utilities/attachments.ts +15 -12
  882. package/src/utilities/value-change.ts +11 -0
  883. package/dist/components/connection-indicator/connection-indicator.css +0 -63
  884. package/dist/components/connection-indicator/connection-indicator.svelte.d.ts +0 -18
  885. package/dist/components/connection-indicator/connection-indicator.types.d.ts +0 -14
  886. package/dist/components/connection-indicator/index.d.ts +0 -5
  887. package/dist/components/connection-indicator/index.js +0 -75
  888. package/dist/components/experimental/connection-indicator/index.d.ts +0 -2
  889. package/dist/components/review-editor/review-editor-types.d.ts +0 -77
  890. package/dist/components/subscription-badge/index.d.ts +0 -5
  891. package/dist/components/subscription-badge/index.js +0 -353
  892. package/dist/components/subscription-badge/subscription-badge.css +0 -18
  893. package/dist/components/subscription-badge/subscription-badge.schema.js +0 -47
  894. package/dist/components/subscription-badge/subscription-badge.svelte.d.ts +0 -19
  895. package/dist/components/subscription-badge/subscription-badge.types.d.ts +0 -28
  896. package/dist/server/components/connection-indicator/connection-indicator.schema.js +0 -31
  897. package/dist/server/components/connection-indicator/connection-indicator.variables.js +0 -12
  898. package/dist/server/components/connection-indicator/index.css +0 -60
  899. package/dist/server/components/connection-indicator/index.js +0 -42
  900. package/dist/server/components/experimental/connection-indicator/index.js +0 -23
  901. package/dist/server/components/subscription-badge/index.css +0 -2
  902. package/dist/server/components/subscription-badge/index.js +0 -308
  903. package/dist/server/components/subscription-badge/subscription-badge.schema.js +0 -28
  904. package/dist/server/components/subscription-badge/subscription-badge.variables.js +0 -12
  905. package/src/components/connection-indicator/README.md +0 -41
  906. package/src/components/connection-indicator/connection-indicator.css +0 -63
  907. package/src/components/connection-indicator/connection-indicator.svelte +0 -44
  908. package/src/components/connection-indicator/connection-indicator.types.ts +0 -18
  909. package/src/components/connection-indicator/index.ts +0 -6
  910. package/src/components/experimental/connection-indicator/index.ts +0 -20
  911. package/src/components/review-editor/review-editor-types.ts +0 -92
  912. package/src/components/subscription-badge/README.md +0 -50
  913. package/src/components/subscription-badge/index.ts +0 -6
  914. package/src/components/subscription-badge/subscription-badge.css +0 -18
  915. package/src/components/subscription-badge/subscription-badge.examples.json +0 -19
  916. package/src/components/subscription-badge/subscription-badge.svelte +0 -69
  917. package/src/components/subscription-badge/subscription-badge.types.ts +0 -37
  918. /package/dist/components/{connection-indicator/connection-indicator.schema.d.ts → approval-card/approval-card.schema.d.ts} +0 -0
  919. /package/dist/components/{connection-indicator/connection-indicator.variables.d.ts → approval-card/approval-card.variables.d.ts} +0 -0
  920. /package/dist/components/{subscription-badge/subscription-badge.schema.d.ts → locale-provider/locale-provider.schema.d.ts} +0 -0
  921. /package/dist/components/{subscription-badge/subscription-badge.variables.d.ts → locale-provider/locale-provider.variables.d.ts} +0 -0
@@ -4,44 +4,21 @@ var __require = /* @__PURE__ */ createRequire(import.meta.url);
4
4
 
5
5
  // src/components/event-stream-viewer/event-stream-viewer.svelte
6
6
  import * as $9 from "svelte/internal/server";
7
+ import { SvelteSet } from "svelte/reactivity";
7
8
 
8
9
  // src/utilities/class-names.ts
9
10
  function classNames(...parts) {
10
11
  return parts.filter((part) => typeof part === "string" && part.length > 0).join(" ");
11
12
  }
12
13
 
13
- // src/components/connection-indicator/connection-indicator.svelte
14
- import * as $ from "svelte/internal/server";
15
- function Connection_indicator($$renderer, $$props) {
16
- $$renderer.component(($$renderer2) => {
17
- let { state, label, class: className, $$slots, $$events, ...rest } = $$props;
18
- const defaultLabels = {
19
- connected: "Connected",
20
- connecting: "Connecting",
21
- disconnected: "Disconnected",
22
- error: "Error"
23
- };
24
- const visibleLabel = $.derived(() => label ?? defaultLabels[state]);
25
- $$renderer2.push(`<span${$.attributes({
26
- ...rest,
27
- class: $.clsx(classNames("cinder-connection-indicator", className)),
28
- "data-cinder-state": state,
29
- role: "status",
30
- "aria-live": "polite",
31
- "aria-atomic": "true"
32
- })}><span class="cinder-connection-indicator__dot" aria-hidden="true"></span> <span class="cinder-connection-indicator__label">${$.escape(visibleLabel())}</span></span>`);
33
- });
34
- }
35
-
36
14
  // src/components/copy-button/copy-button.svelte
37
- import * as $6 from "svelte/internal/server";
38
- import { onDestroy } from "svelte";
15
+ import * as $5 from "svelte/internal/server";
39
16
 
40
17
  // ../../node_modules/lucide-svelte/dist/icons/check.svelte
41
- import * as $3 from "svelte/internal/server";
18
+ import * as $2 from "svelte/internal/server";
42
19
 
43
20
  // ../../node_modules/lucide-svelte/dist/Icon.svelte
44
- import * as $2 from "svelte/internal/server";
21
+ import * as $ from "svelte/internal/server";
45
22
 
46
23
  // ../../node_modules/lucide-svelte/dist/defaultAttributes.js
47
24
  var defaultAttributes = {
@@ -59,8 +36,8 @@ var defaultAttributes_default = defaultAttributes;
59
36
 
60
37
  // ../../node_modules/lucide-svelte/dist/Icon.svelte
61
38
  function Icon($$renderer, $$props) {
62
- const $$sanitized_props = $2.sanitize_props($$props);
63
- const $$restProps = $2.rest_props($$sanitized_props, [
39
+ const $$sanitized_props = $.sanitize_props($$props);
40
+ const $$restProps = $.rest_props($$sanitized_props, [
64
41
  "name",
65
42
  "color",
66
43
  "size",
@@ -69,35 +46,35 @@ function Icon($$renderer, $$props) {
69
46
  "iconNode"
70
47
  ]);
71
48
  $$renderer.component(($$renderer2) => {
72
- let name = $2.fallback($$props["name"], undefined);
73
- let color = $2.fallback($$props["color"], "currentColor");
74
- let size = $2.fallback($$props["size"], 24);
75
- let strokeWidth = $2.fallback($$props["strokeWidth"], 2);
76
- let absoluteStrokeWidth = $2.fallback($$props["absoluteStrokeWidth"], false);
77
- let iconNode = $2.fallback($$props["iconNode"], () => [], true);
49
+ let name = $.fallback($$props["name"], undefined);
50
+ let color = $.fallback($$props["color"], "currentColor");
51
+ let size = $.fallback($$props["size"], 24);
52
+ let strokeWidth = $.fallback($$props["strokeWidth"], 2);
53
+ let absoluteStrokeWidth = $.fallback($$props["absoluteStrokeWidth"], false);
54
+ let iconNode = $.fallback($$props["iconNode"], () => [], true);
78
55
  const mergeClasses = (...classes) => classes.filter((className, index, array) => {
79
56
  return Boolean(className) && array.indexOf(className) === index;
80
57
  }).join(" ");
81
- $$renderer2.push(`<svg${$2.attributes({
58
+ $$renderer2.push(`<svg${$.attributes({
82
59
  ...defaultAttributes_default,
83
60
  ...$$restProps,
84
61
  width: size,
85
62
  height: size,
86
63
  stroke: color,
87
64
  "stroke-width": absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,
88
- class: $2.clsx(mergeClasses("lucide-icon", "lucide", name ? `lucide-${name}` : "", $$sanitized_props.class))
65
+ class: $.clsx(mergeClasses("lucide-icon", "lucide", name ? `lucide-${name}` : "", $$sanitized_props.class))
89
66
  }, undefined, undefined, undefined, 3)}><!--[-->`);
90
- const each_array = $2.ensure_array_like(iconNode);
67
+ const each_array = $.ensure_array_like(iconNode);
91
68
  for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
92
69
  let [tag, attrs] = each_array[$$index];
93
- $2.element($$renderer2, tag, () => {
94
- $$renderer2.push(`${$2.attributes({ ...attrs }, undefined, undefined, undefined, 3)}`);
70
+ $.element($$renderer2, tag, () => {
71
+ $$renderer2.push(`${$.attributes({ ...attrs }, undefined, undefined, undefined, 3)}`);
95
72
  });
96
73
  }
97
74
  $$renderer2.push(`<!--]--><!--[-->`);
98
- $2.slot($$renderer2, $$props, "default", {}, null);
75
+ $.slot($$renderer2, $$props, "default", {}, null);
99
76
  $$renderer2.push(`<!--]--></svg>`);
100
- $2.bind_props($$props, {
77
+ $.bind_props($$props, {
101
78
  name,
102
79
  color,
103
80
  size,
@@ -110,16 +87,16 @@ function Icon($$renderer, $$props) {
110
87
 
111
88
  // ../../node_modules/lucide-svelte/dist/icons/check.svelte
112
89
  function Check($$renderer, $$props) {
113
- const $$sanitized_props = $3.sanitize_props($$props);
90
+ const $$sanitized_props = $2.sanitize_props($$props);
114
91
  const iconNode = [["path", { d: "M20 6 9 17l-5-5" }]];
115
- Icon($$renderer, $3.spread_props([
92
+ Icon($$renderer, $2.spread_props([
116
93
  { name: "check" },
117
94
  $$sanitized_props,
118
95
  {
119
96
  iconNode,
120
97
  children: ($$renderer2) => {
121
98
  $$renderer2.push(`<!--[-->`);
122
- $3.slot($$renderer2, $$props, "default", {}, null);
99
+ $2.slot($$renderer2, $$props, "default", {}, null);
123
100
  $$renderer2.push(`<!--]-->`);
124
101
  },
125
102
  $$slots: { default: true }
@@ -127,9 +104,9 @@ function Check($$renderer, $$props) {
127
104
  ]));
128
105
  }
129
106
  // ../../node_modules/lucide-svelte/dist/icons/copy.svelte
130
- import * as $4 from "svelte/internal/server";
107
+ import * as $3 from "svelte/internal/server";
131
108
  function Copy($$renderer, $$props) {
132
- const $$sanitized_props = $4.sanitize_props($$props);
109
+ const $$sanitized_props = $3.sanitize_props($$props);
133
110
  const iconNode = [
134
111
  [
135
112
  "rect",
@@ -149,14 +126,14 @@ function Copy($$renderer, $$props) {
149
126
  }
150
127
  ]
151
128
  ];
152
- Icon($$renderer, $4.spread_props([
129
+ Icon($$renderer, $3.spread_props([
153
130
  { name: "copy" },
154
131
  $$sanitized_props,
155
132
  {
156
133
  iconNode,
157
134
  children: ($$renderer2) => {
158
135
  $$renderer2.push(`<!--[-->`);
159
- $4.slot($$renderer2, $$props, "default", {}, null);
136
+ $3.slot($$renderer2, $$props, "default", {}, null);
160
137
  $$renderer2.push(`<!--]-->`);
161
138
  },
162
139
  $$slots: { default: true }
@@ -196,7 +173,7 @@ function legacyCopy(text) {
196
173
  }
197
174
 
198
175
  // src/components/_visually-hidden-live-region.svelte
199
- import * as $5 from "svelte/internal/server";
176
+ import * as $4 from "svelte/internal/server";
200
177
  function _visually_hidden_live_region($$renderer, $$props) {
201
178
  $$renderer.component(($$renderer2) => {
202
179
  let {
@@ -209,7 +186,7 @@ function _visually_hidden_live_region($$renderer, $$props) {
209
186
  let setTimeoutId = null;
210
187
  let version = 0;
211
188
  let isDestroyed = false;
212
- $$renderer2.push(`<div${$5.attr("role", priority === "assertive" ? "alert" : "status")}${$5.attr("aria-live", priority === "assertive" ? "assertive" : "polite")} aria-atomic="true"${$5.attr_class($5.clsx(classNames("cinder-sr-only", className)))}>${$5.escape(rendered)}</div>`);
189
+ $$renderer2.push(`<div${$4.attr("role", priority === "assertive" ? "alert" : "status")}${$4.attr("aria-live", priority === "assertive" ? "assertive" : "polite")} aria-atomic="true"${$4.attr_class($4.clsx(classNames("cinder-sr-only", className)))}>${$4.escape(rendered)}</div>`);
213
190
  });
214
191
  }
215
192
 
@@ -231,7 +208,7 @@ function Copy_button($$renderer, $$props) {
231
208
  } = $$props;
232
209
  let copied = false;
233
210
  let resetTimer;
234
- const copiedAnnouncement = $6.derived(() => copied ? copiedLabel ?? "Copied" : "");
211
+ const copiedAnnouncement = $5.derived(() => copied ? copiedLabel ?? "Copied" : "");
235
212
  async function handleClick() {
236
213
  const ok = await copyToClipboard(value);
237
214
  if (!ok)
@@ -243,16 +220,12 @@ function Copy_button($$renderer, $$props) {
243
220
  copied = false;
244
221
  }, confirmDuration);
245
222
  }
246
- onDestroy(() => {
247
- if (resetTimer)
248
- clearTimeout(resetTimer);
249
- });
250
- $$renderer2.push(`<button${$6.attributes({
223
+ $$renderer2.push(`<button${$5.attributes({
251
224
  ...rest,
252
225
  type: "button",
253
226
  "data-cinder-copied": copied || undefined,
254
227
  "aria-label": label ?? "Copy to clipboard",
255
- class: $6.clsx(classNames("cinder-copy-button", className))
228
+ class: $5.clsx(classNames("cinder-copy-button", className))
256
229
  })}>`);
257
230
  if (copied && confirmation) {
258
231
  $$renderer2.push("<!--[0-->");
@@ -282,19 +255,28 @@ function Copy_button($$renderer, $$props) {
282
255
  }
283
256
 
284
257
  // src/components/json-viewer/json-viewer.svelte
285
- import * as $8 from "svelte/internal/server";
258
+ import * as $7 from "svelte/internal/server";
286
259
 
287
260
  // src/components/json-viewer/_json-viewer-node.svelte
288
- import * as $7 from "svelte/internal/server";
261
+ import * as $6 from "svelte/internal/server";
289
262
  import { untrack } from "svelte";
290
263
  function _json_viewer_node($$renderer, $$props) {
291
264
  $$renderer.component(($$renderer2) => {
292
- let { value, keyName, depth, initialDepth, maxDepth } = $$props;
293
- const isObject = $7.derived(() => value !== null && typeof value === "object");
294
- const isArray = $7.derived(() => Array.isArray(value));
295
- const tooDeep = $7.derived(() => depth >= maxDepth);
265
+ let {
266
+ value,
267
+ keyName,
268
+ depth,
269
+ initialDepth,
270
+ maxDepth,
271
+ position,
272
+ setSize,
273
+ root = false
274
+ } = $$props;
275
+ const isObject = $6.derived(() => value !== null && typeof value === "object");
276
+ const isArray = $6.derived(() => Array.isArray(value));
277
+ const tooDeep = $6.derived(() => depth >= maxDepth);
296
278
  let collapsed = untrack(() => depth >= initialDepth);
297
- const entries = $7.derived(() => {
279
+ const entries = $6.derived(() => {
298
280
  if (!isObject() || tooDeep())
299
281
  return [];
300
282
  if (isArray()) {
@@ -302,9 +284,9 @@ function _json_viewer_node($$renderer, $$props) {
302
284
  }
303
285
  return Object.entries(value);
304
286
  });
305
- const itemCount = $7.derived(() => entries().length);
306
- const collectionLabel = $7.derived(() => `${isArray() ? "array" : "object"}, ${itemCount()} ${itemCount() === 1 ? "item" : "items"}`);
307
- const toggleLabel = $7.derived(() => keyName === undefined ? collectionLabel() : `${keyName}: ${collectionLabel()}`);
287
+ const itemCount = $6.derived(() => entries().length);
288
+ const collectionLabel = $6.derived(() => `${isArray() ? "array" : "object"}, ${itemCount()} ${itemCount() === 1 ? "item" : "items"}`);
289
+ const toggleLabel = $6.derived(() => keyName === undefined ? collectionLabel() : `${keyName}: ${collectionLabel()}`);
308
290
  function valueClass(v) {
309
291
  if (v === null)
310
292
  return "null";
@@ -318,68 +300,70 @@ function _json_viewer_node($$renderer, $$props) {
318
300
  }
319
301
  if (isObject() && !tooDeep()) {
320
302
  $$renderer2.push("<!--[0-->");
321
- $$renderer2.push(`<span${$7.attr_class($7.clsx(classNames("cinder-json-viewer__node")))}><button type="button" class="cinder-json-viewer__toggle"${$7.attr("aria-expanded", !collapsed)}${$7.attr("aria-label", toggleLabel())}>`);
303
+ $$renderer2.push(`<span${$6.attr_class($6.clsx(classNames("cinder-json-viewer__node")))} role="treeitem"${$6.attr("aria-expanded", !collapsed)}${$6.attr("aria-label", toggleLabel())}${$6.attr("aria-level", depth + 1)}${$6.attr("aria-posinset", position)}${$6.attr("aria-setsize", setSize)}${$6.attr("tabindex", root ? 0 : -1)}><button type="button" class="cinder-json-viewer__toggle"${$6.attr("aria-label", toggleLabel())} tabindex="-1">`);
322
304
  if (keyName !== undefined) {
323
305
  $$renderer2.push("<!--[0-->");
324
- $$renderer2.push(`<span class="cinder-json-viewer__key">${$7.escape(keyName)}:</span>`);
306
+ $$renderer2.push(`<span class="cinder-json-viewer__key">${$6.escape(keyName)}:</span>`);
325
307
  } else {
326
308
  $$renderer2.push("<!--[-1-->");
327
309
  }
328
- $$renderer2.push(`<!--]--> <span class="cinder-json-viewer__caret"${$7.attr("data-cinder-collapsed", collapsed || undefined)}></span> <span class="cinder-json-viewer__brace">${$7.escape(isArray() ? "[" : "{")}</span> `);
310
+ $$renderer2.push(`<!--]--> <span class="cinder-json-viewer__caret"${$6.attr("data-cinder-collapsed", collapsed || undefined)}></span> <span class="cinder-json-viewer__brace">${$6.escape(isArray() ? "[" : "{")}</span> `);
329
311
  if (collapsed) {
330
312
  $$renderer2.push("<!--[0-->");
331
- $$renderer2.push(`<span class="cinder-json-viewer__summary">${$7.escape(itemCount())} ${$7.escape(itemCount() === 1 ? "item" : "items")}</span> <span class="cinder-json-viewer__brace">${$7.escape(isArray() ? "]" : "}")}</span>`);
313
+ $$renderer2.push(`<span class="cinder-json-viewer__summary">${$6.escape(itemCount())} ${$6.escape(itemCount() === 1 ? "item" : "items")}</span> <span class="cinder-json-viewer__brace">${$6.escape(isArray() ? "]" : "}")}</span>`);
332
314
  } else {
333
315
  $$renderer2.push("<!--[-1-->");
334
316
  }
335
317
  $$renderer2.push(`<!--]--></button> `);
336
318
  if (!collapsed) {
337
319
  $$renderer2.push("<!--[0-->");
338
- $$renderer2.push(`<ul class="cinder-json-viewer__children"><!--[-->`);
339
- const each_array = $7.ensure_array_like(entries());
340
- for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
341
- let [k, v] = each_array[$$index];
342
- $$renderer2.push(`<li>`);
320
+ $$renderer2.push(`<ul class="cinder-json-viewer__children" role="group"><!--[-->`);
321
+ const each_array = $6.ensure_array_like(entries());
322
+ for (let index = 0, $$length = each_array.length;index < $$length; index++) {
323
+ let [k, v] = each_array[index];
324
+ $$renderer2.push(`<li role="none">`);
343
325
  _json_viewer_node($$renderer2, {
344
326
  value: v,
345
327
  keyName: k,
346
328
  depth: depth + 1,
347
329
  initialDepth,
348
- maxDepth
330
+ maxDepth,
331
+ position: index + 1,
332
+ setSize: entries().length
349
333
  });
350
334
  $$renderer2.push(`<!----></li>`);
351
335
  }
352
- $$renderer2.push(`<!--]--></ul> <span class="cinder-json-viewer__brace">${$7.escape(isArray() ? "]" : "}")}</span>`);
336
+ $$renderer2.push(`<!--]--></ul> <span class="cinder-json-viewer__brace">${$6.escape(isArray() ? "]" : "}")}</span>`);
353
337
  } else {
354
338
  $$renderer2.push("<!--[-1-->");
355
339
  }
356
340
  $$renderer2.push(`<!--]--></span>`);
357
341
  } else if (isObject() && tooDeep()) {
358
342
  $$renderer2.push("<!--[1-->");
359
- $$renderer2.push(`<span class="cinder-json-viewer__node">`);
343
+ $$renderer2.push(`<span class="cinder-json-viewer__node" role="treeitem"${$6.attr("tabindex", root ? 0 : -1)}${$6.attr("aria-level", depth + 1)}${$6.attr("aria-posinset", position)}${$6.attr("aria-setsize", setSize)}>`);
360
344
  if (keyName !== undefined) {
361
345
  $$renderer2.push("<!--[0-->");
362
- $$renderer2.push(`<span class="cinder-json-viewer__key">${$7.escape(keyName)}:</span>`);
346
+ $$renderer2.push(`<span class="cinder-json-viewer__key">${$6.escape(keyName)}:</span>`);
363
347
  } else {
364
348
  $$renderer2.push("<!--[-1-->");
365
349
  }
366
350
  $$renderer2.push(`<!--]--> <span class="cinder-json-viewer__too-deep">…</span></span>`);
367
351
  } else {
368
352
  $$renderer2.push("<!--[-1-->");
369
- $$renderer2.push(`<span class="cinder-json-viewer__node">`);
353
+ $$renderer2.push(`<span class="cinder-json-viewer__node" role="treeitem"${$6.attr("tabindex", root ? 0 : -1)}${$6.attr("aria-level", depth + 1)}${$6.attr("aria-posinset", position)}${$6.attr("aria-setsize", setSize)}>`);
370
354
  if (keyName !== undefined) {
371
355
  $$renderer2.push("<!--[0-->");
372
- $$renderer2.push(`<span class="cinder-json-viewer__key">${$7.escape(keyName)}:</span>`);
356
+ $$renderer2.push(`<span class="cinder-json-viewer__key">${$6.escape(keyName)}:</span>`);
373
357
  } else {
374
358
  $$renderer2.push("<!--[-1-->");
375
359
  }
376
- $$renderer2.push(`<!--]--> <span class="cinder-json-viewer__value"${$7.attr("data-cinder-type", valueClass(value))}>`);
360
+ $$renderer2.push(`<!--]--> <span class="cinder-json-viewer__value"${$6.attr("data-cinder-type", valueClass(value))}>`);
377
361
  if (typeof value === "string") {
378
362
  $$renderer2.push("<!--[0-->");
379
- $$renderer2.push(`"${$7.escape(value)}"`);
363
+ $$renderer2.push(`"${$6.escape(value)}"`);
380
364
  } else {
381
365
  $$renderer2.push("<!--[-1-->");
382
- $$renderer2.push(`${$7.escape(String(value))}`);
366
+ $$renderer2.push(`${$6.escape(String(value))}`);
383
367
  }
384
368
  $$renderer2.push(`<!--]--></span></span>`);
385
369
  }
@@ -397,7 +381,7 @@ function Json_viewer($$renderer, $$props) {
397
381
  maxBytes = 1048576,
398
382
  class: className
399
383
  } = $$props;
400
- const serialized = $8.derived(() => {
384
+ const serialized = $7.derived(() => {
401
385
  try {
402
386
  const json = JSON.stringify(value);
403
387
  if (typeof json !== "string")
@@ -407,28 +391,214 @@ function Json_viewer($$renderer, $$props) {
407
391
  return { ok: false };
408
392
  }
409
393
  });
410
- const unserializable = $8.derived(() => !serialized().ok);
411
- const tooLarge = $8.derived(() => serialized().ok && serialized().size > maxBytes);
412
- $$renderer2.push(`<div${$8.attr_class($8.clsx(classNames("cinder-json-viewer", className)))}>`);
394
+ const unserializable = $7.derived(() => !serialized().ok);
395
+ const tooLarge = $7.derived(() => serialized().ok && serialized().size > maxBytes);
396
+ function handleTreeKeydown(event) {
397
+ const tree = event.currentTarget;
398
+ const items = Array.from(tree.querySelectorAll('[role="treeitem"]'));
399
+ const eventTarget = event.target instanceof HTMLElement ? event.target : null;
400
+ const current = eventTarget?.closest('[role="treeitem"]') ?? null;
401
+ const targetIsToggle = eventTarget?.closest(".cinder-json-viewer__toggle") !== null;
402
+ const currentIndex = current ? items.indexOf(current) : -1;
403
+ function focusItem(index) {
404
+ const item = items[index];
405
+ item?.focus();
406
+ }
407
+ if (event.key === "ArrowDown") {
408
+ event.preventDefault();
409
+ focusItem(Math.min(currentIndex + 1, items.length - 1));
410
+ } else if (event.key === "ArrowUp") {
411
+ event.preventDefault();
412
+ focusItem(Math.max(currentIndex - 1, 0));
413
+ } else if (event.key === "Home") {
414
+ event.preventDefault();
415
+ focusItem(0);
416
+ } else if (event.key === "End") {
417
+ event.preventDefault();
418
+ focusItem(items.length - 1);
419
+ } else if (event.key === "ArrowRight" && current && !targetIsToggle) {
420
+ if (current.getAttribute("aria-expanded") === "false") {
421
+ event.preventDefault();
422
+ current.querySelector(".cinder-json-viewer__toggle")?.click();
423
+ } else if (current.getAttribute("aria-expanded") === "true") {
424
+ const firstChild = current.querySelector('.cinder-json-viewer__children [role="treeitem"]');
425
+ if (firstChild) {
426
+ event.preventDefault();
427
+ firstChild.focus();
428
+ }
429
+ }
430
+ } else if (event.key === "ArrowLeft" && current && !targetIsToggle) {
431
+ if (current.getAttribute("aria-expanded") === "true") {
432
+ event.preventDefault();
433
+ current.querySelector(".cinder-json-viewer__toggle")?.click();
434
+ } else {
435
+ const parent = current.parentElement?.closest('[role="treeitem"]');
436
+ if (parent) {
437
+ event.preventDefault();
438
+ parent.focus();
439
+ }
440
+ }
441
+ } else if ((event.key === "Enter" || event.key === " " || event.key === "Spacebar") && current && !targetIsToggle) {
442
+ event.preventDefault();
443
+ const toggle = current.querySelector(".cinder-json-viewer__toggle");
444
+ toggle?.click();
445
+ }
446
+ }
447
+ $$renderer2.push(`<div${$7.attr_class($7.clsx(classNames("cinder-json-viewer", className)))}>`);
413
448
  if (unserializable()) {
414
449
  $$renderer2.push("<!--[0-->");
415
450
  $$renderer2.push(`<div class="cinder-json-viewer__fallback" role="status"><p>This value can't be serialized as JSON (it may contain a circular reference or a BigInt).</p> <p>Pass a plain JSON-serializable value, or use the consumer's download or copy action.</p></div>`);
416
451
  } else if (tooLarge()) {
417
452
  $$renderer2.push("<!--[1-->");
418
- $$renderer2.push(`<div class="cinder-json-viewer__fallback" role="status"><p>Payload too large to render (~${$8.escape(Math.round((serialized().ok ? serialized().size : 0) / 1024))} KB; cap
419
- is ${$8.escape(Math.round(maxBytes / 1024))} KB).</p> <p>Use the consumer's download or copy action to inspect the raw JSON.</p></div>`);
453
+ $$renderer2.push(`<div class="cinder-json-viewer__fallback" role="status"><p>Payload too large to render (~${$7.escape(Math.round((serialized().ok ? serialized().size : 0) / 1024))} KB; cap
454
+ is ${$7.escape(Math.round(maxBytes / 1024))} KB).</p> <p>Use the consumer's download or copy action to inspect the raw JSON.</p></div>`);
420
455
  } else {
421
456
  $$renderer2.push("<!--[-1-->");
422
- _json_viewer_node($$renderer2, { value, depth: 0, initialDepth, maxDepth });
457
+ $$renderer2.push(`<div role="tree" aria-label="JSON tree" tabindex="-1">`);
458
+ _json_viewer_node($$renderer2, {
459
+ value,
460
+ depth: 0,
461
+ initialDepth,
462
+ maxDepth,
463
+ position: 1,
464
+ setSize: 1,
465
+ root: true
466
+ });
467
+ $$renderer2.push(`<!----></div>`);
423
468
  }
424
469
  $$renderer2.push(`<!--]--></div>`);
425
470
  });
426
471
  }
427
472
 
473
+ // src/components/status-dot/status-dot.svelte
474
+ import * as $8 from "svelte/internal/server";
475
+ function Status_dot($$renderer, $$props) {
476
+ $$renderer.component(($$renderer2) => {
477
+ const connectionStatusMap = {
478
+ connected: "online",
479
+ connecting: "warning",
480
+ disconnected: "offline",
481
+ error: "danger"
482
+ };
483
+ const connectionLabels = {
484
+ connected: "Connected",
485
+ connecting: "Connecting",
486
+ disconnected: "Disconnected",
487
+ error: "Error"
488
+ };
489
+ let {
490
+ status,
491
+ connectionState,
492
+ label,
493
+ live,
494
+ showLabel = true,
495
+ size = "md",
496
+ class: className,
497
+ "aria-label": ariaLabel,
498
+ $$slots,
499
+ $$events,
500
+ ...rest
501
+ } = $$props;
502
+ const normalizedAriaLabel = $8.derived(() => ariaLabel?.trim() ? ariaLabel.trim() : undefined);
503
+ const resolvedStatus = $8.derived(() => status ?? (connectionState === undefined ? "neutral" : connectionStatusMap[connectionState]));
504
+ const resolvedLive = $8.derived(() => live ?? connectionState !== undefined);
505
+ const normalizedLabel = $8.derived(() => label?.trim() ? label.trim() : connectionState === undefined ? undefined : connectionLabels[connectionState]);
506
+ const hasVisibleLabel = $8.derived(() => showLabel && normalizedLabel() !== undefined);
507
+ const resolvedAriaLabel = $8.derived(() => normalizedAriaLabel() ?? normalizedLabel() ?? resolvedStatus());
508
+ const visibleLabelIsLiveDuplicate = $8.derived(() => resolvedLive() && normalizedLabel() !== undefined && resolvedAriaLabel() !== normalizedLabel());
509
+ const needsHiddenLiveLabel = $8.derived(() => resolvedLive() && (!hasVisibleLabel() || visibleLabelIsLiveDuplicate()));
510
+ $$renderer2.push(`<span${$8.attributes({
511
+ ...rest,
512
+ class: $8.clsx(classNames("cinder-status-dot", className)),
513
+ "data-cinder-status": resolvedStatus(),
514
+ "data-cinder-state": connectionState,
515
+ "data-cinder-size": size,
516
+ role: resolvedLive() ? "status" : "img",
517
+ "aria-live": resolvedLive() ? "polite" : undefined,
518
+ "aria-atomic": resolvedLive() ? "true" : undefined,
519
+ "aria-label": resolvedLive() ? undefined : resolvedAriaLabel()
520
+ })}><span class="cinder-status-dot__indicator" aria-hidden="true"></span> `);
521
+ if (hasVisibleLabel()) {
522
+ $$renderer2.push("<!--[0-->");
523
+ $$renderer2.push(`<span class="cinder-status-dot__label"${$8.attr("aria-hidden", visibleLabelIsLiveDuplicate() ? "true" : undefined)}>${$8.escape(normalizedLabel())}</span>`);
524
+ } else {
525
+ $$renderer2.push("<!--[-1-->");
526
+ }
527
+ $$renderer2.push(`<!--]--> `);
528
+ if (needsHiddenLiveLabel()) {
529
+ $$renderer2.push("<!--[0-->");
530
+ $$renderer2.push(`<span class="cinder-sr-only">${$8.escape(resolvedAriaLabel())}</span>`);
531
+ } else {
532
+ $$renderer2.push("<!--[-1-->");
533
+ }
534
+ $$renderer2.push(`<!--]--></span>`);
535
+ });
536
+ }
537
+
538
+ // src/components/event-stream-viewer/event-stream-viewer-keys.ts
539
+ function streamEventKey(event) {
540
+ const parts = [keyType("event"), keyField("id", event.id)];
541
+ if (typeof event.sequence === "number")
542
+ parts.push(keyField("sequence", event.sequence));
543
+ return parts.join("|");
544
+ }
545
+ function reconnectedBoundaryKey(boundary) {
546
+ return [keyType("reconnected"), keyField("id", boundary.id)].join("|");
547
+ }
548
+ function sequenceGapKey(previousEventId, event, expectedSequence, actualSequence) {
549
+ return [
550
+ keyType("sequence-gap"),
551
+ previousEventId === undefined ? keyField("previous-missing", true) : keyField("previous", previousEventId),
552
+ keyField("next", event.id),
553
+ keyField("expected", expectedSequence),
554
+ keyField("actual", actualSequence)
555
+ ].join("|");
556
+ }
557
+ function uniqueRenderedKey(baseKey, occurrences) {
558
+ const occurrence = occurrences.get(baseKey) ?? 0;
559
+ occurrences.set(baseKey, occurrence + 1);
560
+ return occurrence === 0 ? baseKey : `${baseKey}|occurrence=${occurrence + 1}`;
561
+ }
562
+ function detailsIdForKey(instanceId, key) {
563
+ return `${escapeDomIdPart(instanceId)}-details-${hashString(key)}-${hashString(reverseString(key))}-${key.length}`;
564
+ }
565
+ function keyType(type) {
566
+ return keyField("type", type);
567
+ }
568
+ function keyField(name, value) {
569
+ const stringValue = String(value);
570
+ return `${name.length}:${name}:${stringValue.length}:${stringValue}`;
571
+ }
572
+ function escapeDomIdPart(value) {
573
+ let result = "";
574
+ for (const character of value) {
575
+ result += /^[A-Za-z0-9_-]$/.test(character) ? character : `_${character.codePointAt(0)?.toString(16) ?? "0"}_`;
576
+ }
577
+ return result === "" ? "empty" : result;
578
+ }
579
+ function reverseString(value) {
580
+ let result = "";
581
+ for (const character of value) {
582
+ result = character + result;
583
+ }
584
+ return result;
585
+ }
586
+ function hashString(value) {
587
+ let hash = 0;
588
+ for (let index = 0;index < value.length; index += 1) {
589
+ hash = Math.imul(31, hash) + value.charCodeAt(index);
590
+ hash |= 0;
591
+ }
592
+ return (hash >>> 0).toString(36);
593
+ }
594
+
428
595
  // src/components/event-stream-viewer/event-stream-viewer.svelte
429
596
  function Event_stream_viewer($$renderer, $$props) {
430
597
  $$renderer.component(($$renderer2) => {
431
598
  const instanceId = $9.props_id($$renderer2);
599
+ function isValidSequence(value) {
600
+ return Number.isInteger(value);
601
+ }
432
602
  let {
433
603
  events,
434
604
  connectionState,
@@ -436,6 +606,7 @@ function Event_stream_viewer($$renderer, $$props) {
436
606
  truncated = false,
437
607
  loading = false,
438
608
  label = "Event stream",
609
+ detectSequenceGaps = false,
439
610
  oncopyvisible,
440
611
  onfilter,
441
612
  filterQuery = "",
@@ -444,21 +615,83 @@ function Event_stream_viewer($$renderer, $$props) {
444
615
  $$events,
445
616
  ...rest
446
617
  } = $$props;
447
- let expandedIds = new Set;
618
+ const expandedIds = new SvelteSet;
448
619
  let scrollContainerEl = null;
449
620
  let programmaticScroll = false;
450
621
  let liveMessage = "";
451
622
  const isEmpty = $9.derived(() => !loading && events.length === 0);
452
623
  const eventCount = $9.derived(() => events.length);
453
624
  const latestEvent = $9.derived(() => events.at(-1));
454
- function toggleDetails(id) {
455
- const next = new Set(expandedIds);
456
- if (next.has(id)) {
457
- next.delete(id);
625
+ const renderedEntries = $9.derived(() => {
626
+ const entries = [];
627
+ const keyOccurrences = new Map;
628
+ let previousSequence;
629
+ let previousEventId;
630
+ const shouldDetectSequenceGaps = detectSequenceGaps && filterQuery.trim() === "";
631
+ for (const entry of events) {
632
+ if (isReconnectedBoundary(entry)) {
633
+ const key2 = uniqueRenderedKey(reconnectedBoundaryKey(entry), keyOccurrences);
634
+ entries.push({
635
+ type: "reconnected",
636
+ key: key2,
637
+ boundary: entry,
638
+ label: formatReconnectedBoundaryLabel(entry),
639
+ datetime: boundaryDateTime(entry)
640
+ });
641
+ previousSequence = undefined;
642
+ previousEventId = undefined;
643
+ continue;
644
+ }
645
+ const currentSequence = entry.sequence;
646
+ if (shouldDetectSequenceGaps && isValidSequence(previousSequence) && isValidSequence(currentSequence)) {
647
+ const expectedSequence = previousSequence + 1;
648
+ if (currentSequence !== expectedSequence) {
649
+ const key2 = uniqueRenderedKey(sequenceGapKey(previousEventId, entry, expectedSequence, currentSequence), keyOccurrences);
650
+ entries.push({
651
+ type: "sequence-gap",
652
+ key: key2,
653
+ expectedSequence,
654
+ actualSequence: currentSequence,
655
+ label: formatSequenceGapLabel(expectedSequence, currentSequence)
656
+ });
657
+ }
658
+ }
659
+ if (isValidSequence(currentSequence)) {
660
+ previousSequence = currentSequence;
661
+ previousEventId = entry.id;
662
+ } else {
663
+ previousSequence = undefined;
664
+ previousEventId = undefined;
665
+ }
666
+ const key = uniqueRenderedKey(streamEventKey(entry), keyOccurrences);
667
+ entries.push({
668
+ type: "event",
669
+ key,
670
+ detailsId: detailsIdForKey(instanceId, key),
671
+ event: entry
672
+ });
673
+ }
674
+ return entries;
675
+ });
676
+ function toggleDetails(rowKey) {
677
+ if (expandedIds.has(rowKey)) {
678
+ expandedIds.delete(rowKey);
458
679
  } else {
459
- next.add(id);
680
+ expandedIds.add(rowKey);
460
681
  }
461
- expandedIds = next;
682
+ }
683
+ function isReconnectedBoundary(entry) {
684
+ return "kind" in entry && entry.kind === "reconnected" && "replayedCount" in entry && Number.isInteger(entry.replayedCount) && entry.replayedCount >= 0;
685
+ }
686
+ function formatReconnectedBoundaryLabel(boundary) {
687
+ const eventWord = boundary.replayedCount === 1 ? "event" : "events";
688
+ return `Reconnected — ${boundary.replayedCount} ${eventWord} replayed`;
689
+ }
690
+ function formatSequenceGapLabel(expectedSequence, actualSequence) {
691
+ return `Sequence gap — expected ${expectedSequence}, received ${actualSequence}`;
692
+ }
693
+ function boundaryDateTime(boundary) {
694
+ return boundary.datetime;
462
695
  }
463
696
  function formatEventAsText(event) {
464
697
  const parts = [];
@@ -475,13 +708,28 @@ function Event_stream_viewer($$renderer, $$props) {
475
708
  }
476
709
  return parts.join(" ");
477
710
  }
711
+ function formatReconnectedBoundaryAsText(boundary) {
712
+ const timeLabel = boundary.timestamp ?? boundary.datetime;
713
+ const markerText = formatReconnectedBoundaryLabel(boundary);
714
+ return timeLabel ? `[${timeLabel}] ${markerText}` : markerText;
715
+ }
716
+ function formatRenderedEntryAsText(entry) {
717
+ if (entry.type === "event")
718
+ return formatEventAsText(entry.event);
719
+ if (entry.type === "reconnected")
720
+ return formatReconnectedBoundaryAsText(entry.boundary);
721
+ return entry.label;
722
+ }
723
+ function formatCopyVisibleAnnouncement(entryCount) {
724
+ return `${entryCount} stream ${entryCount === 1 ? "entry" : "entries"} sent to copy handler`;
725
+ }
478
726
  function handleCopyVisible() {
479
- const text = events.map(formatEventAsText).join(`
727
+ const text = renderedEntries().map(formatRenderedEntryAsText).join(`
480
728
  `);
481
729
  if (!oncopyvisible)
482
730
  return;
483
731
  oncopyvisible(text);
484
- liveMessage = `${events.length} event${events.length !== 1 ? "s" : ""} sent to copy handler`;
732
+ liveMessage = formatCopyVisibleAnnouncement(renderedEntries().length);
485
733
  setTimeout(() => {
486
734
  liveMessage = "";
487
735
  }, 2000);
@@ -519,7 +767,7 @@ function Event_stream_viewer($$renderer, $$props) {
519
767
  })}><div class="cinder-event-stream-viewer__toolbar" role="group" aria-label="Stream controls"><div class="cinder-event-stream-viewer__toolbar-start">`);
520
768
  if (connectionState) {
521
769
  $$renderer2.push("<!--[0-->");
522
- Connection_indicator($$renderer2, { state: connectionState });
770
+ Status_dot($$renderer2, { connectionState });
523
771
  } else {
524
772
  $$renderer2.push("<!--[-1-->");
525
773
  }
@@ -564,49 +812,68 @@ function Event_stream_viewer($$renderer, $$props) {
564
812
  } else {
565
813
  $$renderer2.push("<!--[-1-->");
566
814
  $$renderer2.push(`<ol class="cinder-event-stream-viewer__list"><!--[-->`);
567
- const each_array = $9.ensure_array_like(events);
568
- for (let eventIndex = 0, $$length = each_array.length;eventIndex < $$length; eventIndex++) {
569
- let event = each_array[eventIndex];
570
- const isExpanded = expandedIds.has(event.id);
571
- const detailsId = `${instanceId}-details-${eventIndex}`;
572
- $$renderer2.push(`<li class="cinder-event-stream-viewer__event"${$9.attr("data-cinder-severity", event.severity ?? "info")}><div class="cinder-event-stream-viewer__event-bar" aria-hidden="true"></div> <div class="cinder-event-stream-viewer__event-body"><div class="cinder-event-stream-viewer__event-meta"><time class="cinder-event-stream-viewer__event-time"${$9.attr("datetime", event.datetime)}${$9.attr("title", event.datetime)}>${$9.escape(event.timestamp ?? event.datetime)}</time> `);
573
- if (event.severity) {
574
- $$renderer2.push("<!--[0-->");
575
- $$renderer2.push(`<span class="cinder-event-stream-viewer__event-severity"${$9.attr("aria-label", `Severity: ${event.severity}`)}>${$9.escape(event.severity)}</span>`);
576
- } else {
577
- $$renderer2.push("<!--[-1-->");
578
- }
579
- $$renderer2.push(`<!--]--> `);
580
- if (event.source) {
581
- $$renderer2.push("<!--[0-->");
582
- $$renderer2.push(`<span class="cinder-event-stream-viewer__event-source">${$9.escape(event.source)}</span>`);
583
- } else {
584
- $$renderer2.push("<!--[-1-->");
585
- }
586
- $$renderer2.push(`<!--]--></div> <p class="cinder-event-stream-viewer__event-summary">${$9.escape(event.summary)}</p> `);
587
- if (event.details !== undefined) {
815
+ const each_array = $9.ensure_array_like(renderedEntries());
816
+ for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
817
+ let entry = each_array[$$index];
818
+ if (entry.type === "reconnected") {
588
819
  $$renderer2.push("<!--[0-->");
589
- $$renderer2.push(`<div class="cinder-event-stream-viewer__event-details-section"><button type="button" class="cinder-event-stream-viewer__details-toggle"${$9.attr("aria-expanded", isExpanded)}${$9.attr("aria-controls", isExpanded ? detailsId : undefined)}>${$9.escape(isExpanded ? "Hide details" : "Show details")}</button> `);
590
- if (isExpanded) {
820
+ $$renderer2.push(`<li class="cinder-event-stream-viewer__boundary-marker"><div class="cinder-event-stream-viewer__marker-content" role="separator"${$9.attr("aria-label", entry.label)}>`);
821
+ if (entry.boundary.datetime) {
591
822
  $$renderer2.push("<!--[0-->");
592
- $$renderer2.push(`<div${$9.attr("id", detailsId)} class="cinder-event-stream-viewer__event-details">`);
593
- Json_viewer($$renderer2, { value: event.details });
594
- $$renderer2.push(`<!----></div>`);
823
+ $$renderer2.push(`<time class="cinder-event-stream-viewer__marker-time"${$9.attr("datetime", entry.boundary.datetime)}${$9.attr("title", entry.boundary.datetime)}>${$9.escape(entry.boundary.timestamp ?? entry.boundary.datetime)}</time>`);
824
+ } else if (entry.boundary.timestamp) {
825
+ $$renderer2.push("<!--[1-->");
826
+ $$renderer2.push(`<span class="cinder-event-stream-viewer__marker-time">${$9.escape(entry.boundary.timestamp)}</span>`);
595
827
  } else {
596
828
  $$renderer2.push("<!--[-1-->");
597
829
  }
598
- $$renderer2.push(`<!--]--></div>`);
830
+ $$renderer2.push(`<!--]--> <span>${$9.escape(entry.label)}</span></div></li>`);
831
+ } else if (entry.type === "sequence-gap") {
832
+ $$renderer2.push("<!--[1-->");
833
+ $$renderer2.push(`<li class="cinder-event-stream-viewer__sequence-gap-marker"><div class="cinder-event-stream-viewer__marker-content" role="note"${$9.attr("aria-label", entry.label)}><span>${$9.escape(entry.label)}</span></div></li>`);
599
834
  } else {
600
835
  $$renderer2.push("<!--[-1-->");
836
+ const event = entry.event;
837
+ const isExpanded = expandedIds.has(entry.key);
838
+ const detailsId = entry.detailsId;
839
+ $$renderer2.push(`<li class="cinder-event-stream-viewer__event"${$9.attr("data-cinder-severity", event.severity ?? "info")}><div class="cinder-event-stream-viewer__event-bar" aria-hidden="true"></div> <div class="cinder-event-stream-viewer__event-body"><div class="cinder-event-stream-viewer__event-meta"><time class="cinder-event-stream-viewer__event-time"${$9.attr("datetime", event.datetime)}${$9.attr("title", event.datetime)}>${$9.escape(event.timestamp ?? event.datetime)}</time> `);
840
+ if (event.severity) {
841
+ $$renderer2.push("<!--[0-->");
842
+ $$renderer2.push(`<span class="cinder-event-stream-viewer__event-severity"${$9.attr("aria-label", `Severity: ${event.severity}`)}>${$9.escape(event.severity)}</span>`);
843
+ } else {
844
+ $$renderer2.push("<!--[-1-->");
845
+ }
846
+ $$renderer2.push(`<!--]--> `);
847
+ if (event.source) {
848
+ $$renderer2.push("<!--[0-->");
849
+ $$renderer2.push(`<span class="cinder-event-stream-viewer__event-source">${$9.escape(event.source)}</span>`);
850
+ } else {
851
+ $$renderer2.push("<!--[-1-->");
852
+ }
853
+ $$renderer2.push(`<!--]--></div> <p class="cinder-event-stream-viewer__event-summary">${$9.escape(event.summary)}</p> `);
854
+ if (event.details !== undefined) {
855
+ $$renderer2.push("<!--[0-->");
856
+ $$renderer2.push(`<div class="cinder-event-stream-viewer__event-details-section"><button type="button" class="cinder-event-stream-viewer__details-toggle"${$9.attr("aria-expanded", isExpanded)}${$9.attr("aria-controls", detailsId)}${$9.attr("aria-label", `${isExpanded ? "Hide" : "Show"} details for ${event.severity ? `${event.severity}: ` : ""}${event.summary}`)}>${$9.escape(isExpanded ? "Hide details" : "Show details")}</button> <div${$9.attr("id", detailsId)} class="cinder-event-stream-viewer__event-details"${$9.attr("hidden", !isExpanded)}>`);
857
+ if (isExpanded) {
858
+ $$renderer2.push("<!--[0-->");
859
+ Json_viewer($$renderer2, { value: event.details });
860
+ } else {
861
+ $$renderer2.push("<!--[-1-->");
862
+ }
863
+ $$renderer2.push(`<!--]--></div></div>`);
864
+ } else {
865
+ $$renderer2.push("<!--[-1-->");
866
+ }
867
+ $$renderer2.push(`<!--]--></div> <div class="cinder-event-stream-viewer__event-actions">`);
868
+ Copy_button($$renderer2, {
869
+ value: formatEventAsText(event),
870
+ label: `Copy event: ${event.summary}`,
871
+ copiedLabel: "Event copied",
872
+ class: "cinder-event-stream-viewer__copy-event-button"
873
+ });
874
+ $$renderer2.push(`<!----></div></li>`);
601
875
  }
602
- $$renderer2.push(`<!--]--></div> <div class="cinder-event-stream-viewer__event-actions">`);
603
- Copy_button($$renderer2, {
604
- value: formatEventAsText(event),
605
- label: `Copy event: ${event.summary}`,
606
- copiedLabel: "Event copied",
607
- class: "cinder-event-stream-viewer__copy-event-button"
608
- });
609
- $$renderer2.push(`<!----></div></li>`);
876
+ $$renderer2.push(`<!--]-->`);
610
877
  }
611
878
  $$renderer2.push(`<!--]--></ol>`);
612
879
  }
@@ -624,4 +891,4 @@ export {
624
891
  Event_stream_viewer as EventStreamViewer
625
892
  };
626
893
 
627
- //# debugId=15970C8135C1CDAB64756E2164756E21
894
+ //# debugId=034E4708D00366EC64756E2164756E21