@lostgradient/cinder 0.8.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +2 -2
  3. package/components.json +140 -18
  4. package/dist/components/_internal/command-list-context.d.ts +3 -3
  5. package/dist/components/_internal/create-command-list-state.svelte.d.ts +11 -11
  6. package/dist/components/access-gate/index.js +435 -218
  7. package/dist/components/approval-card/approval-card-actions.svelte.d.ts +16 -0
  8. package/dist/components/approval-card/approval-card-state.d.ts +65 -0
  9. package/dist/components/approval-card/approval-card.css +269 -92
  10. package/dist/components/approval-card/approval-card.schema.js +10 -31
  11. package/dist/components/approval-card/approval-card.svelte.d.ts +3 -3
  12. package/dist/components/approval-card/approval-card.types.d.ts +14 -28
  13. package/dist/components/approval-card/index.d.ts +1 -1
  14. package/dist/components/approval-card/index.js +4268 -2884
  15. package/dist/components/card/card.css +5 -0
  16. package/dist/components/card/card.schema.js +2 -2
  17. package/dist/components/card/card.types.d.ts +2 -2
  18. package/dist/components/card/index.js +2 -1
  19. package/dist/components/chat/builders.d.ts +17 -8
  20. package/dist/components/chat/chat.schema.js +44 -2
  21. package/dist/components/chat/chat.svelte.d.ts +4 -2
  22. package/dist/components/chat/chat.types.d.ts +34 -3
  23. package/dist/components/chat/container/chat.svelte.d.ts +4 -2
  24. package/dist/components/chat/conversation-model.d.ts +1 -1
  25. package/dist/components/chat/index.d.ts +4 -4
  26. package/dist/components/chat/index.js +2767 -6278
  27. package/dist/components/chat/input/chat-attachment-serialization.d.ts +9 -0
  28. package/dist/components/chat/input/chat-input.svelte.d.ts +22 -1
  29. package/dist/components/chat/input/index.d.ts +1 -0
  30. package/dist/components/chat/utilities/conversation.d.ts +6 -6
  31. package/dist/components/chat-composer-popover/chat-composer-popover-filter.d.ts +11 -0
  32. package/dist/components/chat-composer-popover/chat-composer-popover.css +7 -0
  33. package/dist/components/chat-composer-popover/chat-composer-popover.css.d.ts +1 -0
  34. package/dist/components/chat-composer-popover/chat-composer-popover.schema.d.ts +3 -0
  35. package/dist/components/chat-composer-popover/chat-composer-popover.schema.js +150 -0
  36. package/dist/components/chat-composer-popover/chat-composer-popover.svelte.d.ts +46 -0
  37. package/dist/components/chat-composer-popover/chat-composer-popover.types.d.ts +77 -0
  38. package/dist/components/chat-composer-popover/chat-composer-popover.variables.d.ts +2 -0
  39. package/dist/components/chat-composer-popover/chat-composer-popover.variables.js +61 -0
  40. package/dist/components/chat-composer-popover/index.d.ts +6 -0
  41. package/dist/components/chat-composer-popover/index.js +3285 -0
  42. package/dist/components/chat-conversation-header/index.js +577 -4537
  43. package/dist/components/chat-conversation-list/index.js +24 -3984
  44. package/dist/components/code-block/code-block.schema.js +5 -1
  45. package/dist/components/code-block/code-block.types.d.ts +6 -0
  46. package/dist/components/code-block/index.js +4 -4
  47. package/dist/components/command-item/index.js +7 -6
  48. package/dist/components/command-menu/command-menu.schema.js +5 -1
  49. package/dist/components/command-menu/command-menu.types.d.ts +2 -0
  50. package/dist/components/command-menu/index.js +48 -19
  51. package/dist/components/command-palette/index.js +40 -14
  52. package/dist/components/connection-indicator/connection-indicator.css +136 -0
  53. package/dist/components/connection-indicator/connection-indicator.css.d.ts +1 -0
  54. package/dist/components/connection-indicator/connection-indicator.schema.d.ts +3 -0
  55. package/dist/components/connection-indicator/connection-indicator.schema.js +89 -0
  56. package/dist/components/connection-indicator/connection-indicator.svelte.d.ts +21 -0
  57. package/dist/components/connection-indicator/connection-indicator.types.d.ts +46 -0
  58. package/dist/components/connection-indicator/connection-indicator.variables.d.ts +2 -0
  59. package/dist/components/connection-indicator/connection-indicator.variables.js +61 -0
  60. package/dist/components/connection-indicator/index.d.ts +5 -0
  61. package/dist/components/connection-indicator/index.js +409 -0
  62. package/dist/components/container/container.schema.js +4 -4
  63. package/dist/components/event-stream-viewer/index.js +44 -44
  64. package/dist/components/experimental/json-viewer/index.js +44 -44
  65. package/dist/components/invocation-rule-builder/index.d.ts +1 -1
  66. package/dist/components/invocation-rule-builder/index.js +305 -150
  67. package/dist/components/invocation-rule-builder/invocation-rule-builder.css +28 -0
  68. package/dist/components/invocation-rule-builder/invocation-rule-builder.schema.js +89 -5
  69. package/dist/components/invocation-rule-builder/invocation-rule-builder.svelte.d.ts +2 -1
  70. package/dist/components/invocation-rule-builder/invocation-rule-builder.types.d.ts +114 -16
  71. package/dist/components/json-schema-editor/index.js +5 -2
  72. package/dist/components/json-viewer/index.js +44 -44
  73. package/dist/components/json-viewer/json-viewer.css +10 -6
  74. package/dist/components/payload-inspector/index.d.ts +1 -1
  75. package/dist/components/payload-inspector/index.js +306 -1422
  76. package/dist/components/payload-inspector/payload-inspector.css +15 -75
  77. package/dist/components/payload-inspector/payload-inspector.schema.js +5 -41
  78. package/dist/components/payload-inspector/payload-inspector.svelte.d.ts +5 -5
  79. package/dist/components/payload-inspector/payload-inspector.types.d.ts +10 -56
  80. package/dist/components/run-step-timeline/index.d.ts +1 -1
  81. package/dist/components/run-step-timeline/index.js +992 -559
  82. package/dist/components/run-step-timeline/run-step-branch-disclosure.svelte.d.ts +17 -0
  83. package/dist/components/run-step-timeline/run-step-timeline.css +124 -0
  84. package/dist/components/run-step-timeline/run-step-timeline.schema.js +873 -350
  85. package/dist/components/run-step-timeline/run-step-timeline.svelte.d.ts +1 -15
  86. package/dist/components/run-step-timeline/run-step-timeline.types.d.ts +182 -5
  87. package/dist/components/run-step-timeline/run-step-timeline.utilities.d.ts +52 -0
  88. package/dist/components/schedule-builder/index.d.ts +5 -0
  89. package/dist/components/schedule-builder/index.js +3176 -0
  90. package/dist/components/schedule-builder/schedule-builder.css +121 -0
  91. package/dist/components/schedule-builder/schedule-builder.css.d.ts +1 -0
  92. package/dist/components/schedule-builder/schedule-builder.schema.d.ts +3 -0
  93. package/dist/components/schedule-builder/schedule-builder.schema.js +141 -0
  94. package/dist/components/schedule-builder/schedule-builder.svelte.d.ts +22 -0
  95. package/dist/components/schedule-builder/schedule-builder.types.d.ts +130 -0
  96. package/dist/components/schedule-builder/schedule-builder.utilities.d.ts +78 -0
  97. package/dist/components/schedule-builder/schedule-builder.variables.d.ts +2 -0
  98. package/dist/components/schedule-builder/schedule-builder.variables.js +61 -0
  99. package/dist/components/tab/index.js +5 -2
  100. package/dist/components/tab/tab.schema.js +7 -3
  101. package/dist/components/tab/tab.svelte.d.ts +2 -1
  102. package/dist/components/tab/tab.types.d.ts +8 -2
  103. package/dist/components/tabs/index.js +5 -2
  104. package/dist/components/tag-input/index.js +22 -4
  105. package/dist/components/tag-input/tag-input.schema.js +5 -1
  106. package/dist/components/tag-input/tag-input.types.d.ts +4 -0
  107. package/dist/components/team-section/index.js +2 -1
  108. package/dist/components/testimonial-section/index.js +2 -1
  109. package/dist/index.d.ts +10 -4
  110. package/dist/index.js +28577 -30168
  111. package/dist/server/components/access-gate/index.js +3 -1
  112. package/dist/server/components/accordion/index.js +2 -2
  113. package/dist/server/components/alert-dialog/index.js +2 -2
  114. package/dist/server/components/approval-card/index.js +15 -19
  115. package/dist/server/components/autocomplete/index.js +7 -7
  116. package/dist/server/components/avatar-group/index.js +5 -5
  117. package/dist/server/components/button-group/index.js +3 -5
  118. package/dist/server/components/card/index.js +2 -2
  119. package/dist/server/components/chat/index.js +15 -12
  120. package/dist/server/components/chat-composer-popover/index.js +26 -0
  121. package/dist/server/components/chat-conversation-header/index.js +10 -11
  122. package/dist/server/components/chat-conversation-list/index.js +4 -5
  123. package/dist/server/components/checkbox/index.js +3 -3
  124. package/dist/server/components/choice-grid/index.js +2 -2
  125. package/dist/server/components/code-block/index.js +2 -2
  126. package/dist/server/components/color-field/index.js +3 -3
  127. package/dist/server/components/combobox/index.js +6 -6
  128. package/dist/server/components/command-item/index.js +5 -3
  129. package/dist/server/components/command-menu/index.js +6 -4
  130. package/dist/server/components/command-palette/index.js +2 -2
  131. package/dist/server/components/confirm-dialog/index.js +2 -2
  132. package/dist/server/components/connection-indicator/index.js +16 -0
  133. package/dist/server/components/context-menu/index.js +5 -5
  134. package/dist/server/components/data-table/index.js +5 -5
  135. package/dist/server/components/date-picker/index.js +6 -6
  136. package/dist/server/components/date-range-field/index.js +7 -7
  137. package/dist/server/components/description-list/index.js +3 -5
  138. package/dist/server/components/diff-viewer/index.js +9 -8
  139. package/dist/server/components/drawer/index.js +3 -3
  140. package/dist/server/components/dropdown/index.js +4 -4
  141. package/dist/server/components/event-stream-viewer/index.js +2 -2
  142. package/dist/server/components/experimental/json-viewer/index.js +2 -2
  143. package/dist/server/components/faceted-filter-bar/index.js +1 -1
  144. package/dist/server/components/hover-card/index.js +1 -1
  145. package/dist/server/components/input/index.js +3 -3
  146. package/dist/server/components/invocation-rule-builder/index.js +1 -1
  147. package/dist/server/components/json-schema-editor/index.js +24 -23
  148. package/dist/server/components/json-viewer/index.js +2 -2
  149. package/dist/server/components/markdown-editor/index.js +13 -13
  150. package/dist/server/components/modal/index.js +1 -1
  151. package/dist/server/components/multi-select/index.js +1 -1
  152. package/dist/server/components/newsletter-section/index.js +3 -3
  153. package/dist/server/components/payload-inspector/index.js +4 -16
  154. package/dist/server/components/popover/index.js +5 -5
  155. package/dist/server/components/review-editor/index.js +27 -26
  156. package/dist/server/components/run-step-timeline/index.js +2 -2
  157. package/dist/server/components/schedule-builder/index.js +30 -0
  158. package/dist/server/components/schema-form/index.js +4 -4
  159. package/dist/server/components/secret-value-field/index.js +3 -5
  160. package/dist/server/components/segment/index.js +3 -3
  161. package/dist/server/components/segmented-control/index.js +4 -4
  162. package/dist/server/components/selection-popover/index.js +4 -4
  163. package/dist/server/components/sheet/index.js +2 -2
  164. package/dist/server/components/side-navigation/index.js +2 -2
  165. package/dist/server/components/sidebar/index.js +3 -3
  166. package/dist/server/components/tab/index.js +2 -2
  167. package/dist/server/components/table/index.js +3 -3
  168. package/dist/server/components/tabs/index.js +4 -4
  169. package/dist/server/components/tag-input/index.js +3 -3
  170. package/dist/server/components/team-section/index.js +8 -8
  171. package/dist/server/components/testimonial-section/index.js +2 -2
  172. package/dist/server/components/time-field/index.js +5 -3
  173. package/dist/server/components/toggle/index.js +2 -2
  174. package/dist/server/components/tooltip/index.js +1 -1
  175. package/dist/server/index.js +235 -211
  176. package/dist/server/{index.server-20y4mdhm.js → index.server-0chhpkg7.js} +40 -14
  177. package/dist/server/index.server-0sx92swg.js +9 -0
  178. package/dist/server/{index.server-ecm1vs3g.js → index.server-1nq7z1qw.js} +1 -1
  179. package/dist/server/{index.server-s9khh4ry.js → index.server-2bbwajb2.js} +3 -5
  180. package/dist/server/index.server-2hqrv7ca.js +9 -0
  181. package/dist/server/{index.server-69epaape.js → index.server-2qj6s2mh.js} +1 -1
  182. package/dist/server/{index.server-gxf0d1p5.js → index.server-2s5h1d05.js} +2 -2
  183. package/dist/server/{index.server-qfa2rxzx.js → index.server-2zdbz3rj.js} +3 -5
  184. package/dist/server/{index.server-pt8b65mt.js → index.server-38aywdk1.js} +1 -1
  185. package/dist/server/{index.server-0jhra85x.js → index.server-3w72dxz7.js} +4 -4
  186. package/dist/server/{index.server-rermas0k.js → index.server-47v2fhp4.js} +4 -4
  187. package/dist/server/{index.server-v4zabrsx.js → index.server-4x4hgvqe.js} +434 -26
  188. package/dist/server/{index.server-9j5sym59.js → index.server-4x91gzy1.js} +2 -2
  189. package/dist/server/{index.server-q48q15g7.js → index.server-4y2jtvv1.js} +4 -2
  190. package/dist/server/{index.server-j3ddzcaa.js → index.server-5gzyqv78.js} +6 -6
  191. package/dist/server/index.server-67qgdypc.js +9 -0
  192. package/dist/server/index.server-6hnfzc7f.js +263 -0
  193. package/dist/server/{index.server-9jete4xx.js → index.server-6sh11ap6.js} +4 -4
  194. package/dist/server/{index.server-4ztq565m.js → index.server-85p4ydph.js} +1 -1
  195. package/dist/server/{index.server-4nk7gy0q.js → index.server-894t97kv.js} +1 -1
  196. package/dist/server/{index.server-1vscnped.js → index.server-8dt36sdm.js} +2 -1
  197. package/dist/server/{index.server-bfsbp9dz.js → index.server-8xvc73zh.js} +4 -4
  198. package/dist/server/{index.server-cvnw3hw9.js → index.server-9kz37z89.js} +1 -1
  199. package/dist/server/{index.server-kc1k02tk.js → index.server-9ykk1kbg.js} +1 -1
  200. package/dist/server/{index.server-g789yep6.js → index.server-aqethy0w.js} +2 -2
  201. package/dist/server/index.server-be9bpqeh.js +93 -0
  202. package/dist/server/{index.server-wc9aggfz.js → index.server-bmxbsk4y.js} +7 -7
  203. package/dist/server/{index.server-f3z7tpxr.js → index.server-c42b462p.js} +2 -4
  204. package/dist/server/{index.server-7vyzen5x.js → index.server-c5qv3p61.js} +171 -63
  205. package/dist/server/index.server-cch0eed5.js +144 -0
  206. package/dist/server/{index.server-q89dz8h1.js → index.server-d3pqthtp.js} +4 -3
  207. package/dist/server/{index.server-jk4rx4aa.js → index.server-dmmvwy6p.js} +1 -1
  208. package/dist/server/{index.server-hcfnae5y.js → index.server-dwwqssey.js} +4 -4
  209. package/dist/server/{index.server-e8x1hgw6.js → index.server-dz1r9xw5.js} +4 -4
  210. package/dist/server/{index.server-wm7mk5kw.js → index.server-ez5hp0ya.js} +1 -1
  211. package/dist/server/{index.server-wc8dbm5e.js → index.server-g95bk8rc.js} +4 -2
  212. package/dist/server/index.server-gkazv439.js +576 -0
  213. package/dist/server/index.server-gmh5ar16.js +2 -0
  214. package/dist/server/{index.server-dp9j2kkr.js → index.server-h0cvwvhy.js} +1 -1
  215. package/dist/server/{index.server-cbtg8rq5.js → index.server-h89zk5ev.js} +8 -8
  216. package/dist/server/{index.server-pacrqvyz.js → index.server-h90pjrez.js} +1 -1
  217. package/dist/server/{index.server-p8d04em5.js → index.server-hcsd5gdb.js} +6 -2
  218. package/dist/server/{index.server-n39drzes.js → index.server-hpeavvnq.js} +1 -1
  219. package/dist/server/{index.server-1p3patnj.js → index.server-hx91ng7z.js} +1 -1
  220. package/dist/server/{index.server-mehav5vs.js → index.server-jdcq5zza.js} +7 -7
  221. package/dist/server/{index.server-jync915v.js → index.server-jfrssta6.js} +25 -25
  222. package/dist/server/{index.server-jtj3r53y.js → index.server-jgb8yh5k.js} +1 -1
  223. package/dist/server/{index.server-ejyf7e48.js → index.server-jj76374p.js} +1 -1
  224. package/dist/server/{index.server-w1g5q9j9.js → index.server-jtgw9d23.js} +4 -2
  225. package/dist/server/{index.server-hd8gpehd.js → index.server-jxseyx33.js} +1 -1
  226. package/dist/server/{index.server-kg2sepsr.js → index.server-krqvnt6p.js} +14 -15
  227. package/dist/server/{index.server-0e1m3agz.js → index.server-ks49bprh.js} +1 -1
  228. package/dist/server/{index.server-f0hma3jp.js → index.server-kt0ncrqs.js} +1 -1
  229. package/dist/server/index.server-m0ezemav.js +170 -0
  230. package/dist/server/index.server-m191rm44.js +79 -0
  231. package/dist/server/{index.server-z721a5gp.js → index.server-n82rcv0m.js} +4 -4
  232. package/dist/server/{index.server-rhhmdxtz.js → index.server-np3c7kx0.js} +4 -4
  233. package/dist/server/{index.server-hpcs7tmh.js → index.server-p56xxef1.js} +1 -1
  234. package/dist/server/{index.server-w83kmcrx.js → index.server-pag862vz.js} +10 -10
  235. package/dist/server/index.server-qbkxz7r2.js +750 -0
  236. package/dist/server/{index.server-sh2rxejg.js → index.server-qke3ekjt.js} +1 -1
  237. package/dist/server/{index.server-73x2d3j3.js → index.server-rbpvcrr3.js} +1 -1
  238. package/dist/server/{index.server-8cxs4kya.js → index.server-rga8sc7j.js} +41 -44
  239. package/dist/server/{index.server-e3fnv1g6.js → index.server-sedjxt36.js} +5 -5
  240. package/dist/server/{index.server-pen9pxt6.js → index.server-sf3nk3j2.js} +2 -2
  241. package/dist/server/{index.server-f23vtaw4.js → index.server-tcay903b.js} +8 -7
  242. package/dist/server/{index.server-7fp0epev.js → index.server-veastatv.js} +4 -4
  243. package/dist/server/{index.server-jeqg2d22.js → index.server-xeqtpv61.js} +1 -1
  244. package/dist/server/{index.server-9s4na701.js → index.server-xjnge1yw.js} +4 -4
  245. package/dist/server/index.server-xtjjmsyq.js +315 -0
  246. package/dist/server/{index.server-hhxjaeen.js → index.server-xz99aed4.js} +4 -4
  247. package/dist/server/{index.server-vne4rzfa.js → index.server-y4n8vc08.js} +1 -1
  248. package/dist/server/{index.server-5d01cn4f.js → index.server-y83kqayt.js} +4 -4
  249. package/dist/server/{index.server-1nh09ck7.js → index.server-yhzydqxe.js} +5 -5
  250. package/dist/server/index.server-z38bxms8.js +734 -0
  251. package/dist/server/{index.server-atjc1qcq.js → index.server-z7hxtqs1.js} +1 -1
  252. package/dist/server/{index.server-w6k62afr.js → index.server-ze1ymmbw.js} +2 -2
  253. package/dist/server/{index.server-914v805w.js → index.server-zgd1g8mk.js} +1 -1
  254. package/dist/server/{index.server-aeexcxdp.js → index.server-zh3r8vfd.js} +1 -1
  255. package/dist/server/{index.server-10jb2jzm.js → index.server-zsjf8enc.js} +4 -4
  256. package/package.json +102 -5
  257. package/src/components/_internal/command-list-context.ts +3 -3
  258. package/src/components/_internal/create-command-list-state.svelte.ts +39 -13
  259. package/src/components/approval-card/approval-card-actions.svelte +168 -0
  260. package/src/components/approval-card/approval-card-state.ts +152 -1
  261. package/src/components/approval-card/approval-card.css +269 -92
  262. package/src/components/approval-card/approval-card.examples.json +3 -3
  263. package/src/components/approval-card/approval-card.schema.json +9 -30
  264. package/src/components/approval-card/approval-card.schema.ts +13 -31
  265. package/src/components/approval-card/approval-card.svelte +176 -470
  266. package/src/components/approval-card/approval-card.types.ts +15 -28
  267. package/src/components/approval-card/index.ts +1 -0
  268. package/src/components/card/card.css +5 -0
  269. package/src/components/card/card.schema.json +1 -1
  270. package/src/components/card/card.schema.ts +1 -1
  271. package/src/components/card/card.svelte +1 -0
  272. package/src/components/card/card.types.ts +2 -2
  273. package/src/components/chat/builders.ts +445 -14
  274. package/src/components/chat/chat.schema.json +36 -1
  275. package/src/components/chat/chat.schema.ts +44 -1
  276. package/src/components/chat/chat.svelte +12 -0
  277. package/src/components/chat/chat.types.ts +35 -3
  278. package/src/components/chat/container/chat.svelte +73 -3
  279. package/src/components/chat/conversation-model.ts +1 -0
  280. package/src/components/chat/index.ts +16 -3
  281. package/src/components/chat/input/chat-attachment-serialization.ts +63 -0
  282. package/src/components/chat/input/chat-input.svelte +22 -5
  283. package/src/components/chat/input/index.ts +5 -0
  284. package/src/components/chat/utilities/conversation.ts +33 -15
  285. package/src/components/chat-composer-popover/chat-composer-popover-filter.ts +68 -0
  286. package/src/components/chat-composer-popover/chat-composer-popover.css +7 -0
  287. package/src/components/chat-composer-popover/chat-composer-popover.examples.json +13 -0
  288. package/src/components/chat-composer-popover/chat-composer-popover.schema.json +90 -0
  289. package/src/components/chat-composer-popover/chat-composer-popover.schema.ts +95 -0
  290. package/src/components/chat-composer-popover/chat-composer-popover.svelte +234 -0
  291. package/src/components/chat-composer-popover/chat-composer-popover.types.ts +88 -0
  292. package/src/components/chat-composer-popover/chat-composer-popover.variables.json +1 -0
  293. package/src/components/chat-composer-popover/chat-composer-popover.variables.ts +3 -0
  294. package/src/components/chat-composer-popover/index.ts +19 -0
  295. package/src/components/code-block/code-block.schema.json +4 -0
  296. package/src/components/code-block/code-block.schema.ts +5 -0
  297. package/src/components/code-block/code-block.svelte +3 -3
  298. package/src/components/code-block/code-block.types.ts +6 -0
  299. package/src/components/command-item/command-item.svelte +7 -6
  300. package/src/components/command-menu/command-menu.schema.json +4 -0
  301. package/src/components/command-menu/command-menu.schema.ts +4 -0
  302. package/src/components/command-menu/command-menu.svelte +16 -5
  303. package/src/components/command-menu/command-menu.types.ts +2 -0
  304. package/src/components/connection-indicator/connection-indicator.css +136 -0
  305. package/src/components/connection-indicator/connection-indicator.examples.json +31 -0
  306. package/src/components/connection-indicator/connection-indicator.schema.json +29 -0
  307. package/src/components/connection-indicator/connection-indicator.schema.ts +36 -0
  308. package/src/components/connection-indicator/connection-indicator.svelte +63 -0
  309. package/src/components/connection-indicator/connection-indicator.types.ts +58 -0
  310. package/src/components/connection-indicator/connection-indicator.variables.json +1 -0
  311. package/src/components/connection-indicator/connection-indicator.variables.ts +3 -0
  312. package/src/components/connection-indicator/index.ts +10 -0
  313. package/src/components/container/container.schema.json +3 -3
  314. package/src/components/container/container.schema.ts +3 -3
  315. package/src/components/invocation-rule-builder/index.ts +4 -0
  316. package/src/components/invocation-rule-builder/invocation-rule-builder.css +28 -0
  317. package/src/components/invocation-rule-builder/invocation-rule-builder.examples.json +6 -0
  318. package/src/components/invocation-rule-builder/invocation-rule-builder.schema.json +76 -3
  319. package/src/components/invocation-rule-builder/invocation-rule-builder.schema.ts +83 -3
  320. package/src/components/invocation-rule-builder/invocation-rule-builder.svelte +326 -113
  321. package/src/components/invocation-rule-builder/invocation-rule-builder.types.ts +157 -43
  322. package/src/components/json-viewer/_json-viewer-node.svelte +15 -1
  323. package/src/components/json-viewer/json-viewer.css +10 -6
  324. package/src/components/payload-inspector/index.ts +0 -2
  325. package/src/components/payload-inspector/payload-inspector.css +15 -75
  326. package/src/components/payload-inspector/payload-inspector.examples.json +5 -5
  327. package/src/components/payload-inspector/payload-inspector.schema.json +3 -31
  328. package/src/components/payload-inspector/payload-inspector.schema.ts +3 -36
  329. package/src/components/payload-inspector/payload-inspector.svelte +46 -239
  330. package/src/components/payload-inspector/payload-inspector.types.ts +10 -58
  331. package/src/components/run-step-timeline/index.ts +8 -0
  332. package/src/components/run-step-timeline/run-step-branch-disclosure.svelte +16 -0
  333. package/src/components/run-step-timeline/run-step-timeline.css +124 -0
  334. package/src/components/run-step-timeline/run-step-timeline.examples.json +18 -0
  335. package/src/components/run-step-timeline/run-step-timeline.schema.json +872 -349
  336. package/src/components/run-step-timeline/run-step-timeline.schema.ts +931 -349
  337. package/src/components/run-step-timeline/run-step-timeline.svelte +387 -268
  338. package/src/components/run-step-timeline/run-step-timeline.types.ts +192 -5
  339. package/src/components/run-step-timeline/run-step-timeline.utilities.ts +242 -0
  340. package/src/components/schedule-builder/index.ts +14 -0
  341. package/src/components/schedule-builder/schedule-builder.css +121 -0
  342. package/src/components/schedule-builder/schedule-builder.examples.json +31 -0
  343. package/src/components/schedule-builder/schedule-builder.schema.json +78 -0
  344. package/src/components/schedule-builder/schedule-builder.schema.ts +86 -0
  345. package/src/components/schedule-builder/schedule-builder.svelte +629 -0
  346. package/src/components/schedule-builder/schedule-builder.types.ts +137 -0
  347. package/src/components/schedule-builder/schedule-builder.utilities.ts +344 -0
  348. package/src/components/schedule-builder/schedule-builder.variables.json +1 -0
  349. package/src/components/schedule-builder/schedule-builder.variables.ts +3 -0
  350. package/src/components/tab/tab.schema.json +6 -2
  351. package/src/components/tab/tab.schema.ts +8 -2
  352. package/src/components/tab/tab.svelte +9 -5
  353. package/src/components/tab/tab.types.ts +8 -2
  354. package/src/components/tag-input/tag-input.schema.json +4 -0
  355. package/src/components/tag-input/tag-input.schema.ts +4 -0
  356. package/src/components/tag-input/tag-input.svelte +20 -3
  357. package/src/components/tag-input/tag-input.types.ts +4 -0
  358. package/src/index.ts +41 -5
  359. package/src/styles/components.css +3 -0
  360. package/dist/server/index-49we2xfs.js +0 -344
  361. package/dist/server/index-8fhvxk30.js +0 -265
  362. package/dist/server/index-x2ysg8ds.js +0 -388
  363. package/dist/server/index.server-20j0jh30.js +0 -9
  364. package/dist/server/index.server-dc35kh7d.js +0 -1835
  365. package/dist/server/index.server-kd4b0342.js +0 -607
  366. package/dist/server/index.server-n5cdmsz4.js +0 -30
  367. package/dist/server/index.server-pxg74pyp.js +0 -393
  368. package/dist/server/index.server-rjap4k7y.js +0 -1389
  369. package/dist/server/index.server-vt6sn9y4.js +0 -447
  370. package/dist/server/index.server-w63n618v.js +0 -9
  371. package/dist/server/index.server-y2pa1k46.js +0 -9
@@ -0,0 +1,750 @@
1
+ import {
2
+ Time_field
3
+ } from "./index.server-c42b462p.js";
4
+ import {
5
+ Select
6
+ } from "./index.server-ex3ea9z0.js";
7
+ import {
8
+ Number_input
9
+ } from "./index.server-d146g8pr.js";
10
+ import {
11
+ Segmented_control
12
+ } from "./index.server-xeqtpv61.js";
13
+ import {
14
+ Segment
15
+ } from "./index.server-sedjxt36.js";
16
+ import {
17
+ Input
18
+ } from "./index.server-8xvc73zh.js";
19
+ import {
20
+ Chip
21
+ } from "./index.server-b6jr01st.js";
22
+ import {
23
+ classNames
24
+ } from "./index.server-z7nvkz8v.js";
25
+
26
+ // src/components/schedule-builder/schedule-builder.svelte
27
+ import * as $ from "svelte/internal/server";
28
+
29
+ // src/components/schedule-builder/schedule-builder.utilities.ts
30
+ var INTERVAL_UNITS = [
31
+ "minutes",
32
+ "hours",
33
+ "days",
34
+ "weeks"
35
+ ];
36
+ var WEEKDAYS = [
37
+ { value: 1, short: "Mon", long: "Monday" },
38
+ { value: 2, short: "Tue", long: "Tuesday" },
39
+ { value: 3, short: "Wed", long: "Wednesday" },
40
+ { value: 4, short: "Thu", long: "Thursday" },
41
+ { value: 5, short: "Fri", long: "Friday" },
42
+ { value: 6, short: "Sat", long: "Saturday" },
43
+ { value: 0, short: "Sun", long: "Sunday" }
44
+ ];
45
+ var CRON_FIELDS = [
46
+ { name: "Minute", min: 0, max: 59, hint: "0–59" },
47
+ { name: "Hour", min: 0, max: 23, hint: "0–23" },
48
+ { name: "Day of month", min: 1, max: 31, hint: "1–31" },
49
+ { name: "Month", min: 1, max: 12, hint: "1–12" },
50
+ { name: "Day of week", min: 0, max: 6, hint: "0–6 (Sun–Sat)" }
51
+ ];
52
+ function defaultScheduleValue() {
53
+ return { mode: "interval", every: 15, unit: "minutes" };
54
+ }
55
+ function singularUnit(unit) {
56
+ return unit.slice(0, -1);
57
+ }
58
+ function validateCronField(rawValue, fieldIndex) {
59
+ const field = CRON_FIELDS[fieldIndex];
60
+ if (!field)
61
+ return "Unknown field.";
62
+ const value = rawValue.trim();
63
+ if (value === "")
64
+ return "Required.";
65
+ const inRange = (n) => Number.isInteger(n) && n >= field.min && n <= field.max;
66
+ for (const part of value.split(",")) {
67
+ const token = part.trim();
68
+ if (token === "")
69
+ return "Empty list item.";
70
+ if (token === "*")
71
+ continue;
72
+ const stepMatch = token.match(/^(\*|\d+-\d+)\/(\d+)$/);
73
+ if (stepMatch) {
74
+ const step = Number(stepMatch[2] ?? "");
75
+ if (!Number.isInteger(step) || step <= 0)
76
+ return "Step must be a positive integer.";
77
+ if (step > field.max)
78
+ return `Step is larger than ${field.hint}.`;
79
+ const rangeText = stepMatch[1] ?? "*";
80
+ if (rangeText !== "*") {
81
+ const [a, b] = rangeText.split("-").map(Number);
82
+ if (a === undefined || b === undefined || !inRange(a) || !inRange(b)) {
83
+ return `Out of range (${field.hint}).`;
84
+ }
85
+ if (a > b)
86
+ return "Range start is after its end.";
87
+ }
88
+ continue;
89
+ }
90
+ const rangeMatch = token.match(/^(\d+)-(\d+)$/);
91
+ if (rangeMatch) {
92
+ const a = Number(rangeMatch[1]);
93
+ const b = Number(rangeMatch[2]);
94
+ if (!inRange(a) || !inRange(b))
95
+ return `Out of range (${field.hint}).`;
96
+ if (a > b)
97
+ return "Range start is after its end.";
98
+ continue;
99
+ }
100
+ if (/^\d+$/.test(token)) {
101
+ if (!inRange(Number(token)))
102
+ return `Out of range (${field.hint}).`;
103
+ continue;
104
+ }
105
+ return "Not a valid cron token.";
106
+ }
107
+ return;
108
+ }
109
+ function cronFieldsValid(fields) {
110
+ return fields.length === 5 && fields.every((value, index) => validateCronField(value, index) === undefined);
111
+ }
112
+ function joinCron(fields) {
113
+ return fields.map((field) => field.trim()).join(" ");
114
+ }
115
+ function splitCron(expression) {
116
+ const parts = expression.trim().split(/\s+/).filter(Boolean);
117
+ const lastField = parts.length > 5 ? parts.slice(4).join(" ") : parts[4];
118
+ return [parts[0] ?? "*", parts[1] ?? "*", parts[2] ?? "*", parts[3] ?? "*", lastField ?? "*"];
119
+ }
120
+ function parseTime(time) {
121
+ const match = time.trim().match(/^(\d{1,2}):(\d{2})$/);
122
+ if (!match)
123
+ return { hour: 0, minute: 0 };
124
+ const hour = Math.min(23, Math.max(0, Number(match[1])));
125
+ const minute = Math.min(59, Math.max(0, Number(match[2])));
126
+ return { hour, minute };
127
+ }
128
+ function lowerEveryN(every, unit) {
129
+ const safeEvery = Number.isInteger(every) && every > 0 ? every : 1;
130
+ return { mode: "interval", every: safeEvery, unit };
131
+ }
132
+ function lowerDailyAt(time) {
133
+ const { hour, minute } = parseTime(time);
134
+ return { mode: "cron", expression: `${minute} ${hour} * * *` };
135
+ }
136
+ function lowerWeeklyAt(days, time) {
137
+ const { hour, minute } = parseTime(time);
138
+ const sortedDays = [...days];
139
+ sortedDays.sort((a, b) => a - b);
140
+ const dow = sortedDays.length > 0 ? sortedDays.join(",") : "*";
141
+ return { mode: "cron", expression: `${minute} ${hour} * * ${dow}` };
142
+ }
143
+ function lowerMonthlyOnDay(day, time) {
144
+ const { hour, minute } = parseTime(time);
145
+ const safeDay = Math.min(31, Math.max(1, Math.trunc(day)));
146
+ return { mode: "cron", expression: `${minute} ${hour} ${safeDay} * *` };
147
+ }
148
+ function isEvenDivisorStep(every, cycleLength) {
149
+ return Number.isInteger(every) && every > 0 && every < cycleLength && cycleLength % every === 0;
150
+ }
151
+ function valueToCronFields(value) {
152
+ if (value.mode === "cron")
153
+ return splitCron(value.expression);
154
+ switch (value.unit) {
155
+ case "minutes":
156
+ if (isEvenDivisorStep(value.every, 60))
157
+ return [`*/${value.every}`, "*", "*", "*", "*"];
158
+ if (value.every % 60 === 0)
159
+ return hoursIntervalFields(value.every / 60);
160
+ return ["0", "0", "*", "*", "*"];
161
+ case "hours":
162
+ return hoursIntervalFields(value.every);
163
+ case "days":
164
+ case "weeks":
165
+ return ["0", "0", "*", "*", "*"];
166
+ }
167
+ }
168
+ function hoursIntervalFields(everyHours) {
169
+ if (everyHours === 1)
170
+ return ["0", "*", "*", "*", "*"];
171
+ if (isEvenDivisorStep(everyHours, 24))
172
+ return ["0", `*/${everyHours}`, "*", "*", "*"];
173
+ return ["0", "0", "*", "*", "*"];
174
+ }
175
+ function valueToInterval(value) {
176
+ if (value.mode === "interval")
177
+ return { every: value.every, unit: value.unit };
178
+ const [minute, hour, dom, month, dow] = splitCron(value.expression);
179
+ if (month !== "*" || dow !== "*")
180
+ return;
181
+ if (dom === "*" && hour === "*" && minute === "*")
182
+ return { every: 1, unit: "minutes" };
183
+ if (dom === "*" && hour === "*" && minute === "0")
184
+ return { every: 1, unit: "hours" };
185
+ const minuteStep = cronFieldStep(minute);
186
+ if (minuteStep && isEvenDivisorStep(minuteStep, 60) && hour === "*" && dom === "*") {
187
+ return { every: minuteStep, unit: "minutes" };
188
+ }
189
+ const hourStep = cronFieldStep(hour);
190
+ if (hourStep && isEvenDivisorStep(hourStep, 24) && minute === "0" && dom === "*") {
191
+ return { every: hourStep, unit: "hours" };
192
+ }
193
+ return;
194
+ }
195
+ function cronFieldStep(token) {
196
+ const match = token.match(/^\*\/(\d+)$/);
197
+ return match ? Number(match[1]) : undefined;
198
+ }
199
+ var DOW_NAMES = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
200
+ function pad2(n) {
201
+ return n.toString().padStart(2, "0");
202
+ }
203
+ function isFixedInRange(token, min, max) {
204
+ if (!/^\d+$/.test(token))
205
+ return false;
206
+ const n = Number(token);
207
+ return Number.isInteger(n) && n >= min && n <= max;
208
+ }
209
+ function describeValue(value) {
210
+ if (value.mode === "interval") {
211
+ return value.every === 1 ? `Every ${singularUnit(value.unit)}` : `Every ${value.every} ${value.unit}`;
212
+ }
213
+ const [minute, hour, dom, month, dow] = splitCron(value.expression);
214
+ const timeIsFixed = isFixedInRange(minute, 0, 59) && isFixedInRange(hour, 0, 23);
215
+ const at = timeIsFixed ? ` at ${pad2(Number(hour))}:${pad2(Number(minute))}` : "";
216
+ if (timeIsFixed && dom === "*" && month === "*" && dow !== "*" && /^[\d,]+$/.test(dow)) {
217
+ const dayNumbers = dow.split(",").map(Number);
218
+ const allDaysInRange = dayNumbers.every((day) => Number.isInteger(day) && day >= 0 && day <= 6);
219
+ if (allDaysInRange) {
220
+ const names = dayNumbers.map((day) => DOW_NAMES[day] ?? "").join(", ");
221
+ return `Weekly on ${names}${at}`;
222
+ }
223
+ }
224
+ if (timeIsFixed && isFixedInRange(dom, 1, 31) && month === "*" && dow === "*") {
225
+ return `Monthly on day ${dom}${at}`;
226
+ }
227
+ if (dom === "*" && month === "*" && dow === "*" && timeIsFixed) {
228
+ return `Daily${at}`;
229
+ }
230
+ return `Cron: ${joinCron([minute, hour, dom, month, dow])}`;
231
+ }
232
+
233
+ // src/components/schedule-builder/schedule-builder.svelte
234
+ function Schedule_builder($$renderer, $$props) {
235
+ $$renderer.component(($$renderer2) => {
236
+ const baseId = $.props_id($$renderer2);
237
+ const PRESET_EVERY_UNIT_OPTIONS = [
238
+ { value: "minutes", label: "Minutes" },
239
+ { value: "hours", label: "Hours" }
240
+ ];
241
+ const INTERVAL_UNIT_LABELS = {
242
+ minutes: "Minutes",
243
+ hours: "Hours",
244
+ days: "Days",
245
+ weeks: "Weeks"
246
+ };
247
+ const INTERVAL_UNIT_OPTIONS = INTERVAL_UNITS.map((unit) => ({ value: unit, label: INTERVAL_UNIT_LABELS[unit] }));
248
+ let {
249
+ value,
250
+ onchange,
251
+ computeNextFires,
252
+ previewCount = 5,
253
+ timezoneLabel,
254
+ timezone,
255
+ label = "Schedule",
256
+ class: className,
257
+ "aria-label": ariaLabel,
258
+ "aria-labelledby": ariaLabelledby,
259
+ $$slots,
260
+ $$events,
261
+ ...rest
262
+ } = $$props;
263
+ const normalizedAriaLabel = $.derived(() => typeof ariaLabel === "string" && ariaLabel.trim().length > 0 ? ariaLabel : undefined);
264
+ const normalizedAriaLabelledby = $.derived(() => typeof ariaLabelledby === "string" && ariaLabelledby.trim().length > 0 ? ariaLabelledby : undefined);
265
+ const resolvedAriaLabel = $.derived(() => normalizedAriaLabelledby() === undefined && normalizedAriaLabel() === undefined ? label : normalizedAriaLabel());
266
+ const seedValue = value ?? defaultScheduleValue();
267
+ function scheduleValuesEqual(a, b) {
268
+ if (a.mode !== b.mode)
269
+ return false;
270
+ if (a.mode === "cron" && b.mode === "cron")
271
+ return a.expression === b.expression;
272
+ if (a.mode === "interval" && b.mode === "interval") {
273
+ return a.every === b.every && a.unit === b.unit;
274
+ }
275
+ return false;
276
+ }
277
+ function initialAuthoringMode(candidateValue) {
278
+ if (candidateValue === undefined)
279
+ return "presets";
280
+ if (candidateValue.mode === "cron")
281
+ return "cron";
282
+ return candidateValue.unit === "minutes" || candidateValue.unit === "hours" ? "presets" : "interval";
283
+ }
284
+ function seedFieldsFromValue(seededValue) {
285
+ const interval = valueToInterval(seededValue);
286
+ const isMinutesOrHours = interval !== undefined && (interval.unit === "minutes" || interval.unit === "hours");
287
+ return {
288
+ authoringMode: initialAuthoringMode(seededValue),
289
+ cronFields: valueToCronFields(seededValue),
290
+ intervalEvery: interval?.every ?? 15,
291
+ intervalUnit: interval?.unit ?? "minutes",
292
+ presetKind: "every",
293
+ presetEveryValue: isMinutesOrHours ? interval.every : 15,
294
+ presetEveryUnit: isMinutesOrHours ? interval.unit : "minutes",
295
+ presetDailyTime: "09:00",
296
+ presetWeeklyDays: [],
297
+ presetWeeklyTime: "09:00",
298
+ presetMonthlyDay: 1,
299
+ presetMonthlyTime: "09:00"
300
+ };
301
+ }
302
+ const initialSeed = seedFieldsFromValue(seedValue);
303
+ let authoringMode = initialSeed.authoringMode;
304
+ let presetKind = initialSeed.presetKind;
305
+ let cronFields = initialSeed.cronFields;
306
+ let intervalEvery = initialSeed.intervalEvery;
307
+ let intervalUnit = initialSeed.intervalUnit;
308
+ let presetEveryValue = initialSeed.presetEveryValue;
309
+ let presetEveryUnit = initialSeed.presetEveryUnit;
310
+ let presetDailyTime = initialSeed.presetDailyTime;
311
+ let presetWeeklyDays = initialSeed.presetWeeklyDays;
312
+ let presetWeeklyTime = initialSeed.presetWeeklyTime;
313
+ let presetMonthlyDay = initialSeed.presetMonthlyDay;
314
+ let presetMonthlyTime = initialSeed.presetMonthlyTime;
315
+ function valueForPresets() {
316
+ switch (presetKind) {
317
+ case "every":
318
+ return lowerEveryN(presetEveryValue, presetEveryUnit);
319
+ case "daily":
320
+ return lowerDailyAt(presetDailyTime);
321
+ case "weekly":
322
+ return lowerWeeklyAt(presetWeeklyDays, presetWeeklyTime);
323
+ case "monthly":
324
+ return lowerMonthlyOnDay(presetMonthlyDay, presetMonthlyTime);
325
+ }
326
+ }
327
+ function valueForMode(mode) {
328
+ if (mode === "cron")
329
+ return { mode: "cron", expression: joinCron(cronFields) };
330
+ if (mode === "interval")
331
+ return { mode: "interval", every: intervalEvery, unit: intervalUnit };
332
+ return valueForPresets();
333
+ }
334
+ const currentValue = $.derived(() => valueForMode(authoringMode));
335
+ const currentValueIsValid = $.derived(() => authoringMode !== "cron" || cronFieldsValid(cronFields));
336
+ const resolvedPreviewCount = $.derived(() => Number.isInteger(previewCount) && previewCount > 0 ? previewCount : 5);
337
+ const previewResult = $.derived(() => {
338
+ if (!computeNextFires)
339
+ return { status: "hidden" };
340
+ if (!currentValueIsValid())
341
+ return { status: "invalid" };
342
+ try {
343
+ return {
344
+ status: "ok",
345
+ fires: computeNextFires(currentValue(), resolvedPreviewCount())
346
+ };
347
+ } catch {
348
+ return { status: "error" };
349
+ }
350
+ });
351
+ let lastKnownValue = seedValue;
352
+ let previousValueProp = value;
353
+ function emitChange() {
354
+ lastKnownValue = currentValue();
355
+ onchange?.(currentValue());
356
+ }
357
+ function handleAuthoringModeChange(nextMode) {
358
+ if (nextMode === authoringMode)
359
+ return;
360
+ authoringMode = nextMode;
361
+ if (nextMode === "cron") {
362
+ cronFields = valueToCronFields(lastKnownValue);
363
+ } else if (nextMode === "interval") {
364
+ const interval = valueToInterval(lastKnownValue);
365
+ if (interval) {
366
+ intervalEvery = interval.every;
367
+ intervalUnit = interval.unit;
368
+ }
369
+ } else if (nextMode === "presets") {
370
+ const seed = seedFieldsFromValue(lastKnownValue);
371
+ presetKind = seed.presetKind;
372
+ presetEveryValue = seed.presetEveryValue;
373
+ presetEveryUnit = seed.presetEveryUnit;
374
+ presetDailyTime = seed.presetDailyTime;
375
+ presetWeeklyDays = seed.presetWeeklyDays;
376
+ presetWeeklyTime = seed.presetWeeklyTime;
377
+ presetMonthlyDay = seed.presetMonthlyDay;
378
+ presetMonthlyTime = seed.presetMonthlyTime;
379
+ }
380
+ }
381
+ function handlePresetKindChange(nextKind) {
382
+ if (nextKind === presetKind)
383
+ return;
384
+ presetKind = nextKind;
385
+ emitChange();
386
+ }
387
+ function handleCronFieldChange(index, raw) {
388
+ const next = [...cronFields];
389
+ next[index] = raw;
390
+ cronFields = next;
391
+ if (cronFieldsValid(next))
392
+ emitChange();
393
+ }
394
+ function toPositiveInteger(next) {
395
+ if (next === null || !Number.isFinite(next) || next < 1)
396
+ return 1;
397
+ return Math.trunc(next);
398
+ }
399
+ function handleIntervalEveryChange(next) {
400
+ intervalEvery = toPositiveInteger(next);
401
+ emitChange();
402
+ }
403
+ function handleIntervalUnitChange(event) {
404
+ intervalUnit = event.currentTarget.value;
405
+ emitChange();
406
+ }
407
+ function handlePresetEveryValueChange(next) {
408
+ presetEveryValue = toPositiveInteger(next);
409
+ emitChange();
410
+ }
411
+ function handlePresetEveryUnitChange(event) {
412
+ presetEveryUnit = event.currentTarget.value;
413
+ emitChange();
414
+ }
415
+ function acceptPresetTime(next, commit) {
416
+ if (!next)
417
+ return;
418
+ commit(next);
419
+ emitChange();
420
+ }
421
+ function handlePresetDailyTimeChange(next) {
422
+ acceptPresetTime(next, (time) => presetDailyTime = time);
423
+ }
424
+ function toggleWeeklyDay(day) {
425
+ presetWeeklyDays = presetWeeklyDays.includes(day) ? presetWeeklyDays.filter((existing) => existing !== day) : [...presetWeeklyDays, day];
426
+ emitChange();
427
+ }
428
+ function handlePresetWeeklyTimeChange(next) {
429
+ acceptPresetTime(next, (time) => presetWeeklyTime = time);
430
+ }
431
+ function handlePresetMonthlyDayChange(next) {
432
+ presetMonthlyDay = next && next >= 1 ? Math.min(31, Math.trunc(next)) : 1;
433
+ emitChange();
434
+ }
435
+ function handlePresetMonthlyTimeChange(next) {
436
+ acceptPresetTime(next, (time) => presetMonthlyTime = time);
437
+ }
438
+ const modeTabId = (mode) => `${baseId}-mode-${mode}-tab`;
439
+ const modePanelId = (mode) => `${baseId}-mode-${mode}-panel`;
440
+ let $$settled = true;
441
+ let $$inner_renderer;
442
+ function $$render_inner($$renderer3) {
443
+ $$renderer3.push(`<div${$.attributes({
444
+ ...rest,
445
+ class: $.clsx(classNames("cinder-schedule-builder", className)),
446
+ role: "group",
447
+ "aria-label": resolvedAriaLabel(),
448
+ "aria-labelledby": normalizedAriaLabelledby(),
449
+ "data-sb-mode": authoringMode
450
+ })}>`);
451
+ Segmented_control($$renderer3, {
452
+ id: `${baseId}-mode`,
453
+ label: "Schedule authoring mode",
454
+ variant: "tablist",
455
+ value: authoringMode,
456
+ onchange: handleAuthoringModeChange,
457
+ class: "cinder-schedule-builder__mode-switch",
458
+ children: ($$renderer4) => {
459
+ Segment($$renderer4, {
460
+ id: modeTabId("presets"),
461
+ value: "presets",
462
+ controls: modePanelId("presets"),
463
+ children: ($$renderer5) => {
464
+ $$renderer5.push(`<!---->Presets`);
465
+ },
466
+ $$slots: { default: true }
467
+ });
468
+ $$renderer4.push(`<!----> `);
469
+ Segment($$renderer4, {
470
+ id: modeTabId("cron"),
471
+ value: "cron",
472
+ controls: modePanelId("cron"),
473
+ children: ($$renderer5) => {
474
+ $$renderer5.push(`<!---->Cron`);
475
+ },
476
+ $$slots: { default: true }
477
+ });
478
+ $$renderer4.push(`<!----> `);
479
+ Segment($$renderer4, {
480
+ id: modeTabId("interval"),
481
+ value: "interval",
482
+ controls: modePanelId("interval"),
483
+ children: ($$renderer5) => {
484
+ $$renderer5.push(`<!---->Interval`);
485
+ },
486
+ $$slots: { default: true }
487
+ });
488
+ $$renderer4.push(`<!---->`);
489
+ },
490
+ $$slots: { default: true }
491
+ });
492
+ $$renderer3.push(`<!----> `);
493
+ if (authoringMode === "presets") {
494
+ $$renderer3.push("<!--[0-->");
495
+ $$renderer3.push(`<div${$.attr("id", modePanelId("presets"))} role="tabpanel"${$.attr("aria-labelledby", modeTabId("presets"))} class="cinder-schedule-builder__panel" data-sb-panel="presets">`);
496
+ Segmented_control($$renderer3, {
497
+ id: `${baseId}-preset-kind`,
498
+ label: "Preset kind",
499
+ value: presetKind,
500
+ onchange: handlePresetKindChange,
501
+ class: "cinder-schedule-builder__preset-kind",
502
+ children: ($$renderer4) => {
503
+ Segment($$renderer4, {
504
+ id: `${baseId}-preset-kind-every`,
505
+ value: "every",
506
+ children: ($$renderer5) => {
507
+ $$renderer5.push(`<!---->Every N`);
508
+ },
509
+ $$slots: { default: true }
510
+ });
511
+ $$renderer4.push(`<!----> `);
512
+ Segment($$renderer4, {
513
+ id: `${baseId}-preset-kind-daily`,
514
+ value: "daily",
515
+ children: ($$renderer5) => {
516
+ $$renderer5.push(`<!---->Daily`);
517
+ },
518
+ $$slots: { default: true }
519
+ });
520
+ $$renderer4.push(`<!----> `);
521
+ Segment($$renderer4, {
522
+ id: `${baseId}-preset-kind-weekly`,
523
+ value: "weekly",
524
+ children: ($$renderer5) => {
525
+ $$renderer5.push(`<!---->Weekly`);
526
+ },
527
+ $$slots: { default: true }
528
+ });
529
+ $$renderer4.push(`<!----> `);
530
+ Segment($$renderer4, {
531
+ id: `${baseId}-preset-kind-monthly`,
532
+ value: "monthly",
533
+ children: ($$renderer5) => {
534
+ $$renderer5.push(`<!---->Monthly`);
535
+ },
536
+ $$slots: { default: true }
537
+ });
538
+ $$renderer4.push(`<!---->`);
539
+ },
540
+ $$slots: { default: true }
541
+ });
542
+ $$renderer3.push(`<!----> `);
543
+ if (presetKind === "every") {
544
+ $$renderer3.push("<!--[0-->");
545
+ var bind_get = () => presetEveryValue;
546
+ var bind_set = handlePresetEveryValueChange;
547
+ $$renderer3.push(`<div class="cinder-schedule-builder__field-row">`);
548
+ Number_input($$renderer3, {
549
+ id: `${baseId}-preset-every-value`,
550
+ label: "Every",
551
+ min: 1,
552
+ step: 1,
553
+ get value() {
554
+ return bind_get();
555
+ },
556
+ set value($$value) {
557
+ bind_set($$value);
558
+ }
559
+ });
560
+ $$renderer3.push(`<!----> `);
561
+ Select($$renderer3, {
562
+ id: `${baseId}-preset-every-unit`,
563
+ label: "Unit",
564
+ options: PRESET_EVERY_UNIT_OPTIONS,
565
+ value: presetEveryUnit,
566
+ onchange: handlePresetEveryUnitChange
567
+ });
568
+ $$renderer3.push(`<!----></div>`);
569
+ } else if (presetKind === "daily") {
570
+ $$renderer3.push("<!--[1-->");
571
+ var bind_get_1 = () => presetDailyTime;
572
+ var bind_set_1 = handlePresetDailyTimeChange;
573
+ Time_field($$renderer3, {
574
+ id: `${baseId}-preset-daily-time`,
575
+ label: "At",
576
+ get value() {
577
+ return bind_get_1();
578
+ },
579
+ set value($$value) {
580
+ bind_set_1($$value);
581
+ }
582
+ });
583
+ } else if (presetKind === "weekly") {
584
+ $$renderer3.push("<!--[2-->");
585
+ var bind_get_2 = () => presetWeeklyTime;
586
+ var bind_set_2 = handlePresetWeeklyTimeChange;
587
+ $$renderer3.push(`<div class="cinder-schedule-builder__weekday-group" role="group" aria-label="Days of week"><!--[-->`);
588
+ const each_array = $.ensure_array_like(WEEKDAYS);
589
+ for (let $$index = 0, $$length = each_array.length;$$index < $$length; $$index++) {
590
+ let day = each_array[$$index];
591
+ Chip($$renderer3, {
592
+ mode: "toggle",
593
+ label: day.short,
594
+ "aria-label": day.long,
595
+ pressed: presetWeeklyDays.includes(day.value),
596
+ onpressedchange: () => toggleWeeklyDay(day.value)
597
+ });
598
+ }
599
+ $$renderer3.push(`<!--]--></div> `);
600
+ Time_field($$renderer3, {
601
+ id: `${baseId}-preset-weekly-time`,
602
+ label: "At",
603
+ get value() {
604
+ return bind_get_2();
605
+ },
606
+ set value($$value) {
607
+ bind_set_2($$value);
608
+ }
609
+ });
610
+ $$renderer3.push(`<!---->`);
611
+ } else {
612
+ $$renderer3.push("<!--[-1-->");
613
+ var bind_get_3 = () => presetMonthlyDay;
614
+ var bind_set_3 = handlePresetMonthlyDayChange;
615
+ var bind_get_4 = () => presetMonthlyTime;
616
+ var bind_set_4 = handlePresetMonthlyTimeChange;
617
+ $$renderer3.push(`<div class="cinder-schedule-builder__field-row">`);
618
+ Number_input($$renderer3, {
619
+ id: `${baseId}-preset-monthly-day`,
620
+ label: "Day of month",
621
+ min: 1,
622
+ max: 31,
623
+ get value() {
624
+ return bind_get_3();
625
+ },
626
+ set value($$value) {
627
+ bind_set_3($$value);
628
+ }
629
+ });
630
+ $$renderer3.push(`<!----> `);
631
+ Time_field($$renderer3, {
632
+ id: `${baseId}-preset-monthly-time`,
633
+ label: "At",
634
+ get value() {
635
+ return bind_get_4();
636
+ },
637
+ set value($$value) {
638
+ bind_set_4($$value);
639
+ }
640
+ });
641
+ $$renderer3.push(`<!----></div>`);
642
+ }
643
+ $$renderer3.push(`<!--]--></div>`);
644
+ } else if (authoringMode === "cron") {
645
+ $$renderer3.push("<!--[1-->");
646
+ $$renderer3.push(`<div${$.attr("id", modePanelId("cron"))} role="tabpanel"${$.attr("aria-labelledby", modeTabId("cron"))} class="cinder-schedule-builder__panel" data-sb-panel="cron"><div class="cinder-schedule-builder__cron-fields"><!--[-->`);
647
+ const each_array_1 = $.ensure_array_like(CRON_FIELDS);
648
+ for (let index = 0, $$length = each_array_1.length;index < $$length; index++) {
649
+ let field = each_array_1[index];
650
+ const fieldError = validateCronField(cronFields[index] ?? "*", index);
651
+ var bind_get_5 = () => cronFields[index] ?? "*";
652
+ var bind_set_5 = (next) => handleCronFieldChange(index, next);
653
+ Input($$renderer3, $.spread_props([
654
+ {
655
+ id: `${baseId}-cron-field-${index}`,
656
+ label: field.name,
657
+ description: field.hint,
658
+ get value() {
659
+ return bind_get_5();
660
+ },
661
+ set value($$value) {
662
+ bind_set_5($$value);
663
+ }
664
+ },
665
+ fieldError ? { error: fieldError } : {}
666
+ ]));
667
+ }
668
+ $$renderer3.push(`<!--]--></div></div>`);
669
+ } else {
670
+ $$renderer3.push("<!--[-1-->");
671
+ var bind_get_6 = () => intervalEvery;
672
+ var bind_set_6 = handleIntervalEveryChange;
673
+ $$renderer3.push(`<div${$.attr("id", modePanelId("interval"))} role="tabpanel"${$.attr("aria-labelledby", modeTabId("interval"))} class="cinder-schedule-builder__panel" data-sb-panel="interval"><div class="cinder-schedule-builder__field-row">`);
674
+ Number_input($$renderer3, {
675
+ id: `${baseId}-interval-every`,
676
+ label: "Every",
677
+ min: 1,
678
+ step: 1,
679
+ get value() {
680
+ return bind_get_6();
681
+ },
682
+ set value($$value) {
683
+ bind_set_6($$value);
684
+ }
685
+ });
686
+ $$renderer3.push(`<!----> `);
687
+ Select($$renderer3, {
688
+ id: `${baseId}-interval-unit`,
689
+ label: "Unit",
690
+ options: INTERVAL_UNIT_OPTIONS,
691
+ value: intervalUnit,
692
+ onchange: handleIntervalUnitChange
693
+ });
694
+ $$renderer3.push(`<!----></div></div>`);
695
+ }
696
+ $$renderer3.push(`<!--]--> <dl class="cinder-schedule-builder__summary"><dt class="cinder-schedule-builder__section-label">Summary</dt> <dd class="cinder-schedule-builder__summary-text">${$.escape(describeValue(currentValue()))}</dd></dl> `);
697
+ if (previewResult().status !== "hidden") {
698
+ $$renderer3.push("<!--[0-->");
699
+ $$renderer3.push(`<div class="cinder-schedule-builder__preview"><span class="cinder-schedule-builder__section-label"${$.attr("id", `${baseId}-preview-label`)}>Upcoming fires</span> `);
700
+ if (previewResult().status === "invalid") {
701
+ $$renderer3.push("<!--[0-->");
702
+ $$renderer3.push(`<p class="cinder-schedule-builder__empty">Preview unavailable — fix the cron expression above.</p>`);
703
+ } else if (previewResult().status === "error") {
704
+ $$renderer3.push("<!--[1-->");
705
+ $$renderer3.push(`<p class="cinder-schedule-builder__empty">Preview unavailable.</p>`);
706
+ } else if (previewResult().fires.length > 0) {
707
+ $$renderer3.push("<!--[2-->");
708
+ $$renderer3.push(`<ul class="cinder-schedule-builder__preview-list"${$.attr("aria-labelledby", `${baseId}-preview-label`)}><!--[-->`);
709
+ const each_array_2 = $.ensure_array_like(previewResult().fires);
710
+ for (let $$index_2 = 0, $$length = each_array_2.length;$$index_2 < $$length; $$index_2++) {
711
+ let fire = each_array_2[$$index_2];
712
+ $$renderer3.push(`<li class="cinder-schedule-builder__preview-item">${$.escape(fire.label)}</li>`);
713
+ }
714
+ $$renderer3.push(`<!--]--></ul>`);
715
+ } else {
716
+ $$renderer3.push("<!--[-1-->");
717
+ $$renderer3.push(`<p class="cinder-schedule-builder__empty">No upcoming fires.</p>`);
718
+ }
719
+ $$renderer3.push(`<!--]--></div>`);
720
+ } else {
721
+ $$renderer3.push("<!--[-1-->");
722
+ }
723
+ $$renderer3.push(`<!--]--> <dl class="cinder-schedule-builder__timezone"><dt class="cinder-schedule-builder__section-label">Timezone</dt> <dd class="cinder-schedule-builder__timezone-value">`);
724
+ if (timezone) {
725
+ $$renderer3.push("<!--[0-->");
726
+ timezone($$renderer3);
727
+ $$renderer3.push(`<!---->`);
728
+ } else if (timezoneLabel) {
729
+ $$renderer3.push("<!--[1-->");
730
+ $$renderer3.push(`${$.escape(timezoneLabel)}`);
731
+ } else {
732
+ $$renderer3.push("<!--[-1-->");
733
+ $$renderer3.push(`<span class="cinder-schedule-builder__empty">Not set</span>`);
734
+ }
735
+ $$renderer3.push(`<!--]--></dd></dl></div>`);
736
+ }
737
+ do {
738
+ $$settled = true;
739
+ $$inner_renderer = $$renderer2.copy();
740
+ $$render_inner($$inner_renderer);
741
+ } while (!$$settled);
742
+ $$renderer2.subsume($$inner_renderer);
743
+ }, Schedule_builder);
744
+ }
745
+
746
+ // src/components/schedule-builder/index.ts
747
+ var schedule_builder_default = Schedule_builder;
748
+ export { Schedule_builder, schedule_builder_default };
749
+
750
+ //# debugId=302BB8070B07926364756E2164756E21