@lostgradient/cinder 0.4.0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1086) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/components.json +2 -2
  3. package/dist/components/_sortable-item.svelte.d.ts +1 -1
  4. package/dist/components/autocomplete/index.js +76 -63
  5. package/dist/components/avatar-group/index.js +96 -16
  6. package/dist/components/chat/index.js +294 -142
  7. package/dist/components/chat-conversation-header/index.js +69 -3
  8. package/dist/components/combobox/combobox.schema.js +5 -1
  9. package/dist/components/combobox/combobox.types.d.ts +2 -0
  10. package/dist/components/combobox/index.js +108 -47
  11. package/dist/components/command-menu/index.js +8 -4
  12. package/dist/components/command-palette/index.js +8 -4
  13. package/dist/components/context-menu/index.js +69 -3
  14. package/dist/components/data-table/data-table.css +20 -0
  15. package/dist/components/data-table/data-table.schema.js +30 -1
  16. package/dist/components/data-table/data-table.svelte.d.ts +4 -4
  17. package/dist/components/data-table/data-table.types.d.ts +26 -0
  18. package/dist/components/data-table/index.d.ts +1 -1
  19. package/dist/components/data-table/index.js +708 -303
  20. package/dist/components/diff-viewer/index.js +75 -9
  21. package/dist/components/dropdown/index.js +69 -3
  22. package/dist/components/dropdown-item/dropdown-item.schema.js +4 -4
  23. package/dist/components/dropdown-item/dropdown-item.types.d.ts +3 -3
  24. package/dist/components/dropdown-item/index.js +2 -2
  25. package/dist/components/dropdown-menu/index.js +68 -2
  26. package/dist/components/experimental/json-viewer/index.d.ts +3 -1
  27. package/dist/components/experimental/json-viewer/index.js +396 -3
  28. package/dist/components/experimental/message/index.d.ts +3 -1
  29. package/dist/components/experimental/message/index.js +81 -3
  30. package/dist/components/hover-card/index.js +67 -8
  31. package/dist/components/json-schema-editor/diff-view.svelte.d.ts +1 -1
  32. package/dist/components/json-schema-editor/form-view.svelte.d.ts +1 -1
  33. package/dist/components/json-schema-editor/index.js +256 -110
  34. package/dist/components/json-schema-editor/json-schema-editor-state.svelte.d.ts +2 -12
  35. package/dist/components/json-schema-editor/json-schema-editor-state.types.d.ts +13 -0
  36. package/dist/components/json-schema-editor/json-schema-toolbar.svelte.d.ts +1 -1
  37. package/dist/components/json-schema-editor/json-view.svelte.d.ts +1 -1
  38. package/dist/components/markdown-editor/index.js +311 -159
  39. package/dist/components/menu-bar/index.d.ts +3 -1
  40. package/dist/components/menu-bar/index.js +3702 -3
  41. package/dist/components/review-editor/index.js +404 -252
  42. package/dist/components/segment/index.js +8 -4
  43. package/dist/components/segmented-control/index.js +71 -5
  44. package/dist/components/segmented-control/segmented-control.schema.js +5 -1
  45. package/dist/components/segmented-control/segmented-control.types.d.ts +2 -0
  46. package/dist/components/sortable-list/sortable-list.types.d.ts +4 -4
  47. package/dist/components/tag-input/index.d.ts +3 -1
  48. package/dist/components/tag-input/index.js +566 -3
  49. package/dist/components/tooltip/index.js +96 -16
  50. package/dist/components/tree/index.js +66 -44
  51. package/dist/index.d.ts +5 -5
  52. package/dist/server/components/access-gate/access-gate.schema.js +2 -4
  53. package/dist/server/components/access-gate/access-gate.variables.js +2 -4
  54. package/dist/server/components/access-gate/index.js +21 -1559
  55. package/dist/server/components/accordion/accordion.schema.js +2 -4
  56. package/dist/server/components/accordion/accordion.variables.js +2 -4
  57. package/dist/server/components/accordion/index.js +10 -122
  58. package/dist/server/components/accordion-item/accordion-item.schema.js +2 -4
  59. package/dist/server/components/accordion-item/accordion-item.variables.js +2 -4
  60. package/dist/server/components/accordion-item/index.js +9 -46
  61. package/dist/server/components/alert/alert.schema.js +2 -4
  62. package/dist/server/components/alert/alert.variables.js +2 -4
  63. package/dist/server/components/alert/index.js +9 -108
  64. package/dist/server/components/alert-dialog/alert-dialog.schema.js +2 -4
  65. package/dist/server/components/alert-dialog/alert-dialog.variables.js +2 -4
  66. package/dist/server/components/alert-dialog/index.js +16 -785
  67. package/dist/server/components/approval-card/approval-card.schema.js +2 -4
  68. package/dist/server/components/approval-card/approval-card.variables.js +2 -4
  69. package/dist/server/components/approval-card/index.js +36 -2494
  70. package/dist/server/components/area-chart/area-chart.schema.js +2 -4
  71. package/dist/server/components/area-chart/area-chart.variables.js +2 -4
  72. package/dist/server/components/area-chart/index.js +9 -1138
  73. package/dist/server/components/aspect-ratio/aspect-ratio.schema.js +2 -4
  74. package/dist/server/components/aspect-ratio/aspect-ratio.variables.js +2 -4
  75. package/dist/server/components/aspect-ratio/index.js +7 -42
  76. package/dist/server/components/autocomplete/autocomplete.schema.js +2 -4
  77. package/dist/server/components/autocomplete/autocomplete.variables.js +2 -4
  78. package/dist/server/components/autocomplete/index.js +19 -854
  79. package/dist/server/components/avatar/avatar.schema.js +2 -4
  80. package/dist/server/components/avatar/avatar.variables.js +2 -4
  81. package/dist/server/components/avatar/index.js +10 -94
  82. package/dist/server/components/avatar-group/avatar-group.schema.js +2 -4
  83. package/dist/server/components/avatar-group/avatar-group.variables.js +2 -4
  84. package/dist/server/components/avatar-group/index.js +16 -481
  85. package/dist/server/components/backdrop/backdrop.schema.js +2 -4
  86. package/dist/server/components/backdrop/backdrop.variables.js +2 -4
  87. package/dist/server/components/backdrop/index.js +9 -134
  88. package/dist/server/components/badge/badge.schema.js +2 -4
  89. package/dist/server/components/badge/badge.variables.js +2 -4
  90. package/dist/server/components/badge/index.js +9 -107
  91. package/dist/server/components/banner/banner.schema.js +2 -4
  92. package/dist/server/components/banner/banner.variables.js +2 -4
  93. package/dist/server/components/banner/index.js +7 -107
  94. package/dist/server/components/bar-chart/bar-chart.schema.js +2 -4
  95. package/dist/server/components/bar-chart/bar-chart.variables.js +2 -4
  96. package/dist/server/components/bar-chart/index.js +9 -1135
  97. package/dist/server/components/breadcrumbs/breadcrumbs.schema.js +2 -4
  98. package/dist/server/components/breadcrumbs/breadcrumbs.variables.js +2 -4
  99. package/dist/server/components/breadcrumbs/index.js +7 -52
  100. package/dist/server/components/button/button.schema.js +2 -4
  101. package/dist/server/components/button/button.variables.js +2 -4
  102. package/dist/server/components/button/index.js +11 -167
  103. package/dist/server/components/button-group/button-group.schema.js +2 -4
  104. package/dist/server/components/button-group/button-group.variables.js +2 -4
  105. package/dist/server/components/button-group/index.js +12 -132
  106. package/dist/server/components/callout/callout.schema.js +2 -4
  107. package/dist/server/components/callout/callout.variables.js +2 -4
  108. package/dist/server/components/callout/index.js +7 -67
  109. package/dist/server/components/capability-gate/capability-gate.schema.js +2 -4
  110. package/dist/server/components/capability-gate/capability-gate.variables.js +2 -4
  111. package/dist/server/components/capability-gate/index.js +9 -132
  112. package/dist/server/components/card/card.schema.js +2 -4
  113. package/dist/server/components/card/card.variables.js +2 -4
  114. package/dist/server/components/card/index.js +9 -82
  115. package/dist/server/components/chat/chat.schema.js +2 -4
  116. package/dist/server/components/chat/chat.variables.js +2 -4
  117. package/dist/server/components/chat/index.js +96 -8868
  118. package/dist/server/components/chat-conversation-header/chat-conversation-header.schema.js +2 -4
  119. package/dist/server/components/chat-conversation-header/chat-conversation-header.variables.js +2 -4
  120. package/dist/server/components/chat-conversation-header/index.js +36 -1661
  121. package/dist/server/components/chat-conversation-list/chat-conversation-list.schema.js +2 -4
  122. package/dist/server/components/chat-conversation-list/chat-conversation-list.variables.js +2 -4
  123. package/dist/server/components/chat-conversation-list/index.js +12 -348
  124. package/dist/server/components/checkbox/checkbox.schema.js +2 -4
  125. package/dist/server/components/checkbox/checkbox.variables.js +2 -4
  126. package/dist/server/components/checkbox/index.js +15 -192
  127. package/dist/server/components/checkbox-group/checkbox-group.schema.js +2 -4
  128. package/dist/server/components/checkbox-group/checkbox-group.variables.js +2 -4
  129. package/dist/server/components/checkbox-group/index.js +10 -116
  130. package/dist/server/components/chip/chip.schema.js +2 -4
  131. package/dist/server/components/chip/chip.variables.js +2 -4
  132. package/dist/server/components/chip/index.js +9 -136
  133. package/dist/server/components/choice-grid/choice-grid.schema.js +2 -4
  134. package/dist/server/components/choice-grid/choice-grid.variables.js +2 -4
  135. package/dist/server/components/choice-grid/index.js +12 -347
  136. package/dist/server/components/choice-grid-item/choice-grid-item.schema.js +2 -4
  137. package/dist/server/components/choice-grid-item/choice-grid-item.variables.js +2 -4
  138. package/dist/server/components/choice-grid-item/index.js +12 -103
  139. package/dist/server/components/click-away-listener/click-away-listener.schema.js +2 -4
  140. package/dist/server/components/click-away-listener/click-away-listener.variables.js +2 -4
  141. package/dist/server/components/click-away-listener/index.js +7 -37
  142. package/dist/server/components/code-block/code-block.schema.js +2 -4
  143. package/dist/server/components/code-block/code-block.variables.js +2 -4
  144. package/dist/server/components/code-block/index.js +19 -330
  145. package/dist/server/components/collapsible/collapsible.schema.js +2 -4
  146. package/dist/server/components/collapsible/collapsible.variables.js +2 -4
  147. package/dist/server/components/collapsible/index.js +10 -88
  148. package/dist/server/components/color-field/color-field.schema.js +2 -4
  149. package/dist/server/components/color-field/color-field.variables.js +2 -4
  150. package/dist/server/components/color-field/index.js +15 -687
  151. package/dist/server/components/color-picker/color-picker.schema.js +2 -4
  152. package/dist/server/components/color-picker/color-picker.variables.js +2 -4
  153. package/dist/server/components/color-picker/index.js +15 -923
  154. package/dist/server/components/color-swatch-picker/color-swatch-picker.schema.js +2 -4
  155. package/dist/server/components/color-swatch-picker/color-swatch-picker.variables.js +2 -4
  156. package/dist/server/components/color-swatch-picker/index.js +16 -478
  157. package/dist/server/components/combobox/combobox.schema.js +6 -4
  158. package/dist/server/components/combobox/combobox.variables.js +2 -4
  159. package/dist/server/components/combobox/index.js +19 -710
  160. package/dist/server/components/command-item/command-item.schema.js +2 -4
  161. package/dist/server/components/command-item/command-item.variables.js +2 -4
  162. package/dist/server/components/command-item/index.js +8 -121
  163. package/dist/server/components/command-menu/command-menu.schema.js +2 -4
  164. package/dist/server/components/command-menu/command-menu.variables.js +2 -4
  165. package/dist/server/components/command-menu/index.js +16 -552
  166. package/dist/server/components/command-palette/command-palette.schema.js +2 -4
  167. package/dist/server/components/command-palette/command-palette.variables.js +2 -4
  168. package/dist/server/components/command-palette/index.js +12 -402
  169. package/dist/server/components/confirm-dialog/confirm-dialog.schema.js +2 -4
  170. package/dist/server/components/confirm-dialog/confirm-dialog.variables.js +2 -4
  171. package/dist/server/components/confirm-dialog/index.js +16 -785
  172. package/dist/server/components/container/container.schema.js +2 -4
  173. package/dist/server/components/container/container.variables.js +2 -4
  174. package/dist/server/components/container/index.js +7 -44
  175. package/dist/server/components/context-menu/context-menu.schema.js +2 -4
  176. package/dist/server/components/context-menu/context-menu.variables.js +2 -4
  177. package/dist/server/components/context-menu/index.js +26 -1096
  178. package/dist/server/components/context-menu-trigger/context-menu-trigger.schema.js +2 -4
  179. package/dist/server/components/context-menu-trigger/context-menu-trigger.variables.js +2 -4
  180. package/dist/server/components/context-menu-trigger/index.js +10 -162
  181. package/dist/server/components/copy-button/copy-button.schema.js +2 -4
  182. package/dist/server/components/copy-button/copy-button.variables.js +2 -4
  183. package/dist/server/components/copy-button/index.js +16 -255
  184. package/dist/server/components/data-grid/data-grid.schema.js +2 -4
  185. package/dist/server/components/data-grid/data-grid.variables.js +2 -4
  186. package/dist/server/components/data-grid/index.js +11 -2819
  187. package/dist/server/components/data-list/data-list.schema.js +2 -4
  188. package/dist/server/components/data-list/data-list.variables.js +2 -4
  189. package/dist/server/components/data-list/index.js +9 -82
  190. package/dist/server/components/data-table/data-table.schema.js +31 -4
  191. package/dist/server/components/data-table/data-table.variables.js +2 -4
  192. package/dist/server/components/data-table/index.js +23 -721
  193. package/dist/server/components/date-range-field/date-range-field.schema.js +2 -4
  194. package/dist/server/components/date-range-field/date-range-field.variables.js +2 -4
  195. package/dist/server/components/date-range-field/index.js +8 -318
  196. package/dist/server/components/description-list/description-list.schema.js +2 -4
  197. package/dist/server/components/description-list/description-list.variables.js +2 -4
  198. package/dist/server/components/description-list/index.js +11 -72
  199. package/dist/server/components/diff-statistics/diff-statistics.schema.js +2 -4
  200. package/dist/server/components/diff-statistics/diff-statistics.variables.js +2 -4
  201. package/dist/server/components/diff-statistics/index.js +9 -99
  202. package/dist/server/components/diff-viewer/diff-viewer.schema.js +2 -4
  203. package/dist/server/components/diff-viewer/diff-viewer.variables.js +2 -4
  204. package/dist/server/components/diff-viewer/index.js +29 -1946
  205. package/dist/server/components/divider/divider.schema.js +2 -4
  206. package/dist/server/components/divider/divider.variables.js +2 -4
  207. package/dist/server/components/divider/index.js +7 -78
  208. package/dist/server/components/drawer/drawer.schema.js +2 -4
  209. package/dist/server/components/drawer/drawer.variables.js +2 -4
  210. package/dist/server/components/drawer/index.js +17 -761
  211. package/dist/server/components/dropdown/dropdown.schema.js +2 -4
  212. package/dist/server/components/dropdown/dropdown.variables.js +2 -4
  213. package/dist/server/components/dropdown/index.js +27 -1008
  214. package/dist/server/components/dropdown-group/dropdown-group.schema.js +2 -4
  215. package/dist/server/components/dropdown-group/dropdown-group.variables.js +2 -4
  216. package/dist/server/components/dropdown-group/index.js +9 -64
  217. package/dist/server/components/dropdown-item/dropdown-item.schema.js +5 -7
  218. package/dist/server/components/dropdown-item/dropdown-item.variables.js +2 -4
  219. package/dist/server/components/dropdown-item/index.js +10 -128
  220. package/dist/server/components/dropdown-label/dropdown-label.schema.js +2 -4
  221. package/dist/server/components/dropdown-label/dropdown-label.variables.js +2 -4
  222. package/dist/server/components/dropdown-label/index.js +9 -35
  223. package/dist/server/components/dropdown-menu/dropdown-menu.schema.js +2 -4
  224. package/dist/server/components/dropdown-menu/dropdown-menu.variables.js +2 -4
  225. package/dist/server/components/dropdown-menu/index.js +19 -442
  226. package/dist/server/components/dropdown-separator/dropdown-separator.schema.js +2 -4
  227. package/dist/server/components/dropdown-separator/dropdown-separator.variables.js +2 -4
  228. package/dist/server/components/dropdown-separator/index.js +9 -27
  229. package/dist/server/components/dropdown-trigger/dropdown-trigger.schema.js +2 -4
  230. package/dist/server/components/dropdown-trigger/dropdown-trigger.variables.js +2 -4
  231. package/dist/server/components/dropdown-trigger/index.js +10 -81
  232. package/dist/server/components/empty-state/empty-state.schema.js +2 -4
  233. package/dist/server/components/empty-state/empty-state.variables.js +2 -4
  234. package/dist/server/components/empty-state/index.js +9 -72
  235. package/dist/server/components/event-stream-viewer/event-stream-viewer.schema.js +2 -4
  236. package/dist/server/components/event-stream-viewer/event-stream-viewer.variables.js +2 -4
  237. package/dist/server/components/event-stream-viewer/index.js +17 -889
  238. package/dist/server/components/experimental/json-viewer/index.js +14 -17
  239. package/dist/server/components/experimental/message/index.js +13 -17
  240. package/dist/server/components/faceted-filter-bar/faceted-filter-bar.schema.js +2 -4
  241. package/dist/server/components/faceted-filter-bar/faceted-filter-bar.variables.js +2 -4
  242. package/dist/server/components/faceted-filter-bar/index.js +21 -749
  243. package/dist/server/components/feed/feed.schema.js +2 -4
  244. package/dist/server/components/feed/feed.variables.js +2 -4
  245. package/dist/server/components/feed/index.js +9 -96
  246. package/dist/server/components/feed-event/feed-event.schema.js +2 -4
  247. package/dist/server/components/feed-event/feed-event.variables.js +2 -4
  248. package/dist/server/components/feed-event/index.js +9 -69
  249. package/dist/server/components/file-upload/file-upload.schema.js +2 -4
  250. package/dist/server/components/file-upload/file-upload.variables.js +2 -4
  251. package/dist/server/components/file-upload/index.js +14 -459
  252. package/dist/server/components/floating-action-button/floating-action-button.schema.js +2 -4
  253. package/dist/server/components/floating-action-button/floating-action-button.variables.js +2 -4
  254. package/dist/server/components/floating-action-button/index.js +11 -101
  255. package/dist/server/components/focus-trap/focus-trap.schema.js +2 -4
  256. package/dist/server/components/focus-trap/focus-trap.variables.js +2 -4
  257. package/dist/server/components/focus-trap/index.js +10 -249
  258. package/dist/server/components/form-field/form-field.schema.js +2 -4
  259. package/dist/server/components/form-field/form-field.variables.js +2 -4
  260. package/dist/server/components/form-field/index.js +10 -145
  261. package/dist/server/components/form-section/form-section.schema.js +2 -4
  262. package/dist/server/components/form-section/form-section.variables.js +2 -4
  263. package/dist/server/components/form-section/index.js +9 -87
  264. package/dist/server/components/grid/grid.schema.js +2 -4
  265. package/dist/server/components/grid/grid.variables.js +2 -4
  266. package/dist/server/components/grid/index.js +9 -109
  267. package/dist/server/components/grid-item/grid-item.schema.js +2 -4
  268. package/dist/server/components/grid-item/grid-item.variables.js +2 -4
  269. package/dist/server/components/grid-item/index.js +9 -57
  270. package/dist/server/components/grid-list/grid-list.schema.js +2 -4
  271. package/dist/server/components/grid-list/grid-list.variables.js +2 -4
  272. package/dist/server/components/grid-list/index.js +8 -128
  273. package/dist/server/components/grid-list-item/grid-list-item.schema.js +2 -4
  274. package/dist/server/components/grid-list-item/grid-list-item.variables.js +2 -4
  275. package/dist/server/components/grid-list-item/index.js +9 -102
  276. package/dist/server/components/hover-card/hover-card.schema.js +2 -4
  277. package/dist/server/components/hover-card/hover-card.variables.js +2 -4
  278. package/dist/server/components/hover-card/index.js +13 -312
  279. package/dist/server/components/image/image.schema.js +2 -4
  280. package/dist/server/components/image/image.variables.js +2 -4
  281. package/dist/server/components/image/index.js +7 -83
  282. package/dist/server/components/input/index.js +15 -243
  283. package/dist/server/components/input/input.schema.js +2 -4
  284. package/dist/server/components/input/input.variables.js +2 -4
  285. package/dist/server/components/invocation-rule-builder/index.js +7 -367
  286. package/dist/server/components/invocation-rule-builder/invocation-rule-builder.schema.js +2 -4
  287. package/dist/server/components/invocation-rule-builder/invocation-rule-builder.variables.js +2 -4
  288. package/dist/server/components/json-schema-editor/index.js +56 -5676
  289. package/dist/server/components/json-schema-editor/json-schema-editor.schema.js +2 -4
  290. package/dist/server/components/json-schema-editor/json-schema-editor.variables.js +2 -4
  291. package/dist/server/components/json-viewer/index.js +9 -230
  292. package/dist/server/components/json-viewer/json-viewer.schema.js +2 -4
  293. package/dist/server/components/json-viewer/json-viewer.variables.js +2 -4
  294. package/dist/server/components/kanban-board/index.js +11 -1141
  295. package/dist/server/components/kanban-board/kanban-board.schema.js +2 -4
  296. package/dist/server/components/kanban-board/kanban-board.variables.js +2 -4
  297. package/dist/server/components/kbd/index.js +9 -44
  298. package/dist/server/components/kbd/kbd.schema.js +2 -4
  299. package/dist/server/components/kbd/kbd.variables.js +2 -4
  300. package/dist/server/components/keyboard-shortcuts/index.js +8 -113
  301. package/dist/server/components/keyboard-shortcuts/keyboard-shortcuts.schema.js +2 -4
  302. package/dist/server/components/keyboard-shortcuts/keyboard-shortcuts.variables.js +2 -4
  303. package/dist/server/components/label/index.js +7 -46
  304. package/dist/server/components/label/label.schema.js +2 -4
  305. package/dist/server/components/label/label.variables.js +2 -4
  306. package/dist/server/components/line-chart/index.js +9 -1147
  307. package/dist/server/components/line-chart/line-chart.schema.js +2 -4
  308. package/dist/server/components/line-chart/line-chart.variables.js +2 -4
  309. package/dist/server/components/link/index.js +9 -93
  310. package/dist/server/components/link/link.schema.js +2 -4
  311. package/dist/server/components/link/link.variables.js +2 -4
  312. package/dist/server/components/load-more/index.js +9 -141
  313. package/dist/server/components/load-more/load-more.schema.js +2 -4
  314. package/dist/server/components/load-more/load-more.variables.js +2 -4
  315. package/dist/server/components/locale-provider/index.js +8 -50
  316. package/dist/server/components/locale-provider/locale-provider.schema.js +2 -4
  317. package/dist/server/components/locale-provider/locale-provider.variables.js +2 -4
  318. package/dist/server/components/markdown-editor/index.js +44 -3998
  319. package/dist/server/components/markdown-editor/markdown-editor.schema.js +2 -4
  320. package/dist/server/components/markdown-editor/markdown-editor.variables.js +2 -4
  321. package/dist/server/components/masonry/index.js +7 -43
  322. package/dist/server/components/masonry/masonry.schema.js +2 -4
  323. package/dist/server/components/masonry/masonry.variables.js +2 -4
  324. package/dist/server/components/matrix-chart/index.js +10 -1017
  325. package/dist/server/components/matrix-chart/matrix-chart.schema.js +2 -4
  326. package/dist/server/components/matrix-chart/matrix-chart.variables.js +2 -4
  327. package/dist/server/components/media-controls/index.js +8 -161
  328. package/dist/server/components/media-controls/media-controls.schema.js +2 -4
  329. package/dist/server/components/media-controls/media-controls.variables.js +2 -4
  330. package/dist/server/components/menu-bar/index.js +23 -6
  331. package/dist/server/components/menu-bar/menu-bar.schema.js +2 -4
  332. package/dist/server/components/menu-bar/menu-bar.variables.js +2 -4
  333. package/dist/server/components/message/index.js +7 -55
  334. package/dist/server/components/message/message.schema.js +2 -4
  335. package/dist/server/components/message/message.variables.js +2 -4
  336. package/dist/server/components/modal/index.js +16 -547
  337. package/dist/server/components/modal/modal.schema.js +2 -4
  338. package/dist/server/components/modal/modal.variables.js +2 -4
  339. package/dist/server/components/navigation-bar/index.js +7 -152
  340. package/dist/server/components/navigation-bar/navigation-bar.schema.js +2 -4
  341. package/dist/server/components/navigation-bar/navigation-bar.variables.js +2 -4
  342. package/dist/server/components/navigation-item/index.js +9 -81
  343. package/dist/server/components/navigation-item/navigation-item.schema.js +2 -4
  344. package/dist/server/components/navigation-item/navigation-item.variables.js +2 -4
  345. package/dist/server/components/number-input/index.js +14 -488
  346. package/dist/server/components/number-input/number-input.schema.js +2 -4
  347. package/dist/server/components/number-input/number-input.variables.js +2 -4
  348. package/dist/server/components/pagination/index.js +8 -101
  349. package/dist/server/components/pagination/pagination.schema.js +2 -4
  350. package/dist/server/components/pagination/pagination.variables.js +2 -4
  351. package/dist/server/components/payload-inspector/index.js +31 -1476
  352. package/dist/server/components/payload-inspector/payload-inspector.schema.js +2 -4
  353. package/dist/server/components/payload-inspector/payload-inspector.variables.js +2 -4
  354. package/dist/server/components/permission-matrix/index.js +11 -289
  355. package/dist/server/components/permission-matrix/permission-matrix.schema.js +2 -4
  356. package/dist/server/components/permission-matrix/permission-matrix.variables.js +2 -4
  357. package/dist/server/components/phone-input/index.js +13 -4532
  358. package/dist/server/components/phone-input/phone-input.schema.js +2 -4
  359. package/dist/server/components/phone-input/phone-input.variables.js +2 -4
  360. package/dist/server/components/pin-input/index.js +12 -322
  361. package/dist/server/components/pin-input/pin-input.schema.js +2 -4
  362. package/dist/server/components/pin-input/pin-input.variables.js +2 -4
  363. package/dist/server/components/popover/index.js +17 -428
  364. package/dist/server/components/popover/popover.schema.js +2 -4
  365. package/dist/server/components/popover/popover.variables.js +2 -4
  366. package/dist/server/components/portal/index.js +11 -109
  367. package/dist/server/components/portal/portal.schema.js +2 -4
  368. package/dist/server/components/portal/portal.variables.js +2 -4
  369. package/dist/server/components/pricing-card/index.js +10 -237
  370. package/dist/server/components/pricing-card/pricing-card.schema.js +2 -4
  371. package/dist/server/components/pricing-card/pricing-card.variables.js +2 -4
  372. package/dist/server/components/progress/index.js +11 -71
  373. package/dist/server/components/progress/progress.schema.js +2 -4
  374. package/dist/server/components/progress/progress.variables.js +2 -4
  375. package/dist/server/components/radio-group/index.js +10 -198
  376. package/dist/server/components/radio-group/radio-group.schema.js +2 -4
  377. package/dist/server/components/radio-group/radio-group.variables.js +2 -4
  378. package/dist/server/components/rating/index.js +12 -357
  379. package/dist/server/components/rating/rating.schema.js +2 -4
  380. package/dist/server/components/rating/rating.variables.js +2 -4
  381. package/dist/server/components/resizable-panels/index.js +10 -721
  382. package/dist/server/components/resizable-panels/resizable-panels.schema.js +2 -4
  383. package/dist/server/components/resizable-panels/resizable-panels.variables.js +2 -4
  384. package/dist/server/components/review-editor/index.js +83 -9393
  385. package/dist/server/components/review-editor/review-editor.schema.js +2 -4
  386. package/dist/server/components/review-editor/review-editor.variables.js +2 -4
  387. package/dist/server/components/run-step-timeline/index.js +15 -755
  388. package/dist/server/components/run-step-timeline/run-step-timeline.schema.js +2 -4
  389. package/dist/server/components/run-step-timeline/run-step-timeline.variables.js +2 -4
  390. package/dist/server/components/schema-form/index.js +21 -1978
  391. package/dist/server/components/schema-form/schema-form.schema.js +2 -4
  392. package/dist/server/components/schema-form/schema-form.variables.js +2 -4
  393. package/dist/server/components/scroll-area/index.js +7 -52
  394. package/dist/server/components/scroll-area/scroll-area.schema.js +2 -4
  395. package/dist/server/components/scroll-area/scroll-area.variables.js +2 -4
  396. package/dist/server/components/search-field/index.js +19 -289
  397. package/dist/server/components/search-field/search-field.schema.js +2 -4
  398. package/dist/server/components/search-field/search-field.variables.js +2 -4
  399. package/dist/server/components/secret-value-field/index.js +11 -168
  400. package/dist/server/components/secret-value-field/secret-value-field.schema.js +2 -4
  401. package/dist/server/components/secret-value-field/secret-value-field.variables.js +2 -4
  402. package/dist/server/components/section-heading/index.js +7 -77
  403. package/dist/server/components/section-heading/section-heading.schema.js +2 -4
  404. package/dist/server/components/section-heading/section-heading.variables.js +2 -4
  405. package/dist/server/components/segment/index.js +12 -306
  406. package/dist/server/components/segment/segment.schema.js +2 -4
  407. package/dist/server/components/segment/segment.variables.js +2 -4
  408. package/dist/server/components/segmented-control/index.js +12 -308
  409. package/dist/server/components/segmented-control/segmented-control.schema.js +6 -4
  410. package/dist/server/components/segmented-control/segmented-control.variables.js +2 -4
  411. package/dist/server/components/select/index.js +14 -180
  412. package/dist/server/components/select/select.schema.js +2 -4
  413. package/dist/server/components/select/select.variables.js +2 -4
  414. package/dist/server/components/selection-popover/index.js +16 -443
  415. package/dist/server/components/selection-popover/selection-popover.schema.js +2 -4
  416. package/dist/server/components/selection-popover/selection-popover.variables.js +2 -4
  417. package/dist/server/components/share-card/index.js +9 -240
  418. package/dist/server/components/share-card/share-card.schema.js +2 -4
  419. package/dist/server/components/share-card/share-card.variables.js +2 -4
  420. package/dist/server/components/sheet/index.js +15 -768
  421. package/dist/server/components/sheet/sheet.schema.js +2 -4
  422. package/dist/server/components/sheet/sheet.variables.js +2 -4
  423. package/dist/server/components/shortcut-hint/index.js +8 -98
  424. package/dist/server/components/shortcut-hint/shortcut-hint.schema.js +2 -4
  425. package/dist/server/components/shortcut-hint/shortcut-hint.variables.js +2 -4
  426. package/dist/server/components/side-navigation/index.js +12 -240
  427. package/dist/server/components/side-navigation/side-navigation.schema.js +2 -4
  428. package/dist/server/components/side-navigation/side-navigation.variables.js +2 -4
  429. package/dist/server/components/side-navigation-group/index.js +11 -119
  430. package/dist/server/components/side-navigation-group/side-navigation-group.schema.js +2 -4
  431. package/dist/server/components/side-navigation-group/side-navigation-group.variables.js +2 -4
  432. package/dist/server/components/side-navigation-item/index.js +12 -117
  433. package/dist/server/components/side-navigation-item/side-navigation-item.schema.js +2 -4
  434. package/dist/server/components/side-navigation-item/side-navigation-item.variables.js +2 -4
  435. package/dist/server/components/sidebar/index.js +17 -921
  436. package/dist/server/components/sidebar/sidebar.schema.js +2 -4
  437. package/dist/server/components/sidebar/sidebar.variables.js +2 -4
  438. package/dist/server/components/skeleton/index.js +7 -28
  439. package/dist/server/components/skeleton/skeleton.schema.js +2 -4
  440. package/dist/server/components/skeleton/skeleton.variables.js +2 -4
  441. package/dist/server/components/skip-link/index.js +9 -105
  442. package/dist/server/components/skip-link/skip-link.schema.js +2 -4
  443. package/dist/server/components/skip-link/skip-link.variables.js +2 -4
  444. package/dist/server/components/slider/index.js +13 -563
  445. package/dist/server/components/slider/slider.schema.js +2 -4
  446. package/dist/server/components/slider/slider.variables.js +2 -4
  447. package/dist/server/components/sortable-list/index.js +9 -632
  448. package/dist/server/components/sortable-list/sortable-list.schema.js +2 -4
  449. package/dist/server/components/sortable-list/sortable-list.variables.js +2 -4
  450. package/dist/server/components/spectrogram/index.js +10 -957
  451. package/dist/server/components/spectrogram/spectrogram.schema.js +2 -4
  452. package/dist/server/components/spectrogram/spectrogram.variables.js +2 -4
  453. package/dist/server/components/spectrum-chart/index.js +9 -858
  454. package/dist/server/components/spectrum-chart/spectrum-chart.schema.js +2 -4
  455. package/dist/server/components/spectrum-chart/spectrum-chart.variables.js +2 -4
  456. package/dist/server/components/speed-dial/index.js +12 -388
  457. package/dist/server/components/speed-dial/speed-dial.schema.js +2 -4
  458. package/dist/server/components/speed-dial/speed-dial.variables.js +2 -4
  459. package/dist/server/components/speed-dial-action/index.js +12 -166
  460. package/dist/server/components/speed-dial-action/speed-dial-action.schema.js +2 -4
  461. package/dist/server/components/speed-dial-action/speed-dial-action.variables.js +2 -4
  462. package/dist/server/components/spinner/index.js +9 -36
  463. package/dist/server/components/spinner/spinner.schema.js +2 -4
  464. package/dist/server/components/spinner/spinner.variables.js +2 -4
  465. package/dist/server/components/stacked-list-item/index.js +9 -122
  466. package/dist/server/components/stacked-list-item/stacked-list-item.schema.js +2 -4
  467. package/dist/server/components/stacked-list-item/stacked-list-item.variables.js +2 -4
  468. package/dist/server/components/stat/index.js +12 -110
  469. package/dist/server/components/stat/stat.schema.js +2 -4
  470. package/dist/server/components/stat/stat.variables.js +2 -4
  471. package/dist/server/components/stat-group/index.js +11 -144
  472. package/dist/server/components/stat-group/stat-group.schema.js +2 -4
  473. package/dist/server/components/stat-group/stat-group.variables.js +2 -4
  474. package/dist/server/components/status-dot/index.js +9 -79
  475. package/dist/server/components/status-dot/status-dot.schema.js +2 -4
  476. package/dist/server/components/status-dot/status-dot.variables.js +2 -4
  477. package/dist/server/components/steps/index.js +10 -191
  478. package/dist/server/components/steps/steps.schema.js +2 -4
  479. package/dist/server/components/steps/steps.variables.js +2 -4
  480. package/dist/server/components/surface/index.js +10 -63
  481. package/dist/server/components/surface/surface.schema.js +2 -4
  482. package/dist/server/components/surface/surface.variables.js +2 -4
  483. package/dist/server/components/tab/index.js +11 -96
  484. package/dist/server/components/tab/tab.schema.js +2 -4
  485. package/dist/server/components/tab/tab.variables.js +2 -4
  486. package/dist/server/components/tab-list/index.js +10 -31
  487. package/dist/server/components/tab-list/tab-list.schema.js +2 -4
  488. package/dist/server/components/tab-list/tab-list.variables.js +2 -4
  489. package/dist/server/components/tab-panel/index.js +10 -40
  490. package/dist/server/components/tab-panel/tab-panel.schema.js +2 -4
  491. package/dist/server/components/tab-panel/tab-panel.variables.js +2 -4
  492. package/dist/server/components/table/index.js +19 -362
  493. package/dist/server/components/table/table.schema.js +2 -4
  494. package/dist/server/components/table/table.variables.js +2 -4
  495. package/dist/server/components/table-body/index.js +11 -49
  496. package/dist/server/components/table-body/table-body.schema.js +2 -4
  497. package/dist/server/components/table-body/table-body.variables.js +2 -4
  498. package/dist/server/components/table-cell/index.js +9 -41
  499. package/dist/server/components/table-cell/table-cell.schema.js +2 -4
  500. package/dist/server/components/table-cell/table-cell.variables.js +2 -4
  501. package/dist/server/components/table-header/index.js +11 -84
  502. package/dist/server/components/table-header/table-header.schema.js +2 -4
  503. package/dist/server/components/table-header/table-header.variables.js +2 -4
  504. package/dist/server/components/table-header-cell/index.js +11 -88
  505. package/dist/server/components/table-header-cell/table-header-cell.schema.js +2 -4
  506. package/dist/server/components/table-header-cell/table-header-cell.variables.js +2 -4
  507. package/dist/server/components/table-row/index.js +13 -130
  508. package/dist/server/components/table-row/table-row.schema.js +2 -4
  509. package/dist/server/components/table-row/table-row.variables.js +2 -4
  510. package/dist/server/components/tabs/index.js +16 -393
  511. package/dist/server/components/tabs/tabs.schema.js +2 -4
  512. package/dist/server/components/tabs/tabs.variables.js +2 -4
  513. package/dist/server/components/tag-input/index.js +16 -6
  514. package/dist/server/components/tag-input/tag-input.schema.js +2 -4
  515. package/dist/server/components/tag-input/tag-input.variables.js +2 -4
  516. package/dist/server/components/textarea/index.js +12 -183
  517. package/dist/server/components/textarea/textarea.schema.js +2 -4
  518. package/dist/server/components/textarea/textarea.variables.js +2 -4
  519. package/dist/server/components/time-field/index.js +10 -286
  520. package/dist/server/components/time-field/time-field.schema.js +2 -4
  521. package/dist/server/components/time-field/time-field.variables.js +2 -4
  522. package/dist/server/components/timeline/index.js +7 -248
  523. package/dist/server/components/timeline/timeline.schema.js +2 -4
  524. package/dist/server/components/timeline/timeline.variables.js +2 -4
  525. package/dist/server/components/toast-region/index.js +10 -717
  526. package/dist/server/components/toast-region/toast-region.schema.js +2 -4
  527. package/dist/server/components/toast-region/toast-region.variables.js +2 -4
  528. package/dist/server/components/toggle/index.js +10 -80
  529. package/dist/server/components/toggle/toggle.schema.js +2 -4
  530. package/dist/server/components/toggle/toggle.variables.js +2 -4
  531. package/dist/server/components/toolbar/index.js +15 -534
  532. package/dist/server/components/toolbar/toolbar.schema.js +2 -4
  533. package/dist/server/components/toolbar/toolbar.variables.js +2 -4
  534. package/dist/server/components/tooltip/index.js +15 -267
  535. package/dist/server/components/tooltip/tooltip.schema.js +2 -4
  536. package/dist/server/components/tooltip/tooltip.variables.js +2 -4
  537. package/dist/server/components/transfer-list/index.js +8 -347
  538. package/dist/server/components/transfer-list/transfer-list.schema.js +2 -4
  539. package/dist/server/components/transfer-list/transfer-list.variables.js +2 -4
  540. package/dist/server/components/tree/index.js +16 -3400
  541. package/dist/server/components/tree/tree.schema.js +2 -4
  542. package/dist/server/components/tree/tree.variables.js +2 -4
  543. package/dist/server/components/tree-item/index.js +11 -696
  544. package/dist/server/components/tree-item/tree-item.schema.js +2 -4
  545. package/dist/server/components/tree-item/tree-item.variables.js +2 -4
  546. package/dist/server/components/typography/index.js +7 -61
  547. package/dist/server/components/typography/typography.schema.js +2 -4
  548. package/dist/server/components/typography/typography.variables.js +2 -4
  549. package/dist/server/components/virtual-list/index.js +14 -200
  550. package/dist/server/components/virtual-list/virtual-list.schema.js +2 -4
  551. package/dist/server/components/virtual-list/virtual-list.variables.js +2 -4
  552. package/dist/server/components/visually-hidden/index.js +9 -37
  553. package/dist/server/components/visually-hidden/visually-hidden.schema.js +2 -4
  554. package/dist/server/components/visually-hidden/visually-hidden.variables.js +2 -4
  555. package/dist/server/components/waveform/index.js +9 -894
  556. package/dist/server/components/waveform/waveform.schema.js +2 -4
  557. package/dist/server/components/waveform/waveform.variables.js +2 -4
  558. package/dist/server/highlighters/shiki/index.js +8 -13
  559. package/dist/server/index.js +723 -44377
  560. package/dist/server/index.server-04pgs1m4.js +9 -0
  561. package/dist/server/index.server-06ak422z.js +726 -0
  562. package/dist/server/index.server-09ky0qhy.js +9 -0
  563. package/dist/server/index.server-0a8m173j.js +73 -0
  564. package/dist/server/index.server-0ed43ctm.js +3834 -0
  565. package/dist/server/index.server-0rj7syca.js +271 -0
  566. package/dist/server/index.server-0tnw5ter.js +39 -0
  567. package/dist/server/index.server-1c79f4fe.js +38 -0
  568. package/dist/server/index.server-1gsgt31t.js +9 -0
  569. package/dist/server/index.server-1k7j69zg.js +20 -0
  570. package/dist/server/index.server-1nzyv1av.js +50 -0
  571. package/dist/server/index.server-1tp7nabp.js +98 -0
  572. package/dist/server/index.server-1vsv7ngz.js +106 -0
  573. package/dist/server/index.server-1x7gd5rm.js +55 -0
  574. package/dist/server/index.server-1yn62azq.js +145 -0
  575. package/dist/server/index.server-20y4mdhm.js +167 -0
  576. package/dist/server/index.server-24kf2kgd.js +9 -0
  577. package/dist/server/index.server-27c3ewc8.js +9 -0
  578. package/dist/server/index.server-2fa12eg1.js +153 -0
  579. package/dist/server/index.server-2fz89mxv.js +9 -0
  580. package/dist/server/index.server-2g8qr4nk.js +72 -0
  581. package/dist/server/index.server-2h3y9v3e.js +15 -0
  582. package/dist/server/index.server-2q8eszkm.js +319 -0
  583. package/dist/server/index.server-2sjf4r4j.js +1036 -0
  584. package/dist/server/index.server-2tr8ba51.js +114 -0
  585. package/dist/server/index.server-2ymxf0ra.js +71 -0
  586. package/dist/server/index.server-317enkqq.js +2 -0
  587. package/dist/server/index.server-324f5vcc.js +195 -0
  588. package/dist/server/index.server-338vqndh.js +9 -0
  589. package/dist/server/index.server-34p02y48.js +149 -0
  590. package/dist/server/index.server-36yahywm.js +423 -0
  591. package/dist/server/index.server-37x76zdn.js +6 -0
  592. package/dist/server/index.server-3cwyrz8f.js +84 -0
  593. package/dist/server/index.server-3f5f7jd4.js +371 -0
  594. package/dist/server/index.server-3fvz5gak.js +30 -0
  595. package/dist/server/index.server-3jz24pb5.js +38 -0
  596. package/dist/server/index.server-3mbgzhq8.js +59 -0
  597. package/dist/server/index.server-3zzwg4ew.js +60 -0
  598. package/dist/server/index.server-41003crj.js +125 -0
  599. package/dist/server/index.server-42qeekwc.js +10 -0
  600. package/dist/server/index.server-493m9fm5.js +14 -0
  601. package/dist/server/index.server-4jc5ny87.js +174 -0
  602. package/dist/server/index.server-4p5znv15.js +92 -0
  603. package/dist/server/index.server-4pv40879.js +68 -0
  604. package/dist/server/index.server-4pyw3ask.js +86 -0
  605. package/dist/server/index.server-4t03p6p4.js +113 -0
  606. package/dist/server/index.server-4wphqyck.js +73 -0
  607. package/dist/server/index.server-52fkd3c2.js +53 -0
  608. package/dist/server/index.server-5599w5gj.js +41 -0
  609. package/dist/server/index.server-578qndbg.js +221 -0
  610. package/dist/server/index.server-5bxfjsbc.js +74 -0
  611. package/dist/server/index.server-5h2t2v49.js +9 -0
  612. package/dist/server/index.server-5hvm9w79.js +9 -0
  613. package/dist/server/index.server-5kt7t4y4.js +69 -0
  614. package/dist/server/index.server-5qknw2zb.js +46 -0
  615. package/dist/server/index.server-5s9645md.js +97 -0
  616. package/dist/server/index.server-5v74e1fz.js +29 -0
  617. package/dist/server/index.server-5zbf7wta.js +4463 -0
  618. package/dist/server/index.server-61g7sxkr.js +191 -0
  619. package/dist/server/index.server-62gb3jcw.js +9 -0
  620. package/dist/server/index.server-6492n4zt.js +107 -0
  621. package/dist/server/index.server-64bppvdn.js +9 -0
  622. package/dist/server/index.server-68hbjs6n.js +1642 -0
  623. package/dist/server/index.server-6dfav8r0.js +142 -0
  624. package/dist/server/index.server-6evw00zj.js +245 -0
  625. package/dist/server/index.server-6jnnp1s8.js +32 -0
  626. package/dist/server/index.server-6mdy1500.js +31 -0
  627. package/dist/server/index.server-6pdmym90.js +11 -0
  628. package/dist/server/index.server-6rw2v7f4.js +457 -0
  629. package/dist/server/index.server-6tc4k9n2.js +281 -0
  630. package/dist/server/index.server-6zgzghtm.js +157 -0
  631. package/dist/server/index.server-70c570r3.js +109 -0
  632. package/dist/server/index.server-76y146qj.js +141 -0
  633. package/dist/server/index.server-77gpgvab.js +68 -0
  634. package/dist/server/index.server-78d33trm.js +88 -0
  635. package/dist/server/index.server-7d9fgwdv.js +284 -0
  636. package/dist/server/index.server-7pdq2w0a.js +17 -0
  637. package/dist/server/index.server-7ptnbrtg.js +9 -0
  638. package/dist/server/index.server-7pxzf0ch.js +9 -0
  639. package/dist/server/index.server-7wsshxkg.js +166 -0
  640. package/dist/server/index.server-7yg3rd66.js +126 -0
  641. package/dist/server/index.server-8bqpdv5z.js +63 -0
  642. package/dist/server/index.server-8cvkc386.js +271 -0
  643. package/dist/server/index.server-8d3tttbj.js +31 -0
  644. package/dist/server/index.server-8gakk9d5.js +168 -0
  645. package/dist/server/index.server-8hdvr9bt.js +18 -0
  646. package/dist/server/index.server-8jm0z4vp.js +38 -0
  647. package/dist/server/index.server-8ysrmagt.js +9 -0
  648. package/dist/server/index.server-92ae8fk6.js +83 -0
  649. package/dist/server/index.server-93xr1xx4.js +192 -0
  650. package/dist/server/index.server-94b7tjs5.js +27 -0
  651. package/dist/server/index.server-94p65bqz.js +38 -0
  652. package/dist/server/index.server-94wsps5p.js +9 -0
  653. package/dist/server/index.server-96fg085d.js +9 -0
  654. package/dist/server/index.server-9cyktwxj.js +9 -0
  655. package/dist/server/index.server-9kas8kq5.js +462 -0
  656. package/dist/server/index.server-9pbg150a.js +9 -0
  657. package/dist/server/index.server-9r0zg6d9.js +102 -0
  658. package/dist/server/index.server-9r6rts7c.js +2 -0
  659. package/dist/server/index.server-9vqgsfds.js +9 -0
  660. package/dist/server/index.server-9w7qdn8h.js +22 -0
  661. package/dist/server/index.server-9xyn021z.js +9 -0
  662. package/dist/server/index.server-abm21gz1.js +41 -0
  663. package/dist/server/index.server-adgnf7ez.js +190 -0
  664. package/dist/server/index.server-ah91j894.js +564 -0
  665. package/dist/server/index.server-ajzk1x9v.js +224 -0
  666. package/dist/server/index.server-amfq2v2p.js +12 -0
  667. package/dist/server/index.server-ans2v9y9.js +45 -0
  668. package/dist/server/index.server-anyk9x1r.js +282 -0
  669. package/dist/server/index.server-att810se.js +362 -0
  670. package/dist/server/index.server-awaramqw.js +277 -0
  671. package/dist/server/index.server-axzcx0e9.js +9 -0
  672. package/dist/server/index.server-b14k8cq5.js +458 -0
  673. package/dist/server/index.server-b54c3kn2.js +22 -0
  674. package/dist/server/index.server-bfkka7x4.js +2 -0
  675. package/dist/server/index.server-bgcpy5vk.js +47 -0
  676. package/dist/server/index.server-bktae19b.js +75 -0
  677. package/dist/server/index.server-bkz7h7jx.js +100 -0
  678. package/dist/server/index.server-br63fj2h.js +9 -0
  679. package/dist/server/index.server-bs46fdxd.js +54 -0
  680. package/dist/server/index.server-bte0dfkh.js +30 -0
  681. package/dist/server/index.server-bxmyxbfm.js +95 -0
  682. package/dist/server/index.server-c29mzp9r.js +48 -0
  683. package/dist/server/index.server-c3gbtj71.js +65 -0
  684. package/dist/server/index.server-c5jyrshr.js +9 -0
  685. package/dist/server/index.server-c7t8taqa.js +23 -0
  686. package/dist/server/index.server-chh0fzxj.js +8 -0
  687. package/dist/server/index.server-chj73na5.js +655 -0
  688. package/dist/server/index.server-cjkcwy18.js +9 -0
  689. package/dist/server/index.server-d2e6xxc3.js +94 -0
  690. package/dist/server/index.server-d63pwytk.js +85 -0
  691. package/dist/server/index.server-d6peankz.js +563 -0
  692. package/dist/server/index.server-dbkczma7.js +83 -0
  693. package/dist/server/index.server-dezmeg8v.js +244 -0
  694. package/dist/server/index.server-dpnwk6w4.js +9 -0
  695. package/dist/server/index.server-dr17jbt2.js +162 -0
  696. package/dist/server/index.server-dsf1bjt5.js +9 -0
  697. package/dist/server/index.server-dt2rpjtk.js +90 -0
  698. package/dist/server/index.server-dxkrc7sf.js +9 -0
  699. package/dist/server/index.server-dyryxwe8.js +67 -0
  700. package/dist/server/index.server-e10j3s54.js +93 -0
  701. package/dist/server/index.server-e1gjs02r.js +147 -0
  702. package/dist/server/index.server-e39mgany.js +9 -0
  703. package/dist/server/index.server-e967et3j.js +77 -0
  704. package/dist/server/index.server-e9g5b01k.js +9 -0
  705. package/dist/server/index.server-ecv75266.js +9 -0
  706. package/dist/server/index.server-eeq2c9pm.js +78 -0
  707. package/dist/server/index.server-eknv9erd.js +169 -0
  708. package/dist/server/index.server-emt82wev.js +447 -0
  709. package/dist/server/index.server-en97tw08.js +9 -0
  710. package/dist/server/index.server-eq2ca4j4.js +105 -0
  711. package/dist/server/index.server-eqa0xxbt.js +72 -0
  712. package/dist/server/index.server-et3p2cfq.js +14 -0
  713. package/dist/server/index.server-ezn8d6zv.js +285 -0
  714. package/dist/server/index.server-f1j0pjt8.js +99 -0
  715. package/dist/server/index.server-f42dvea7.js +294 -0
  716. package/dist/server/index.server-fankxd0h.js +362 -0
  717. package/dist/server/index.server-fcgycatb.js +9 -0
  718. package/dist/server/index.server-fdmb571x.js +116 -0
  719. package/dist/server/index.server-fgpfrjbw.js +9 -0
  720. package/dist/server/index.server-fhnhfrf4.js +9 -0
  721. package/dist/server/index.server-fjzvm2c4.js +175 -0
  722. package/dist/server/index.server-fn57dr4e.js +21 -0
  723. package/dist/server/index.server-fnj6xyr0.js +1028 -0
  724. package/dist/server/index.server-fy9eb0xp.js +101 -0
  725. package/dist/server/index.server-fz2jddt8.js +613 -0
  726. package/dist/server/index.server-g75bhbvb.js +2 -0
  727. package/dist/server/index.server-g8kdhzf2.js +146 -0
  728. package/dist/server/index.server-gae09raw.js +75 -0
  729. package/dist/server/index.server-gbzsb04q.js +71 -0
  730. package/dist/server/index.server-ge07r1p8.js +8 -0
  731. package/dist/server/index.server-ghvqpc50.js +71 -0
  732. package/dist/server/index.server-gj3eb1ce.js +23 -0
  733. package/dist/server/index.server-grb4gyta.js +210 -0
  734. package/dist/server/index.server-gtsdsv75.js +230 -0
  735. package/dist/server/index.server-gw4atb82.js +216 -0
  736. package/dist/server/index.server-gxhj1st8.js +9 -0
  737. package/dist/server/index.server-h1vdh0nc.js +107 -0
  738. package/dist/server/index.server-h54v6c32.js +21 -0
  739. package/dist/server/index.server-h68sx7bz.js +37 -0
  740. package/dist/server/index.server-hmw4afhn.js +25 -0
  741. package/dist/server/index.server-hn1n8dwr.js +9 -0
  742. package/dist/server/index.server-htmd13mc.js +2 -0
  743. package/dist/server/index.server-hxz0tnr9.js +57 -0
  744. package/dist/server/index.server-hzamrkgk.js +256 -0
  745. package/dist/server/index.server-j2kh5fhy.js +9 -0
  746. package/dist/server/index.server-jda8tyzf.js +53 -0
  747. package/dist/server/index.server-jev5qwr3.js +9 -0
  748. package/dist/server/index.server-jh1te4hy.js +9 -0
  749. package/dist/server/index.server-jhvs517p.js +384 -0
  750. package/dist/server/index.server-jky3p49s.js +9 -0
  751. package/dist/server/index.server-js3eva86.js +8 -0
  752. package/dist/server/index.server-jwwwgx0d.js +9 -0
  753. package/dist/server/index.server-jx2qn5an.js +9 -0
  754. package/dist/server/index.server-k02nvs46.js +50 -0
  755. package/dist/server/index.server-k15sq5qf.js +294 -0
  756. package/dist/server/index.server-k1hd2e0x.js +9 -0
  757. package/dist/server/index.server-k454ba7j.js +291 -0
  758. package/dist/server/index.server-k5fmb7tw.js +35 -0
  759. package/dist/server/index.server-k7py0pfc.js +151 -0
  760. package/dist/server/index.server-kb6w1a7c.js +27 -0
  761. package/dist/server/index.server-kjtb596w.js +163 -0
  762. package/dist/server/index.server-kq859dmc.js +1543 -0
  763. package/dist/server/index.server-kykvc153.js +3393 -0
  764. package/dist/server/index.server-m6phax03.js +137 -0
  765. package/dist/server/index.server-m8d6yz6b.js +47 -0
  766. package/dist/server/index.server-m9axazfh.js +9 -0
  767. package/dist/server/index.server-m9n4b1bv.js +9 -0
  768. package/dist/server/index.server-mc6vc1pm.js +63 -0
  769. package/dist/server/index.server-mm4g29h0.js +85 -0
  770. package/dist/server/index.server-msf37rwk.js +9 -0
  771. package/dist/server/index.server-n3zbnw3w.js +194 -0
  772. package/dist/server/index.server-n4zvbkvq.js +9 -0
  773. package/dist/server/index.server-n562tmxd.js +197 -0
  774. package/dist/server/index.server-n86bmg5s.js +393 -0
  775. package/dist/server/index.server-najpstc3.js +224 -0
  776. package/dist/server/index.server-nav1z5d8.js +59 -0
  777. package/dist/server/index.server-nhnvxwz3.js +9 -0
  778. package/dist/server/index.server-nj8mebze.js +14 -0
  779. package/dist/server/index.server-nvktnr2d.js +2311 -0
  780. package/dist/server/index.server-nw1n32dx.js +100 -0
  781. package/dist/server/index.server-nwjjp9t6.js +71 -0
  782. package/dist/server/index.server-nxx9ckb3.js +123 -0
  783. package/dist/server/index.server-ny1hfypg.js +1138 -0
  784. package/dist/server/index.server-nzjy03c0.js +189 -0
  785. package/dist/server/index.server-p045dgmk.js +49 -0
  786. package/dist/server/index.server-p3aw22qv.js +40 -0
  787. package/dist/server/index.server-p617pg5j.js +9 -0
  788. package/dist/server/index.server-p78n7r6g.js +37 -0
  789. package/dist/server/index.server-pa4qcv70.js +9 -0
  790. package/dist/server/index.server-pehx7yrn.js +72 -0
  791. package/dist/server/index.server-pg65gmdb.js +117 -0
  792. package/dist/server/index.server-ps1p8xrf.js +9 -0
  793. package/dist/server/index.server-q160a4x5.js +9 -0
  794. package/dist/server/index.server-q4qh8a6x.js +126 -0
  795. package/dist/server/index.server-q550gsbe.js +83 -0
  796. package/dist/server/index.server-qjdkp02z.js +117 -0
  797. package/dist/server/index.server-qkfd0qa7.js +2 -0
  798. package/dist/server/index.server-qkwnbj88.js +149 -0
  799. package/dist/server/index.server-qq12yqwb.js +76 -0
  800. package/dist/server/index.server-qreadmdy.js +85 -0
  801. package/dist/server/index.server-qwn3yfyq.js +74 -0
  802. package/dist/server/index.server-qxd1ej6r.js +161 -0
  803. package/dist/server/index.server-qz23rh6j.js +34 -0
  804. package/dist/server/index.server-r0wzpqh7.js +113 -0
  805. package/dist/server/index.server-r30hm3ep.js +159 -0
  806. package/dist/server/index.server-rf67m8v5.js +2 -0
  807. package/dist/server/index.server-rpenapvz.js +57 -0
  808. package/dist/server/index.server-rsjrjd13.js +223 -0
  809. package/dist/server/index.server-s0xz0vmh.js +117 -0
  810. package/dist/server/index.server-s84epxbr.js +134 -0
  811. package/dist/server/index.server-sg3pthbn.js +81 -0
  812. package/dist/server/index.server-sk2damtz.js +150 -0
  813. package/dist/server/index.server-sz7qa1vs.js +9 -0
  814. package/dist/server/index.server-sz8sxsj6.js +15 -0
  815. package/dist/server/index.server-t437b1td.js +71 -0
  816. package/dist/server/index.server-t9a3m15z.js +691 -0
  817. package/dist/server/index.server-tesf3qd9.js +446 -0
  818. package/dist/server/index.server-thp727nz.js +9 -0
  819. package/dist/server/index.server-tjbpdh7b.js +47 -0
  820. package/dist/server/index.server-tm012b9x.js +421 -0
  821. package/dist/server/index.server-tp1j7few.js +53 -0
  822. package/dist/server/index.server-tys344bj.js +61 -0
  823. package/dist/server/index.server-v5qqrjej.js +30 -0
  824. package/dist/server/index.server-v6kp8px5.js +68 -0
  825. package/dist/server/index.server-va9x168w.js +30 -0
  826. package/dist/server/index.server-vbnc9fac.js +377 -0
  827. package/dist/server/index.server-vmsmaztb.js +35 -0
  828. package/dist/server/index.server-vqgwwdzz.js +9 -0
  829. package/dist/server/index.server-vqhdvsx5.js +151 -0
  830. package/dist/server/index.server-vzvz108c.js +9 -0
  831. package/dist/server/index.server-w6am2dxc.js +12 -0
  832. package/dist/server/index.server-weae7gs2.js +15 -0
  833. package/dist/server/index.server-wj91h1wk.js +666 -0
  834. package/dist/server/index.server-wqkzae6a.js +41 -0
  835. package/dist/server/index.server-wrx4sd6j.js +9 -0
  836. package/dist/server/index.server-wrz6jqw1.js +59 -0
  837. package/dist/server/index.server-x83rwh0m.js +49 -0
  838. package/dist/server/index.server-xb4r3skb.js +9 -0
  839. package/dist/server/index.server-xecgaeth.js +102 -0
  840. package/dist/server/index.server-xjmx6rm8.js +1162 -0
  841. package/dist/server/index.server-xmphf30z.js +9 -0
  842. package/dist/server/index.server-xnh932xs.js +85 -0
  843. package/dist/server/index.server-xp53vmj5.js +129 -0
  844. package/dist/server/index.server-xpghbgpz.js +22 -0
  845. package/dist/server/index.server-xqmtg1tq.js +9 -0
  846. package/dist/server/index.server-xxddjkmm.js +9 -0
  847. package/dist/server/index.server-y0q949bm.js +27 -0
  848. package/dist/server/index.server-y16zcjfw.js +38 -0
  849. package/dist/server/index.server-y3r39npa.js +54 -0
  850. package/dist/server/index.server-y3xyech8.js +9 -0
  851. package/dist/server/index.server-y68tcxw3.js +52 -0
  852. package/dist/server/index.server-ya3f9g84.js +9 -0
  853. package/dist/server/index.server-yaejrcc0.js +53 -0
  854. package/dist/server/index.server-ygk52jt8.js +62 -0
  855. package/dist/server/index.server-yheh2spx.js +66 -0
  856. package/dist/server/index.server-yr9zjj1r.js +31 -0
  857. package/dist/server/index.server-ytdfzwh1.js +56 -0
  858. package/dist/server/index.server-z63wz94j.js +9 -0
  859. package/dist/server/index.server-z7nvkz8v.js +8 -0
  860. package/dist/server/index.server-zbcza3tc.js +62 -0
  861. package/dist/server/index.server-zbf09rvx.js +111 -0
  862. package/dist/server/index.server-zcfnwc9r.js +37 -0
  863. package/dist/server/index.server-zdg2zpx1.js +28 -0
  864. package/dist/server/index.server-zf0r6cj7.js +9 -0
  865. package/dist/server/index.server-zm9kbbpp.js +9 -0
  866. package/dist/server/index.server-zt7rjnct.js +100 -0
  867. package/dist/server/index.server-zwjp26z8.js +21 -0
  868. package/dist/server/styles/base-guard.js +6 -8
  869. package/dist/utilities/change-tracker.svelte.d.ts +1 -20
  870. package/dist/utilities/change-tracker.types.d.ts +20 -0
  871. package/dist/utilities/document-order.d.ts +0 -16
  872. package/dist/utilities/sortable-controller.svelte.d.ts +1 -47
  873. package/dist/utilities/sortable-controller.types.d.ts +48 -0
  874. package/dist/utilities/typeahead.d.ts +13 -0
  875. package/dist/utilities/use-announcer.svelte.d.ts +1 -24
  876. package/dist/utilities/use-announcer.types.d.ts +24 -0
  877. package/dist/utilities/use-history.svelte.d.ts +1 -52
  878. package/dist/utilities/use-history.types.d.ts +52 -0
  879. package/dist/utilities/use-intersection.svelte.d.ts +2 -13
  880. package/dist/utilities/use-intersection.types.d.ts +13 -0
  881. package/dist/utilities/use-mutation-observer.svelte.d.ts +2 -21
  882. package/dist/utilities/use-mutation-observer.types.d.ts +21 -0
  883. package/dist/utilities/use-reduced-motion.svelte.d.ts +1 -4
  884. package/dist/utilities/use-reduced-motion.types.d.ts +4 -0
  885. package/dist/utilities/use-resize-observer.svelte.d.ts +2 -9
  886. package/dist/utilities/use-resize-observer.types.d.ts +9 -0
  887. package/package.json +347 -174
  888. package/src/_internal/tree-registry.svelte.ts +13 -15
  889. package/src/components/_sortable-item.svelte +1 -1
  890. package/src/components/autocomplete/autocomplete.svelte +15 -2
  891. package/src/components/combobox/README.md +1 -0
  892. package/src/components/combobox/combobox.svelte +55 -0
  893. package/src/components/combobox/combobox.types.ts +2 -0
  894. package/src/components/data-table/README.md +21 -15
  895. package/src/components/data-table/data-table.css +20 -0
  896. package/src/components/data-table/data-table.svelte +157 -5
  897. package/src/components/data-table/data-table.types.ts +27 -0
  898. package/src/components/data-table/index.ts +6 -1
  899. package/src/components/dropdown-item/README.md +12 -12
  900. package/src/components/dropdown-item/dropdown-item.svelte +3 -1
  901. package/src/components/dropdown-item/dropdown-item.types.ts +3 -3
  902. package/src/components/dropdown-menu/dropdown-menu.svelte +32 -1
  903. package/src/components/experimental/json-viewer/index.ts +3 -1
  904. package/src/components/experimental/message/index.ts +3 -1
  905. package/src/components/hover-card/hover-card.svelte +6 -7
  906. package/src/components/json-schema-editor/diff-view.svelte +1 -1
  907. package/src/components/json-schema-editor/form-view.svelte +1 -1
  908. package/src/components/json-schema-editor/json-schema-editor-state.svelte.ts +3 -20
  909. package/src/components/json-schema-editor/json-schema-editor-state.types.ts +21 -0
  910. package/src/components/json-schema-editor/json-schema-toolbar.svelte +1 -1
  911. package/src/components/json-schema-editor/json-view.svelte +1 -1
  912. package/src/components/menu-bar/index.ts +4 -1
  913. package/src/components/menu-bar/menu-bar.svelte +248 -1
  914. package/src/components/segmented-control/README.md +1 -0
  915. package/src/components/segmented-control/segmented-control.svelte +54 -1
  916. package/src/components/segmented-control/segmented-control.types.ts +2 -0
  917. package/src/components/sortable-list/sortable-list.types.ts +4 -4
  918. package/src/components/tag-input/index.ts +4 -1
  919. package/src/components/tooltip/tooltip.svelte +39 -14
  920. package/src/components/tree/tree.svelte +19 -39
  921. package/src/index.ts +5 -4
  922. package/src/utilities/change-tracker.svelte.ts +1 -21
  923. package/src/utilities/change-tracker.types.ts +21 -0
  924. package/src/utilities/document-order.ts +8 -3
  925. package/src/utilities/sortable-controller.svelte.ts +5 -47
  926. package/src/utilities/sortable-controller.types.ts +49 -0
  927. package/src/utilities/typeahead.ts +63 -0
  928. package/src/utilities/use-announcer.svelte.ts +1 -26
  929. package/src/utilities/use-announcer.types.ts +26 -0
  930. package/src/utilities/use-history.svelte.ts +6 -56
  931. package/src/utilities/use-history.types.ts +56 -0
  932. package/src/utilities/use-intersection.svelte.ts +6 -15
  933. package/src/utilities/use-intersection.types.ts +16 -0
  934. package/src/utilities/use-mutation-observer.svelte.ts +6 -23
  935. package/src/utilities/use-mutation-observer.types.ts +24 -0
  936. package/src/utilities/use-reduced-motion.svelte.ts +1 -4
  937. package/src/utilities/use-reduced-motion.types.ts +4 -0
  938. package/src/utilities/use-resize-observer.svelte.ts +6 -11
  939. package/src/utilities/use-resize-observer.types.ts +12 -0
  940. package/dist/server/components/access-gate/index.css +0 -130
  941. package/dist/server/components/accordion/index.css +0 -125
  942. package/dist/server/components/accordion-item/index.css +0 -110
  943. package/dist/server/components/alert/index.css +0 -91
  944. package/dist/server/components/alert-dialog/index.css +0 -14
  945. package/dist/server/components/approval-card/index.css +0 -1767
  946. package/dist/server/components/area-chart/index.css +0 -167
  947. package/dist/server/components/aspect-ratio/index.css +0 -19
  948. package/dist/server/components/autocomplete/index.css +0 -100
  949. package/dist/server/components/avatar/index.css +0 -74
  950. package/dist/server/components/avatar-group/index.css +0 -98
  951. package/dist/server/components/backdrop/index.css +0 -26
  952. package/dist/server/components/badge/index.css +0 -77
  953. package/dist/server/components/banner/index.css +0 -102
  954. package/dist/server/components/bar-chart/index.css +0 -161
  955. package/dist/server/components/breadcrumbs/index.css +0 -90
  956. package/dist/server/components/button/index.css +0 -356
  957. package/dist/server/components/button-group/index.css +0 -109
  958. package/dist/server/components/callout/index.css +0 -84
  959. package/dist/server/components/capability-gate/index.css +0 -132
  960. package/dist/server/components/card/index.css +0 -79
  961. package/dist/server/components/chat/index.css +0 -61
  962. package/dist/server/components/chat-conversation-header/index.css +0 -315
  963. package/dist/server/components/chat-conversation-list/index.css +0 -123
  964. package/dist/server/components/checkbox/index.css +0 -155
  965. package/dist/server/components/checkbox-group/index.css +0 -87
  966. package/dist/server/components/chip/index.css +0 -199
  967. package/dist/server/components/choice-grid/index.css +0 -103
  968. package/dist/server/components/choice-grid-item/index.css +0 -86
  969. package/dist/server/components/code-block/index.css +0 -129
  970. package/dist/server/components/collapsible/index.css +0 -88
  971. package/dist/server/components/color-field/index.css +0 -49
  972. package/dist/server/components/color-picker/index.css +0 -134
  973. package/dist/server/components/color-swatch-picker/index.css +0 -113
  974. package/dist/server/components/combobox/index.css +0 -180
  975. package/dist/server/components/command-item/index.css +0 -90
  976. package/dist/server/components/command-menu/index.css +0 -131
  977. package/dist/server/components/command-palette/index.css +0 -259
  978. package/dist/server/components/confirm-dialog/index.css +0 -10
  979. package/dist/server/components/container/index.css +0 -36
  980. package/dist/server/components/context-menu/index.css +0 -274
  981. package/dist/server/components/copy-button/index.css +0 -46
  982. package/dist/server/components/data-grid/index.css +0 -268
  983. package/dist/server/components/data-list/index.css +0 -20
  984. package/dist/server/components/data-table/index.css +0 -235
  985. package/dist/server/components/date-range-field/index.css +0 -178
  986. package/dist/server/components/description-list/index.css +0 -83
  987. package/dist/server/components/diff-statistics/index.css +0 -81
  988. package/dist/server/components/divider/index.css +0 -45
  989. package/dist/server/components/drawer/index.css +0 -191
  990. package/dist/server/components/dropdown/index.css +0 -265
  991. package/dist/server/components/empty-state/index.css +0 -43
  992. package/dist/server/components/event-stream-viewer/index.css +0 -737
  993. package/dist/server/components/faceted-filter-bar/index.css +0 -117
  994. package/dist/server/components/feed/index.css +0 -74
  995. package/dist/server/components/file-upload/index.css +0 -183
  996. package/dist/server/components/floating-action-button/index.css +0 -149
  997. package/dist/server/components/form-field/index.css +0 -40
  998. package/dist/server/components/form-section/index.css +0 -54
  999. package/dist/server/components/grid/index.css +0 -26
  1000. package/dist/server/components/grid-list/index.css +0 -96
  1001. package/dist/server/components/hover-card/index.css +0 -53
  1002. package/dist/server/components/image/index.css +0 -37
  1003. package/dist/server/components/input/index.css +0 -213
  1004. package/dist/server/components/invocation-rule-builder/index.css +0 -307
  1005. package/dist/server/components/json-schema-editor/index.css +0 -334
  1006. package/dist/server/components/json-viewer/index.css +0 -123
  1007. package/dist/server/components/kanban-board/index.css +0 -233
  1008. package/dist/server/components/kbd/index.css +0 -44
  1009. package/dist/server/components/keyboard-shortcuts/index.css +0 -86
  1010. package/dist/server/components/label/index.css +0 -19
  1011. package/dist/server/components/line-chart/index.css +0 -168
  1012. package/dist/server/components/link/index.css +0 -70
  1013. package/dist/server/components/load-more/index.css +0 -82
  1014. package/dist/server/components/masonry/index.css +0 -14
  1015. package/dist/server/components/matrix-chart/index.css +0 -56
  1016. package/dist/server/components/media-controls/index.css +0 -117
  1017. package/dist/server/components/menu-bar/index.css +0 -378
  1018. package/dist/server/components/message/index.css +0 -54
  1019. package/dist/server/components/modal/index.css +0 -143
  1020. package/dist/server/components/navigation-bar/index.css +0 -157
  1021. package/dist/server/components/navigation-item/index.css +0 -88
  1022. package/dist/server/components/number-input/index.css +0 -111
  1023. package/dist/server/components/pagination/index.css +0 -110
  1024. package/dist/server/components/payload-inspector/index.css +0 -760
  1025. package/dist/server/components/permission-matrix/index.css +0 -169
  1026. package/dist/server/components/phone-input/index.css +0 -108
  1027. package/dist/server/components/pin-input/index.css +0 -91
  1028. package/dist/server/components/popover/index.css +0 -124
  1029. package/dist/server/components/pricing-card/index.css +0 -131
  1030. package/dist/server/components/progress/index.css +0 -136
  1031. package/dist/server/components/radio-group/index.css +0 -246
  1032. package/dist/server/components/rating/index.css +0 -117
  1033. package/dist/server/components/resizable-panels/index.css +0 -101
  1034. package/dist/server/components/review-editor/index.css +0 -259
  1035. package/dist/server/components/run-step-timeline/index.css +0 -658
  1036. package/dist/server/components/schema-form/index.css +0 -107
  1037. package/dist/server/components/scroll-area/index.css +0 -74
  1038. package/dist/server/components/search-field/index.css +0 -162
  1039. package/dist/server/components/secret-value-field/index.css +0 -124
  1040. package/dist/server/components/section-heading/index.css +0 -72
  1041. package/dist/server/components/segmented-control/index.css +0 -237
  1042. package/dist/server/components/select/index.css +0 -150
  1043. package/dist/server/components/selection-popover/index.css +0 -205
  1044. package/dist/server/components/share-card/index.css +0 -121
  1045. package/dist/server/components/sheet/index.css +0 -176
  1046. package/dist/server/components/shortcut-hint/index.css +0 -28
  1047. package/dist/server/components/side-navigation/index.css +0 -220
  1048. package/dist/server/components/side-navigation-group/index.css +0 -109
  1049. package/dist/server/components/sidebar/index.css +0 -86
  1050. package/dist/server/components/skeleton/index.css +0 -31
  1051. package/dist/server/components/slider/index.css +0 -116
  1052. package/dist/server/components/sortable-list/index.css +0 -117
  1053. package/dist/server/components/spectrogram/index.css +0 -46
  1054. package/dist/server/components/spectrum-chart/index.css +0 -51
  1055. package/dist/server/components/speed-dial/index.css +0 -111
  1056. package/dist/server/components/spinner/index.css +0 -57
  1057. package/dist/server/components/stacked-list-item/index.css +0 -114
  1058. package/dist/server/components/stat/index.css +0 -70
  1059. package/dist/server/components/stat-group/index.css +0 -64
  1060. package/dist/server/components/status-dot/index.css +0 -114
  1061. package/dist/server/components/steps/index.css +0 -287
  1062. package/dist/server/components/surface/index.css +0 -25
  1063. package/dist/server/components/tab/index.css +0 -2
  1064. package/dist/server/components/tab-list/index.css +0 -2
  1065. package/dist/server/components/tab-panel/index.css +0 -2
  1066. package/dist/server/components/table/index.css +0 -187
  1067. package/dist/server/components/table-body/index.css +0 -2
  1068. package/dist/server/components/table-cell/index.css +0 -2
  1069. package/dist/server/components/table-header/index.css +0 -2
  1070. package/dist/server/components/table-header-cell/index.css +0 -2
  1071. package/dist/server/components/table-row/index.css +0 -2
  1072. package/dist/server/components/tabs/index.css +0 -152
  1073. package/dist/server/components/tag-input/index.css +0 -170
  1074. package/dist/server/components/textarea/index.css +0 -118
  1075. package/dist/server/components/time-field/index.css +0 -58
  1076. package/dist/server/components/timeline/index.css +0 -143
  1077. package/dist/server/components/toast-region/index.css +0 -227
  1078. package/dist/server/components/toggle/index.css +0 -109
  1079. package/dist/server/components/toolbar/index.css +0 -63
  1080. package/dist/server/components/tooltip/index.css +0 -50
  1081. package/dist/server/components/transfer-list/index.css +0 -132
  1082. package/dist/server/components/tree/index.css +0 -341
  1083. package/dist/server/components/typography/index.css +0 -115
  1084. package/dist/server/components/virtual-list/index.css +0 -30
  1085. package/dist/server/components/waveform/index.css +0 -55
  1086. package/dist/server/index.css +0 -15602
@@ -1,4005 +1,51 @@
1
- import { createRequire } from "node:module";
2
- var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
3
- var __require = /* @__PURE__ */ createRequire(import.meta.url);
4
-
5
- // src/components/focus-trap/focus-trap.svelte
6
- import * as $2 from "svelte/internal/server";
7
-
8
- // src/utilities/class-names.ts
9
- function classNames(...parts) {
10
- return parts.filter((part) => typeof part === "string" && part.length > 0).join(" ");
11
- }
12
-
13
- // src/components/focus-trap/focus-trap.utilities.svelte.ts
14
- import * as $ from "svelte/internal/server";
15
-
16
- // src/utilities/focus.ts
17
- function restoreFocusTo(target) {
18
- if (!target)
19
- return false;
20
- if (typeof document === "undefined")
21
- return false;
22
- if (!target.isConnected)
23
- return false;
24
- if (target.ownerDocument !== document)
25
- return false;
26
- try {
27
- target.focus();
28
- } catch {
29
- return false;
30
- }
31
- return true;
32
- }
33
-
34
- // src/utilities/read-option.ts
35
- function isOptionGetter(value) {
36
- return typeof value === "function";
37
- }
38
- function readOption(value) {
39
- return isOptionGetter(value) ? value() : value;
40
- }
41
-
42
- // src/components/focus-trap/focus-trap.utilities.svelte.ts
43
- var trapStack = [];
44
- var FOCUSABLE_SELECTOR = [
45
- "a[href]",
46
- "button:not([disabled])",
47
- "input:not([disabled])",
48
- "select:not([disabled])",
49
- "textarea:not([disabled])",
50
- "summary",
51
- '[tabindex]:not([tabindex="-1"])',
52
- '[contenteditable]:not([contenteditable="false"])'
53
- ].join(", ");
54
- function noop() {}
55
- function isHiddenByTree(element) {
56
- if (element.hidden)
57
- return true;
58
- if (element.matches('[inert], [aria-hidden="true"]'))
59
- return true;
60
- const ancestor = element.closest('[hidden], [inert], [aria-hidden="true"]');
61
- return ancestor !== null && ancestor !== element;
62
- }
63
- function isFocusableCandidate(element) {
64
- if (isHiddenByTree(element))
65
- return false;
66
- if (element.hasAttribute("disabled"))
67
- return false;
68
- if (element.hasAttribute("tabindex") && element.tabIndex < 0)
69
- return false;
70
- return true;
71
- }
72
- var NATIVELY_FOCUSABLE_TAGS = new Set(["BUTTON", "INPUT", "SELECT", "TEXTAREA", "SUMMARY"]);
73
- function isProgrammaticallyFocusable(element) {
74
- if (isHiddenByTree(element))
75
- return false;
76
- if (element.hasAttribute("disabled"))
77
- return false;
78
- if (element.hasAttribute("tabindex"))
79
- return true;
80
- if (NATIVELY_FOCUSABLE_TAGS.has(element.tagName))
81
- return true;
82
- if (element.tagName === "A" && element.hasAttribute("href"))
83
- return true;
84
- const contentEditable = element.getAttribute("contenteditable");
85
- if (contentEditable !== null && contentEditable !== "false")
86
- return true;
87
- return false;
88
- }
89
- function getTabbableElements(root) {
90
- return Array.from(root.querySelectorAll(FOCUSABLE_SELECTOR)).filter((element) => root.contains(element) && isFocusableCandidate(element));
91
- }
92
- function resolveScopedTarget(root, target) {
93
- const resolved = readOption(target ?? null);
94
- if (!resolved)
95
- return null;
96
- if (typeof resolved === "string") {
97
- let match = null;
98
- try {
99
- match = root.querySelector(resolved);
100
- } catch {
101
- return null;
102
- }
103
- return match && root.contains(match) ? match : null;
104
- }
105
- return resolved instanceof HTMLElement && root.contains(resolved) ? resolved : null;
106
- }
107
- function getFallbackTarget(root, fallbackFocus) {
108
- const resolved = resolveScopedTarget(root, fallbackFocus);
109
- return resolved && isProgrammaticallyFocusable(resolved) ? resolved : null;
110
- }
111
- function tryFocus(element) {
112
- element.focus();
113
- return document.activeElement === element;
114
- }
115
- function ensureRootFocusable(root) {
116
- if (root.hasAttribute("tabindex")) {
117
- return () => {};
118
- }
119
- root.setAttribute("tabindex", "-1");
120
- return () => {
121
- root.removeAttribute("tabindex");
122
- };
123
- }
124
- function pushTrap(instance) {
125
- const existingIndex = trapStack.findIndex((entry) => entry.id === instance.id);
126
- if (existingIndex !== -1) {
127
- trapStack.splice(existingIndex, 1);
128
- }
129
- trapStack.push(instance);
130
- }
131
- function removeTrap(id) {
132
- const index = trapStack.findIndex((entry) => entry.id === id);
133
- if (index !== -1) {
134
- trapStack.splice(index, 1);
135
- }
136
- }
137
- function isTopTrap(id) {
138
- return trapStack.at(-1)?.id === id;
139
- }
140
- function createFocusTrap(options = {}) {
141
- const trapId = Symbol("focus-trap");
142
- return (node) => {
143
- const isActive = () => readOption(options.active ?? true);
144
- const restoreFocus = options.restoreFocus ?? true;
145
- const initialFocus = options.initialFocus ?? null;
146
- const fallbackFocus = options.fallbackFocus ?? null;
147
- const manageInitialFocus = options.manageInitialFocus ?? true;
148
- let activated = false;
149
- let activationGeneration = 0;
150
- let capturedFocus = null;
151
- let restoreRootFocusability = noop;
152
- function focusTrapTarget() {
153
- const preferred = resolveScopedTarget(node, initialFocus);
154
- if (preferred && isProgrammaticallyFocusable(preferred) && tryFocus(preferred)) {
155
- return;
156
- }
157
- const tabbable = getTabbableElements(node);
158
- if (tabbable.length > 0 && tabbable[0] && tryFocus(tabbable[0])) {
159
- return;
160
- }
161
- const fallbackTarget = getFallbackTarget(node, fallbackFocus);
162
- if (fallbackTarget && tryFocus(fallbackTarget)) {
163
- return;
164
- }
165
- restoreRootFocusability = ensureRootFocusable(node);
166
- node.focus();
167
- }
168
- function activate() {
169
- if (activated)
170
- return;
171
- activated = true;
172
- const generation = ++activationGeneration;
173
- capturedFocus = document.activeElement instanceof HTMLElement && document.activeElement !== document.body ? document.activeElement : null;
174
- pushTrap({ id: trapId, node });
175
- if (!manageInitialFocus)
176
- return;
177
- queueMicrotask(() => {
178
- if (!activated || generation !== activationGeneration || !isActive())
179
- return;
180
- focusTrapTarget();
181
- });
182
- }
183
- function deactivate() {
184
- if (!activated)
185
- return;
186
- activated = false;
187
- restoreRootFocusability();
188
- restoreRootFocusability = noop;
189
- removeTrap(trapId);
190
- if (restoreFocus) {
191
- restoreFocusTo(capturedFocus);
192
- }
193
- capturedFocus = null;
194
- }
195
- function handleKeydown(event) {
196
- if (!isActive() || !isTopTrap(trapId) || event.key !== "Tab")
197
- return;
198
- const tabbable = getTabbableElements(node);
199
- if (tabbable.length === 0) {
200
- const fallbackTarget = getFallbackTarget(node, fallbackFocus);
201
- event.preventDefault();
202
- if (!fallbackTarget || !tryFocus(fallbackTarget)) {
203
- restoreRootFocusability = ensureRootFocusable(node);
204
- node.focus();
205
- }
206
- return;
207
- }
208
- const first = tabbable[0];
209
- const last = tabbable[tabbable.length - 1];
210
- const activeElement = document.activeElement;
211
- if (event.shiftKey && activeElement === first) {
212
- event.preventDefault();
213
- last?.focus();
214
- } else if (!event.shiftKey && activeElement === last) {
215
- event.preventDefault();
216
- first?.focus();
217
- }
218
- }
219
- node.addEventListener("keydown", handleKeydown);
220
- return () => {
221
- node.removeEventListener("keydown", handleKeydown);
222
- deactivate();
223
- };
224
- };
225
- }
226
-
227
- // src/components/focus-trap/focus-trap.svelte
228
- function Focus_trap($$renderer, $$props) {
229
- $$renderer.component(($$renderer2) => {
230
- let {
231
- active = true,
232
- restoreFocus = true,
233
- initialFocus = null,
234
- fallbackFocus = null,
235
- class: className,
236
- children,
237
- $$slots,
238
- $$events,
239
- ...rest
240
- } = $$props;
241
- $$renderer2.push(`<div${$2.attributes({ class: $2.clsx(classNames(className)), ...rest })}>`);
242
- children($$renderer2);
243
- $$renderer2.push(`<!----></div>`);
244
- });
245
- }
246
-
247
- // src/components/focus-trap/index.ts
248
- var focus_trap_default = Focus_trap;
249
- // src/components/portal/portal.svelte
250
- import * as $4 from "svelte/internal/server";
251
-
252
- // src/components/portal/portal.utilities.svelte.ts
253
- import * as $3 from "svelte/internal/server";
254
-
255
- // ../../node_modules/esm-env/false.js
256
- var false_default = false;
257
- // ../../node_modules/esm-env/true.js
258
- var true_default = true;
259
- // src/utilities/dev-warn.ts
260
- function devWarn(message, ...args) {
261
- if (!true_default)
262
- return;
263
- console.warn(message, ...args);
264
- }
265
-
266
- // src/components/portal/portal.utilities.svelte.ts
267
- function resolvePortalTarget(target) {
268
- if (typeof document === "undefined")
269
- return null;
270
- if (target == null) {
271
- return { kind: "resolved", target: document.body };
272
- }
273
- if (target instanceof HTMLElement) {
274
- return { kind: "resolved", target };
275
- }
276
- try {
277
- const resolved = document.querySelector(target);
278
- return resolved instanceof HTMLElement ? { kind: "resolved", target: resolved } : { kind: "unresolved", key: target };
279
- } catch {
280
- return { kind: "unresolved", key: target };
281
- }
282
- }
283
- function createPortalAttachment(options = {}) {
284
- let lastWarnedUnresolvedKey = null;
285
- return (element) => {
286
- const initialParent = element.parentElement;
287
- const initialAttributes = {
288
- dir: element.getAttribute("dir"),
289
- theme: element.getAttribute("data-cinder-theme")
290
- };
291
- const anchor = typeof document !== "undefined" ? document.createComment("@lostgradient/cinder/portal") : null;
292
- if (anchor && initialParent && element.parentNode === initialParent) {
293
- initialParent.insertBefore(anchor, element);
294
- }
295
- function restoreInline() {
296
- if (!anchor || !anchor.parentNode)
297
- return;
298
- if (element.parentNode === anchor.parentNode && element.previousSibling === anchor)
299
- return;
300
- anchor.parentNode.insertBefore(element, anchor.nextSibling);
301
- }
302
- return () => {
303
- if (anchor && anchor.parentNode) {
304
- anchor.parentNode.removeChild(anchor);
305
- }
306
- };
307
- };
308
- }
309
-
310
- // src/components/portal/portal.svelte
311
- function Portal($$renderer, $$props) {
312
- $$renderer.component(($$renderer2) => {
313
- let {
314
- target = null,
315
- disabled = false,
316
- class: className,
317
- inheritAttributes = true,
318
- children,
319
- $$slots,
320
- $$events,
321
- ...rest
322
- } = $$props;
323
- let hasHydrated = false;
324
- const resolvedTarget = $4.derived(() => !disabled ? resolvePortalTarget(target) : null);
325
- const shouldRenderChildren = $4.derived(() => disabled || hasHydrated && resolvedTarget() !== null);
326
- $$renderer2.push(`<div${$4.attributes({ class: $4.clsx(classNames(className)), ...rest })}>`);
327
- if (shouldRenderChildren()) {
328
- $$renderer2.push("<!--[0-->");
329
- children($$renderer2);
330
- $$renderer2.push(`<!---->`);
331
- } else {
332
- $$renderer2.push("<!--[-1-->");
333
- }
334
- $$renderer2.push(`<!--]--></div>`);
335
- });
336
- }
337
-
338
- // src/components/portal/index.ts
339
- var portal_default = Portal;
340
- // src/components/markdown-editor/markdown-editor.svelte
341
- import * as $42 from "svelte/internal/server";
342
- import { onDestroy } from "svelte";
343
1
  import {
344
- createEditorAttachment,
345
- setEditorReadonly,
346
- getActiveMarks,
347
- getActiveBlockType,
348
- getLinkAtCursor,
349
- getLinkTextAtCursor,
350
- isSelectionCollapsed,
351
- insertLinkAtCursor,
352
- applyLinkToSelection,
353
- updateLinkAtCursor,
354
- removeLink,
355
- getLinkRangeAtCursor,
356
- undo as undoCommand,
357
- redo as redoCommand,
358
- DEFAULT_DEBOUNCE_MS
359
- } from "@lostgradient/cinder/editor/component-runtime";
360
-
361
- // src/components/segment/segment.svelte
362
- import * as $6 from "svelte/internal/server";
363
- import { untrack } from "svelte";
364
-
365
- // src/components/segmented-control/segmented-control-state.svelte.ts
366
- import * as $5 from "svelte/internal/server";
367
- import { createContext } from "svelte";
368
-
369
- // src/utilities/document-order.ts
370
- function inDocumentOrder(items) {
371
- return items.toSorted((a, b) => {
372
- if (a.node === b.node)
373
- return 0;
374
- const position = a.node.compareDocumentPosition(b.node);
375
- if (position & Node.DOCUMENT_POSITION_FOLLOWING)
376
- return -1;
377
- if (position & Node.DOCUMENT_POSITION_PRECEDING)
378
- return 1;
379
- return 0;
380
- });
381
- }
382
-
383
- // src/utilities/roving-tabindex.ts
384
- var ROVING_KEYS = new Set(["ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown", "Home", "End"]);
385
- function isRovingKey(key) {
386
- return ROVING_KEYS.has(key);
387
- }
388
- function findNextIndex(currentIndex, length, direction, isDisabled) {
389
- if (length === 0)
390
- return -1;
391
- if (!isDisabled) {
392
- return (currentIndex + direction + length) % length;
393
- }
394
- for (let offset = 1;offset <= length; offset += 1) {
395
- const candidateIndex = (currentIndex + offset * direction + length * offset) % length;
396
- if (!isDisabled(candidateIndex)) {
397
- return candidateIndex;
398
- }
399
- }
400
- return currentIndex;
401
- }
402
- function findFirstIndex(length, isDisabled, currentIndex = 0) {
403
- if (length === 0)
404
- return -1;
405
- if (!isDisabled)
406
- return 0;
407
- for (let index = 0;index < length; index += 1) {
408
- if (!isDisabled(index))
409
- return index;
410
- }
411
- return currentIndex;
412
- }
413
- function findLastIndex(length, isDisabled, currentIndex = 0) {
414
- if (length === 0)
415
- return -1;
416
- if (!isDisabled)
417
- return length - 1;
418
- for (let index = length - 1;index >= 0; index -= 1) {
419
- if (!isDisabled(index))
420
- return index;
421
- }
422
- return currentIndex;
423
- }
424
- function handleRovingKeydown(event, currentIndex, length, options = {}) {
425
- const { isDisabled, vertical = true, horizontal = true } = options;
426
- if (length === 0)
427
- return null;
428
- switch (event.key) {
429
- case "ArrowRight":
430
- return horizontal ? findNextIndex(currentIndex, length, 1, isDisabled) : null;
431
- case "ArrowDown":
432
- return vertical ? findNextIndex(currentIndex, length, 1, isDisabled) : null;
433
- case "ArrowLeft":
434
- return horizontal ? findNextIndex(currentIndex, length, -1, isDisabled) : null;
435
- case "ArrowUp":
436
- return vertical ? findNextIndex(currentIndex, length, -1, isDisabled) : null;
437
- case "Home":
438
- return findFirstIndex(length, isDisabled, currentIndex);
439
- case "End":
440
- return findLastIndex(length, isDisabled, currentIndex);
441
- default:
442
- return null;
443
- }
444
- }
445
- function getFocusableIndex(selectedIndex, length, isDisabled) {
446
- if (length === 0)
447
- return -1;
448
- if (selectedIndex >= 0 && selectedIndex < length)
449
- return selectedIndex;
450
- return findFirstIndex(length, isDisabled, 0);
451
- }
452
-
453
- // src/components/segmented-control/segmented-control-state.svelte.ts
454
- var [getSegmentedControlContext, setSegmentedControlContext] = createContext();
455
-
456
- class SegmentedControlController {
457
- #registrations = [];
458
- #version = 0;
459
- #options;
460
- constructor(options) {
461
- this.#options = options;
462
- }
463
- get segments() {
464
- this.#version;
465
- return inDocumentOrder(this.#registrations);
466
- }
467
- get selectionMode() {
468
- return this.#options.selectionMode();
469
- }
470
- get variant() {
471
- return this.#options.variant();
472
- }
473
- get controlDisabled() {
474
- return this.#options.controlDisabled();
475
- }
476
- register(registration) {
477
- this.#registrations.push(registration);
478
- this.#version += 1;
479
- return () => {
480
- const index = this.#registrations.indexOf(registration);
481
- if (index >= 0)
482
- this.#registrations.splice(index, 1);
483
- this.#version += 1;
484
- };
485
- }
486
- isSelected(value) {
487
- const current = this.#options.getValue();
488
- if (this.#options.selectionMode() === "multiple") {
489
- if (!current || typeof current === "string")
490
- return false;
491
- return current.has(value);
492
- }
493
- return current === value;
494
- }
495
- isFocusable(value) {
496
- if (this.#options.selectionMode() !== "single") {
497
- const segment = this.segments.find((entry) => entry.value === value);
498
- if (!segment)
499
- return false;
500
- return !segment.disabled && !this.#options.controlDisabled();
501
- }
502
- const focusableValue = this.#computeFocusableValue();
503
- return focusableValue === value;
504
- }
505
- #computeFocusableValue() {
506
- const segments = this.segments;
507
- if (segments.length === 0)
508
- return null;
509
- const current = this.#options.getValue();
510
- const isMultiple = this.#options.selectionMode() === "multiple";
511
- if (!isMultiple && typeof current === "string") {
512
- const selectedSegment = segments.find((segment) => segment.value === current);
513
- if (selectedSegment && !selectedSegment.disabled && !this.#options.controlDisabled()) {
514
- return selectedSegment.value;
515
- }
516
- }
517
- if (this.#options.controlDisabled())
518
- return null;
519
- const firstEnabled = segments.find((segment) => !segment.disabled);
520
- return firstEnabled?.value ?? null;
521
- }
522
- toggle(value) {
523
- if (this.#options.controlDisabled())
524
- return;
525
- const segment = this.segments.find((entry) => entry.value === value);
526
- if (!segment || segment.disabled)
527
- return;
528
- if (this.#options.selectionMode() === "multiple") {
529
- const set = this.#options.getValue();
530
- if (!set || typeof set === "string")
531
- return;
532
- if (set.has(value))
533
- set.delete(value);
534
- else
535
- set.add(value);
536
- return;
537
- }
538
- const current = this.#options.getValue();
539
- if (current === value) {
540
- if (!this.#options.disallowEmptySelection()) {
541
- this.#options.setValue(undefined);
542
- }
543
- return;
544
- }
545
- this.#options.setValue(value);
546
- this.#options.onChange?.(value);
547
- }
548
- handleKeydown(event) {
549
- if (this.#options.controlDisabled())
550
- return;
551
- if (this.#options.selectionMode() !== "single")
552
- return;
553
- const segments = this.segments;
554
- if (segments.length === 0)
555
- return;
556
- const focusedSegment = typeof document === "undefined" ? null : segments.find((segment) => segment.node === document.activeElement) ?? null;
557
- const value = this.#options.getValue();
558
- const currentValue = focusedSegment?.value ?? (typeof value === "string" ? value : null);
559
- const currentIndex = currentValue === null ? segments.findIndex((segment) => !segment.disabled) : segments.findIndex((segment) => segment.value === currentValue);
560
- const safeCurrentIndex = currentIndex >= 0 ? currentIndex : getFocusableIndex(-1, segments.length, (index) => segments[index]?.disabled ?? false);
561
- if (safeCurrentIndex < 0)
562
- return;
563
- const orientation = this.#options.orientation();
564
- const nextIndex = handleRovingKeydown(event, safeCurrentIndex, segments.length, {
565
- isDisabled: (index) => segments[index]?.disabled ?? false,
566
- vertical: true,
567
- horizontal: orientation !== "vertical"
568
- });
569
- if (nextIndex === null)
570
- return;
571
- event.preventDefault();
572
- if (nextIndex === safeCurrentIndex)
573
- return;
574
- const nextSegment = segments[nextIndex];
575
- if (!nextSegment)
576
- return;
577
- this.toggle(nextSegment.value);
578
- nextSegment.node.focus();
579
- }
580
- }
581
-
582
- // src/components/segment/segment.svelte
583
- function Segment($$renderer, $$props) {
584
- $$renderer.component(($$renderer2) => {
585
- let {
586
- value,
587
- disabled = false,
588
- controls,
589
- leading,
590
- trailing,
591
- children,
592
- class: customClassName,
593
- $$slots,
594
- $$events,
595
- ...rest
596
- } = $$props;
597
- const context = getSegmentedControlContext();
598
- const registerSegment = (node) => {
599
- return untrack(() => context.register({
600
- node,
601
- get value() {
602
- return value;
603
- },
604
- get disabled() {
605
- return disabled || context.controlDisabled;
606
- },
607
- get controls() {
608
- return controls;
609
- }
610
- }));
611
- };
612
- const isSelected = $6.derived(() => context.isSelected(value));
613
- const isFocusable = $6.derived(() => context.isFocusable(value));
614
- const effectiveDisabled = $6.derived(() => disabled || context.controlDisabled);
615
- const role = $6.derived(() => context.selectionMode === "multiple" ? undefined : context.variant === "tablist" ? "tab" : "radio");
616
- $$renderer2.push(`<button${$6.attributes({
617
- ...rest,
618
- type: "button",
619
- role: role(),
620
- "data-cinder-segment-value": value,
621
- "aria-checked": role() === "radio" ? isSelected() : undefined,
622
- "aria-selected": role() === "tab" ? isSelected() : undefined,
623
- "aria-pressed": context.selectionMode === "multiple" ? isSelected() : undefined,
624
- "aria-controls": role() === "tab" ? controls : undefined,
625
- "aria-disabled": effectiveDisabled() ? "true" : undefined,
626
- disabled: context.selectionMode === "multiple" ? effectiveDisabled() : undefined,
627
- tabindex: isFocusable() ? 0 : -1,
628
- class: $6.clsx(classNames("cinder-segmented-control-option", customClassName)),
629
- "data-cinder-selected": isSelected() ? "" : undefined,
630
- "data-cinder-pressed": context.selectionMode === "multiple" && isSelected() ? "" : undefined
631
- })}>`);
632
- if (leading) {
633
- $$renderer2.push("<!--[0-->");
634
- $$renderer2.push(`<span class="cinder-segmented-control-option-icon" aria-hidden="true">`);
635
- leading($$renderer2);
636
- $$renderer2.push(`<!----></span>`);
637
- } else {
638
- $$renderer2.push("<!--[-1-->");
639
- }
640
- $$renderer2.push(`<!--]--> `);
641
- children?.($$renderer2);
642
- $$renderer2.push(`<!----> `);
643
- if (trailing) {
644
- $$renderer2.push("<!--[0-->");
645
- $$renderer2.push(`<span class="cinder-segmented-control-option-trailing" aria-hidden="true">`);
646
- trailing($$renderer2);
647
- $$renderer2.push(`<!----></span>`);
648
- } else {
649
- $$renderer2.push("<!--[-1-->");
650
- }
651
- $$renderer2.push(`<!--]--></button>`);
652
- });
653
- }
654
-
655
- // src/components/segmented-control/segmented-control.svelte
656
- import * as $7 from "svelte/internal/server";
657
- function Segmented_control($$renderer, $$props) {
658
- $$renderer.component(($$renderer2) => {
659
- let {
660
- id,
661
- value = undefined,
662
- label,
663
- hideLabel = false,
664
- disabled = false,
665
- size = "md",
666
- density,
667
- orientation = "horizontal",
668
- detached = false,
669
- fullWidth = false,
670
- variant = "radiogroup",
671
- selectionMode = "single",
672
- disallowEmptySelection = true,
673
- class: customClassName,
674
- onchange,
675
- children,
676
- $$slots,
677
- $$events,
678
- ...rest
679
- } = $$props;
680
- const controller = new SegmentedControlController({
681
- selectionMode: () => selectionMode,
682
- variant: () => variant,
683
- orientation: () => orientation,
684
- controlDisabled: () => disabled,
685
- disallowEmptySelection: () => disallowEmptySelection,
686
- getValue: () => value,
687
- setValue: (next) => {
688
- value = next;
689
- },
690
- onChange: (selected) => onchange?.(selected)
691
- });
692
- const contextValue = {
693
- get selectionMode() {
694
- return selectionMode;
695
- },
696
- get variant() {
697
- return variant;
698
- },
699
- get controlDisabled() {
700
- return disabled;
701
- },
702
- register: (registration) => controller.register(registration),
703
- isSelected: (segmentValue) => controller.isSelected(segmentValue),
704
- isFocusable: (segmentValue) => controller.isFocusable(segmentValue),
705
- toggle: (segmentValue) => controller.toggle(segmentValue)
706
- };
707
- setSegmentedControlContext(contextValue);
708
- const groupRole = $7.derived(() => selectionMode === "multiple" ? "group" : variant === "tablist" ? "tablist" : "radiogroup");
709
- const effectiveSize = $7.derived(() => density === "toolbar" ? "sm" : size);
710
- $$renderer2.push(`<div class="cinder-segmented-control-container"><span${$7.attr("id", `${id}-label`)}${$7.attr_class($7.clsx(classNames("cinder-segmented-control-label", hideLabel && "cinder-sr-only")))}>${$7.escape(label)}</span> <div${$7.attributes({
711
- ...rest,
712
- id,
713
- role: groupRole(),
714
- "aria-labelledby": `${id}-label`,
715
- "aria-disabled": disabled ? "true" : undefined,
716
- "aria-orientation": selectionMode === "single" ? orientation : undefined,
717
- "data-cinder-orientation": orientation,
718
- "data-cinder-size": effectiveSize(),
719
- "data-cinder-density": density === "toolbar" ? "toolbar" : undefined,
720
- "data-cinder-selection-mode": selectionMode,
721
- "data-cinder-detached": detached ? "" : undefined,
722
- "data-cinder-full-width": fullWidth ? "" : undefined,
723
- "data-cinder-variant": variant,
724
- class: $7.clsx(classNames("cinder-segmented-control", customClassName))
725
- })}>`);
726
- children($$renderer2);
727
- $$renderer2.push(`<!----></div></div>`);
728
- $7.bind_props($$props, { value });
729
- });
730
- }
731
-
732
- // src/components/markdown-editor/editor-skeleton.svelte
733
- import * as $8 from "svelte/internal/server";
734
- function Editor_skeleton($$renderer, $$props) {
735
- $$renderer.component(($$renderer2) => {
736
- let { lines = 8, class: className, $$slots, $$events, ...rest } = $$props;
737
- const SHIMMER_WIDTHS = [68, 84, 56, 92, 72, 80, 60, 88];
738
- const lineWidths = $8.derived(() => Array.from({ length: lines }, (_, i) => {
739
- if (i === 0)
740
- return 45;
741
- if (i === lines - 1)
742
- return 30;
743
- return SHIMMER_WIDTHS[i % SHIMMER_WIDTHS.length] ?? 68;
744
- }));
745
- $$renderer2.push(`<div${$8.attributes({
746
- class: $8.clsx(classNames("editor-skeleton", "surface", className)),
747
- role: "status",
748
- "aria-label": "Loading editor",
749
- ...rest
750
- }, "svelte-1h3fabh")}><span class="sr-only svelte-1h3fabh">Loading editor...</span> <div class="skeleton-content svelte-1h3fabh"><!--[-->`);
751
- const each_array = $8.ensure_array_like(lineWidths());
752
- for (let i = 0, $$length = each_array.length;i < $$length; i++) {
753
- let width = each_array[i];
754
- $$renderer2.push(`<div class="skeleton-line svelte-1h3fabh"${$8.attr_style("", { "--skeleton-line-width": `${$8.stringify(width)}%` })}></div>`);
755
- }
756
- $$renderer2.push(`<!--]--></div></div>`);
757
- });
758
- }
759
-
760
- // src/components/markdown-editor/editor-toolbar/editor-toolbar.svelte
761
- import * as $36 from "svelte/internal/server";
762
-
763
- // ../../node_modules/lucide-svelte/dist/icons/bold.svelte
764
- import * as $10 from "svelte/internal/server";
765
-
766
- // ../../node_modules/lucide-svelte/dist/Icon.svelte
767
- import * as $9 from "svelte/internal/server";
768
-
769
- // ../../node_modules/lucide-svelte/dist/defaultAttributes.js
770
- var defaultAttributes = {
771
- xmlns: "http://www.w3.org/2000/svg",
772
- width: 24,
773
- height: 24,
774
- viewBox: "0 0 24 24",
775
- fill: "none",
776
- stroke: "currentColor",
777
- "stroke-width": 2,
778
- "stroke-linecap": "round",
779
- "stroke-linejoin": "round"
780
- };
781
- var defaultAttributes_default = defaultAttributes;
782
-
783
- // ../../node_modules/lucide-svelte/dist/Icon.svelte
784
- function Icon($$renderer, $$props) {
785
- const $$sanitized_props = $9.sanitize_props($$props);
786
- const $$restProps = $9.rest_props($$sanitized_props, [
787
- "name",
788
- "color",
789
- "size",
790
- "strokeWidth",
791
- "absoluteStrokeWidth",
792
- "iconNode"
793
- ]);
794
- $$renderer.component(($$renderer2) => {
795
- let name = $9.fallback($$props["name"], undefined);
796
- let color = $9.fallback($$props["color"], "currentColor");
797
- let size = $9.fallback($$props["size"], 24);
798
- let strokeWidth = $9.fallback($$props["strokeWidth"], 2);
799
- let absoluteStrokeWidth = $9.fallback($$props["absoluteStrokeWidth"], false);
800
- let iconNode = $9.fallback($$props["iconNode"], () => [], true);
801
- const mergeClasses = (...classes) => classes.filter((className, index, array) => {
802
- return Boolean(className) && array.indexOf(className) === index;
803
- }).join(" ");
804
- $$renderer2.push(`<svg${$9.attributes({
805
- ...defaultAttributes_default,
806
- ...$$restProps,
807
- width: size,
808
- height: size,
809
- stroke: color,
810
- "stroke-width": absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,
811
- class: $9.clsx(mergeClasses("lucide-icon", "lucide", name ? `lucide-${name}` : "", $$sanitized_props.class))
812
- }, undefined, undefined, undefined, 3)}><!--[-->`);
813
- const each_array = $9.ensure_array_like(iconNode);
814
- for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
815
- let [tag, attrs] = each_array[$$index];
816
- $9.element($$renderer2, tag, () => {
817
- $$renderer2.push(`${$9.attributes({ ...attrs }, undefined, undefined, undefined, 3)}`);
818
- });
819
- }
820
- $$renderer2.push(`<!--]--><!--[-->`);
821
- $9.slot($$renderer2, $$props, "default", {}, null);
822
- $$renderer2.push(`<!--]--></svg>`);
823
- $9.bind_props($$props, {
824
- name,
825
- color,
826
- size,
827
- strokeWidth,
828
- absoluteStrokeWidth,
829
- iconNode
830
- });
831
- });
832
- }
833
-
834
- // ../../node_modules/lucide-svelte/dist/icons/bold.svelte
835
- function Bold($$renderer, $$props) {
836
- const $$sanitized_props = $10.sanitize_props($$props);
837
- const iconNode = [
838
- [
839
- "path",
840
- {
841
- d: "M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7a4 4 0 0 1 0 8"
842
- }
843
- ]
844
- ];
845
- Icon($$renderer, $10.spread_props([
846
- { name: "bold" },
847
- $$sanitized_props,
848
- {
849
- iconNode,
850
- children: ($$renderer2) => {
851
- $$renderer2.push(`<!--[-->`);
852
- $10.slot($$renderer2, $$props, "default", {}, null);
853
- $$renderer2.push(`<!--]-->`);
854
- },
855
- $$slots: { default: true }
856
- }
857
- ]));
858
- }
859
- // ../../node_modules/lucide-svelte/dist/icons/code.svelte
860
- import * as $11 from "svelte/internal/server";
861
- function Code($$renderer, $$props) {
862
- const $$sanitized_props = $11.sanitize_props($$props);
863
- const iconNode = [
864
- ["polyline", { points: "16 18 22 12 16 6" }],
865
- ["polyline", { points: "8 6 2 12 8 18" }]
866
- ];
867
- Icon($$renderer, $11.spread_props([
868
- { name: "code" },
869
- $$sanitized_props,
870
- {
871
- iconNode,
872
- children: ($$renderer2) => {
873
- $$renderer2.push(`<!--[-->`);
874
- $11.slot($$renderer2, $$props, "default", {}, null);
875
- $$renderer2.push(`<!--]-->`);
876
- },
877
- $$slots: { default: true }
878
- }
879
- ]));
880
- }
881
- // ../../node_modules/lucide-svelte/dist/icons/heading-1.svelte
882
- import * as $12 from "svelte/internal/server";
883
- function Heading_1($$renderer, $$props) {
884
- const $$sanitized_props = $12.sanitize_props($$props);
885
- const iconNode = [
886
- ["path", { d: "M4 12h8" }],
887
- ["path", { d: "M4 18V6" }],
888
- ["path", { d: "M12 18V6" }],
889
- ["path", { d: "m17 12 3-2v8" }]
890
- ];
891
- Icon($$renderer, $12.spread_props([
892
- { name: "heading-1" },
893
- $$sanitized_props,
894
- {
895
- iconNode,
896
- children: ($$renderer2) => {
897
- $$renderer2.push(`<!--[-->`);
898
- $12.slot($$renderer2, $$props, "default", {}, null);
899
- $$renderer2.push(`<!--]-->`);
900
- },
901
- $$slots: { default: true }
902
- }
903
- ]));
904
- }
905
- // ../../node_modules/lucide-svelte/dist/icons/heading-2.svelte
906
- import * as $13 from "svelte/internal/server";
907
- function Heading_2($$renderer, $$props) {
908
- const $$sanitized_props = $13.sanitize_props($$props);
909
- const iconNode = [
910
- ["path", { d: "M4 12h8" }],
911
- ["path", { d: "M4 18V6" }],
912
- ["path", { d: "M12 18V6" }],
913
- ["path", { d: "M21 18h-4c0-4 4-3 4-6 0-1.5-2-2.5-4-1" }]
914
- ];
915
- Icon($$renderer, $13.spread_props([
916
- { name: "heading-2" },
917
- $$sanitized_props,
918
- {
919
- iconNode,
920
- children: ($$renderer2) => {
921
- $$renderer2.push(`<!--[-->`);
922
- $13.slot($$renderer2, $$props, "default", {}, null);
923
- $$renderer2.push(`<!--]-->`);
924
- },
925
- $$slots: { default: true }
926
- }
927
- ]));
928
- }
929
- // ../../node_modules/lucide-svelte/dist/icons/heading-3.svelte
930
- import * as $14 from "svelte/internal/server";
931
- function Heading_3($$renderer, $$props) {
932
- const $$sanitized_props = $14.sanitize_props($$props);
933
- const iconNode = [
934
- ["path", { d: "M4 12h8" }],
935
- ["path", { d: "M4 18V6" }],
936
- ["path", { d: "M12 18V6" }],
937
- [
938
- "path",
939
- { d: "M17.5 10.5c1.7-1 3.5 0 3.5 1.5a2 2 0 0 1-2 2" }
940
- ],
941
- ["path", { d: "M17 17.5c2 1.5 4 .3 4-1.5a2 2 0 0 0-2-2" }]
942
- ];
943
- Icon($$renderer, $14.spread_props([
944
- { name: "heading-3" },
945
- $$sanitized_props,
946
- {
947
- iconNode,
948
- children: ($$renderer2) => {
949
- $$renderer2.push(`<!--[-->`);
950
- $14.slot($$renderer2, $$props, "default", {}, null);
951
- $$renderer2.push(`<!--]-->`);
952
- },
953
- $$slots: { default: true }
954
- }
955
- ]));
956
- }
957
- // ../../node_modules/lucide-svelte/dist/icons/italic.svelte
958
- import * as $15 from "svelte/internal/server";
959
- function Italic($$renderer, $$props) {
960
- const $$sanitized_props = $15.sanitize_props($$props);
961
- const iconNode = [
962
- ["line", { x1: "19", x2: "10", y1: "4", y2: "4" }],
963
- ["line", { x1: "14", x2: "5", y1: "20", y2: "20" }],
964
- ["line", { x1: "15", x2: "9", y1: "4", y2: "20" }]
965
- ];
966
- Icon($$renderer, $15.spread_props([
967
- { name: "italic" },
968
- $$sanitized_props,
969
- {
970
- iconNode,
971
- children: ($$renderer2) => {
972
- $$renderer2.push(`<!--[-->`);
973
- $15.slot($$renderer2, $$props, "default", {}, null);
974
- $$renderer2.push(`<!--]-->`);
975
- },
976
- $$slots: { default: true }
977
- }
978
- ]));
979
- }
980
- // ../../node_modules/lucide-svelte/dist/icons/link.svelte
981
- import * as $16 from "svelte/internal/server";
982
- function Link($$renderer, $$props) {
983
- const $$sanitized_props = $16.sanitize_props($$props);
984
- const iconNode = [
985
- [
986
- "path",
987
- {
988
- d: "M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"
989
- }
990
- ],
991
- [
992
- "path",
993
- {
994
- d: "M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"
995
- }
996
- ]
997
- ];
998
- Icon($$renderer, $16.spread_props([
999
- { name: "link" },
1000
- $$sanitized_props,
1001
- {
1002
- iconNode,
1003
- children: ($$renderer2) => {
1004
- $$renderer2.push(`<!--[-->`);
1005
- $16.slot($$renderer2, $$props, "default", {}, null);
1006
- $$renderer2.push(`<!--]-->`);
1007
- },
1008
- $$slots: { default: true }
1009
- }
1010
- ]));
1011
- }
1012
- // ../../node_modules/lucide-svelte/dist/icons/list.svelte
1013
- import * as $17 from "svelte/internal/server";
1014
- function List($$renderer, $$props) {
1015
- const $$sanitized_props = $17.sanitize_props($$props);
1016
- const iconNode = [
1017
- ["path", { d: "M3 12h.01" }],
1018
- ["path", { d: "M3 18h.01" }],
1019
- ["path", { d: "M3 6h.01" }],
1020
- ["path", { d: "M8 12h13" }],
1021
- ["path", { d: "M8 18h13" }],
1022
- ["path", { d: "M8 6h13" }]
1023
- ];
1024
- Icon($$renderer, $17.spread_props([
1025
- { name: "list" },
1026
- $$sanitized_props,
1027
- {
1028
- iconNode,
1029
- children: ($$renderer2) => {
1030
- $$renderer2.push(`<!--[-->`);
1031
- $17.slot($$renderer2, $$props, "default", {}, null);
1032
- $$renderer2.push(`<!--]-->`);
1033
- },
1034
- $$slots: { default: true }
1035
- }
1036
- ]));
1037
- }
1038
- // ../../node_modules/lucide-svelte/dist/icons/list-ordered.svelte
1039
- import * as $18 from "svelte/internal/server";
1040
- function List_ordered($$renderer, $$props) {
1041
- const $$sanitized_props = $18.sanitize_props($$props);
1042
- const iconNode = [
1043
- ["path", { d: "M10 12h11" }],
1044
- ["path", { d: "M10 18h11" }],
1045
- ["path", { d: "M10 6h11" }],
1046
- ["path", { d: "M4 10h2" }],
1047
- ["path", { d: "M4 6h1v4" }],
1048
- ["path", { d: "M6 18H4c0-1 2-2 2-3s-1-1.5-2-1" }]
1049
- ];
1050
- Icon($$renderer, $18.spread_props([
1051
- { name: "list-ordered" },
1052
- $$sanitized_props,
1053
- {
1054
- iconNode,
1055
- children: ($$renderer2) => {
1056
- $$renderer2.push(`<!--[-->`);
1057
- $18.slot($$renderer2, $$props, "default", {}, null);
1058
- $$renderer2.push(`<!--]-->`);
1059
- },
1060
- $$slots: { default: true }
1061
- }
1062
- ]));
1063
- }
1064
- // ../../node_modules/lucide-svelte/dist/icons/pilcrow.svelte
1065
- import * as $19 from "svelte/internal/server";
1066
- function Pilcrow($$renderer, $$props) {
1067
- const $$sanitized_props = $19.sanitize_props($$props);
1068
- const iconNode = [
1069
- ["path", { d: "M13 4v16" }],
1070
- ["path", { d: "M17 4v16" }],
1071
- ["path", { d: "M19 4H9.5a4.5 4.5 0 0 0 0 9H13" }]
1072
- ];
1073
- Icon($$renderer, $19.spread_props([
1074
- { name: "pilcrow" },
1075
- $$sanitized_props,
1076
- {
1077
- iconNode,
1078
- children: ($$renderer2) => {
1079
- $$renderer2.push(`<!--[-->`);
1080
- $19.slot($$renderer2, $$props, "default", {}, null);
1081
- $$renderer2.push(`<!--]-->`);
1082
- },
1083
- $$slots: { default: true }
1084
- }
1085
- ]));
1086
- }
1087
- // ../../node_modules/lucide-svelte/dist/icons/quote.svelte
1088
- import * as $20 from "svelte/internal/server";
1089
- function Quote($$renderer, $$props) {
1090
- const $$sanitized_props = $20.sanitize_props($$props);
1091
- const iconNode = [
1092
- [
1093
- "path",
1094
- {
1095
- d: "M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z"
1096
- }
1097
- ],
1098
- [
1099
- "path",
1100
- {
1101
- d: "M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z"
1102
- }
1103
- ]
1104
- ];
1105
- Icon($$renderer, $20.spread_props([
1106
- { name: "quote" },
1107
- $$sanitized_props,
1108
- {
1109
- iconNode,
1110
- children: ($$renderer2) => {
1111
- $$renderer2.push(`<!--[-->`);
1112
- $20.slot($$renderer2, $$props, "default", {}, null);
1113
- $$renderer2.push(`<!--]-->`);
1114
- },
1115
- $$slots: { default: true }
1116
- }
1117
- ]));
1118
- }
1119
- // ../../node_modules/lucide-svelte/dist/icons/redo-2.svelte
1120
- import * as $21 from "svelte/internal/server";
1121
- function Redo_2($$renderer, $$props) {
1122
- const $$sanitized_props = $21.sanitize_props($$props);
1123
- const iconNode = [
1124
- ["path", { d: "m15 14 5-5-5-5" }],
1125
- [
1126
- "path",
1127
- {
1128
- d: "M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13"
1129
- }
1130
- ]
1131
- ];
1132
- Icon($$renderer, $21.spread_props([
1133
- { name: "redo-2" },
1134
- $$sanitized_props,
1135
- {
1136
- iconNode,
1137
- children: ($$renderer2) => {
1138
- $$renderer2.push(`<!--[-->`);
1139
- $21.slot($$renderer2, $$props, "default", {}, null);
1140
- $$renderer2.push(`<!--]-->`);
1141
- },
1142
- $$slots: { default: true }
1143
- }
1144
- ]));
1145
- }
1146
- // ../../node_modules/lucide-svelte/dist/icons/strikethrough.svelte
1147
- import * as $22 from "svelte/internal/server";
1148
- function Strikethrough($$renderer, $$props) {
1149
- const $$sanitized_props = $22.sanitize_props($$props);
1150
- const iconNode = [
1151
- ["path", { d: "M16 4H9a3 3 0 0 0-2.83 4" }],
1152
- ["path", { d: "M14 12a4 4 0 0 1 0 8H6" }],
1153
- ["line", { x1: "4", x2: "20", y1: "12", y2: "12" }]
1154
- ];
1155
- Icon($$renderer, $22.spread_props([
1156
- { name: "strikethrough" },
1157
- $$sanitized_props,
1158
- {
1159
- iconNode,
1160
- children: ($$renderer2) => {
1161
- $$renderer2.push(`<!--[-->`);
1162
- $22.slot($$renderer2, $$props, "default", {}, null);
1163
- $$renderer2.push(`<!--]-->`);
1164
- },
1165
- $$slots: { default: true }
1166
- }
1167
- ]));
1168
- }
1169
- // ../../node_modules/lucide-svelte/dist/icons/undo-2.svelte
1170
- import * as $23 from "svelte/internal/server";
1171
- function Undo_2($$renderer, $$props) {
1172
- const $$sanitized_props = $23.sanitize_props($$props);
1173
- const iconNode = [
1174
- ["path", { d: "M9 14 4 9l5-5" }],
1175
- [
1176
- "path",
1177
- {
1178
- d: "M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11"
1179
- }
1180
- ]
1181
- ];
1182
- Icon($$renderer, $23.spread_props([
1183
- { name: "undo-2" },
1184
- $$sanitized_props,
1185
- {
1186
- iconNode,
1187
- children: ($$renderer2) => {
1188
- $$renderer2.push(`<!--[-->`);
1189
- $23.slot($$renderer2, $$props, "default", {}, null);
1190
- $$renderer2.push(`<!--]-->`);
1191
- },
1192
- $$slots: { default: true }
1193
- }
1194
- ]));
1195
- }
1196
- // src/components/markdown-editor/editor-toolbar/editor-toolbar.svelte
2
+ markdown_editor_default
3
+ } from "../../index.server-96fg085d.js";
1197
4
  import {
1198
- toggleBold,
1199
- toggleItalic,
1200
- toggleCode,
1201
- toggleStrikethrough,
1202
- toggleBulletList,
1203
- toggleOrderedList,
1204
- toggleBlockquote,
1205
- setHeading,
1206
- setParagraph,
1207
- getShortcutDisplay
1208
- } from "@lostgradient/cinder/editor/component-runtime";
1209
-
1210
- // src/components/toolbar/toolbar.svelte
1211
- import * as $25 from "svelte/internal/server";
1212
- import { untrack as untrack2 } from "svelte";
1213
- import { on } from "svelte/events";
1214
-
1215
- // src/utilities/use-mutation-observer.svelte.ts
1216
- import * as $24 from "svelte/internal/server";
1217
- function useMutationObserver(onMutate, options = {}) {
1218
- const {
1219
- childList,
1220
- attributes: attributes7,
1221
- characterData,
1222
- subtree,
1223
- attributeFilter,
1224
- attributeOldValue,
1225
- characterDataOldValue,
1226
- enabled = () => true
1227
- } = options;
1228
- const init = {};
1229
- if (childList !== undefined)
1230
- init.childList = childList;
1231
- if (attributes7 !== undefined)
1232
- init.attributes = attributes7;
1233
- if (characterData !== undefined)
1234
- init.characterData = characterData;
1235
- if (subtree !== undefined)
1236
- init.subtree = subtree;
1237
- if (attributeFilter !== undefined)
1238
- init.attributeFilter = attributeFilter;
1239
- if (attributeOldValue !== undefined)
1240
- init.attributeOldValue = attributeOldValue;
1241
- if (characterDataOldValue !== undefined)
1242
- init.characterDataOldValue = characterDataOldValue;
1243
- if (init.childList === undefined && init.attributes === undefined && init.characterData === undefined) {
1244
- init.childList = true;
1245
- }
1246
- return (node) => {
1247
- if (typeof MutationObserver === "undefined") {
1248
- return () => {};
1249
- }
1250
- let observer = null;
1251
- const disconnectObserver = () => {
1252
- observer?.disconnect();
1253
- observer = null;
1254
- };
1255
- return () => {
1256
- disconnectObserver();
1257
- };
1258
- };
1259
- }
1260
-
1261
- // src/components/toolbar/toolbar.svelte
1262
- function Toolbar($$renderer, $$props) {
1263
- $$renderer.component(($$renderer2) => {
1264
- const focusableSelector = [
1265
- "button",
1266
- "a[href]",
1267
- "input",
1268
- "select",
1269
- "textarea",
1270
- "[tabindex]",
1271
- "[data-cinder-toolbar-item]"
1272
- ].join(",");
1273
- let {
1274
- class: className,
1275
- orientation = "horizontal",
1276
- children,
1277
- onkeydown: consumerOnKeyDown,
1278
- onfocusin: consumerOnFocusIn,
1279
- role: _role,
1280
- "aria-orientation": _ariaOrientation,
1281
- "aria-label": ariaLabel,
1282
- "aria-labelledby": ariaLabelledBy,
1283
- $$slots,
1284
- $$events,
1285
- ...rest
1286
- } = $$props;
1287
- let rootElement = null;
1288
- let toolbarItems = [];
1289
- let activeItem = null;
1290
- const originalTabIndexes = new WeakMap;
1291
- let previousManagedItems = new Set;
1292
- let lastWarnedNameSource = "";
1293
- function isHTMLElement(value) {
1294
- return value instanceof HTMLElement;
1295
- }
1296
- function isHiddenInput(element2) {
1297
- return element2 instanceof HTMLInputElement && element2.type === "hidden";
1298
- }
1299
- function isEditableTarget(element2) {
1300
- if (element2 instanceof HTMLTextAreaElement)
1301
- return true;
1302
- if (element2 instanceof HTMLInputElement) {
1303
- return ![
1304
- "button",
1305
- "checkbox",
1306
- "file",
1307
- "hidden",
1308
- "image",
1309
- "radio",
1310
- "range",
1311
- "reset",
1312
- "submit"
1313
- ].includes(element2.type);
1314
- }
1315
- return element2.isContentEditable;
1316
- }
1317
- function isSpinButtonLike(element2) {
1318
- if (element2.getAttribute("role") === "spinbutton")
1319
- return true;
1320
- if (!(element2 instanceof HTMLInputElement))
1321
- return false;
1322
- return element2.closest(".cinder-number-input") !== null;
1323
- }
1324
- function hasCollapsedSelectionAtBoundary(element2, direction) {
1325
- if (!(element2 instanceof HTMLInputElement || element2 instanceof HTMLTextAreaElement))
1326
- return false;
1327
- if (typeof element2.selectionStart !== "number" || typeof element2.selectionEnd !== "number")
1328
- return false;
1329
- if (element2.selectionStart !== element2.selectionEnd)
1330
- return false;
1331
- const valueLength = element2.value.length;
1332
- return direction === -1 ? element2.selectionStart === 0 : element2.selectionEnd === valueLength;
1333
- }
1334
- function placeCaret(element2, placement) {
1335
- if (!(element2 instanceof HTMLInputElement || element2 instanceof HTMLTextAreaElement))
1336
- return;
1337
- if (typeof element2.setSelectionRange !== "function")
1338
- return;
1339
- const position = placement === "end" ? element2.value.length : 0;
1340
- element2.setSelectionRange(position, position);
1341
- }
1342
- function isCssHidden(element2) {
1343
- const elementStyle = getComputedStyle(element2);
1344
- if (elementStyle.display === "none" || elementStyle.visibility === "hidden")
1345
- return true;
1346
- let current = element2.parentElement;
1347
- while (current) {
1348
- if (getComputedStyle(current).display === "none")
1349
- return true;
1350
- current = current.parentElement;
1351
- }
1352
- return false;
1353
- }
1354
- function isDisabledByFieldset(element2) {
1355
- const disabledFieldset = element2.closest("fieldset[disabled]");
1356
- if (!disabledFieldset)
1357
- return false;
1358
- const firstLegend = disabledFieldset.querySelector("legend");
1359
- return firstLegend ? !firstLegend.contains(element2) : true;
1360
- }
1361
- function isEligibleToolbarItem(element2) {
1362
- if (!rootElement || element2 === rootElement)
1363
- return false;
1364
- if (!rootElement.contains(element2))
1365
- return false;
1366
- if (isHiddenInput(element2))
1367
- return false;
1368
- if (element2.hasAttribute("hidden"))
1369
- return false;
1370
- if (element2.getAttribute("aria-hidden") === "true")
1371
- return false;
1372
- if (element2.getAttribute("aria-disabled") === "true")
1373
- return false;
1374
- if ("disabled" in element2 && typeof element2.disabled === "boolean") {
1375
- if (element2.disabled)
1376
- return false;
1377
- }
1378
- if (element2.closest('[hidden],[aria-hidden="true"],[data-cinder-toolbar-exclude]'))
1379
- return false;
1380
- if (element2.closest("[inert]"))
1381
- return false;
1382
- if (isDisabledByFieldset(element2))
1383
- return false;
1384
- if (isCssHidden(element2))
1385
- return false;
1386
- const authoredTabIndex = element2.getAttribute("tabindex");
1387
- if (authoredTabIndex === "-1" && !previousManagedItems.has(element2) && !element2.hasAttribute("data-cinder-toolbar-item")) {
1388
- return false;
1389
- }
1390
- return true;
1391
- }
1392
- function getToolbarItems() {
1393
- if (!rootElement)
1394
- return [];
1395
- return Array.from(rootElement.querySelectorAll(focusableSelector)).filter((element2) => isEligibleToolbarItem(element2));
1396
- }
1397
- function getActiveIndex(items, preferredItem) {
1398
- if (preferredItem) {
1399
- const preferredIndex = items.indexOf(preferredItem);
1400
- if (preferredIndex >= 0)
1401
- return preferredIndex;
1402
- }
1403
- return getFocusableIndex(-1, items.length);
1404
- }
1405
- function restoreDepartedItems(nextItems) {
1406
- const nextItemSet = new Set(nextItems);
1407
- for (const item of previousManagedItems) {
1408
- if (nextItemSet.has(item))
1409
- continue;
1410
- const original = originalTabIndexes.get(item);
1411
- if (original === null)
1412
- item.removeAttribute("tabindex");
1413
- else if (original !== undefined)
1414
- item.setAttribute("tabindex", original);
1415
- originalTabIndexes.delete(item);
1416
- }
1417
- previousManagedItems = nextItemSet;
1418
- }
1419
- function syncToolbarItems(preferredItem = activeItem) {
1420
- const items = getToolbarItems();
1421
- restoreDepartedItems(items);
1422
- if (items.length === 0) {
1423
- toolbarItems = [];
1424
- activeItem = null;
1425
- return;
1426
- }
1427
- for (const item of items) {
1428
- if (!originalTabIndexes.has(item)) {
1429
- originalTabIndexes.set(item, item.getAttribute("tabindex"));
1430
- }
1431
- }
1432
- const activeIndex = getActiveIndex(items, preferredItem);
1433
- const resolvedActiveItem = activeIndex >= 0 ? items[activeIndex] ?? null : null;
1434
- for (const [index, item] of items.entries()) {
1435
- const nextTabIndex = index === activeIndex ? 0 : -1;
1436
- if (item.tabIndex !== nextTabIndex) {
1437
- item.tabIndex = nextTabIndex;
1438
- }
1439
- }
1440
- toolbarItems = items;
1441
- activeItem = resolvedActiveItem;
1442
- }
1443
- function moveFocus(nextIndex, caretPlacement) {
1444
- const nextItem = toolbarItems[nextIndex];
1445
- if (!nextItem)
1446
- return;
1447
- activeItem = nextItem;
1448
- syncToolbarItems(nextItem);
1449
- nextItem.focus();
1450
- placeCaret(nextItem, caretPlacement);
1451
- }
1452
- function getCurrentToolbarIndex(target) {
1453
- return toolbarItems.indexOf(target);
1454
- }
1455
- function handleEditableEscape(target) {
1456
- if (!isEditableTarget(target))
1457
- return false;
1458
- const currentIndex = getCurrentToolbarIndex(target);
1459
- if (currentIndex < 0)
1460
- return false;
1461
- const nextIndex = currentIndex < toolbarItems.length - 1 ? currentIndex + 1 : currentIndex > 0 ? currentIndex - 1 : -1;
1462
- if (nextIndex < 0)
1463
- return false;
1464
- moveFocus(nextIndex, nextIndex > currentIndex ? "start" : "end");
1465
- return true;
1466
- }
1467
- function handleToolbarKeyDown(event) {
1468
- consumerOnKeyDown?.(event);
1469
- if (event.defaultPrevented)
1470
- return;
1471
- if (!isHTMLElement(event.target))
1472
- return;
1473
- const target = event.target.closest(focusableSelector);
1474
- if (!target || !toolbarItems.includes(target))
1475
- return;
1476
- const currentIndex = getCurrentToolbarIndex(target);
1477
- if (currentIndex < 0)
1478
- return;
1479
- const horizontal = orientation !== "vertical";
1480
- const targetIsEditable = isEditableTarget(target);
1481
- if (event.key === "Escape" && targetIsEditable) {
1482
- if (!handleEditableEscape(target))
1483
- return;
1484
- event.preventDefault();
1485
- event.stopPropagation();
1486
- return;
1487
- }
1488
- if ((event.key === "Home" || event.key === "End") && targetIsEditable) {
1489
- return;
1490
- }
1491
- if (horizontal && (event.key === "ArrowLeft" || event.key === "ArrowRight")) {
1492
- if (targetIsEditable && !hasCollapsedSelectionAtBoundary(target, event.key === "ArrowLeft" ? -1 : 1)) {
1493
- return;
1494
- }
1495
- }
1496
- if (!horizontal && (event.key === "ArrowUp" || event.key === "ArrowDown")) {
1497
- if (targetIsEditable || isSpinButtonLike(target))
1498
- return;
1499
- }
1500
- if (horizontal && (event.key === "ArrowUp" || event.key === "ArrowDown")) {
1501
- return;
1502
- }
1503
- if (!horizontal && (event.key === "ArrowLeft" || event.key === "ArrowRight")) {
1504
- return;
1505
- }
1506
- const nextIndex = handleRovingKeydown(event, currentIndex, toolbarItems.length, { horizontal, vertical: !horizontal });
1507
- if (nextIndex === null || nextIndex === currentIndex)
1508
- return;
1509
- event.preventDefault();
1510
- event.stopPropagation();
1511
- moveFocus(nextIndex, event.key === "ArrowLeft" || event.key === "ArrowUp" || event.key === "End" ? "end" : "start");
1512
- }
1513
- function handleToolbarFocusIn(event) {
1514
- consumerOnFocusIn?.(event);
1515
- if (!isHTMLElement(event.target))
1516
- return;
1517
- const target = event.target.closest(focusableSelector);
1518
- if (!target || !isEligibleToolbarItem(target))
1519
- return;
1520
- syncToolbarItems(target);
1521
- }
1522
- function resolveAccessibleNameSource() {
1523
- const inlineLabel = ariaLabel?.trim() ?? "";
1524
- const labelledBy = ariaLabelledBy?.trim() ?? "";
1525
- return inlineLabel || labelledBy;
1526
- }
1527
- function hasResolvedLabelledByText() {
1528
- if (!rootElement || !ariaLabelledBy)
1529
- return false;
1530
- const identifiers = ariaLabelledBy.split(/\s+/).map((value) => value.trim()).filter(Boolean);
1531
- if (identifiers.length === 0)
1532
- return false;
1533
- return identifiers.every((identifier) => {
1534
- const element2 = document.getElementById(identifier);
1535
- return element2 !== null && (element2.textContent?.trim().length ?? 0) > 0;
1536
- });
1537
- }
1538
- function warnAboutAccessibleName() {
1539
- if (!rootElement)
1540
- return;
1541
- const warningKey = `${ariaLabel ?? ""}|${ariaLabelledBy ?? ""}`;
1542
- if (warningKey === lastWarnedNameSource)
1543
- return;
1544
- const inlineLabel = ariaLabel?.trim() ?? "";
1545
- if (inlineLabel.length > 0)
1546
- return;
1547
- if (ariaLabelledBy?.trim() && hasResolvedLabelledByText())
1548
- return;
1549
- lastWarnedNameSource = warningKey;
1550
- devWarn("[cinder/Toolbar] rendered without a resolvable accessible name. Pass a non-empty `aria-label` or `aria-labelledby` that points to non-empty text.");
1551
- }
1552
- function toolbarSetup(node) {
1553
- rootElement = node;
1554
- syncToolbarItems(untrack2(() => activeItem));
1555
- const cleanupKeyboardListener = on(node, "keydown", handleToolbarKeyDown, { capture: true });
1556
- const cleanupFocusInListener = on(node, "focusin", handleToolbarFocusIn);
1557
- const detachMutationObserver = useMutationObserver(() => {
1558
- syncToolbarItems(activeItem);
1559
- warnAboutAccessibleName();
1560
- }, {
1561
- subtree: true,
1562
- childList: true,
1563
- attributes: true,
1564
- attributeFilter: [
1565
- "aria-disabled",
1566
- "aria-hidden",
1567
- "aria-label",
1568
- "aria-labelledby",
1569
- "class",
1570
- "data-cinder-toolbar-exclude",
1571
- "data-cinder-toolbar-item",
1572
- "disabled",
1573
- "hidden",
1574
- "inert",
1575
- "style",
1576
- "type"
1577
- ]
1578
- })(node);
1579
- warnAboutAccessibleName();
1580
- return () => {
1581
- cleanupKeyboardListener();
1582
- cleanupFocusInListener();
1583
- detachMutationObserver?.();
1584
- rootElement = null;
1585
- restoreDepartedItems([]);
1586
- };
1587
- }
1588
- $$renderer2.push(`<div${$25.attributes({
1589
- ...rest,
1590
- role: "toolbar",
1591
- "aria-label": ariaLabel,
1592
- "aria-labelledby": ariaLabelledBy,
1593
- "aria-orientation": orientation === "vertical" ? "vertical" : undefined,
1594
- class: $25.clsx(classNames("cinder-toolbar", className)),
1595
- "data-cinder-orientation": orientation,
1596
- "data-cinder-name-source": resolveAccessibleNameSource()
1597
- })}>`);
1598
- children($$renderer2);
1599
- $$renderer2.push(`<!----></div>`);
1600
- });
1601
- }
1602
-
1603
- // src/components/markdown-editor/editor-toolbar/toolbar-button.svelte
1604
- import * as $28 from "svelte/internal/server";
1605
-
1606
- // src/components/tooltip/tooltip.svelte
1607
- import * as $27 from "svelte/internal/server";
1608
-
1609
- // src/_internal/anchored-overlay.svelte.ts
1610
- import * as $26 from "svelte/internal/server";
1611
- var DEFAULT_PLACEMENT = "bottom-start";
1612
- function createAnchoredOverlay(options) {
1613
- let positionReady = false;
1614
- let positionStyle = "";
1615
- let resolvedPlacement = options.placement?.() ?? DEFAULT_PLACEMENT;
1616
- let arrowStyle = "";
1617
- return {
1618
- get positionReady() {
1619
- return positionReady;
1620
- },
1621
- get positionStyle() {
1622
- return positionStyle;
1623
- },
1624
- get resolvedPlacement() {
1625
- return resolvedPlacement;
1626
- },
1627
- get arrowStyle() {
1628
- return arrowStyle;
1629
- }
1630
- };
1631
- }
1632
-
1633
- // src/components/tooltip/tooltip.svelte
1634
- function Tooltip($$renderer, $$props) {
1635
- $$renderer.component(($$renderer2) => {
1636
- const tooltipId = $27.props_id($$renderer2);
1637
- let {
1638
- text,
1639
- placement = "top",
1640
- describe = true,
1641
- class: className,
1642
- children
1643
- } = $$props;
1644
- const FOCUSABLE_SELECTOR2 = [
1645
- "button:not([disabled])",
1646
- "a[href]",
1647
- "area[href]",
1648
- "input:not([disabled])",
1649
- "select:not([disabled])",
1650
- "textarea:not([disabled])",
1651
- "summary",
1652
- "iframe",
1653
- "object",
1654
- "embed",
1655
- "audio[controls]",
1656
- "video[controls]",
1657
- '[contenteditable]:not([contenteditable="false"])',
1658
- '[tabindex]:not([tabindex="-1"])'
1659
- ].join(", ");
1660
- let visible = false;
1661
- let showTimer;
1662
- let hasPendingShow = false;
1663
- let wrapperElement = undefined;
1664
- let tooltipElement = undefined;
1665
- let anchorElement = null;
1666
- function show() {
1667
- clearTimeout(showTimer);
1668
- hasPendingShow = true;
1669
- showTimer = setTimeout(() => {
1670
- showTimer = undefined;
1671
- hasPendingShow = false;
1672
- visible = true;
1673
- }, 100);
1674
- }
1675
- function hide() {
1676
- clearTimeout(showTimer);
1677
- showTimer = undefined;
1678
- hasPendingShow = false;
1679
- visible = false;
1680
- }
1681
- function handleMouseEnter() {
1682
- show();
1683
- }
1684
- function handleMouseLeave() {
1685
- hide();
1686
- }
1687
- function handleFocusIn() {
1688
- show();
1689
- }
1690
- function handleFocusOut() {
1691
- hide();
1692
- }
1693
- function handleKeydown(event) {
1694
- if (event.key === "Escape") {
1695
- hide();
1696
- }
1697
- }
1698
- function isFocusableCandidate2(element2) {
1699
- if (element2.matches(":disabled"))
1700
- return false;
1701
- return !element2.closest('[hidden], [inert], [aria-hidden="true"]');
1702
- }
1703
- function resolveAnchorElement(container) {
1704
- const candidates = container.querySelectorAll(FOCUSABLE_SELECTOR2);
1705
- for (const candidate of candidates) {
1706
- if (isFocusableCandidate2(candidate))
1707
- return candidate;
1708
- }
1709
- return container;
1710
- }
1711
- function syncAriaDescribedBy(focusable) {
1712
- const existing = focusable.getAttribute("aria-describedby");
1713
- const ids = existing ? existing.split(" ").filter(Boolean) : [];
1714
- if (!ids.includes(tooltipId)) {
1715
- focusable.setAttribute("aria-describedby", [...ids, tooltipId].join(" "));
1716
- }
1717
- return () => {
1718
- const current = focusable.getAttribute("aria-describedby");
1719
- if (!current)
1720
- return;
1721
- const remaining = current.split(" ").filter((id) => id !== tooltipId).join(" ");
1722
- if (remaining) {
1723
- focusable.setAttribute("aria-describedby", remaining);
1724
- } else {
1725
- focusable.removeAttribute("aria-describedby");
1726
- }
1727
- };
1728
- }
1729
- const attachWrapper = (element2) => {
1730
- wrapperElement = element2;
1731
- const focusable = resolveAnchorElement(element2);
1732
- anchorElement = focusable;
1733
- const teardownAriaDescribedBy = describe ? syncAriaDescribedBy(focusable) : undefined;
1734
- return () => {
1735
- teardownAriaDescribedBy?.();
1736
- if (wrapperElement === element2)
1737
- wrapperElement = undefined;
1738
- if (anchorElement === focusable)
1739
- anchorElement = null;
1740
- };
1741
- };
1742
- const tooltipPortalAttachment = createPortalAttachment({
1743
- target: () => document.body,
1744
- source: () => anchorElement ?? wrapperElement ?? null,
1745
- inheritAttributes: true
1746
- });
1747
- const anchoredOverlay = createAnchoredOverlay({
1748
- open: () => visible,
1749
- anchor: () => anchorElement,
1750
- panel: () => tooltipElement,
1751
- placement: () => placement,
1752
- offset: () => 8,
1753
- widthMode: () => "none"
1754
- });
1755
- const isTooltipExposed = $27.derived(() => visible && anchoredOverlay.positionReady);
1756
- $$renderer2.push(`<span${$27.attr_class($27.clsx(classNames("cinder-tooltip-wrapper", className)))} role="presentation"${$27.attr("data-cinder-placement", visible ? anchoredOverlay.resolvedPlacement : placement)}>`);
1757
- children($$renderer2);
1758
- $$renderer2.push(`<!----> <span${$27.attr("id", tooltipId)} role="tooltip" class="cinder-tooltip"${$27.attr("aria-hidden", !isTooltipExposed())}${$27.attr("data-cinder-placement", visible ? anchoredOverlay.resolvedPlacement : placement)}${$27.attr("data-cinder-position-ready", anchoredOverlay.positionReady)}${$27.attr_style(anchoredOverlay.positionStyle)}>${$27.escape(text)}</span></span>`);
1759
- });
1760
- }
1761
-
1762
- // src/components/markdown-editor/editor-toolbar/toolbar-button.svelte
1763
- function Toolbar_button($$renderer, $$props) {
1764
- $$renderer.component(($$renderer2) => {
1765
- let {
1766
- icon: Icon2,
1767
- label,
1768
- toggle = false,
1769
- pressed = false,
1770
- shortcut,
1771
- disabled = false,
1772
- class: className,
1773
- onclick,
1774
- $$slots,
1775
- $$events,
1776
- ...rest
1777
- } = $$props;
1778
- const tooltipLabel = $28.derived(() => shortcut ? `${label} (${shortcut})` : label);
1779
- Tooltip($$renderer2, {
1780
- text: tooltipLabel(),
1781
- placement: "bottom",
1782
- children: ($$renderer3) => {
1783
- $$renderer3.push(`<button${$28.attributes({
1784
- type: "button",
1785
- class: $28.clsx(classNames("toolbar-button", className)),
1786
- "aria-label": label,
1787
- "aria-pressed": toggle ? pressed : undefined,
1788
- "data-active": toggle && pressed ? "" : undefined,
1789
- disabled,
1790
- ...rest
1791
- }, "svelte-143lto0")}>`);
1792
- if (Icon2) {
1793
- $$renderer3.push("<!--[-->");
1794
- Icon2($$renderer3, { class: "icon-sm" });
1795
- $$renderer3.push("<!--]-->");
1796
- } else {
1797
- $$renderer3.push("<!--[!-->");
1798
- $$renderer3.push("<!--]-->");
1799
- }
1800
- $$renderer3.push(`</button>`);
1801
- },
1802
- $$slots: { default: true }
1803
- });
1804
- });
1805
- }
1806
-
1807
- // src/components/markdown-editor/editor-toolbar/toolbar-separator.svelte
1808
- import * as $29 from "svelte/internal/server";
1809
- function Toolbar_separator($$renderer, $$props) {
1810
- $$renderer.component(($$renderer2) => {
1811
- let { class: className, $$slots, $$events, ...rest } = $$props;
1812
- $$renderer2.push(`<div${$29.attributes({
1813
- class: $29.clsx(classNames("toolbar-separator", className)),
1814
- role: "separator",
1815
- "aria-orientation": "vertical",
1816
- "aria-hidden": "true",
1817
- ...rest
1818
- }, "svelte-1v2jo71")}></div>`);
1819
- });
1820
- }
1821
-
1822
- // src/components/markdown-editor/editor-toolbar/toolbar-dropdown.svelte
1823
- import * as $35 from "svelte/internal/server";
1824
-
1825
- // ../../node_modules/lucide-svelte/dist/icons/check.svelte
1826
- import * as $30 from "svelte/internal/server";
1827
- function Check($$renderer, $$props) {
1828
- const $$sanitized_props = $30.sanitize_props($$props);
1829
- const iconNode = [["path", { d: "M20 6 9 17l-5-5" }]];
1830
- Icon($$renderer, $30.spread_props([
1831
- { name: "check" },
1832
- $$sanitized_props,
1833
- {
1834
- iconNode,
1835
- children: ($$renderer2) => {
1836
- $$renderer2.push(`<!--[-->`);
1837
- $30.slot($$renderer2, $$props, "default", {}, null);
1838
- $$renderer2.push(`<!--]-->`);
1839
- },
1840
- $$slots: { default: true }
1841
- }
1842
- ]));
1843
- }
1844
- // src/components/dropdown/dropdown.svelte
1845
- import * as $31 from "svelte/internal/server";
1846
-
1847
- // src/_internal/overlay.ts
1848
- var escapeStack = [];
1849
- function pushEscapeHandler(handler) {
1850
- escapeStack.push(handler);
1851
- if (escapeStack.length === 1 && typeof window !== "undefined") {
1852
- window.addEventListener("keydown", onEscapeKeydown, { capture: true });
1853
- }
1854
- let released = false;
1855
- return () => {
1856
- if (released)
1857
- return;
1858
- released = true;
1859
- const index = escapeStack.lastIndexOf(handler);
1860
- if (index !== -1)
1861
- escapeStack.splice(index, 1);
1862
- if (escapeStack.length === 0 && typeof window !== "undefined") {
1863
- window.removeEventListener("keydown", onEscapeKeydown, { capture: true });
1864
- }
1865
- };
1866
- }
1867
- function onEscapeKeydown(event) {
1868
- if (event.key !== "Escape")
1869
- return;
1870
- const handler = escapeStack.at(-1);
1871
- if (!handler)
1872
- return;
1873
- handler(event);
1874
- }
1875
- var scrollLockCount = 0;
1876
- var originalBodyOverflow = null;
1877
- function lockBodyScroll() {
1878
- if (typeof document === "undefined")
1879
- return () => {};
1880
- if (scrollLockCount === 0) {
1881
- originalBodyOverflow = document.body.style.overflow;
1882
- document.body.style.overflow = "hidden";
1883
- }
1884
- scrollLockCount += 1;
1885
- let released = false;
1886
- return () => {
1887
- if (released)
1888
- return;
1889
- released = true;
1890
- scrollLockCount = Math.max(0, scrollLockCount - 1);
1891
- if (scrollLockCount === 0) {
1892
- document.body.style.overflow = originalBodyOverflow ?? "";
1893
- originalBodyOverflow = null;
1894
- }
1895
- };
1896
- }
1897
- function captureFocus() {
1898
- if (typeof document === "undefined")
1899
- return null;
1900
- const active = document.activeElement;
1901
- if (active && active !== document.body && active instanceof HTMLElement) {
1902
- return active;
1903
- }
1904
- return null;
1905
- }
1906
-
1907
- // src/utilities/attachments.ts
1908
- function isInsideEventPath(event, element2) {
1909
- const path = event.composedPath();
1910
- return path.some((entry) => entry instanceof Node && element2.contains(entry));
1911
- }
1912
- function createClickOutside(options) {
1913
- const { handler, enabled = true, eventType = "click", capture = true, ignoreRefs } = options;
1914
- return (node) => {
1915
- function handleEvent(event) {
1916
- const isEnabled = typeof enabled === "function" ? enabled() : enabled;
1917
- if (!isEnabled)
1918
- return;
1919
- if (event.type === "touchstart" && !event.cancelable)
1920
- return;
1921
- const target = event.target;
1922
- if (!(target instanceof Node)) {
1923
- handler();
1924
- return;
1925
- }
1926
- if (isInsideEventPath(event, node))
1927
- return;
1928
- if (ignoreRefs) {
1929
- for (const ref of ignoreRefs) {
1930
- const element2 = ref();
1931
- if (element2 && isInsideEventPath(event, element2))
1932
- return;
1933
- }
1934
- }
1935
- handler();
1936
- }
1937
- document.addEventListener(eventType, handleEvent, capture);
1938
- return () => {
1939
- document.removeEventListener(eventType, handleEvent, capture);
1940
- };
1941
- };
1942
- }
1943
- function overflowFade() {
1944
- return (node) => {
1945
- if (typeof ResizeObserver === "undefined") {
1946
- node.removeAttribute("data-cinder-overflows");
1947
- return;
1948
- }
1949
- const update = () => {
1950
- const overflows = node.scrollHeight - node.clientHeight > 1;
1951
- const atBottom = node.scrollTop + node.clientHeight >= node.scrollHeight - 1;
1952
- node.toggleAttribute("data-cinder-overflows", overflows && !atBottom);
1953
- };
1954
- const requestFrame = typeof requestAnimationFrame === "function" ? requestAnimationFrame : (callback) => window.setTimeout(() => callback(performance.now()));
1955
- const cancelFrame = typeof cancelAnimationFrame === "function" ? cancelAnimationFrame : (handle) => window.clearTimeout(handle);
1956
- let frame = 0;
1957
- const scheduleUpdate = () => {
1958
- if (frame)
1959
- return;
1960
- frame = requestFrame(() => {
1961
- frame = 0;
1962
- update();
1963
- });
1964
- };
1965
- const resizeObserver = new ResizeObserver(scheduleUpdate);
1966
- const observedElements = new Set;
1967
- const observeElement = (element2) => {
1968
- if (observedElements.has(element2))
1969
- return;
1970
- resizeObserver.observe(element2);
1971
- observedElements.add(element2);
1972
- };
1973
- const syncObservedElements = () => {
1974
- const currentElements = new Set([node, ...node.querySelectorAll("*")]);
1975
- for (const element2 of observedElements) {
1976
- if (!currentElements.has(element2)) {
1977
- resizeObserver.unobserve(element2);
1978
- observedElements.delete(element2);
1979
- }
1980
- }
1981
- for (const element2 of currentElements) {
1982
- observeElement(element2);
1983
- }
1984
- };
1985
- syncObservedElements();
1986
- const mutationObserver = typeof MutationObserver === "undefined" ? null : new MutationObserver(() => {
1987
- syncObservedElements();
1988
- scheduleUpdate();
1989
- });
1990
- mutationObserver?.observe(node, {
1991
- childList: true,
1992
- subtree: true,
1993
- characterData: true,
1994
- attributes: true,
1995
- attributeFilter: ["hidden", "class", "style", "aria-hidden"]
1996
- });
1997
- node.addEventListener("scroll", scheduleUpdate, { passive: true });
1998
- update();
1999
- return () => {
2000
- if (frame)
2001
- cancelFrame(frame);
2002
- resizeObserver.disconnect();
2003
- observedElements.clear();
2004
- mutationObserver?.disconnect();
2005
- node.removeEventListener("scroll", scheduleUpdate);
2006
- };
2007
- };
2008
- }
2009
-
2010
- // src/components/dropdown/dropdown.context.ts
2011
- import { createContext as createContext2 } from "svelte";
2012
- var [getDropdownContextStrict, setDropdownContext] = createContext2();
2013
- var getDropdownContext = getDropdownContextStrict;
2014
- var [getDropdownRegisterStrict, setDropdownRegister] = createContext2();
2015
- var getDropdownRegister = getDropdownRegisterStrict;
2016
- var [getDropdownRegisterTriggerStrict, setDropdownRegisterTrigger] = createContext2();
2017
- var getDropdownRegisterTrigger = getDropdownRegisterTriggerStrict;
2018
- var [getDropdownSetOpenStrict, setDropdownSetOpen] = createContext2();
2019
- var getDropdownSetOpen = getDropdownSetOpenStrict;
2020
-
2021
- // src/components/dropdown/dropdown.svelte
2022
- function Dropdown($$renderer, $$props) {
2023
- $$renderer.component(($$renderer2) => {
2024
- const generatedId = $31.props_id($$renderer2);
2025
- let {
2026
- id = generatedId,
2027
- open = false,
2028
- placement = "bottom-start",
2029
- class: customClassName,
2030
- trigger,
2031
- children,
2032
- $$slots,
2033
- $$events,
2034
- ...rest
2035
- } = $$props;
2036
- let compoundMenuElement = null;
2037
- let compoundTriggerElement = null;
2038
- let compoundOpen = false;
2039
- let supportsPopover = false;
2040
- const menuId = `${generatedId}-menu`;
2041
- let menuElement = undefined;
2042
- let triggerWrapper = undefined;
2043
- const compoundMenuId = $31.derived(() => `${id}-menu`);
2044
- const usesLegacySnippetApi = $31.derived(() => Boolean(trigger));
2045
- function closeCompoundMenu() {
2046
- compoundMenuElement?.hidePopover?.();
2047
- compoundOpen = false;
2048
- }
2049
- function registerCompoundMenu(element2) {
2050
- compoundMenuElement = element2;
2051
- }
2052
- function registerCompoundTrigger(element2) {
2053
- compoundTriggerElement = element2;
2054
- }
2055
- function focusCompoundTrigger() {
2056
- compoundTriggerElement?.focus();
2057
- }
2058
- function setCompoundOpen(nextOpen) {
2059
- compoundOpen = nextOpen;
2060
- }
2061
- setDropdownContext({
2062
- get menuId() {
2063
- return compoundMenuId();
2064
- },
2065
- get isOpen() {
2066
- return compoundOpen;
2067
- },
2068
- get supportsPopover() {
2069
- return supportsPopover;
2070
- },
2071
- get anchorElement() {
2072
- return compoundTriggerElement;
2073
- },
2074
- get fallbackPlacement() {
2075
- return "bottom-end";
2076
- },
2077
- get widthMode() {
2078
- return "menu";
2079
- },
2080
- get initialFocus() {
2081
- return;
2082
- },
2083
- close: closeCompoundMenu,
2084
- focusTrigger: focusCompoundTrigger
2085
- });
2086
- setDropdownRegister(registerCompoundMenu);
2087
- setDropdownRegisterTrigger(registerCompoundTrigger);
2088
- setDropdownSetOpen(setCompoundOpen);
2089
- function handleKeydown(event) {
2090
- if (event.defaultPrevented)
2091
- return;
2092
- if (event.key === "Escape" && open) {
2093
- open = false;
2094
- } else if (event.key === "Escape" && compoundOpen) {
2095
- closeCompoundMenu();
2096
- focusCompoundTrigger();
2097
- }
2098
- }
2099
- const dismissOnOutsideClick = $31.derived(() => createClickOutside({
2100
- handler: () => {
2101
- open = false;
2102
- compoundOpen = false;
2103
- },
2104
- enabled: () => !supportsPopover && (open || compoundOpen),
2105
- ignoreRefs: [() => menuElement ?? null, () => compoundMenuElement ?? null],
2106
- capture: false
2107
- }));
2108
- function handlePopoverToggle(event) {
2109
- const toggleEvent = event;
2110
- open = toggleEvent.newState === "open";
2111
- }
2112
- $$renderer2.push(`<div${$31.attributes({
2113
- id,
2114
- class: $31.clsx(classNames("cinder-dropdown", customClassName)),
2115
- "data-cinder-placement": placement,
2116
- ...rest
2117
- })}>`);
2118
- if (usesLegacySnippetApi()) {
2119
- $$renderer2.push("<!--[0-->");
2120
- $$renderer2.push(`<div class="cinder-dropdown__trigger" role="presentation"${$31.attr_style(`anchor-name: --${menuId};`)}>`);
2121
- if (trigger) {
2122
- $$renderer2.push("<!--[0-->");
2123
- trigger($$renderer2);
2124
- $$renderer2.push(`<!---->`);
2125
- } else {
2126
- $$renderer2.push("<!--[-1-->");
2127
- }
2128
- $$renderer2.push(`<!--]--></div> `);
2129
- if (supportsPopover) {
2130
- $$renderer2.push("<!--[0-->");
2131
- $$renderer2.push(`<div${$31.attr("id", menuId)} class="cinder-dropdown__menu" popover="auto" role="menu"${$31.attr("data-cinder-placement", placement)}${$31.attr_style(`position-anchor: --${menuId};`)}>`);
2132
- if (children) {
2133
- $$renderer2.push("<!--[0-->");
2134
- children($$renderer2);
2135
- $$renderer2.push(`<!---->`);
2136
- } else {
2137
- $$renderer2.push("<!--[-1-->");
2138
- }
2139
- $$renderer2.push(`<!--]--></div>`);
2140
- } else if (open) {
2141
- $$renderer2.push("<!--[1-->");
2142
- $$renderer2.push(`<div${$31.attr("id", menuId)} class="cinder-dropdown__menu" role="menu"${$31.attr("data-cinder-placement", placement)}>`);
2143
- if (children) {
2144
- $$renderer2.push("<!--[0-->");
2145
- children($$renderer2);
2146
- $$renderer2.push(`<!---->`);
2147
- } else {
2148
- $$renderer2.push("<!--[-1-->");
2149
- }
2150
- $$renderer2.push(`<!--]--></div>`);
2151
- } else {
2152
- $$renderer2.push("<!--[-1-->");
2153
- }
2154
- $$renderer2.push(`<!--]-->`);
2155
- } else if (children) {
2156
- $$renderer2.push("<!--[1-->");
2157
- children($$renderer2);
2158
- $$renderer2.push(`<!---->`);
2159
- } else {
2160
- $$renderer2.push("<!--[-1-->");
2161
- }
2162
- $$renderer2.push(`<!--]--></div>`);
2163
- $31.bind_props($$props, { open });
2164
- });
2165
- }
2166
-
2167
- // src/components/dropdown-trigger/dropdown-trigger.svelte
2168
- import * as $32 from "svelte/internal/server";
2169
- function Dropdown_trigger($$renderer, $$props) {
2170
- $$renderer.component(($$renderer2) => {
2171
- let {
2172
- class: customClassName,
2173
- showCaret = true,
2174
- children,
2175
- onclick,
2176
- $$slots,
2177
- $$events,
2178
- ...rest
2179
- } = $$props;
2180
- const context = getDropdownContext();
2181
- const registerTrigger = getDropdownRegisterTrigger();
2182
- const setOpen = getDropdownSetOpen();
2183
- function attachTrigger(node) {
2184
- registerTrigger(node);
2185
- return () => registerTrigger(null);
2186
- }
2187
- function handleClick(event) {
2188
- if (typeof onclick === "function") {
2189
- onclick(event);
2190
- }
2191
- if (!event.defaultPrevented && !context.supportsPopover) {
2192
- setOpen(!context.isOpen);
2193
- }
2194
- }
2195
- $$renderer2.push(`<button${$32.attributes({
2196
- type: "button",
2197
- class: $32.clsx(classNames("cinder-dropdown-trigger", customClassName)),
2198
- style: `anchor-name: --${context.menuId};`,
2199
- "aria-haspopup": "menu",
2200
- "aria-expanded": context.isOpen,
2201
- "aria-controls": context.menuId,
2202
- popovertarget: context.supportsPopover ? context.menuId : undefined,
2203
- ...rest
2204
- })}>`);
2205
- if (children) {
2206
- $$renderer2.push("<!--[0-->");
2207
- children($$renderer2);
2208
- $$renderer2.push(`<!---->`);
2209
- } else {
2210
- $$renderer2.push("<!--[-1-->");
2211
- }
2212
- $$renderer2.push(`<!--]--> `);
2213
- if (showCaret) {
2214
- $$renderer2.push("<!--[0-->");
2215
- $$renderer2.push(`<svg class="cinder-dropdown-trigger__caret" aria-hidden="true" focusable="false" viewBox="0 0 20 20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 8l4 4 4-4"></path></svg>`);
2216
- } else {
2217
- $$renderer2.push("<!--[-1-->");
2218
- }
2219
- $$renderer2.push(`<!--]--></button>`);
2220
- });
2221
- }
2222
-
2223
- // src/components/dropdown-menu/dropdown-menu.svelte
2224
- import * as $33 from "svelte/internal/server";
2225
- import { tick } from "svelte";
2226
-
2227
- // src/_internal/locale-context.ts
2228
- import { createContext as createContext3 } from "svelte";
2229
-
2230
- // src/_internal/optional-context.ts
2231
- function optionalContext(getStrict) {
2232
- return () => {
2233
- try {
2234
- return getStrict();
2235
- } catch {
2236
- return;
2237
- }
2238
- };
2239
- }
2240
-
2241
- // src/_internal/locale-context.ts
2242
- var [getLocaleContextStrict, setLocaleContextRaw] = createContext3();
2243
- function setLocaleContext(context) {
2244
- setLocaleContextRaw(context);
2245
- }
2246
- var getLocaleContext = optionalContext(getLocaleContextStrict);
2247
-
2248
- // src/_internal/text-direction.ts
2249
- function resolveTextDirection(element2, fallback2) {
2250
- let currentElement = element2 ?? null;
2251
- let documentDirection;
2252
- let styledDirectionElement = null;
2253
- while (currentElement) {
2254
- const direction = currentElement.getAttribute("dir")?.toLowerCase();
2255
- if (direction === "rtl" || direction === "ltr") {
2256
- if (typeof getComputedStyle === "function" && styledDirectionElement) {
2257
- const styledDirection2 = getComputedStyle(styledDirectionElement).direction;
2258
- if (styledDirection2 === "rtl" || styledDirection2 === "ltr")
2259
- return styledDirection2;
2260
- }
2261
- if (currentElement === currentElement.ownerDocument.documentElement) {
2262
- documentDirection = direction;
2263
- break;
2264
- }
2265
- return direction;
2266
- }
2267
- if (direction === "auto" && typeof getComputedStyle === "function") {
2268
- const computedDirection2 = getComputedStyle(currentElement).direction;
2269
- if (computedDirection2 === "rtl" || computedDirection2 === "ltr")
2270
- return computedDirection2;
2271
- }
2272
- const styledDirection = currentElement.style.direction;
2273
- if (!styledDirectionElement && (styledDirection === "rtl" || styledDirection === "ltr")) {
2274
- styledDirectionElement = currentElement;
2275
- }
2276
- currentElement = currentElement.parentElement;
2277
- }
2278
- if (typeof getComputedStyle === "function" && styledDirectionElement) {
2279
- const direction = getComputedStyle(styledDirectionElement).direction;
2280
- if (direction === "rtl" || direction === "ltr")
2281
- return direction;
2282
- }
2283
- const computedDirection = readComputedTextDirection(element2);
2284
- const rootComputedDirection = readComputedTextDirection(element2?.ownerDocument.documentElement);
2285
- if (computedDirection && computedDirection !== rootComputedDirection)
2286
- return computedDirection;
2287
- if (computedDirection && fallback2 && computedDirection !== fallback2 && hasDirectionStylingHint(element2)) {
2288
- return computedDirection;
2289
- }
2290
- if (!fallback2 && computedDirection === "rtl")
2291
- return computedDirection;
2292
- if (fallback2)
2293
- return fallback2;
2294
- if (documentDirection)
2295
- return documentDirection;
2296
- return;
2297
- }
2298
- function readComputedTextDirection(element2) {
2299
- if (!element2 || typeof getComputedStyle !== "function")
2300
- return;
2301
- const direction = getComputedStyle(element2).direction;
2302
- return direction === "rtl" || direction === "ltr" ? direction : undefined;
2303
- }
2304
- function hasDirectionStylingHint(element2) {
2305
- let currentElement = element2?.parentElement;
2306
- while (currentElement && currentElement !== currentElement.ownerDocument.documentElement) {
2307
- if (currentElement.style.direction)
2308
- return true;
2309
- if (matchesDirectionStyleRule(currentElement))
2310
- return true;
2311
- currentElement = currentElement.parentElement;
2312
- }
2313
- return false;
2314
- }
2315
- function matchesDirectionStyleRule(element2) {
2316
- for (const sheet of Array.from(element2.ownerDocument.styleSheets)) {
2317
- let rules;
2318
- try {
2319
- rules = sheet.cssRules;
2320
- } catch {
2321
- continue;
2322
- }
2323
- if (matchesDirectionStyleRuleList(element2, rules))
2324
- return true;
2325
- }
2326
- return false;
2327
- }
2328
- function matchesDirectionStyleRuleList(element2, rules) {
2329
- for (const rule of Array.from(rules)) {
2330
- if (isCssStyleRule(rule)) {
2331
- if (!rule.style.direction) {
2332
- const nestedRules2 = readNestedCssRules(rule);
2333
- if (nestedRules2 && matchesDirectionStyleRuleList(element2, nestedRules2))
2334
- return true;
2335
- continue;
2336
- }
2337
- try {
2338
- if (element2.matches(rule.selectorText))
2339
- return true;
2340
- } catch {
2341
- continue;
2342
- }
2343
- }
2344
- const nestedRules = readNestedCssRules(rule);
2345
- if (nestedRules && isConditionalRuleActive(rule) && matchesDirectionStyleRuleList(element2, nestedRules)) {
2346
- return true;
2347
- }
2348
- }
2349
- return false;
2350
- }
2351
- function readNestedCssRules(rule) {
2352
- if (!("cssRules" in rule))
2353
- return;
2354
- try {
2355
- const nestedRules = Reflect.get(rule, "cssRules");
2356
- return isCssRuleCollection(nestedRules) ? nestedRules : undefined;
2357
- } catch {
2358
- return;
2359
- }
2360
- }
2361
- function isCssRuleCollection(value) {
2362
- if (typeof CSSRuleList !== "undefined" && value instanceof CSSRuleList)
2363
- return true;
2364
- return Array.isArray(value) && value.every(isCssRule);
2365
- }
2366
- function isCssRule(value) {
2367
- return typeof value === "object" && value !== null && typeof Reflect.get(value, "cssText") === "string" && typeof Reflect.get(value, "type") === "number";
2368
- }
2369
- function isCssStyleRule(rule) {
2370
- return typeof Reflect.get(rule, "selectorText") === "string" && typeof Reflect.get(rule, "style") === "object" && Reflect.get(rule, "style") !== null;
2371
- }
2372
- function isConditionalRuleActive(rule) {
2373
- const conditionText = Reflect.get(rule, "conditionText");
2374
- if (typeof conditionText !== "string" || !conditionText.trim())
2375
- return true;
2376
- if (isMediaRule(rule) && typeof matchMedia === "function") {
2377
- return matchMedia(conditionText).matches;
2378
- }
2379
- if (isSupportsRule(rule) && typeof CSS !== "undefined" && typeof CSS.supports === "function") {
2380
- return CSS.supports(conditionText);
2381
- }
2382
- return true;
2383
- }
2384
- function isMediaRule(rule) {
2385
- return typeof Reflect.get(rule, "media") === "object" && Reflect.get(rule, "media") !== null;
2386
- }
2387
- function isSupportsRule(rule) {
2388
- return rule.constructor.name === "CSSSupportsRule" || Reflect.get(rule, "type") === 12;
2389
- }
2390
-
2391
- // src/components/dropdown-menu/dropdown-menu.svelte
2392
- function Dropdown_menu($$renderer, $$props) {
2393
- $$renderer.component(($$renderer2) => {
2394
- let {
2395
- class: customClassName,
2396
- children,
2397
- dir: direction,
2398
- $$slots,
2399
- $$events,
2400
- ...rest
2401
- } = $$props;
2402
- const context = getDropdownContext();
2403
- const registerMenu = getDropdownRegister();
2404
- const setOpen = getDropdownSetOpen();
2405
- const localeContext = getLocaleContext();
2406
- let directionRevision = 0;
2407
- const resolvedDirection = $33.derived(() => {
2408
- if (direction === "auto") {
2409
- return resolveTextDirection(context.anchorElement, localeContext?.direction) ?? direction;
2410
- }
2411
- return direction ?? resolveTextDirection(context.anchorElement, localeContext?.direction);
2412
- });
2413
- const fallbackAnchorElement = $33.derived(() => context.fallbackAnchorElement === undefined ? context.anchorElement : context.fallbackAnchorElement);
2414
- let menuElement = null;
2415
- let focusedFallbackOpen = false;
2416
- const anchoredFallback = createAnchoredOverlay({
2417
- open: () => context.isOpen && !context.supportsPopover && Boolean(fallbackAnchorElement()),
2418
- anchor: () => fallbackAnchorElement(),
2419
- panel: () => menuElement,
2420
- placement: () => context.fallbackPlacement ?? "bottom-end",
2421
- offset: () => 4,
2422
- widthMode: () => context.widthMode ?? "menu"
2423
- });
2424
- const fallbackPositionStyle = $33.derived(() => context.fallbackPositionStyle ?? (fallbackAnchorElement() ? anchoredFallback.positionStyle : undefined));
2425
- const fallbackPositionReady = $33.derived(() => context.fallbackPositionReady ?? (fallbackAnchorElement() ? anchoredFallback.positionReady : undefined));
2426
- const fallbackPortalAttachment = createPortalAttachment({
2427
- target: () => typeof document === "undefined" ? null : document.body,
2428
- source: () => context.anchorElement,
2429
- inheritAttributes: true,
2430
- disabled: () => context.supportsPopover
2431
- });
2432
- function getOwnedMenuItems() {
2433
- if (!menuElement)
2434
- return [];
2435
- return Array.from(menuElement.querySelectorAll('[role="menuitem"]:not([data-disabled]), [role="menuitemradio"]:not([data-disabled])')).filter((item) => item.closest('[role="menu"]') === menuElement);
2436
- }
2437
- function focusMenuItem(index) {
2438
- const items = getOwnedMenuItems();
2439
- if (!items.length) {
2440
- menuElement?.focus();
2441
- return;
2442
- }
2443
- const resolvedIndex = index < 0 ? items.length - 1 : index;
2444
- const item = items.at(resolvedIndex);
2445
- item?.focus();
2446
- }
2447
- function handleKeydown(event) {
2448
- const target = event.target instanceof HTMLElement ? event.target : null;
2449
- if (target?.closest('[role="menu"]') !== menuElement)
2450
- return;
2451
- if (event.key === "Escape") {
2452
- event.preventDefault();
2453
- event.stopPropagation();
2454
- setOpen(false);
2455
- context.focusTrigger();
2456
- return;
2457
- }
2458
- const itemsArray = getOwnedMenuItems();
2459
- if (!itemsArray.length)
2460
- return;
2461
- const currentIndex = itemsArray.findIndex((item) => item === document.activeElement);
2462
- if (event.key === "ArrowDown") {
2463
- event.preventDefault();
2464
- event.stopPropagation();
2465
- focusMenuItem(currentIndex < itemsArray.length - 1 ? currentIndex + 1 : 0);
2466
- } else if (event.key === "ArrowUp") {
2467
- event.preventDefault();
2468
- event.stopPropagation();
2469
- focusMenuItem(currentIndex > 0 ? currentIndex - 1 : itemsArray.length - 1);
2470
- } else if (event.key === "Home") {
2471
- event.preventDefault();
2472
- event.stopPropagation();
2473
- focusMenuItem(0);
2474
- } else if (event.key === "End") {
2475
- event.preventDefault();
2476
- event.stopPropagation();
2477
- focusMenuItem(itemsArray.length - 1);
2478
- }
2479
- }
2480
- function handleToggle(event) {
2481
- const isOpenNow = event.newState === "open";
2482
- setOpen(isOpenNow);
2483
- if (isOpenNow) {
2484
- if (context.initialFocus === "none")
2485
- return;
2486
- tick().then(() => focusMenuItem(context.initialFocus === "last" ? -1 : 0));
2487
- }
2488
- }
2489
- if (context.supportsPopover || context.isOpen) {
2490
- $$renderer2.push("<!--[0-->");
2491
- $$renderer2.push(`<div${$33.attributes({
2492
- id: context.menuId,
2493
- popover: context.supportsPopover ? "auto" : undefined,
2494
- class: $33.clsx(classNames("cinder-_floating-surface", "cinder-dropdown-menu", customClassName)),
2495
- style: context.supportsPopover ? `position-anchor: --${context.menuId};` : fallbackPositionStyle(),
2496
- role: "menu",
2497
- "aria-orientation": "vertical",
2498
- "data-cinder-position-ready": !context.supportsPopover && fallbackPositionReady() !== undefined ? fallbackPositionReady() : undefined,
2499
- tabindex: -1,
2500
- ...rest,
2501
- dir: resolvedDirection(),
2502
- "data-cinder-explicit-direction": resolvedDirection() ? "true" : undefined
2503
- })}>`);
2504
- if (children) {
2505
- $$renderer2.push("<!--[0-->");
2506
- children($$renderer2);
2507
- $$renderer2.push(`<!---->`);
2508
- } else {
2509
- $$renderer2.push("<!--[-1-->");
2510
- }
2511
- $$renderer2.push(`<!--]--></div>`);
2512
- } else {
2513
- $$renderer2.push("<!--[-1-->");
2514
- }
2515
- $$renderer2.push(`<!--]-->`);
2516
- });
2517
- }
2518
-
2519
- // src/components/dropdown-item/dropdown-item.svelte
2520
- import * as $34 from "svelte/internal/server";
2521
- function Dropdown_item($$renderer, $$props) {
2522
- $$renderer.component(($$renderer2) => {
2523
- let {
2524
- variant = "default",
2525
- itemRole = "menuitem",
2526
- checked = false,
2527
- inset = false,
2528
- disabled,
2529
- closeOnSelect = true,
2530
- class: customClassName,
2531
- onclick,
2532
- onkeydown,
2533
- href,
2534
- children,
2535
- $$slots,
2536
- $$events,
2537
- ...rest
2538
- } = $$props;
2539
- const context = getDropdownContext();
2540
- const isLink = $34.derived(() => href !== undefined);
2541
- const sharedClass = $34.derived(() => classNames("cinder-_option-row", "cinder-dropdown-item", inset && "cinder-dropdown-item--inset", customClassName));
2542
- function handleClick(event) {
2543
- if (disabled) {
2544
- event.preventDefault();
2545
- return;
2546
- }
2547
- if (typeof onclick === "function") {
2548
- if (isLink()) {
2549
- onclick(event);
2550
- } else {
2551
- onclick(event);
2552
- }
2553
- }
2554
- if (closeOnSelect) {
2555
- context.close();
2556
- }
2557
- }
2558
- function handleAnchorKeydown(event) {
2559
- if (typeof onkeydown === "function") {
2560
- onkeydown(event);
2561
- }
2562
- if (event.defaultPrevented)
2563
- return;
2564
- if (event.key !== " " && event.key !== "Spacebar")
2565
- return;
2566
- event.preventDefault();
2567
- if (disabled)
2568
- return;
2569
- event.currentTarget.click();
2570
- }
2571
- const anchorAttributes = $34.derived(() => rest);
2572
- const buttonAttributes = $34.derived(() => rest);
2573
- const buttonType = $34.derived(() => rest.type ?? "button");
2574
- const ariaChecked = $34.derived(() => itemRole === "menuitemradio" ? checked : undefined);
2575
- if (isLink()) {
2576
- $$renderer2.push("<!--[0-->");
2577
- $$renderer2.push(`<a${$34.attributes({
2578
- ...anchorAttributes(),
2579
- href,
2580
- role: itemRole,
2581
- "aria-checked": ariaChecked(),
2582
- class: $34.clsx(sharedClass()),
2583
- "data-cinder-variant": variant,
2584
- tabindex: -1,
2585
- "data-disabled": disabled ? "" : undefined,
2586
- "aria-disabled": disabled ? "true" : undefined
2587
- })}>`);
2588
- if (children) {
2589
- $$renderer2.push("<!--[0-->");
2590
- children($$renderer2);
2591
- $$renderer2.push(`<!---->`);
2592
- } else {
2593
- $$renderer2.push("<!--[-1-->");
2594
- }
2595
- $$renderer2.push(`<!--]--></a>`);
2596
- } else {
2597
- $$renderer2.push("<!--[-1-->");
2598
- $$renderer2.push(`<button${$34.attributes({
2599
- ...buttonAttributes(),
2600
- type: buttonType(),
2601
- role: itemRole,
2602
- "aria-checked": ariaChecked(),
2603
- class: $34.clsx(sharedClass()),
2604
- "data-cinder-variant": variant,
2605
- tabindex: -1,
2606
- "data-disabled": disabled ? "" : undefined,
2607
- "aria-disabled": disabled ? "true" : undefined
2608
- })}>`);
2609
- if (children) {
2610
- $$renderer2.push("<!--[0-->");
2611
- children($$renderer2);
2612
- $$renderer2.push(`<!---->`);
2613
- } else {
2614
- $$renderer2.push("<!--[-1-->");
2615
- }
2616
- $$renderer2.push(`<!--]--></button>`);
2617
- }
2618
- $$renderer2.push(`<!--]-->`);
2619
- });
2620
- }
2621
-
2622
- // src/components/markdown-editor/editor-toolbar/toolbar-dropdown.svelte
2623
- function Toolbar_dropdown($$renderer, $$props) {
2624
- $$renderer.component(($$renderer2) => {
2625
- let {
2626
- id,
2627
- value,
2628
- options,
2629
- disabled = false,
2630
- onchange,
2631
- class: className
2632
- } = $$props;
2633
- const currentOption = $35.derived(() => options.find((opt) => opt.type === value) ?? options[0]);
2634
- function handleSelect(type) {
2635
- onchange?.(type);
2636
- }
2637
- Dropdown($$renderer2, {
2638
- id,
2639
- children: ($$renderer3) => {
2640
- Dropdown_trigger($$renderer3, {
2641
- class: classNames("toolbar-dropdown-trigger", className),
2642
- disabled,
2643
- "aria-label": `Block type: ${currentOption()?.label ?? "Paragraph"}`,
2644
- children: ($$renderer4) => {
2645
- if (currentOption()) {
2646
- $$renderer4.push("<!--[0-->");
2647
- if (currentOption.icon) {
2648
- $$renderer4.push("<!--[-->");
2649
- currentOption.icon($$renderer4, { class: "icon-sm" });
2650
- $$renderer4.push("<!--]-->");
2651
- } else {
2652
- $$renderer4.push("<!--[!-->");
2653
- $$renderer4.push("<!--]-->");
2654
- }
2655
- } else {
2656
- $$renderer4.push("<!--[-1-->");
2657
- }
2658
- $$renderer4.push(`<!--]--> <span class="toolbar-dropdown-label svelte-1v28aut">${$35.escape(currentOption()?.label ?? "Paragraph")}</span>`);
2659
- },
2660
- $$slots: { default: true }
2661
- });
2662
- $$renderer3.push(`<!----> `);
2663
- Dropdown_menu($$renderer3, {
2664
- children: ($$renderer4) => {
2665
- $$renderer4.push(`<!--[-->`);
2666
- const each_array = $35.ensure_array_like(options);
2667
- for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
2668
- let option = each_array[$$index];
2669
- const isActive = option.type === value;
2670
- Dropdown_item($$renderer4, {
2671
- onclick: () => handleSelect(option.type),
2672
- "data-active": isActive ? "" : undefined,
2673
- itemRole: "menuitemradio",
2674
- checked: isActive,
2675
- children: ($$renderer5) => {
2676
- if (option.icon) {
2677
- $$renderer5.push("<!--[-->");
2678
- option.icon($$renderer5, { class: "icon-sm" });
2679
- $$renderer5.push("<!--]-->");
2680
- } else {
2681
- $$renderer5.push("<!--[!-->");
2682
- $$renderer5.push("<!--]-->");
2683
- }
2684
- $$renderer5.push(` <span class="dropdown-item-label svelte-1v28aut">${$35.escape(option.label)}</span> `);
2685
- if (isActive) {
2686
- $$renderer5.push("<!--[0-->");
2687
- Check($$renderer5, { class: "icon-sm dropdown-item-check" });
2688
- } else {
2689
- $$renderer5.push("<!--[-1-->");
2690
- }
2691
- $$renderer5.push(`<!--]-->`);
2692
- },
2693
- $$slots: { default: true }
2694
- });
2695
- }
2696
- $$renderer4.push(`<!--]-->`);
2697
- },
2698
- $$slots: { default: true }
2699
- });
2700
- $$renderer3.push(`<!---->`);
2701
- },
2702
- $$slots: { default: true }
2703
- });
2704
- });
2705
- }
2706
-
2707
- // src/components/markdown-editor/editor-toolbar/editor-toolbar.svelte
2708
- function Editor_toolbar($$renderer, $$props) {
2709
- $$renderer.component(($$renderer2) => {
2710
- let {
2711
- id,
2712
- editorId,
2713
- editorContext,
2714
- activeMarks,
2715
- activeBlockType,
2716
- canUndo = false,
2717
- canRedo = false,
2718
- disabled = false,
2719
- linkPopoverOpen = false,
2720
- onLinkClick,
2721
- onUndo,
2722
- onRedo,
2723
- actions,
2724
- class: className,
2725
- "aria-label": _ariaLabel,
2726
- $$slots,
2727
- $$events,
2728
- ...rest
2729
- } = $$props;
2730
- const blockTypeOptions = [
2731
- { type: "paragraph", label: "Paragraph", icon: Pilcrow },
2732
- { type: "heading1", label: "Heading 1", icon: Heading_1 },
2733
- { type: "heading2", label: "Heading 2", icon: Heading_2 },
2734
- { type: "heading3", label: "Heading 3", icon: Heading_3 },
2735
- { type: "blockquote", label: "Quote", icon: Quote }
2736
- ];
2737
- const currentBlockType = $36.derived(() => {
2738
- if (activeBlockType.type === "heading") {
2739
- switch (activeBlockType.headingLevel) {
2740
- case 1:
2741
- return "heading1";
2742
- case 2:
2743
- return "heading2";
2744
- case 3:
2745
- return "heading3";
2746
- default:
2747
- return "paragraph";
2748
- }
2749
- }
2750
- if (activeBlockType.type === "blockquote")
2751
- return "blockquote";
2752
- return "paragraph";
2753
- });
2754
- function handleBold() {
2755
- if (editorContext)
2756
- toggleBold(editorContext);
2757
- }
2758
- function handleItalic() {
2759
- if (editorContext)
2760
- toggleItalic(editorContext);
2761
- }
2762
- function handleCode() {
2763
- if (editorContext)
2764
- toggleCode(editorContext);
2765
- }
2766
- function handleStrikethrough() {
2767
- if (editorContext)
2768
- toggleStrikethrough(editorContext);
2769
- }
2770
- function handleLink(event) {
2771
- const triggerElement = event.currentTarget;
2772
- if (triggerElement instanceof HTMLElement) {
2773
- onLinkClick?.(triggerElement);
2774
- }
2775
- }
2776
- function handleBulletList() {
2777
- if (editorContext)
2778
- toggleBulletList(editorContext);
2779
- }
2780
- function handleOrderedList() {
2781
- if (editorContext)
2782
- toggleOrderedList(editorContext);
2783
- }
2784
- function handleBlockquote() {
2785
- if (editorContext)
2786
- toggleBlockquote(editorContext);
2787
- }
2788
- function handleBlockTypeChange(type) {
2789
- if (!editorContext)
2790
- return;
2791
- switch (type) {
2792
- case "paragraph":
2793
- setParagraph(editorContext);
2794
- break;
2795
- case "heading1":
2796
- setHeading(editorContext, 1);
2797
- break;
2798
- case "heading2":
2799
- setHeading(editorContext, 2);
2800
- break;
2801
- case "heading3":
2802
- setHeading(editorContext, 3);
2803
- break;
2804
- case "blockquote":
2805
- toggleBlockquote(editorContext);
2806
- break;
2807
- }
2808
- }
2809
- Toolbar($$renderer2, $36.spread_props([
2810
- {
2811
- id,
2812
- "aria-label": "Formatting toolbar",
2813
- "aria-controls": editorId,
2814
- "aria-disabled": disabled || undefined,
2815
- class: classNames("editor-toolbar", className)
2816
- },
2817
- rest,
2818
- {
2819
- children: ($$renderer3) => {
2820
- $$renderer3.push(`<div class="toolbar-group svelte-1m9m099" role="group" aria-label="History">`);
2821
- Toolbar_button($$renderer3, {
2822
- icon: Undo_2,
2823
- label: "Undo",
2824
- shortcut: getShortcutDisplay("Mod-z"),
2825
- disabled: disabled || !canUndo,
2826
- onclick: () => onUndo?.(),
2827
- "data-testid": "toolbar-undo"
2828
- });
2829
- $$renderer3.push(`<!----> `);
2830
- Toolbar_button($$renderer3, {
2831
- icon: Redo_2,
2832
- label: "Redo",
2833
- shortcut: getShortcutDisplay("Mod-Shift-z"),
2834
- disabled: disabled || !canRedo,
2835
- onclick: () => onRedo?.(),
2836
- "data-testid": "toolbar-redo"
2837
- });
2838
- $$renderer3.push(`<!----></div> `);
2839
- Toolbar_separator($$renderer3, {});
2840
- $$renderer3.push(`<!----> <div class="toolbar-group svelte-1m9m099" role="group" aria-label="Block type">`);
2841
- Toolbar_dropdown($$renderer3, {
2842
- id: `${id}-block-type`,
2843
- value: currentBlockType(),
2844
- options: blockTypeOptions,
2845
- disabled,
2846
- onchange: handleBlockTypeChange
2847
- });
2848
- $$renderer3.push(`<!----></div> `);
2849
- Toolbar_separator($$renderer3, {});
2850
- $$renderer3.push(`<!----> <div class="toolbar-group svelte-1m9m099" role="group" aria-label="Text formatting">`);
2851
- Toolbar_button($$renderer3, {
2852
- icon: Bold,
2853
- label: "Bold",
2854
- shortcut: getShortcutDisplay("Mod-b"),
2855
- toggle: true,
2856
- pressed: activeMarks.bold,
2857
- disabled,
2858
- onclick: handleBold,
2859
- "data-testid": "toolbar-bold"
2860
- });
2861
- $$renderer3.push(`<!----> `);
2862
- Toolbar_button($$renderer3, {
2863
- icon: Italic,
2864
- label: "Italic",
2865
- shortcut: getShortcutDisplay("Mod-i"),
2866
- toggle: true,
2867
- pressed: activeMarks.italic,
2868
- disabled,
2869
- onclick: handleItalic,
2870
- "data-testid": "toolbar-italic"
2871
- });
2872
- $$renderer3.push(`<!----> `);
2873
- Toolbar_button($$renderer3, {
2874
- icon: Code,
2875
- label: "Inline Code",
2876
- shortcut: getShortcutDisplay("Mod-e"),
2877
- toggle: true,
2878
- pressed: activeMarks.code,
2879
- disabled,
2880
- onclick: handleCode,
2881
- "data-testid": "toolbar-code"
2882
- });
2883
- $$renderer3.push(`<!----> `);
2884
- Toolbar_button($$renderer3, {
2885
- icon: Strikethrough,
2886
- label: "Strikethrough",
2887
- shortcut: getShortcutDisplay("Mod-Shift-s"),
2888
- toggle: true,
2889
- pressed: activeMarks.strikethrough,
2890
- disabled,
2891
- onclick: handleStrikethrough,
2892
- "data-testid": "toolbar-strikethrough"
2893
- });
2894
- $$renderer3.push(`<!----></div> `);
2895
- Toolbar_separator($$renderer3, {});
2896
- $$renderer3.push(`<!----> <div class="toolbar-group svelte-1m9m099" role="group" aria-label="Links">`);
2897
- Toolbar_button($$renderer3, {
2898
- icon: Link,
2899
- label: "Insert Link",
2900
- shortcut: getShortcutDisplay("Mod-k"),
2901
- "aria-haspopup": "dialog",
2902
- "aria-expanded": linkPopoverOpen,
2903
- disabled,
2904
- onclick: handleLink,
2905
- "data-testid": "toolbar-link"
2906
- });
2907
- $$renderer3.push(`<!----></div> `);
2908
- Toolbar_separator($$renderer3, {});
2909
- $$renderer3.push(`<!----> <div class="toolbar-group svelte-1m9m099" role="group" aria-label="Lists">`);
2910
- Toolbar_button($$renderer3, {
2911
- icon: List,
2912
- label: "Bullet List",
2913
- shortcut: getShortcutDisplay("Mod-Shift-8"),
2914
- toggle: true,
2915
- pressed: activeBlockType.type === "listItem" && activeBlockType.listType === "bullet",
2916
- disabled,
2917
- onclick: handleBulletList,
2918
- "data-testid": "toolbar-bullet-list"
2919
- });
2920
- $$renderer3.push(`<!----> `);
2921
- Toolbar_button($$renderer3, {
2922
- icon: List_ordered,
2923
- label: "Ordered List",
2924
- shortcut: getShortcutDisplay("Mod-Shift-7"),
2925
- toggle: true,
2926
- pressed: activeBlockType.type === "listItem" && activeBlockType.listType === "ordered",
2927
- disabled,
2928
- onclick: handleOrderedList,
2929
- "data-testid": "toolbar-ordered-list"
2930
- });
2931
- $$renderer3.push(`<!----></div> `);
2932
- Toolbar_separator($$renderer3, {});
2933
- $$renderer3.push(`<!----> <div class="toolbar-group svelte-1m9m099" role="group" aria-label="Block operations">`);
2934
- Toolbar_button($$renderer3, {
2935
- icon: Quote,
2936
- label: "Blockquote",
2937
- shortcut: getShortcutDisplay("Mod-Shift-9"),
2938
- toggle: true,
2939
- pressed: activeBlockType.type === "blockquote",
2940
- disabled,
2941
- onclick: handleBlockquote,
2942
- "data-testid": "toolbar-blockquote"
2943
- });
2944
- $$renderer3.push(`<!----></div> `);
2945
- if (actions) {
2946
- $$renderer3.push("<!--[0-->");
2947
- $$renderer3.push(`<div class="toolbar-spacer svelte-1m9m099"></div> `);
2948
- actions($$renderer3);
2949
- $$renderer3.push(`<!---->`);
2950
- } else {
2951
- $$renderer3.push("<!--[-1-->");
2952
- }
2953
- $$renderer3.push(`<!--]-->`);
2954
- },
2955
- $$slots: { default: true }
2956
- }
2957
- ]));
2958
- });
2959
- }
2960
- // src/components/markdown-editor/editor-toolbar/link-popover.svelte
2961
- import * as $41 from "svelte/internal/server";
2962
- import { tick as tick2 } from "svelte";
2963
-
2964
- // src/components/button/button.svelte
2965
- import * as $37 from "svelte/internal/server";
2966
- function Button($$renderer, $$props) {
2967
- $$renderer.component(($$renderer2) => {
2968
- const {
2969
- variant = "secondary",
2970
- size = "md",
2971
- fullWidth = false,
2972
- loading = false,
2973
- iconOnly = false,
2974
- leadingIcon,
2975
- trailingIcon,
2976
- children,
2977
- label,
2978
- class: customClassName,
2979
- href,
2980
- onclick: consumerOnClick,
2981
- "aria-disabled": consumerAriaDisabled,
2982
- "aria-busy": consumerAriaBusy,
2983
- "aria-label": ariaLabel,
2984
- "aria-labelledby": ariaLabelledBy,
2985
- "aria-expanded": ariaExpanded,
2986
- "aria-controls": ariaControls,
2987
- "aria-haspopup": ariaHaspopup,
2988
- $$slots,
2989
- $$events,
2990
- ...rest
2991
- } = $$props;
2992
- const mergedClassName = $37.derived(() => classNames("cinder-button", customClassName));
2993
- const dataAttributes = $37.derived(() => ({
2994
- "data-cinder-variant": variant,
2995
- "data-cinder-size": size,
2996
- "data-cinder-full-width": fullWidth ? "" : undefined,
2997
- "data-cinder-loading": loading ? "" : undefined,
2998
- "data-cinder-icon-only": iconOnly ? "" : undefined
2999
- }));
3000
- const resolvedAriaDisabled = $37.derived(() => loading ? "true" : consumerAriaDisabled);
3001
- const resolvedAriaBusy = $37.derived(() => loading ? "true" : consumerAriaBusy);
3002
- const resolvedAriaLabel = $37.derived(() => typeof ariaLabel === "string" && ariaLabel.trim().length > 0 ? ariaLabel : undefined);
3003
- const resolvedAriaLabelledBy = $37.derived(() => typeof ariaLabelledBy === "string" && ariaLabelledBy.trim().length > 0 ? ariaLabelledBy : undefined);
3004
- const anchorAttributes = rest;
3005
- const buttonAttributes = rest;
3006
- const anchorTabIndex = $37.derived(() => rest.tabindex);
3007
- const buttonType = $37.derived(() => rest.type);
3008
- const buttonDisabled = $37.derived(() => rest.disabled ?? false);
3009
- function handleClick(event) {
3010
- if (loading) {
3011
- event.preventDefault();
3012
- return;
3013
- }
3014
- if (typeof consumerOnClick === "function") {
3015
- consumerOnClick(event);
3016
- }
3017
- }
3018
- function buttonContent($$renderer3) {
3019
- if (leadingIcon) {
3020
- $$renderer3.push("<!--[0-->");
3021
- $$renderer3.push(`<span class="cinder-button__icon" aria-hidden="true">`);
3022
- leadingIcon($$renderer3);
3023
- $$renderer3.push(`<!----></span>`);
3024
- } else {
3025
- $$renderer3.push("<!--[-1-->");
3026
- }
3027
- $$renderer3.push(`<!--]--> `);
3028
- if (iconOnly) {
3029
- $$renderer3.push("<!--[0-->");
3030
- if (!resolvedAriaLabel() && !resolvedAriaLabelledBy() && label) {
3031
- $$renderer3.push("<!--[0-->");
3032
- $$renderer3.push(`<span class="cinder-sr-only">${$37.escape(label)}</span>`);
3033
- } else {
3034
- $$renderer3.push("<!--[-1-->");
3035
- }
3036
- $$renderer3.push(`<!--]--> `);
3037
- if (children) {
3038
- $$renderer3.push("<!--[0-->");
3039
- $$renderer3.push(`<span class="cinder-button__icon" aria-hidden="true">`);
3040
- children($$renderer3);
3041
- $$renderer3.push(`<!----></span>`);
3042
- } else {
3043
- $$renderer3.push("<!--[-1-->");
3044
- }
3045
- $$renderer3.push(`<!--]-->`);
3046
- } else if (children) {
3047
- $$renderer3.push("<!--[1-->");
3048
- children($$renderer3);
3049
- $$renderer3.push(`<!---->`);
3050
- } else {
3051
- $$renderer3.push("<!--[-1-->");
3052
- $$renderer3.push(`${$37.escape(label)}`);
3053
- }
3054
- $$renderer3.push(`<!--]--> `);
3055
- if (trailingIcon) {
3056
- $$renderer3.push("<!--[0-->");
3057
- $$renderer3.push(`<span class="cinder-button__icon" aria-hidden="true">`);
3058
- trailingIcon($$renderer3);
3059
- $$renderer3.push(`<!----></span>`);
3060
- } else {
3061
- $$renderer3.push("<!--[-1-->");
3062
- }
3063
- $$renderer3.push(`<!--]-->`);
3064
- }
3065
- if (href !== undefined) {
3066
- $$renderer2.push("<!--[0-->");
3067
- $$renderer2.push(`<a${$37.attributes({
3068
- ...anchorAttributes,
3069
- href: loading ? undefined : href,
3070
- tabindex: loading ? -1 : anchorTabIndex(),
3071
- class: $37.clsx(mergedClassName()),
3072
- ...dataAttributes(),
3073
- "aria-disabled": resolvedAriaDisabled(),
3074
- "aria-busy": resolvedAriaBusy(),
3075
- "aria-label": resolvedAriaLabel(),
3076
- "aria-labelledby": resolvedAriaLabelledBy(),
3077
- "aria-expanded": ariaExpanded,
3078
- "aria-controls": ariaControls,
3079
- "aria-haspopup": ariaHaspopup
3080
- })}>`);
3081
- buttonContent($$renderer2);
3082
- $$renderer2.push(`<!----></a>`);
3083
- } else {
3084
- $$renderer2.push("<!--[-1-->");
3085
- $$renderer2.push(`<button${$37.attributes({
3086
- ...buttonAttributes,
3087
- type: buttonType() ?? "button",
3088
- class: $37.clsx(mergedClassName()),
3089
- ...dataAttributes(),
3090
- disabled: buttonDisabled() || loading,
3091
- "aria-disabled": resolvedAriaDisabled(),
3092
- "aria-busy": resolvedAriaBusy(),
3093
- "aria-label": resolvedAriaLabel(),
3094
- "aria-labelledby": resolvedAriaLabelledBy(),
3095
- "aria-expanded": ariaExpanded,
3096
- "aria-controls": ariaControls,
3097
- "aria-haspopup": ariaHaspopup
3098
- })}>`);
3099
- buttonContent($$renderer2);
3100
- $$renderer2.push(`<!----></button>`);
3101
- }
3102
- $$renderer2.push(`<!--]-->`);
3103
- });
3104
- }
3105
-
3106
- // src/components/input/input.svelte
3107
- import * as $38 from "svelte/internal/server";
3108
-
3109
- // src/_internal/field-control.ts
3110
- function describeId(fieldId, hasDescription) {
3111
- return hasDescription ? `${fieldId}-description` : undefined;
3112
- }
3113
- function errorId(fieldId, hasError) {
3114
- return hasError ? `${fieldId}-error` : undefined;
3115
- }
3116
- function composeDescribedBy(...ids) {
3117
- const filtered = ids.flatMap((id) => typeof id === "string" ? id.trim().split(/\s+/).filter(Boolean) : []);
3118
- const unique = Array.from(new Set(filtered));
3119
- return unique.length > 0 ? unique.join(" ") : undefined;
3120
- }
3121
- function ariaInvalid(hasError) {
3122
- return hasError ? "true" : undefined;
3123
- }
3124
- function resolveFieldControl(input) {
3125
- const resolvedId = input.id ?? input.context?.controlId ?? input.generatedId;
3126
- const defaultDescriptionId = describeId(resolvedId, input.hasDescription ?? false);
3127
- const defaultErrorId = errorId(resolvedId, input.hasError ?? false);
3128
- const ownDescriptionId = defaultDescriptionId && defaultDescriptionId === input.context?.descriptionId && input.localIdNamespace ? `${resolvedId}-${input.localIdNamespace}-description` : defaultDescriptionId;
3129
- const ownErrorId = defaultErrorId && defaultErrorId === input.context?.errorId && input.localIdNamespace ? `${resolvedId}-${input.localIdNamespace}-error` : defaultErrorId;
3130
- const descriptionId = ownDescriptionId ?? input.context?.descriptionId;
3131
- const resolvedErrorId = ownErrorId ?? input.context?.errorId;
3132
- const explicitInvalid = ariaInvalid(input.hasError ?? false);
3133
- const consumerInvalid = input.consumerInvalid === true ? "true" : input.consumerInvalid === false ? undefined : input.consumerInvalid ?? undefined;
3134
- return {
3135
- id: resolvedId,
3136
- ownDescriptionId,
3137
- ownErrorId,
3138
- descriptionId,
3139
- errorId: resolvedErrorId,
3140
- describedBy: composeDescribedBy(descriptionId, ...input.additionalDescribedBy ?? [], resolvedErrorId, input.context?.describedBy, input.consumerDescribedBy),
3141
- ariaInvalid: explicitInvalid ?? input.context?.invalid ?? consumerInvalid,
3142
- required: input.required ?? input.context?.required ?? false,
3143
- disabled: input.disabled ?? input.context?.disabled ?? false
3144
- };
3145
- }
3146
-
3147
- // src/_internal/form-field-context.ts
3148
- import { createContext as createContext4 } from "svelte";
3149
- var [getFormFieldContextStrict, setFormFieldContextRaw] = createContext4();
3150
- function setFormFieldContext(context) {
3151
- setFormFieldContextRaw(context);
3152
- }
3153
- var getFormFieldContext = optionalContext(getFormFieldContextStrict);
3154
-
3155
- // src/utilities/value-change.ts
3156
- function commitValue(proposed, onValueChange, setValue) {
3157
- const committed = onValueChange?.(proposed) ?? proposed;
3158
- setValue(committed);
3159
- return committed;
3160
- }
3161
-
3162
- // src/components/input/input.svelte
3163
- function calendarIcon($$renderer) {
3164
- $$renderer.push(`<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>`);
3165
- }
3166
- function Input($$renderer, $$props) {
3167
- $$renderer.component(($$renderer2) => {
3168
- let {
3169
- id,
3170
- value = "",
3171
- onValueChange,
3172
- label,
3173
- description,
3174
- error,
3175
- disabled,
3176
- required,
3177
- type = "text",
3178
- class: className,
3179
- leading,
3180
- trailing,
3181
- leadingInteractive = false,
3182
- trailingInteractive = false,
3183
- "aria-describedby": consumerDescribedBy,
3184
- "aria-invalid": consumerInvalid,
3185
- oninput: consumerOninput,
3186
- $$slots,
3187
- $$events,
3188
- ...rest
3189
- } = $$props;
3190
- const context = getFormFieldContext();
3191
- const field = $38.derived(() => resolveFieldControl({
3192
- id,
3193
- generatedId: id,
3194
- context,
3195
- hasDescription: !!description,
3196
- hasError: !!error,
3197
- localIdNamespace: "input",
3198
- consumerDescribedBy,
3199
- consumerInvalid,
3200
- required,
3201
- disabled
3202
- }));
3203
- const ownDescriptionId = $38.derived(() => field().ownDescriptionId);
3204
- const ownErrorId = $38.derived(() => field().ownErrorId);
3205
- const describedBy = $38.derived(() => field().describedBy);
3206
- const resolvedAriaInvalid = $38.derived(() => field().ariaInvalid);
3207
- const resolvedRequired = $38.derived(() => field().required);
3208
- const resolvedDisabled = $38.derived(() => field().disabled);
3209
- const isNativeDateInput = $38.derived(() => type === "date");
3210
- const rendersNativeDateIcon = $38.derived(() => isNativeDateInput() && !trailing);
3211
- const hasTrailing = $38.derived(() => !!trailing || isNativeDateInput());
3212
- const hasGroupWrapper = $38.derived(() => !!leading || hasTrailing());
3213
- const isInvalid = $38.derived(() => resolvedAriaInvalid() === "true");
3214
- let inputNode = undefined;
3215
- let resetSyncTimeout;
3216
- function syncValueAfterFormReset() {
3217
- if (resetSyncTimeout !== undefined)
3218
- clearTimeout(resetSyncTimeout);
3219
- resetSyncTimeout = setTimeout(() => {
3220
- resetSyncTimeout = undefined;
3221
- if (inputNode)
3222
- value = inputNode.value;
3223
- }, 0);
3224
- }
3225
- function handleInput(event) {
3226
- const target = event.currentTarget;
3227
- const committed = commitValue(target.value, onValueChange, (next) => {
3228
- value = next;
3229
- });
3230
- target.value = committed;
3231
- consumerOninput?.(event);
3232
- }
3233
- function inputElement($$renderer3) {
3234
- $$renderer3.push(`<input${$38.attributes({
3235
- id,
3236
- type,
3237
- ...rest,
3238
- disabled: resolvedDisabled(),
3239
- required: resolvedRequired(),
3240
- value,
3241
- class: $38.clsx(classNames("cinder-input", className)),
3242
- "data-cinder-native-date": rendersNativeDateIcon() ? "" : undefined,
3243
- "aria-invalid": resolvedAriaInvalid(),
3244
- "aria-describedby": describedBy()
3245
- }, undefined, undefined, undefined, 4)}/>`);
3246
- }
3247
- $$renderer2.push(`<div class="cinder-input-field">`);
3248
- if (label) {
3249
- $$renderer2.push("<!--[0-->");
3250
- $$renderer2.push(`<label${$38.attr("for", id)} class="cinder-input-field__label"${$38.attr("data-disabled", resolvedDisabled() || undefined)}>${$38.escape(label)} `);
3251
- if (resolvedRequired()) {
3252
- $$renderer2.push("<!--[0-->");
3253
- $$renderer2.push(`<span class="cinder-_required-marker" aria-hidden="true">*</span>`);
3254
- } else {
3255
- $$renderer2.push("<!--[-1-->");
3256
- }
3257
- $$renderer2.push(`<!--]--></label>`);
3258
- } else {
3259
- $$renderer2.push("<!--[-1-->");
3260
- }
3261
- $$renderer2.push(`<!--]--> `);
3262
- if (hasGroupWrapper()) {
3263
- $$renderer2.push("<!--[0-->");
3264
- $$renderer2.push(`<div class="cinder-input-group"${$38.attr("data-leading", leading ? "" : undefined)}${$38.attr("data-trailing", hasTrailing() ? "" : undefined)}${$38.attr("data-native-date", rendersNativeDateIcon() ? "" : undefined)}${$38.attr("data-disabled", resolvedDisabled() ? "" : undefined)}${$38.attr("data-invalid", isInvalid() ? "" : undefined)}>`);
3265
- if (leading) {
3266
- $$renderer2.push("<!--[0-->");
3267
- $$renderer2.push(`<span class="cinder-input-group__leading cinder-_truncate"${$38.attr("aria-hidden", leadingInteractive ? undefined : "true")}>`);
3268
- leading($$renderer2);
3269
- $$renderer2.push(`<!----></span>`);
3270
- } else {
3271
- $$renderer2.push("<!--[-1-->");
3272
- }
3273
- $$renderer2.push(`<!--]--> `);
3274
- inputElement($$renderer2);
3275
- $$renderer2.push(`<!----> `);
3276
- if (trailing) {
3277
- $$renderer2.push("<!--[0-->");
3278
- $$renderer2.push(`<span class="cinder-input-group__trailing cinder-_truncate"${$38.attr("aria-hidden", trailingInteractive ? undefined : "true")}>`);
3279
- trailing($$renderer2);
3280
- $$renderer2.push(`<!----></span>`);
3281
- } else if (rendersNativeDateIcon()) {
3282
- $$renderer2.push("<!--[1-->");
3283
- $$renderer2.push(`<span class="cinder-input-group__trailing cinder-input-group__date-icon cinder-_truncate" aria-hidden="true">`);
3284
- calendarIcon($$renderer2);
3285
- $$renderer2.push(`<!----></span>`);
3286
- } else {
3287
- $$renderer2.push("<!--[-1-->");
3288
- }
3289
- $$renderer2.push(`<!--]--></div>`);
3290
- } else {
3291
- $$renderer2.push("<!--[-1-->");
3292
- inputElement($$renderer2);
3293
- }
3294
- $$renderer2.push(`<!--]--> `);
3295
- if (description) {
3296
- $$renderer2.push("<!--[0-->");
3297
- $$renderer2.push(`<p${$38.attr("id", ownDescriptionId())} class="cinder-input-field__description">${$38.escape(description)}</p>`);
3298
- } else {
3299
- $$renderer2.push("<!--[-1-->");
3300
- }
3301
- $$renderer2.push(`<!--]--> `);
3302
- if (error) {
3303
- $$renderer2.push("<!--[0-->");
3304
- $$renderer2.push(`<p${$38.attr("id", ownErrorId())} class="cinder-input-field__error" aria-live="polite">${$38.escape(error)}</p>`);
3305
- } else {
3306
- $$renderer2.push("<!--[-1-->");
3307
- }
3308
- $$renderer2.push(`<!--]--></div>`);
3309
- $38.bind_props($$props, { value });
3310
- });
3311
- }
3312
-
3313
- // ../../node_modules/lucide-svelte/dist/icons/unlink.svelte
3314
- import * as $39 from "svelte/internal/server";
3315
- function Unlink($$renderer, $$props) {
3316
- const $$sanitized_props = $39.sanitize_props($$props);
3317
- const iconNode = [
3318
- [
3319
- "path",
3320
- {
3321
- d: "m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71"
3322
- }
3323
- ],
3324
- [
3325
- "path",
3326
- {
3327
- d: "m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71"
3328
- }
3329
- ],
3330
- ["line", { x1: "8", x2: "8", y1: "2", y2: "5" }],
3331
- ["line", { x1: "2", x2: "5", y1: "8", y2: "8" }],
3332
- ["line", { x1: "16", x2: "16", y1: "19", y2: "22" }],
3333
- ["line", { x1: "19", x2: "22", y1: "16", y2: "16" }]
3334
- ];
3335
- Icon($$renderer, $39.spread_props([
3336
- { name: "unlink" },
3337
- $$sanitized_props,
3338
- {
3339
- iconNode,
3340
- children: ($$renderer2) => {
3341
- $$renderer2.push(`<!--[-->`);
3342
- $39.slot($$renderer2, $$props, "default", {}, null);
3343
- $$renderer2.push(`<!--]-->`);
3344
- },
3345
- $$slots: { default: true }
3346
- }
3347
- ]));
3348
- }
3349
- // ../../node_modules/lucide-svelte/dist/icons/x.svelte
3350
- import * as $40 from "svelte/internal/server";
3351
- function X($$renderer, $$props) {
3352
- const $$sanitized_props = $40.sanitize_props($$props);
3353
- const iconNode = [
3354
- ["path", { d: "M18 6 6 18" }],
3355
- ["path", { d: "m6 6 12 12" }]
3356
- ];
3357
- Icon($$renderer, $40.spread_props([
3358
- { name: "x" },
3359
- $$sanitized_props,
3360
- {
3361
- iconNode,
3362
- children: ($$renderer2) => {
3363
- $$renderer2.push(`<!--[-->`);
3364
- $40.slot($$renderer2, $$props, "default", {}, null);
3365
- $$renderer2.push(`<!--]-->`);
3366
- },
3367
- $$slots: { default: true }
3368
- }
3369
- ]));
3370
- }
3371
- // src/components/markdown-editor/editor-toolbar/link-popover.svelte
3372
- function Link_popover($$renderer, $$props) {
3373
- $$renderer.component(($$renderer2) => {
3374
- let {
3375
- id,
3376
- mode = "insert",
3377
- initialUrl = "",
3378
- initialText = "",
3379
- hasSelection = false,
3380
- class: className,
3381
- anchorElement = null,
3382
- onclose,
3383
- oninsert,
3384
- onremove
3385
- } = $$props;
3386
- let popoverElement = null;
3387
- const anchoredOverlay = createAnchoredOverlay({
3388
- open: () => Boolean(anchorElement),
3389
- anchor: () => anchorElement,
3390
- panel: () => popoverElement,
3391
- placement: () => "bottom-start",
3392
- offset: () => 8,
3393
- widthMode: () => "content"
3394
- });
3395
- let url = initialUrl;
3396
- let text = initialText;
3397
- let initialFocusApplied = false;
3398
- const ALLOWED_PROTOCOLS = [
3399
- "http:",
3400
- "https:",
3401
- "mailto:",
3402
- "tel:",
3403
- "ftp:",
3404
- "ftps:",
3405
- "sms:"
3406
- ];
3407
- const DANGEROUS_SCHEMES = ["javascript:", "data:", "vbscript:"];
3408
- const urlError = $41.derived(() => {
3409
- if (!url.trim())
3410
- return;
3411
- const trimmedUrl = url.trim().toLowerCase();
3412
- for (const scheme of DANGEROUS_SCHEMES) {
3413
- if (trimmedUrl.startsWith(scheme)) {
3414
- return "This URL scheme is not allowed";
3415
- }
3416
- }
3417
- if (trimmedUrl.startsWith("/") || trimmedUrl.startsWith("#")) {
3418
- return;
3419
- }
3420
- for (const protocol of ALLOWED_PROTOCOLS) {
3421
- if (trimmedUrl.startsWith(protocol)) {
3422
- return;
3423
- }
3424
- }
3425
- try {
3426
- new URL(url);
3427
- return;
3428
- } catch {
3429
- try {
3430
- new URL(`https://${url}`);
3431
- return;
3432
- } catch {
3433
- return "Please enter a valid URL";
3434
- }
3435
- }
3436
- });
3437
- const canSubmit = $41.derived(() => url.trim() && !urlError() && (hasSelection || text.trim()));
3438
- function handleKeyDown(event) {
3439
- if (event.key === "Escape" && !event.defaultPrevented) {
3440
- event.preventDefault();
3441
- onclose?.();
3442
- }
3443
- if (event.key === "Enter" && canSubmit() && !event.isComposing) {
3444
- event.preventDefault();
3445
- handleSubmit();
3446
- }
3447
- }
3448
- function handleSubmit() {
3449
- if (!canSubmit())
3450
- return;
3451
- let normalizedUrl = url.trim();
3452
- const lowerUrl = normalizedUrl.toLowerCase();
3453
- const hasProtocol = lowerUrl.startsWith("/") || lowerUrl.startsWith("#") || ALLOWED_PROTOCOLS.some((protocol) => lowerUrl.startsWith(protocol));
3454
- if (!hasProtocol) {
3455
- normalizedUrl = `https://${normalizedUrl}`;
3456
- }
3457
- oninsert?.(normalizedUrl, hasSelection ? undefined : text.trim());
3458
- }
3459
- function handleRemove() {
3460
- onremove?.();
3461
- }
3462
- let $$settled = true;
3463
- let $$inner_renderer;
3464
- function $$render_inner($$renderer3) {
3465
- $$renderer3.push(`<div${$41.attr("id", id)} role="dialog" aria-modal="true"${$41.attr("aria-labelledby", `${id}-title`)} tabindex="-1"${$41.attr_class($41.clsx(classNames("link-popover", className)), "svelte-13b14j2")}${$41.attr_style(anchorElement ? anchoredOverlay.positionStyle : undefined)}${$41.attr("data-position-ready", anchorElement ? anchoredOverlay.positionReady : undefined)}${$41.attr("inert", anchorElement && !anchoredOverlay.positionReady ? true : undefined, true)}><header class="link-popover-header svelte-13b14j2"><h2${$41.attr("id", `${id}-title`)} class="link-popover-title svelte-13b14j2">`);
3466
- Link($$renderer3, { class: "icon-sm" });
3467
- $$renderer3.push(`<!----> ${$41.escape(mode === "insert" ? "Insert Link" : "Edit Link")}</h2> <button type="button" class="link-popover-close svelte-13b14j2" aria-label="Close">`);
3468
- X($$renderer3, { class: "icon-sm" });
3469
- $$renderer3.push(`<!----></button></header> <div class="link-popover-content svelte-13b14j2">`);
3470
- Input($$renderer3, {
3471
- id: `${id}-url`,
3472
- label: "URL",
3473
- type: "url",
3474
- placeholder: "https://example.com",
3475
- error: urlError() ?? "",
3476
- required: true,
3477
- get value() {
3478
- return url;
3479
- },
3480
- set value($$value) {
3481
- url = $$value;
3482
- $$settled = false;
3483
- }
3484
- });
3485
- $$renderer3.push(`<!----> `);
3486
- if (!hasSelection) {
3487
- $$renderer3.push("<!--[0-->");
3488
- Input($$renderer3, {
3489
- id: `${id}-text`,
3490
- label: "Link text",
3491
- placeholder: "Display text",
3492
- required: true,
3493
- get value() {
3494
- return text;
3495
- },
3496
- set value($$value) {
3497
- text = $$value;
3498
- $$settled = false;
3499
- }
3500
- });
3501
- } else {
3502
- $$renderer3.push("<!--[-1-->");
3503
- }
3504
- $$renderer3.push(`<!--]--></div> <footer class="link-popover-footer svelte-13b14j2"><div class="link-popover-actions svelte-13b14j2">`);
3505
- if (mode === "edit") {
3506
- $$renderer3.push("<!--[0-->");
3507
- Button($$renderer3, {
3508
- variant: "ghost",
3509
- size: "sm",
3510
- onclick: handleRemove,
3511
- children: ($$renderer4) => {
3512
- Unlink($$renderer4, { class: "icon-sm" });
3513
- $$renderer4.push(`<!----> Remove`);
3514
- },
3515
- $$slots: { default: true }
3516
- });
3517
- } else {
3518
- $$renderer3.push("<!--[-1-->");
3519
- }
3520
- $$renderer3.push(`<!--]--></div> <div class="link-popover-primary-actions svelte-13b14j2">`);
3521
- Button($$renderer3, {
3522
- variant: "secondary",
3523
- size: "sm",
3524
- onclick: onclose,
3525
- children: ($$renderer4) => {
3526
- $$renderer4.push(`<!---->Cancel`);
3527
- },
3528
- $$slots: { default: true }
3529
- });
3530
- $$renderer3.push(`<!----> `);
3531
- Button($$renderer3, {
3532
- variant: "primary",
3533
- size: "sm",
3534
- onclick: handleSubmit,
3535
- disabled: !canSubmit(),
3536
- children: ($$renderer4) => {
3537
- $$renderer4.push(`<!---->${$41.escape(mode === "insert" ? "Insert" : "Update")}`);
3538
- },
3539
- $$slots: { default: true }
3540
- });
3541
- $$renderer3.push(`<!----></div></footer></div>`);
3542
- }
3543
- do {
3544
- $$settled = true;
3545
- $$inner_renderer = $$renderer2.copy();
3546
- $$render_inner($$inner_renderer);
3547
- } while (!$$settled);
3548
- $$renderer2.subsume($$inner_renderer);
3549
- });
3550
- }
3551
- // src/components/markdown-editor/markdown-editor.svelte
3552
- function Markdown_editor($$renderer, $$props) {
3553
- $$renderer.component(($$renderer2) => {
3554
- let {
3555
- id,
3556
- label = "Markdown editor",
3557
- value = "",
3558
- mode = "wysiwyg",
3559
- showModeToggle = false,
3560
- modeLabel = "Editor mode",
3561
- readonly = false,
3562
- placeholder = "Start writing...",
3563
- showToolbar = true,
3564
- class: className,
3565
- onchange,
3566
- onready,
3567
- onmodechange,
3568
- onselectionchange,
3569
- oncommentshortcut,
3570
- plugins = [],
3571
- placeholderCompletion,
3572
- placeholderDecoration,
3573
- toolbar,
3574
- toolbarActions,
3575
- toolbarLeading,
3576
- snapshotMode = false,
3577
- "aria-describedby": ariaDescribedby,
3578
- $$slots,
3579
- $$events,
3580
- ...rest
3581
- } = $$props;
3582
- let wrapperElement = null;
3583
- const escapedPlaceholder = $42.derived(() => placeholder.replace(/'/g, "\\'"));
3584
- let editorState = null;
3585
- let isInitializing = true;
3586
- let pipelineUtilities = null;
3587
- let isInternalUpdate = false;
3588
- function normalizeSafely(markdown) {
3589
- try {
3590
- return pipelineUtilities?.normalize(markdown) ?? normalizeForEditor(markdown);
3591
- } catch (error) {
3592
- devWarn("Failed to normalize markdown, using raw value:", error);
3593
- return markdown;
3594
- }
3595
- }
3596
- function normalizeForEditor(markdown) {
3597
- if (!markdown.trim())
3598
- return `
3599
- `;
3600
- return markdown.replace(/\r\n?/g, `
3601
- `).replace(/^(\s*)[*+] /gm, "$1- ").replace(/^([-*+] .*)$\n\n(?=[-*+] )/gm, `$1
3602
- `).replace(/^(\d+\. .*)$\n\n(?=\d+\. )/gm, `$1
3603
- `).replace(/\n{3,}/g, `
3604
-
3605
- `).replace(/^\n+/, "").replace(/\n+$/, `
3606
- `);
3607
- }
3608
- let selectionVersion = 0;
3609
- let historyUtilities = null;
3610
- const editorContext = $42.derived(() => editorState?.editor?.ctx ?? null);
3611
- const activeMarks = $42.derived(() => {
3612
- if (!editorContext()) {
3613
- return {
3614
- bold: false,
3615
- italic: false,
3616
- code: false,
3617
- strikethrough: false,
3618
- link: false
3619
- };
3620
- }
3621
- return getActiveMarks(editorContext());
3622
- });
3623
- const activeBlockType = $42.derived(() => {
3624
- if (!editorContext()) {
3625
- return { type: "paragraph" };
3626
- }
3627
- return getActiveBlockType(editorContext());
3628
- });
3629
- const canUndo = $42.derived(() => {
3630
- const view = editorState?.view;
3631
- if (!view || historyUtilities === null)
3632
- return false;
3633
- return historyUtilities.undoDepth(view.state) > 0;
3634
- });
3635
- const canRedo = $42.derived(() => {
3636
- const view = editorState?.view;
3637
- if (!view || historyUtilities === null)
3638
- return false;
3639
- return historyUtilities.redoDepth(view.state) > 0;
3640
- });
3641
- const toolbarVisible = $42.derived(() => showToolbar && !readonly && false_default && (mode === "wysiwyg" || showModeToggle));
3642
- const toolbarContext = $42.derived(() => ({
3643
- editorContext: editorContext(),
3644
- activeMarks: activeMarks(),
3645
- activeBlockType: activeBlockType(),
3646
- canUndo: canUndo(),
3647
- canRedo: canRedo(),
3648
- readonly
3649
- }));
3650
- let linkPopoverOpen = false;
3651
- let linkPopoverAnchorElement = null;
3652
- const linkPopoverMode = $42.derived(() => {
3653
- if (!editorContext())
3654
- return "insert";
3655
- const existingUrl = getLinkAtCursor(editorContext());
3656
- return existingUrl ? "edit" : "insert";
3657
- });
3658
- const linkPopoverInitialUrl = $42.derived(() => {
3659
- if (!editorContext())
3660
- return "";
3661
- return getLinkAtCursor(editorContext()) ?? "";
3662
- });
3663
- const linkPopoverHasSelection = $42.derived(() => {
3664
- if (!editorContext())
3665
- return false;
3666
- return !isSelectionCollapsed(editorContext());
3667
- });
3668
- const linkPopoverInitialText = $42.derived(() => {
3669
- if (!editorContext())
3670
- return "";
3671
- if (!isSelectionCollapsed(editorContext()))
3672
- return "";
3673
- return getLinkTextAtCursor(editorContext()) ?? "";
3674
- });
3675
- const lastKnownLinkRange = $42.derived(() => {
3676
- if (!editorContext())
3677
- return null;
3678
- const url = getLinkAtCursor(editorContext());
3679
- if (!url)
3680
- return null;
3681
- return getLinkRangeAtCursor(editorContext());
3682
- });
3683
- let capturedLinkRange = null;
3684
- function resolveLinkPopoverAnchor() {
3685
- if (editorState?.view) {
3686
- try {
3687
- const view = editorState.view;
3688
- const from = view.state.selection.from;
3689
- const probe = view.coordsAtPos(from);
3690
- if (probe && probe.top > 0) {
3691
- return {
3692
- ...view.dom instanceof HTMLElement ? { contextElement: view.dom } : {},
3693
- getBoundingClientRect: () => {
3694
- try {
3695
- const coords = view.coordsAtPos(view.state.selection.from);
3696
- return {
3697
- x: coords.left,
3698
- y: coords.top,
3699
- width: coords.right - coords.left,
3700
- height: coords.bottom - coords.top,
3701
- top: coords.top,
3702
- right: coords.right,
3703
- bottom: coords.bottom,
3704
- left: coords.left
3705
- };
3706
- } catch {
3707
- return view.dom.getBoundingClientRect();
3708
- }
3709
- }
3710
- };
3711
- }
3712
- } catch {}
3713
- const viewDom = editorState.view.dom;
3714
- if (viewDom instanceof HTMLElement)
3715
- return viewDom;
3716
- }
3717
- if (wrapperElement)
3718
- return wrapperElement;
3719
- return null;
3720
- }
3721
- function handleLinkClick(triggerElement) {
3722
- capturedLinkRange = lastKnownLinkRange();
3723
- linkPopoverAnchorElement = triggerElement;
3724
- linkPopoverOpen = true;
3725
- }
3726
- function handleLinkPopoverClose() {
3727
- linkPopoverOpen = false;
3728
- linkPopoverAnchorElement = null;
3729
- editorState?.focus();
3730
- }
3731
- function handleLinkInsert(url, text = undefined) {
3732
- if (!editorContext())
3733
- return;
3734
- if (text) {
3735
- const existingLinkUrl = getLinkAtCursor(editorContext());
3736
- if (existingLinkUrl) {
3737
- updateLinkAtCursor(editorContext(), text, url);
3738
- } else {
3739
- insertLinkAtCursor(editorContext(), text, url);
3740
- }
3741
- } else {
3742
- applyLinkToSelection(editorContext(), url);
3743
- }
3744
- linkPopoverOpen = false;
3745
- linkPopoverAnchorElement = null;
3746
- editorState?.focus();
3747
- }
3748
- function handleLinkRemove() {
3749
- if (!editorContext())
3750
- return;
3751
- removeLink(editorContext(), capturedLinkRange ?? undefined);
3752
- linkPopoverOpen = false;
3753
- capturedLinkRange = null;
3754
- linkPopoverAnchorElement = null;
3755
- editorState?.focus();
3756
- }
3757
- function handleUndo() {
3758
- if (!editorContext() || !canUndo())
3759
- return;
3760
- undoCommand(editorContext());
3761
- }
3762
- function handleRedo() {
3763
- if (!editorContext() || !canRedo())
3764
- return;
3765
- redoCommand(editorContext());
3766
- }
3767
- const editorAttachment = createEditorAttachment({
3768
- getInitialValue: () => normalizeSafely(value),
3769
- getReadonly: () => readonly,
3770
- getAriaLabel: () => label,
3771
- debounceMs: DEFAULT_DEBOUNCE_MS,
3772
- getPlugins: () => plugins,
3773
- getPlaceholderCompletion: () => placeholderCompletion,
3774
- getPlaceholderDecoration: () => placeholderDecoration,
3775
- onready: (state) => {
3776
- editorState = state;
3777
- isInitializing = false;
3778
- onready?.();
3779
- },
3780
- onchange: (markdown) => {
3781
- isInternalUpdate = true;
3782
- value = markdown;
3783
- onchange?.(markdown);
3784
- selectionVersion++;
3785
- queueMicrotask(() => {
3786
- isInternalUpdate = false;
3787
- });
3788
- },
3789
- onselectionchange: (selection) => {
3790
- selectionVersion++;
3791
- onselectionchange?.(selection);
3792
- },
3793
- onlinkshortcut: () => {
3794
- capturedLinkRange = lastKnownLinkRange();
3795
- linkPopoverAnchorElement = resolveLinkPopoverAnchor();
3796
- linkPopoverOpen = true;
3797
- },
3798
- oncommentshortcut: () => oncommentshortcut?.()
3799
- });
3800
- let previousMode = mode;
3801
- function focus() {
3802
- editorState?.focus();
3803
- }
3804
- function getMarkdown() {
3805
- return editorState?.getMarkdown() ?? value;
3806
- }
3807
- function setMarkdown(content) {
3808
- if (editorState) {
3809
- editorState.setMarkdown(content);
3810
- } else {
3811
- value = content;
3812
- }
3813
- }
3814
- function getAst() {
3815
- const markdown = getMarkdown();
3816
- if (pipelineUtilities === null) {
3817
- throw new Error("Markdown pipeline is not ready yet.");
3818
- }
3819
- return pipelineUtilities.parseOrThrow(markdown);
3820
- }
3821
- function getSelection() {
3822
- if (!editorState?.view)
3823
- return null;
3824
- const { from, to } = editorState.view.state.selection;
3825
- return { from, to, isCollapsed: from === to };
3826
- }
3827
- function getView() {
3828
- return editorState?.view ?? null;
3829
- }
3830
- function getEditor() {
3831
- return editorState?.editor ?? null;
3832
- }
3833
- onDestroy(() => {
3834
- editorState?.clearPendingTimers();
3835
- editorState = null;
3836
- });
3837
- let $$settled = true;
3838
- let $$inner_renderer;
3839
- function $$render_inner($$renderer3) {
3840
- $$renderer3.push(`<div${$42.attributes({
3841
- class: $42.clsx(classNames("markdown-editor-wrapper", className)),
3842
- "data-initializing": isInitializing || undefined,
3843
- "data-ready": !isInitializing ? true : undefined,
3844
- "data-mode": mode,
3845
- "data-has-toolbar": toolbarVisible() || undefined,
3846
- "data-snapshot-mode": snapshotMode || undefined,
3847
- ...rest
3848
- }, "svelte-1mxvqjb")}>`);
3849
- if (toolbarVisible()) {
3850
- $$renderer3.push("<!--[0-->");
3851
- if (toolbar) {
3852
- $$renderer3.push("<!--[0-->");
3853
- toolbar($$renderer3, toolbarContext());
3854
- $$renderer3.push(`<!---->`);
3855
- } else {
3856
- $$renderer3.push("<!--[-1-->");
3857
- $$renderer3.push(`<div class="editor-toolbar-wrapper svelte-1mxvqjb">`);
3858
- if (toolbarLeading) {
3859
- $$renderer3.push("<!--[0-->");
3860
- $$renderer3.push(`<div class="toolbar-leading svelte-1mxvqjb">`);
3861
- toolbarLeading($$renderer3, toolbarContext());
3862
- $$renderer3.push(`<!----></div>`);
3863
- } else {
3864
- $$renderer3.push("<!--[-1-->");
3865
- }
3866
- $$renderer3.push(`<!--]--> `);
3867
- Editor_toolbar($$renderer3, {
3868
- id: `${id}-toolbar`,
3869
- editorId: id,
3870
- editorContext: editorContext(),
3871
- activeMarks: activeMarks(),
3872
- activeBlockType: activeBlockType(),
3873
- canUndo: canUndo(),
3874
- canRedo: canRedo(),
3875
- linkPopoverOpen,
3876
- disabled: !editorContext(),
3877
- onLinkClick: handleLinkClick,
3878
- onUndo: handleUndo,
3879
- onRedo: handleRedo
3880
- });
3881
- $$renderer3.push(`<!----> `);
3882
- if (toolbarActions) {
3883
- $$renderer3.push("<!--[0-->");
3884
- $$renderer3.push(`<div class="toolbar-actions svelte-1mxvqjb">`);
3885
- toolbarActions($$renderer3, toolbarContext());
3886
- $$renderer3.push(`<!----></div>`);
3887
- } else {
3888
- $$renderer3.push("<!--[-1-->");
3889
- }
3890
- $$renderer3.push(`<!--]--> `);
3891
- if (showModeToggle) {
3892
- $$renderer3.push("<!--[0-->");
3893
- $$renderer3.push(`<div class="toolbar-mode-toggle svelte-1mxvqjb">`);
3894
- Segmented_control($$renderer3, {
3895
- id: `${id}-mode-toggle`,
3896
- selectionMode: "single",
3897
- size: "sm",
3898
- label: modeLabel,
3899
- hideLabel: true,
3900
- get value() {
3901
- return mode;
3902
- },
3903
- set value($$value) {
3904
- mode = $$value;
3905
- $$settled = false;
3906
- },
3907
- children: ($$renderer4) => {
3908
- Segment($$renderer4, {
3909
- value: "wysiwyg",
3910
- children: ($$renderer5) => {
3911
- $$renderer5.push(`<!---->Rich`);
3912
- },
3913
- $$slots: { default: true }
3914
- });
3915
- $$renderer4.push(`<!----> `);
3916
- Segment($$renderer4, {
3917
- value: "source",
3918
- children: ($$renderer5) => {
3919
- $$renderer5.push(`<!---->Raw`);
3920
- },
3921
- $$slots: { default: true }
3922
- });
3923
- $$renderer4.push(`<!---->`);
3924
- },
3925
- $$slots: { default: true }
3926
- });
3927
- $$renderer3.push(`<!----></div>`);
3928
- } else {
3929
- $$renderer3.push("<!--[-1-->");
3930
- }
3931
- $$renderer3.push(`<!--]--></div>`);
3932
- }
3933
- $$renderer3.push(`<!--]-->`);
3934
- } else {
3935
- $$renderer3.push("<!--[-1-->");
3936
- }
3937
- $$renderer3.push(`<!--]--> `);
3938
- if (false_default) {
3939
- $$renderer3.push("<!--[0-->");
3940
- if (mode === "wysiwyg") {
3941
- $$renderer3.push("<!--[0-->");
3942
- $$renderer3.push(`<div${$42.attr("id", id)} class="cinder-markdown-content prose markdown-editor surface svelte-1mxvqjb"${$42.attr("data-readonly", readonly || undefined)} role="application"${$42.attr("aria-label", label || "Markdown editor")} tabindex="0"${$42.attr_style("", {
3943
- "--editor-placeholder": `'${$42.stringify(escapedPlaceholder())}'`
3944
- })}></div>`);
3945
- } else {
3946
- $$renderer3.push("<!--[-1-->");
3947
- $$renderer3.push(`<textarea${$42.attr("id", id)} class="markdown-editor surface source-mode svelte-1mxvqjb"${$42.attr("placeholder", placeholder)}${$42.attr("readonly", readonly || undefined, true)}${$42.attr("aria-label", label)}${$42.attr("aria-describedby", ariaDescribedby)} aria-multiline="true">`);
3948
- const $$body = $42.escape(value);
3949
- if ($$body) {
3950
- $$renderer3.push(`${$$body}`);
3951
- } else {}
3952
- $$renderer3.push(`</textarea>`);
3953
- }
3954
- $$renderer3.push(`<!--]-->`);
3955
- } else {
3956
- $$renderer3.push("<!--[-1-->");
3957
- Editor_skeleton($$renderer3, { class: "markdown-editor" });
3958
- }
3959
- $$renderer3.push(`<!--]--> `);
3960
- if (linkPopoverOpen && mode === "wysiwyg") {
3961
- $$renderer3.push("<!--[0-->");
3962
- Link_popover($$renderer3, {
3963
- id: `${id}-link-popover`,
3964
- mode: linkPopoverMode(),
3965
- initialUrl: linkPopoverInitialUrl(),
3966
- initialText: linkPopoverInitialText(),
3967
- hasSelection: linkPopoverHasSelection(),
3968
- anchorElement: linkPopoverAnchorElement,
3969
- onclose: handleLinkPopoverClose,
3970
- oninsert: handleLinkInsert,
3971
- onremove: handleLinkRemove
3972
- });
3973
- } else {
3974
- $$renderer3.push("<!--[-1-->");
3975
- }
3976
- $$renderer3.push(`<!--]--></div>`);
3977
- }
3978
- do {
3979
- $$settled = true;
3980
- $$inner_renderer = $$renderer2.copy();
3981
- $$render_inner($$inner_renderer);
3982
- } while (!$$settled);
3983
- $$renderer2.subsume($$inner_renderer);
3984
- $42.bind_props($$props, {
3985
- value,
3986
- mode,
3987
- focus,
3988
- getMarkdown,
3989
- setMarkdown,
3990
- getAst,
3991
- getSelection,
3992
- getView,
3993
- getEditor
3994
- });
3995
- });
3996
- }
3997
-
3998
- // src/components/markdown-editor/index.ts
3999
- var markdown_editor_default = Markdown_editor;
5
+ Markdown_editor
6
+ } from "../../index.server-xjmx6rm8.js";
7
+ import"../../index.server-att810se.js";
8
+ import"../../index.server-g75bhbvb.js";
9
+ import"../../index.server-qreadmdy.js";
10
+ import"../../index.server-nxx9ckb3.js";
11
+ import"../../index.server-6dfav8r0.js";
12
+ import"../../index.server-8gakk9d5.js";
13
+ import"../../index.server-h54v6c32.js";
14
+ import"../../index.server-kjtb596w.js";
15
+ import"../../index.server-77gpgvab.js";
16
+ import"../../index.server-r0wzpqh7.js";
17
+ import"../../index.server-4jc5ny87.js";
18
+ import"../../index.server-bgcpy5vk.js";
19
+ import"../../index.server-g8kdhzf2.js";
20
+ import"../../index.server-sz8sxsj6.js";
21
+ import"../../index.server-et3p2cfq.js";
22
+ import"../../index.server-weae7gs2.js";
23
+ import"../../index.server-abm21gz1.js";
24
+ import"../../index.server-493m9fm5.js";
25
+ import"../../index.server-qxd1ej6r.js";
26
+ import"../../index.server-94b7tjs5.js";
27
+ import"../../index.server-mm4g29h0.js";
28
+ import"../../index.server-tm012b9x.js";
29
+ import"../../index.server-3fvz5gak.js";
30
+ import"../../index.server-najpstc3.js";
31
+ import"../../index.server-zwjp26z8.js";
32
+ import"../../index.server-1vsv7ngz.js";
33
+ import"../../index.server-6pdmym90.js";
34
+ import"../../index.server-mc6vc1pm.js";
35
+ import"../../index.server-42qeekwc.js";
36
+ import"../../index.server-0a8m173j.js";
37
+ import"../../index.server-p045dgmk.js";
38
+ import"../../index.server-9r6rts7c.js";
39
+ import"../../index.server-y0q949bm.js";
40
+ import"../../index.server-2ymxf0ra.js";
41
+ import"../../index.server-34p02y48.js";
42
+ import"../../index.server-nj8mebze.js";
43
+ import"../../index.server-ge07r1p8.js";
44
+ import"../../index.server-z7nvkz8v.js";
45
+ import"../../index.server-37x76zdn.js";
4000
46
  export {
4001
47
  markdown_editor_default as default,
4002
48
  Markdown_editor as MarkdownEditor
4003
49
  };
4004
50
 
4005
- //# debugId=48EB86590389CB0E64756E2164756E21
51
+ //# debugId=32D82D8DEADFFED964756E2164756E21