@flanksource/clicky-ui 0.3.47 → 0.3.49

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 (255) hide show
  1. package/README.md +49 -0
  2. package/dist/comments/CommentSidePanel.cjs +10 -4
  3. package/dist/comments/CommentSidePanel.cjs.map +1 -1
  4. package/dist/comments/CommentSidePanel.d.ts +2 -0
  5. package/dist/comments/CommentSidePanel.d.ts.map +1 -1
  6. package/dist/comments/CommentSidePanel.js +10 -4
  7. package/dist/comments/CommentSidePanel.js.map +1 -1
  8. package/dist/comments/CommentThread.cjs +2 -0
  9. package/dist/comments/CommentThread.cjs.map +1 -1
  10. package/dist/comments/CommentThread.d.ts +2 -1
  11. package/dist/comments/CommentThread.d.ts.map +1 -1
  12. package/dist/comments/CommentThread.js +2 -0
  13. package/dist/comments/CommentThread.js.map +1 -1
  14. package/dist/comments/CommentThreadList.cjs +3 -0
  15. package/dist/comments/CommentThreadList.cjs.map +1 -1
  16. package/dist/comments/CommentThreadList.d.ts +3 -1
  17. package/dist/comments/CommentThreadList.d.ts.map +1 -1
  18. package/dist/comments/CommentThreadList.js +3 -0
  19. package/dist/comments/CommentThreadList.js.map +1 -1
  20. package/dist/data/CodeLine.cjs +4 -2
  21. package/dist/data/CodeLine.cjs.map +1 -1
  22. package/dist/data/CodeLine.d.ts.map +1 -1
  23. package/dist/data/CodeLine.js +4 -2
  24. package/dist/data/CodeLine.js.map +1 -1
  25. package/dist/data/DataTable.cjs +18 -8
  26. package/dist/data/DataTable.cjs.map +1 -1
  27. package/dist/data/DataTable.d.ts +4 -0
  28. package/dist/data/DataTable.d.ts.map +1 -1
  29. package/dist/data/DataTable.js +18 -8
  30. package/dist/data/DataTable.js.map +1 -1
  31. package/dist/data/SymbolBadge.cjs +61 -0
  32. package/dist/data/SymbolBadge.cjs.map +1 -0
  33. package/dist/data/SymbolBadge.d.ts +21 -0
  34. package/dist/data/SymbolBadge.d.ts.map +1 -0
  35. package/dist/data/SymbolBadge.js +61 -0
  36. package/dist/data/SymbolBadge.js.map +1 -0
  37. package/dist/data/TaskManager.cjs +183 -159
  38. package/dist/data/TaskManager.cjs.map +1 -1
  39. package/dist/data/TaskManager.d.ts +3 -1
  40. package/dist/data/TaskManager.d.ts.map +1 -1
  41. package/dist/data/TaskManager.js +185 -161
  42. package/dist/data/TaskManager.js.map +1 -1
  43. package/dist/data/TaskManagerButton.cjs +1 -0
  44. package/dist/data/TaskManagerButton.cjs.map +1 -1
  45. package/dist/data/TaskManagerButton.js +1 -0
  46. package/dist/data/TaskManagerButton.js.map +1 -1
  47. package/dist/data/TaskProgress.cjs +13 -7
  48. package/dist/data/TaskProgress.cjs.map +1 -1
  49. package/dist/data/TaskProgress.d.ts +3 -1
  50. package/dist/data/TaskProgress.d.ts.map +1 -1
  51. package/dist/data/TaskProgress.js +13 -7
  52. package/dist/data/TaskProgress.js.map +1 -1
  53. package/dist/data/test-runner/TestDetailPanel.cjs +26 -12
  54. package/dist/data/test-runner/TestDetailPanel.cjs.map +1 -1
  55. package/dist/data/test-runner/TestDetailPanel.d.ts.map +1 -1
  56. package/dist/data/test-runner/TestDetailPanel.js +27 -13
  57. package/dist/data/test-runner/TestDetailPanel.js.map +1 -1
  58. package/dist/data/test-runner/TestRunner.cjs +6 -0
  59. package/dist/data/test-runner/TestRunner.cjs.map +1 -1
  60. package/dist/data/test-runner/TestRunner.d.ts +3 -1
  61. package/dist/data/test-runner/TestRunner.d.ts.map +1 -1
  62. package/dist/data/test-runner/TestRunner.js +6 -0
  63. package/dist/data/test-runner/TestRunner.js.map +1 -1
  64. package/dist/data/test-runner/TestTreeNode.cjs +2 -1
  65. package/dist/data/test-runner/TestTreeNode.cjs.map +1 -1
  66. package/dist/data/test-runner/TestTreeNode.d.ts.map +1 -1
  67. package/dist/data/test-runner/TestTreeNode.js +2 -1
  68. package/dist/data/test-runner/TestTreeNode.js.map +1 -1
  69. package/dist/data/test-runner/adapter.cjs +4 -0
  70. package/dist/data/test-runner/adapter.cjs.map +1 -1
  71. package/dist/data/test-runner/adapter.d.ts +9 -0
  72. package/dist/data/test-runner/adapter.d.ts.map +1 -1
  73. package/dist/data/test-runner/adapter.js +4 -0
  74. package/dist/data/test-runner/adapter.js.map +1 -1
  75. package/dist/data/test-runner/context.cjs.map +1 -1
  76. package/dist/data/test-runner/context.d.ts +2 -0
  77. package/dist/data/test-runner/context.d.ts.map +1 -1
  78. package/dist/data/test-runner/context.js.map +1 -1
  79. package/dist/data/test-runner/index.d.ts +2 -2
  80. package/dist/data/test-runner/index.d.ts.map +1 -1
  81. package/dist/data/test-runner/marks.cjs +42 -1
  82. package/dist/data/test-runner/marks.cjs.map +1 -1
  83. package/dist/data/test-runner/marks.d.ts +10 -0
  84. package/dist/data/test-runner/marks.d.ts.map +1 -1
  85. package/dist/data/test-runner/marks.js +42 -1
  86. package/dist/data/test-runner/marks.js.map +1 -1
  87. package/dist/data/traces/ProcessTraceTree.cjs +93 -0
  88. package/dist/data/traces/ProcessTraceTree.cjs.map +1 -0
  89. package/dist/data/traces/ProcessTraceTree.d.ts +24 -0
  90. package/dist/data/traces/ProcessTraceTree.d.ts.map +1 -0
  91. package/dist/data/traces/ProcessTraceTree.js +93 -0
  92. package/dist/data/traces/ProcessTraceTree.js.map +1 -0
  93. package/dist/data/traces/Sparkline.cjs +23 -0
  94. package/dist/data/traces/Sparkline.cjs.map +1 -0
  95. package/dist/data/traces/Sparkline.d.ts +13 -0
  96. package/dist/data/traces/Sparkline.d.ts.map +1 -0
  97. package/dist/data/traces/Sparkline.js +23 -0
  98. package/dist/data/traces/Sparkline.js.map +1 -0
  99. package/dist/data/traces/SqlTraceTable.cjs +104 -0
  100. package/dist/data/traces/SqlTraceTable.cjs.map +1 -0
  101. package/dist/data/traces/SqlTraceTable.d.ts +19 -0
  102. package/dist/data/traces/SqlTraceTable.d.ts.map +1 -0
  103. package/dist/data/traces/SqlTraceTable.js +104 -0
  104. package/dist/data/traces/SqlTraceTable.js.map +1 -0
  105. package/dist/data/traces/TerminalCastPlayer.cjs +162 -0
  106. package/dist/data/traces/TerminalCastPlayer.cjs.map +1 -0
  107. package/dist/data/traces/TerminalCastPlayer.d.ts +21 -0
  108. package/dist/data/traces/TerminalCastPlayer.d.ts.map +1 -0
  109. package/dist/data/traces/TerminalCastPlayer.js +162 -0
  110. package/dist/data/traces/TerminalCastPlayer.js.map +1 -0
  111. package/dist/data/traces/TraceHarView.cjs +15 -0
  112. package/dist/data/traces/TraceHarView.cjs.map +1 -0
  113. package/dist/data/traces/TraceHarView.d.ts +13 -0
  114. package/dist/data/traces/TraceHarView.d.ts.map +1 -0
  115. package/dist/data/traces/TraceHarView.js +15 -0
  116. package/dist/data/traces/TraceHarView.js.map +1 -0
  117. package/dist/data/traces/TraceView.cjs +54 -0
  118. package/dist/data/traces/TraceView.cjs.map +1 -0
  119. package/dist/data/traces/TraceView.d.ts +18 -0
  120. package/dist/data/traces/TraceView.d.ts.map +1 -0
  121. package/dist/data/traces/TraceView.js +54 -0
  122. package/dist/data/traces/TraceView.js.map +1 -0
  123. package/dist/data/traces/cast.cjs +81 -0
  124. package/dist/data/traces/cast.cjs.map +1 -0
  125. package/dist/data/traces/cast.d.ts +9 -0
  126. package/dist/data/traces/cast.d.ts.map +1 -0
  127. package/dist/data/traces/cast.js +81 -0
  128. package/dist/data/traces/cast.js.map +1 -0
  129. package/dist/data/traces/fixtures.d.ts +8 -0
  130. package/dist/data/traces/fixtures.d.ts.map +1 -0
  131. package/dist/data/traces/har-adapter.cjs +83 -0
  132. package/dist/data/traces/har-adapter.cjs.map +1 -0
  133. package/dist/data/traces/har-adapter.d.ts +13 -0
  134. package/dist/data/traces/har-adapter.d.ts.map +1 -0
  135. package/dist/data/traces/har-adapter.js +83 -0
  136. package/dist/data/traces/har-adapter.js.map +1 -0
  137. package/dist/data/traces/index.d.ts +12 -0
  138. package/dist/data/traces/index.d.ts.map +1 -0
  139. package/dist/data/traces/process-tree.cjs +53 -0
  140. package/dist/data/traces/process-tree.cjs.map +1 -0
  141. package/dist/data/traces/process-tree.d.ts +21 -0
  142. package/dist/data/traces/process-tree.d.ts.map +1 -0
  143. package/dist/data/traces/process-tree.js +53 -0
  144. package/dist/data/traces/process-tree.js.map +1 -0
  145. package/dist/data/traces/sql-trace.cjs +39 -0
  146. package/dist/data/traces/sql-trace.cjs.map +1 -0
  147. package/dist/data/traces/sql-trace.d.ts +31 -0
  148. package/dist/data/traces/sql-trace.d.ts.map +1 -0
  149. package/dist/data/traces/sql-trace.js +39 -0
  150. package/dist/data/traces/sql-trace.js.map +1 -0
  151. package/dist/data/traces/terminal-screen.cjs +270 -0
  152. package/dist/data/traces/terminal-screen.cjs.map +1 -0
  153. package/dist/data/traces/terminal-screen.d.ts +45 -0
  154. package/dist/data/traces/terminal-screen.d.ts.map +1 -0
  155. package/dist/data/traces/terminal-screen.js +270 -0
  156. package/dist/data/traces/terminal-screen.js.map +1 -0
  157. package/dist/data/traces/terminal-timeline.cjs +48 -0
  158. package/dist/data/traces/terminal-timeline.cjs.map +1 -0
  159. package/dist/data/traces/terminal-timeline.d.ts +26 -0
  160. package/dist/data/traces/terminal-timeline.d.ts.map +1 -0
  161. package/dist/data/traces/terminal-timeline.js +48 -0
  162. package/dist/data/traces/terminal-timeline.js.map +1 -0
  163. package/dist/data/traces/types.d.ts +139 -0
  164. package/dist/data/traces/types.d.ts.map +1 -0
  165. package/dist/data/verification/VerificationResults.cjs +4 -0
  166. package/dist/data/verification/VerificationResults.cjs.map +1 -1
  167. package/dist/data/verification/VerificationResults.d.ts +3 -1
  168. package/dist/data/verification/VerificationResults.d.ts.map +1 -1
  169. package/dist/data/verification/VerificationResults.js +4 -0
  170. package/dist/data/verification/VerificationResults.js.map +1 -1
  171. package/dist/data/verification/adapterViews.cjs +12 -3
  172. package/dist/data/verification/adapterViews.cjs.map +1 -1
  173. package/dist/data/verification/adapterViews.d.ts +4 -1
  174. package/dist/data/verification/adapterViews.d.ts.map +1 -1
  175. package/dist/data/verification/adapterViews.js +12 -3
  176. package/dist/data/verification/adapterViews.js.map +1 -1
  177. package/dist/data/verification/adapters.cjs +53 -10
  178. package/dist/data/verification/adapters.cjs.map +1 -1
  179. package/dist/data/verification/adapters.d.ts +7 -1
  180. package/dist/data/verification/adapters.d.ts.map +1 -1
  181. package/dist/data/verification/adapters.js +53 -10
  182. package/dist/data/verification/adapters.js.map +1 -1
  183. package/dist/data/verification/index.d.ts +4 -2
  184. package/dist/data/verification/index.d.ts.map +1 -1
  185. package/dist/data/verification/stepKind.cjs +217 -0
  186. package/dist/data/verification/stepKind.cjs.map +1 -0
  187. package/dist/data/verification/stepKind.d.ts +87 -0
  188. package/dist/data/verification/stepKind.d.ts.map +1 -0
  189. package/dist/data/verification/stepKind.js +217 -0
  190. package/dist/data/verification/stepKind.js.map +1 -0
  191. package/dist/data/verification/stepKindViews.cjs +111 -0
  192. package/dist/data/verification/stepKindViews.cjs.map +1 -0
  193. package/dist/data/verification/stepKindViews.d.ts +18 -0
  194. package/dist/data/verification/stepKindViews.d.ts.map +1 -0
  195. package/dist/data/verification/stepKindViews.js +111 -0
  196. package/dist/data/verification/stepKindViews.js.map +1 -0
  197. package/dist/data/verification/verifyReportTests.cjs +1 -0
  198. package/dist/data/verification/verifyReportTests.cjs.map +1 -1
  199. package/dist/data/verification/verifyReportTests.d.ts +2 -1
  200. package/dist/data/verification/verifyReportTests.d.ts.map +1 -1
  201. package/dist/data/verification/verifyReportTests.js +1 -0
  202. package/dist/data/verification/verifyReportTests.js.map +1 -1
  203. package/dist/data/version-info.cjs +3 -3
  204. package/dist/data/version-info.cjs.map +1 -1
  205. package/dist/data/version-info.js +3 -3
  206. package/dist/data/version-info.js.map +1 -1
  207. package/dist/data.cjs +36 -0
  208. package/dist/data.cjs.map +1 -1
  209. package/dist/data.d.ts +2 -0
  210. package/dist/data.d.ts.map +1 -1
  211. package/dist/data.js +38 -2
  212. package/dist/data.js.map +1 -1
  213. package/dist/index.cjs +38 -0
  214. package/dist/index.cjs.map +1 -1
  215. package/dist/index.js +40 -2
  216. package/dist/index.js.map +1 -1
  217. package/dist/rpc/FilterForm.cjs +9 -0
  218. package/dist/rpc/FilterForm.cjs.map +1 -1
  219. package/dist/rpc/FilterForm.d.ts +5 -1
  220. package/dist/rpc/FilterForm.d.ts.map +1 -1
  221. package/dist/rpc/FilterForm.js +9 -0
  222. package/dist/rpc/FilterForm.js.map +1 -1
  223. package/dist/rpc/OperationArgsForm.cjs +153 -0
  224. package/dist/rpc/OperationArgsForm.cjs.map +1 -0
  225. package/dist/rpc/OperationArgsForm.d.ts +16 -0
  226. package/dist/rpc/OperationArgsForm.d.ts.map +1 -0
  227. package/dist/rpc/OperationArgsForm.js +153 -0
  228. package/dist/rpc/OperationArgsForm.js.map +1 -0
  229. package/dist/rpc/OperationScheduleDialog.cjs +61 -17
  230. package/dist/rpc/OperationScheduleDialog.cjs.map +1 -1
  231. package/dist/rpc/OperationScheduleDialog.d.ts +3 -0
  232. package/dist/rpc/OperationScheduleDialog.d.ts.map +1 -1
  233. package/dist/rpc/OperationScheduleDialog.js +62 -18
  234. package/dist/rpc/OperationScheduleDialog.js.map +1 -1
  235. package/dist/rpc/OperationSchedules.cjs +6 -1
  236. package/dist/rpc/OperationSchedules.cjs.map +1 -1
  237. package/dist/rpc/OperationSchedules.d.ts.map +1 -1
  238. package/dist/rpc/OperationSchedules.js +6 -1
  239. package/dist/rpc/OperationSchedules.js.map +1 -1
  240. package/dist/rpc/operation-schedule-model.cjs +0 -7
  241. package/dist/rpc/operation-schedule-model.cjs.map +1 -1
  242. package/dist/rpc/operation-schedule-model.d.ts +0 -2
  243. package/dist/rpc/operation-schedule-model.d.ts.map +1 -1
  244. package/dist/rpc/operation-schedule-model.js +0 -7
  245. package/dist/rpc/operation-schedule-model.js.map +1 -1
  246. package/dist/rpc/operation-schedule-types.d.ts +6 -1
  247. package/dist/rpc/operation-schedule-types.d.ts.map +1 -1
  248. package/dist/rpc.cjs +2 -0
  249. package/dist/rpc.cjs.map +1 -1
  250. package/dist/rpc.d.ts +1 -0
  251. package/dist/rpc.d.ts.map +1 -1
  252. package/dist/rpc.js +2 -0
  253. package/dist/rpc.js.map +1 -1
  254. package/dist/styles.css +1 -1
  255. package/package.json +1 -1
@@ -8,6 +8,7 @@ import { OperationScheduleDialog } from "./OperationScheduleDialog.js";
8
8
  import { InlineError } from "./InlineError.js";
9
9
  function OperationSchedules(_props) {
10
10
  const {
11
+ client,
11
12
  operations,
12
13
  schedules,
13
14
  disabled,
@@ -82,7 +83,10 @@ function OperationSchedules(_props) {
82
83
  children: [
83
84
  /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
84
85
  /* @__PURE__ */ jsx("div", { className: "truncate font-semibold", children: schedule.name }),
85
- /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: schedule.targets.join(", ") }),
86
+ /* @__PURE__ */ jsxs("div", { className: "text-xs text-muted-foreground", children: [
87
+ schedule.targets.join(", "),
88
+ schedule.concurrency && schedule.targets.length > 1 ? ` · ${schedule.concurrency} at once` : ""
89
+ ] }),
86
90
  /* @__PURE__ */ jsx("div", { className: "truncate text-xs text-muted-foreground", children: operationLabel(operation) })
87
91
  ] }),
88
92
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 text-sm", children: [
@@ -142,6 +146,7 @@ function OperationSchedules(_props) {
142
146
  /* @__PURE__ */ jsx(
143
147
  OperationScheduleDialog,
144
148
  {
149
+ client,
145
150
  open: dialogOpen,
146
151
  operations,
147
152
  targetOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"OperationSchedules.js","sources":["../../src/rpc/OperationSchedules.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { Button } from \"../components/button\";\nimport { Loading } from \"../components/loading\";\nimport { Modal } from \"../overlay/Modal\";\nimport {\n formatScheduleTimestamp,\n operationByID,\n operationLabel,\n} from \"./operation-schedule-model\";\nimport type { OperationSchedule } from \"./operation-schedule-types\";\nimport type { OperationSchedulesProps } from \"./operation-schedule-types\";\nimport { OperationScheduleDialog } from \"./OperationScheduleDialog\";\nimport { InlineError } from \"./InlineError\";\n\nexport function OperationSchedules(_props: OperationSchedulesProps) {\n const {\n operations,\n schedules,\n disabled,\n loading,\n onCreate,\n onUpdate,\n onDelete,\n onRunSaved,\n onRunDraft,\n cli,\n targetOptions,\n defaultTargets,\n targetLabel,\n } = _props;\n const [dialogOpen, setDialogOpen] = useState(false);\n const [editing, setEditing] = useState<OperationSchedule>();\n const [confirmRun, setConfirmRun] = useState<OperationSchedule>();\n const [confirmDelete, setConfirmDelete] = useState<OperationSchedule>();\n const [pending, setPending] = useState<\"run\" | \"delete\">();\n const [error, setError] = useState<unknown>();\n\n const openAdd = () => {\n setEditing(undefined);\n setDialogOpen(true);\n };\n const openEdit = (schedule: OperationSchedule) => {\n setEditing(schedule);\n setDialogOpen(true);\n };\n\n const runSaved = async () => {\n if (!confirmRun) return;\n setPending(\"run\");\n setError(undefined);\n try {\n await onRunSaved(confirmRun.id);\n setConfirmRun(undefined);\n } catch (nextError) {\n setError(nextError);\n } finally {\n setPending(undefined);\n }\n };\n\n const deleteSaved = async () => {\n if (!confirmDelete) return;\n setPending(\"delete\");\n setError(undefined);\n try {\n await onDelete(confirmDelete.id);\n setConfirmDelete(undefined);\n } catch (nextError) {\n setError(nextError);\n } finally {\n setPending(undefined);\n }\n };\n\n if (loading) return <Loading variant=\"centered\" label=\"Loading schedules…\" />;\n\n return (\n <div className=\"space-y-3\">\n <div className=\"flex justify-end\">\n <Button type=\"button\" disabled={disabled} onClick={openAdd}>\n Add schedule\n </Button>\n </div>\n {error ? (\n <InlineError title=\"Schedule action failed\" error={error} />\n ) : null}\n {schedules.length === 0 ? (\n <div className=\"rounded-lg border border-dashed px-4 py-8 text-center text-sm text-muted-foreground\">\n No schedules yet. Add one to run an operation automatically.\n </div>\n ) : (\n <div\n role=\"list\"\n aria-label=\"Schedules\"\n className=\"divide-y rounded-lg border bg-card\"\n >\n {schedules.map((schedule) => {\n const operation = operationByID(operations, schedule.operationId);\n return (\n <div\n key={schedule.id}\n role=\"listitem\"\n className=\"grid gap-3 px-4 py-3 lg:grid-cols-[minmax(12rem,1.1fr)_minmax(12rem,1fr)_minmax(14rem,1fr)_auto] lg:items-center\"\n >\n <div className=\"min-w-0\">\n <div className=\"truncate font-semibold\">{schedule.name}</div>\n <div className=\"text-xs text-muted-foreground\">{schedule.targets.join(\", \")}</div>\n <div className=\"truncate text-xs text-muted-foreground\">\n {operationLabel(operation)}\n </div>\n </div>\n <div className=\"min-w-0 text-sm\">\n <code>{schedule.cron}</code>\n <div className=\"text-xs text-muted-foreground\">\n {schedule.timezone}\n </div>\n </div>\n <div className=\"text-xs text-muted-foreground\">\n <div>\n {schedule.enabled\n ? `Next: ${formatScheduleTimestamp(schedule.nextRun)}`\n : \"Paused\"}\n </div>\n {schedule.lastRun ? (\n <div>Last: {formatScheduleTimestamp(schedule.lastRun)}</div>\n ) : null}\n </div>\n <div className=\"flex flex-wrap justify-end gap-2\">\n <Button\n type=\"button\"\n size=\"sm\"\n variant=\"outline\"\n disabled={disabled}\n aria-label={`Run ${schedule.name} now`}\n onClick={() => setConfirmRun(schedule)}\n >\n Run now\n </Button>\n <Button\n type=\"button\"\n size=\"sm\"\n variant=\"outline\"\n disabled={disabled}\n onClick={() => openEdit(schedule)}\n >\n Edit\n </Button>\n <Button\n type=\"button\"\n size=\"sm\"\n variant=\"ghost\"\n disabled={disabled}\n onClick={() => setConfirmDelete(schedule)}\n >\n Delete\n </Button>\n </div>\n </div>\n );\n })}\n </div>\n )}\n <OperationScheduleDialog\n open={dialogOpen}\n operations={operations}\n targetOptions={targetOptions}\n {...(defaultTargets ? { defaultTargets } : {})}\n {...(targetLabel ? { targetLabel } : {})}\n {...(editing ? { schedule: editing } : {})}\n onClose={() => setDialogOpen(false)}\n onSave={(input) =>\n editing ? onUpdate(editing.id, input) : onCreate(input)\n }\n onRunNow={onRunDraft}\n {...(cli ? { cli } : {})}\n />\n <Modal\n open={Boolean(confirmRun)}\n onClose={() => setConfirmRun(undefined)}\n title={confirmRun ? `Run ${confirmRun.name} now?` : \"Run schedule now?\"}\n size=\"sm\"\n footer={\n <div className=\"flex w-full justify-end gap-2\">\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => setConfirmRun(undefined)}\n >\n Cancel\n </Button>\n <Button\n type=\"button\"\n loading={pending === \"run\"}\n onClick={runSaved}\n >\n Run now\n </Button>\n </div>\n }\n >\n <p className=\"text-sm text-muted-foreground\">\n The recurring schedule is unchanged.\n {confirmRun ? ` Targets: ${confirmRun.targets.join(\", \")}.` : \"\"}\n </p>\n </Modal>\n <Modal\n open={Boolean(confirmDelete)}\n onClose={() => setConfirmDelete(undefined)}\n title={\n confirmDelete ? `Delete ${confirmDelete.name}?` : \"Delete schedule?\"\n }\n size=\"sm\"\n footer={\n <div className=\"flex w-full justify-end gap-2\">\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => setConfirmDelete(undefined)}\n >\n Cancel\n </Button>\n <Button\n type=\"button\"\n variant=\"destructive\"\n loading={pending === \"delete\"}\n onClick={deleteSaved}\n >\n Delete schedule\n </Button>\n </div>\n }\n >\n <p className=\"text-sm text-muted-foreground\">\n This removes the recurring definition. Previous run history is\n retained.\n </p>\n </Modal>\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OperationSchedules.js","sources":["../../src/rpc/OperationSchedules.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport { Button } from \"../components/button\";\nimport { Loading } from \"../components/loading\";\nimport { Modal } from \"../overlay/Modal\";\nimport {\n formatScheduleTimestamp,\n operationByID,\n operationLabel,\n} from \"./operation-schedule-model\";\nimport type { OperationSchedule } from \"./operation-schedule-types\";\nimport type { OperationSchedulesProps } from \"./operation-schedule-types\";\nimport { OperationScheduleDialog } from \"./OperationScheduleDialog\";\nimport { InlineError } from \"./InlineError\";\n\nexport function OperationSchedules(_props: OperationSchedulesProps) {\n const {\n client,\n operations,\n schedules,\n disabled,\n loading,\n onCreate,\n onUpdate,\n onDelete,\n onRunSaved,\n onRunDraft,\n cli,\n targetOptions,\n defaultTargets,\n targetLabel,\n } = _props;\n const [dialogOpen, setDialogOpen] = useState(false);\n const [editing, setEditing] = useState<OperationSchedule>();\n const [confirmRun, setConfirmRun] = useState<OperationSchedule>();\n const [confirmDelete, setConfirmDelete] = useState<OperationSchedule>();\n const [pending, setPending] = useState<\"run\" | \"delete\">();\n const [error, setError] = useState<unknown>();\n\n const openAdd = () => {\n setEditing(undefined);\n setDialogOpen(true);\n };\n const openEdit = (schedule: OperationSchedule) => {\n setEditing(schedule);\n setDialogOpen(true);\n };\n\n const runSaved = async () => {\n if (!confirmRun) return;\n setPending(\"run\");\n setError(undefined);\n try {\n await onRunSaved(confirmRun.id);\n setConfirmRun(undefined);\n } catch (nextError) {\n setError(nextError);\n } finally {\n setPending(undefined);\n }\n };\n\n const deleteSaved = async () => {\n if (!confirmDelete) return;\n setPending(\"delete\");\n setError(undefined);\n try {\n await onDelete(confirmDelete.id);\n setConfirmDelete(undefined);\n } catch (nextError) {\n setError(nextError);\n } finally {\n setPending(undefined);\n }\n };\n\n if (loading) return <Loading variant=\"centered\" label=\"Loading schedules…\" />;\n\n return (\n <div className=\"space-y-3\">\n <div className=\"flex justify-end\">\n <Button type=\"button\" disabled={disabled} onClick={openAdd}>\n Add schedule\n </Button>\n </div>\n {error ? (\n <InlineError title=\"Schedule action failed\" error={error} />\n ) : null}\n {schedules.length === 0 ? (\n <div className=\"rounded-lg border border-dashed px-4 py-8 text-center text-sm text-muted-foreground\">\n No schedules yet. Add one to run an operation automatically.\n </div>\n ) : (\n <div\n role=\"list\"\n aria-label=\"Schedules\"\n className=\"divide-y rounded-lg border bg-card\"\n >\n {schedules.map((schedule) => {\n const operation = operationByID(operations, schedule.operationId);\n return (\n <div\n key={schedule.id}\n role=\"listitem\"\n className=\"grid gap-3 px-4 py-3 lg:grid-cols-[minmax(12rem,1.1fr)_minmax(12rem,1fr)_minmax(14rem,1fr)_auto] lg:items-center\"\n >\n <div className=\"min-w-0\">\n <div className=\"truncate font-semibold\">{schedule.name}</div>\n <div className=\"text-xs text-muted-foreground\">\n {schedule.targets.join(\", \")}\n {schedule.concurrency && schedule.targets.length > 1\n ? ` · ${schedule.concurrency} at once`\n : \"\"}\n </div>\n <div className=\"truncate text-xs text-muted-foreground\">\n {operationLabel(operation)}\n </div>\n </div>\n <div className=\"min-w-0 text-sm\">\n <code>{schedule.cron}</code>\n <div className=\"text-xs text-muted-foreground\">\n {schedule.timezone}\n </div>\n </div>\n <div className=\"text-xs text-muted-foreground\">\n <div>\n {schedule.enabled\n ? `Next: ${formatScheduleTimestamp(schedule.nextRun)}`\n : \"Paused\"}\n </div>\n {schedule.lastRun ? (\n <div>Last: {formatScheduleTimestamp(schedule.lastRun)}</div>\n ) : null}\n </div>\n <div className=\"flex flex-wrap justify-end gap-2\">\n <Button\n type=\"button\"\n size=\"sm\"\n variant=\"outline\"\n disabled={disabled}\n aria-label={`Run ${schedule.name} now`}\n onClick={() => setConfirmRun(schedule)}\n >\n Run now\n </Button>\n <Button\n type=\"button\"\n size=\"sm\"\n variant=\"outline\"\n disabled={disabled}\n onClick={() => openEdit(schedule)}\n >\n Edit\n </Button>\n <Button\n type=\"button\"\n size=\"sm\"\n variant=\"ghost\"\n disabled={disabled}\n onClick={() => setConfirmDelete(schedule)}\n >\n Delete\n </Button>\n </div>\n </div>\n );\n })}\n </div>\n )}\n <OperationScheduleDialog\n client={client}\n open={dialogOpen}\n operations={operations}\n targetOptions={targetOptions}\n {...(defaultTargets ? { defaultTargets } : {})}\n {...(targetLabel ? { targetLabel } : {})}\n {...(editing ? { schedule: editing } : {})}\n onClose={() => setDialogOpen(false)}\n onSave={(input) =>\n editing ? onUpdate(editing.id, input) : onCreate(input)\n }\n onRunNow={onRunDraft}\n {...(cli ? { cli } : {})}\n />\n <Modal\n open={Boolean(confirmRun)}\n onClose={() => setConfirmRun(undefined)}\n title={confirmRun ? `Run ${confirmRun.name} now?` : \"Run schedule now?\"}\n size=\"sm\"\n footer={\n <div className=\"flex w-full justify-end gap-2\">\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => setConfirmRun(undefined)}\n >\n Cancel\n </Button>\n <Button\n type=\"button\"\n loading={pending === \"run\"}\n onClick={runSaved}\n >\n Run now\n </Button>\n </div>\n }\n >\n <p className=\"text-sm text-muted-foreground\">\n The recurring schedule is unchanged.\n {confirmRun ? ` Targets: ${confirmRun.targets.join(\", \")}.` : \"\"}\n </p>\n </Modal>\n <Modal\n open={Boolean(confirmDelete)}\n onClose={() => setConfirmDelete(undefined)}\n title={\n confirmDelete ? `Delete ${confirmDelete.name}?` : \"Delete schedule?\"\n }\n size=\"sm\"\n footer={\n <div className=\"flex w-full justify-end gap-2\">\n <Button\n type=\"button\"\n variant=\"outline\"\n onClick={() => setConfirmDelete(undefined)}\n >\n Cancel\n </Button>\n <Button\n type=\"button\"\n variant=\"destructive\"\n loading={pending === \"delete\"}\n onClick={deleteSaved}\n >\n Delete schedule\n </Button>\n </div>\n }\n >\n <p className=\"text-sm text-muted-foreground\">\n This removes the recurring definition. Previous run history is\n retained.\n </p>\n </Modal>\n </div>\n );\n}\n"],"names":[],"mappings":"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"}
@@ -15,12 +15,6 @@ function operationLabel(operation) {
15
15
  function operationByID(operations, operationID) {
16
16
  return operations.find(({ operation }) => operation.operationId === operationID);
17
17
  }
18
- function operationInputSchema(operation) {
19
- var _a, _b, _c;
20
- const schema = (_c = (_b = (_a = operation == null ? void 0 : operation.operation.requestBody) == null ? void 0 : _a.content) == null ? void 0 : _b["application/json"]) == null ? void 0 : _c.schema;
21
- if (!schema || schema.type !== "object") return void 0;
22
- return schema;
23
- }
24
18
  function newOperationScheduleInput() {
25
19
  return {
26
20
  name: "",
@@ -51,7 +45,6 @@ function formatScheduleTimestamp(value) {
51
45
  exports.formatScheduleTimestamp = formatScheduleTimestamp;
52
46
  exports.newOperationScheduleInput = newOperationScheduleInput;
53
47
  exports.operationByID = operationByID;
54
- exports.operationInputSchema = operationInputSchema;
55
48
  exports.operationLabel = operationLabel;
56
49
  exports.schedulableOperations = schedulableOperations;
57
50
  exports.scheduleToInput = scheduleToInput;
@@ -1 +1 @@
1
- {"version":3,"file":"operation-schedule-model.cjs","sources":["../../src/rpc/operation-schedule-model.ts"],"sourcesContent":["import type { JsonSchemaObject } from \"../components/json-schema-form-types\";\nimport { DEFAULT_CRON } from \"../components/schedule-types\";\nimport type { OperationSchedule, OperationScheduleInput } from \"./operation-schedule-types\";\nimport type { ResolvedOperation } from \"./types\";\n\nexport function schedulableOperations(\n operations: readonly ResolvedOperation[],\n): ResolvedOperation[] {\n return operations.filter(\n ({ operation }) => Boolean(operation.operationId && operation[\"x-clicky\"]?.schedule),\n );\n}\n\nexport function operationLabel(operation: ResolvedOperation | undefined): string {\n return operation?.operation.summary ?? operation?.operation.operationId ?? \"Unknown operation\";\n}\n\nexport function operationByID(\n operations: readonly ResolvedOperation[],\n operationID: string,\n): ResolvedOperation | undefined {\n return operations.find(({ operation }) => operation.operationId === operationID);\n}\n\nexport function operationInputSchema(\n operation: ResolvedOperation | undefined,\n): JsonSchemaObject | undefined {\n const schema = operation?.operation.requestBody?.content?.[\"application/json\"]?.schema;\n if (!schema || schema.type !== \"object\") return undefined;\n return schema as JsonSchemaObject;\n}\n\nexport function newOperationScheduleInput(): OperationScheduleInput {\n return {\n name: \"\",\n operationId: \"\",\n targets: [],\n args: {},\n cron: DEFAULT_CRON,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone || \"UTC\",\n enabled: true,\n };\n}\n\nexport function scheduleToInput(schedule: OperationSchedule): OperationScheduleInput {\n return {\n name: schedule.name,\n operationId: schedule.operationId,\n targets: [...schedule.targets],\n args: schedule.args,\n cron: schedule.cron,\n timezone: schedule.timezone,\n enabled: schedule.enabled,\n };\n}\n\nexport function formatScheduleTimestamp(value: string | undefined): string {\n if (!value) return \"Never\";\n const timestamp = new Date(value);\n return Number.isNaN(timestamp.getTime()) ? value : timestamp.toLocaleString();\n}\n"],"names":["DEFAULT_CRON"],"mappings":";;;AAKO,SAAS,sBACd,YACqB;AACrB,SAAO,WAAW;AAAA,IAChB,CAAC,EAAE,UAAA,MAAU;;AAAM,qBAAQ,UAAU,iBAAe,eAAU,UAAU,MAApB,mBAAuB,SAAQ;AAAA;AAAA,EAAA;AAEvF;AAEO,SAAS,eAAe,WAAkD;AAC/E,UAAO,uCAAW,UAAU,aAAW,uCAAW,UAAU,gBAAe;AAC7E;AAEO,SAAS,cACd,YACA,aAC+B;AAC/B,SAAO,WAAW,KAAK,CAAC,EAAE,gBAAgB,UAAU,gBAAgB,WAAW;AACjF;AAEO,SAAS,qBACd,WAC8B;;AAC9B,QAAM,UAAS,wDAAW,UAAU,gBAArB,mBAAkC,YAAlC,mBAA4C,wBAA5C,mBAAiE;AAChF,MAAI,CAAC,UAAU,OAAO,SAAS,SAAU,QAAO;AAChD,SAAO;AACT;AAEO,SAAS,4BAAoD;AAClE,SAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,SAAS,CAAA;AAAA,IACT,MAAM,CAAA;AAAA,IACN,MAAMA,cAAAA;AAAAA,IACN,UAAU,KAAK,eAAA,EAAiB,gBAAA,EAAkB,YAAY;AAAA,IAC9D,SAAS;AAAA,EAAA;AAEb;AAEO,SAAS,gBAAgB,UAAqD;AACnF,SAAO;AAAA,IACL,MAAM,SAAS;AAAA,IACf,aAAa,SAAS;AAAA,IACtB,SAAS,CAAC,GAAG,SAAS,OAAO;AAAA,IAC7B,MAAM,SAAS;AAAA,IACf,MAAM,SAAS;AAAA,IACf,UAAU,SAAS;AAAA,IACnB,SAAS,SAAS;AAAA,EAAA;AAEtB;AAEO,SAAS,wBAAwB,OAAmC;AACzE,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,YAAY,IAAI,KAAK,KAAK;AAChC,SAAO,OAAO,MAAM,UAAU,QAAA,CAAS,IAAI,QAAQ,UAAU,eAAA;AAC/D;;;;;;;;"}
1
+ {"version":3,"file":"operation-schedule-model.cjs","sources":["../../src/rpc/operation-schedule-model.ts"],"sourcesContent":["import { DEFAULT_CRON } from \"../components/schedule-types\";\nimport type { OperationSchedule, OperationScheduleInput } from \"./operation-schedule-types\";\nimport type { ResolvedOperation } from \"./types\";\n\nexport function schedulableOperations(\n operations: readonly ResolvedOperation[],\n): ResolvedOperation[] {\n return operations.filter(\n ({ operation }) => Boolean(operation.operationId && operation[\"x-clicky\"]?.schedule),\n );\n}\n\nexport function operationLabel(operation: ResolvedOperation | undefined): string {\n return operation?.operation.summary ?? operation?.operation.operationId ?? \"Unknown operation\";\n}\n\nexport function operationByID(\n operations: readonly ResolvedOperation[],\n operationID: string,\n): ResolvedOperation | undefined {\n return operations.find(({ operation }) => operation.operationId === operationID);\n}\n\nexport function newOperationScheduleInput(): OperationScheduleInput {\n return {\n name: \"\",\n operationId: \"\",\n targets: [],\n args: {},\n cron: DEFAULT_CRON,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone || \"UTC\",\n enabled: true,\n };\n}\n\nexport function scheduleToInput(schedule: OperationSchedule): OperationScheduleInput {\n return {\n name: schedule.name,\n operationId: schedule.operationId,\n targets: [...schedule.targets],\n args: schedule.args,\n cron: schedule.cron,\n timezone: schedule.timezone,\n enabled: schedule.enabled,\n };\n}\n\nexport function formatScheduleTimestamp(value: string | undefined): string {\n if (!value) return \"Never\";\n const timestamp = new Date(value);\n return Number.isNaN(timestamp.getTime()) ? value : timestamp.toLocaleString();\n}\n"],"names":["DEFAULT_CRON"],"mappings":";;;AAIO,SAAS,sBACd,YACqB;AACrB,SAAO,WAAW;AAAA,IAChB,CAAC,EAAE,UAAA,MAAU;;AAAM,qBAAQ,UAAU,iBAAe,eAAU,UAAU,MAApB,mBAAuB,SAAQ;AAAA;AAAA,EAAA;AAEvF;AAEO,SAAS,eAAe,WAAkD;AAC/E,UAAO,uCAAW,UAAU,aAAW,uCAAW,UAAU,gBAAe;AAC7E;AAEO,SAAS,cACd,YACA,aAC+B;AAC/B,SAAO,WAAW,KAAK,CAAC,EAAE,gBAAgB,UAAU,gBAAgB,WAAW;AACjF;AAEO,SAAS,4BAAoD;AAClE,SAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,SAAS,CAAA;AAAA,IACT,MAAM,CAAA;AAAA,IACN,MAAMA,cAAAA;AAAAA,IACN,UAAU,KAAK,eAAA,EAAiB,gBAAA,EAAkB,YAAY;AAAA,IAC9D,SAAS;AAAA,EAAA;AAEb;AAEO,SAAS,gBAAgB,UAAqD;AACnF,SAAO;AAAA,IACL,MAAM,SAAS;AAAA,IACf,aAAa,SAAS;AAAA,IACtB,SAAS,CAAC,GAAG,SAAS,OAAO;AAAA,IAC7B,MAAM,SAAS;AAAA,IACf,MAAM,SAAS;AAAA,IACf,UAAU,SAAS;AAAA,IACnB,SAAS,SAAS;AAAA,EAAA;AAEtB;AAEO,SAAS,wBAAwB,OAAmC;AACzE,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,YAAY,IAAI,KAAK,KAAK;AAChC,SAAO,OAAO,MAAM,UAAU,QAAA,CAAS,IAAI,QAAQ,UAAU,eAAA;AAC/D;;;;;;;"}
@@ -1,10 +1,8 @@
1
- import { JsonSchemaObject } from '../components/json-schema-form-types.js';
2
1
  import { OperationSchedule, OperationScheduleInput } from './operation-schedule-types.js';
3
2
  import { ResolvedOperation } from './types.js';
4
3
  export declare function schedulableOperations(operations: readonly ResolvedOperation[]): ResolvedOperation[];
5
4
  export declare function operationLabel(operation: ResolvedOperation | undefined): string;
6
5
  export declare function operationByID(operations: readonly ResolvedOperation[], operationID: string): ResolvedOperation | undefined;
7
- export declare function operationInputSchema(operation: ResolvedOperation | undefined): JsonSchemaObject | undefined;
8
6
  export declare function newOperationScheduleInput(): OperationScheduleInput;
9
7
  export declare function scheduleToInput(schedule: OperationSchedule): OperationScheduleInput;
10
8
  export declare function formatScheduleTimestamp(value: string | undefined): string;
@@ -1 +1 @@
1
- {"version":3,"file":"operation-schedule-model.d.ts","sourceRoot":"","sources":["../../src/rpc/operation-schedule-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAE7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GACvC,iBAAiB,EAAE,CAIrB;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,GAAG,MAAM,CAE/E;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,WAAW,EAAE,MAAM,GAClB,iBAAiB,GAAG,SAAS,CAE/B;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,iBAAiB,GAAG,SAAS,GACvC,gBAAgB,GAAG,SAAS,CAI9B;AAED,wBAAgB,yBAAyB,IAAI,sBAAsB,CAUlE;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,iBAAiB,GAAG,sBAAsB,CAUnF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAIzE"}
1
+ {"version":3,"file":"operation-schedule-model.d.ts","sourceRoot":"","sources":["../../src/rpc/operation-schedule-model.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GACvC,iBAAiB,EAAE,CAIrB;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,GAAG,MAAM,CAE/E;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,WAAW,EAAE,MAAM,GAClB,iBAAiB,GAAG,SAAS,CAE/B;AAED,wBAAgB,yBAAyB,IAAI,sBAAsB,CAUlE;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,iBAAiB,GAAG,sBAAsB,CAUnF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAIzE"}
@@ -13,12 +13,6 @@ function operationLabel(operation) {
13
13
  function operationByID(operations, operationID) {
14
14
  return operations.find(({ operation }) => operation.operationId === operationID);
15
15
  }
16
- function operationInputSchema(operation) {
17
- var _a, _b, _c;
18
- const schema = (_c = (_b = (_a = operation == null ? void 0 : operation.operation.requestBody) == null ? void 0 : _a.content) == null ? void 0 : _b["application/json"]) == null ? void 0 : _c.schema;
19
- if (!schema || schema.type !== "object") return void 0;
20
- return schema;
21
- }
22
16
  function newOperationScheduleInput() {
23
17
  return {
24
18
  name: "",
@@ -50,7 +44,6 @@ export {
50
44
  formatScheduleTimestamp,
51
45
  newOperationScheduleInput,
52
46
  operationByID,
53
- operationInputSchema,
54
47
  operationLabel,
55
48
  schedulableOperations,
56
49
  scheduleToInput
@@ -1 +1 @@
1
- {"version":3,"file":"operation-schedule-model.js","sources":["../../src/rpc/operation-schedule-model.ts"],"sourcesContent":["import type { JsonSchemaObject } from \"../components/json-schema-form-types\";\nimport { DEFAULT_CRON } from \"../components/schedule-types\";\nimport type { OperationSchedule, OperationScheduleInput } from \"./operation-schedule-types\";\nimport type { ResolvedOperation } from \"./types\";\n\nexport function schedulableOperations(\n operations: readonly ResolvedOperation[],\n): ResolvedOperation[] {\n return operations.filter(\n ({ operation }) => Boolean(operation.operationId && operation[\"x-clicky\"]?.schedule),\n );\n}\n\nexport function operationLabel(operation: ResolvedOperation | undefined): string {\n return operation?.operation.summary ?? operation?.operation.operationId ?? \"Unknown operation\";\n}\n\nexport function operationByID(\n operations: readonly ResolvedOperation[],\n operationID: string,\n): ResolvedOperation | undefined {\n return operations.find(({ operation }) => operation.operationId === operationID);\n}\n\nexport function operationInputSchema(\n operation: ResolvedOperation | undefined,\n): JsonSchemaObject | undefined {\n const schema = operation?.operation.requestBody?.content?.[\"application/json\"]?.schema;\n if (!schema || schema.type !== \"object\") return undefined;\n return schema as JsonSchemaObject;\n}\n\nexport function newOperationScheduleInput(): OperationScheduleInput {\n return {\n name: \"\",\n operationId: \"\",\n targets: [],\n args: {},\n cron: DEFAULT_CRON,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone || \"UTC\",\n enabled: true,\n };\n}\n\nexport function scheduleToInput(schedule: OperationSchedule): OperationScheduleInput {\n return {\n name: schedule.name,\n operationId: schedule.operationId,\n targets: [...schedule.targets],\n args: schedule.args,\n cron: schedule.cron,\n timezone: schedule.timezone,\n enabled: schedule.enabled,\n };\n}\n\nexport function formatScheduleTimestamp(value: string | undefined): string {\n if (!value) return \"Never\";\n const timestamp = new Date(value);\n return Number.isNaN(timestamp.getTime()) ? value : timestamp.toLocaleString();\n}\n"],"names":[],"mappings":";AAKO,SAAS,sBACd,YACqB;AACrB,SAAO,WAAW;AAAA,IAChB,CAAC,EAAE,UAAA,MAAU;;AAAM,qBAAQ,UAAU,iBAAe,eAAU,UAAU,MAApB,mBAAuB,SAAQ;AAAA;AAAA,EAAA;AAEvF;AAEO,SAAS,eAAe,WAAkD;AAC/E,UAAO,uCAAW,UAAU,aAAW,uCAAW,UAAU,gBAAe;AAC7E;AAEO,SAAS,cACd,YACA,aAC+B;AAC/B,SAAO,WAAW,KAAK,CAAC,EAAE,gBAAgB,UAAU,gBAAgB,WAAW;AACjF;AAEO,SAAS,qBACd,WAC8B;;AAC9B,QAAM,UAAS,wDAAW,UAAU,gBAArB,mBAAkC,YAAlC,mBAA4C,wBAA5C,mBAAiE;AAChF,MAAI,CAAC,UAAU,OAAO,SAAS,SAAU,QAAO;AAChD,SAAO;AACT;AAEO,SAAS,4BAAoD;AAClE,SAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,SAAS,CAAA;AAAA,IACT,MAAM,CAAA;AAAA,IACN,MAAM;AAAA,IACN,UAAU,KAAK,eAAA,EAAiB,gBAAA,EAAkB,YAAY;AAAA,IAC9D,SAAS;AAAA,EAAA;AAEb;AAEO,SAAS,gBAAgB,UAAqD;AACnF,SAAO;AAAA,IACL,MAAM,SAAS;AAAA,IACf,aAAa,SAAS;AAAA,IACtB,SAAS,CAAC,GAAG,SAAS,OAAO;AAAA,IAC7B,MAAM,SAAS;AAAA,IACf,MAAM,SAAS;AAAA,IACf,UAAU,SAAS;AAAA,IACnB,SAAS,SAAS;AAAA,EAAA;AAEtB;AAEO,SAAS,wBAAwB,OAAmC;AACzE,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,YAAY,IAAI,KAAK,KAAK;AAChC,SAAO,OAAO,MAAM,UAAU,QAAA,CAAS,IAAI,QAAQ,UAAU,eAAA;AAC/D;"}
1
+ {"version":3,"file":"operation-schedule-model.js","sources":["../../src/rpc/operation-schedule-model.ts"],"sourcesContent":["import { DEFAULT_CRON } from \"../components/schedule-types\";\nimport type { OperationSchedule, OperationScheduleInput } from \"./operation-schedule-types\";\nimport type { ResolvedOperation } from \"./types\";\n\nexport function schedulableOperations(\n operations: readonly ResolvedOperation[],\n): ResolvedOperation[] {\n return operations.filter(\n ({ operation }) => Boolean(operation.operationId && operation[\"x-clicky\"]?.schedule),\n );\n}\n\nexport function operationLabel(operation: ResolvedOperation | undefined): string {\n return operation?.operation.summary ?? operation?.operation.operationId ?? \"Unknown operation\";\n}\n\nexport function operationByID(\n operations: readonly ResolvedOperation[],\n operationID: string,\n): ResolvedOperation | undefined {\n return operations.find(({ operation }) => operation.operationId === operationID);\n}\n\nexport function newOperationScheduleInput(): OperationScheduleInput {\n return {\n name: \"\",\n operationId: \"\",\n targets: [],\n args: {},\n cron: DEFAULT_CRON,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone || \"UTC\",\n enabled: true,\n };\n}\n\nexport function scheduleToInput(schedule: OperationSchedule): OperationScheduleInput {\n return {\n name: schedule.name,\n operationId: schedule.operationId,\n targets: [...schedule.targets],\n args: schedule.args,\n cron: schedule.cron,\n timezone: schedule.timezone,\n enabled: schedule.enabled,\n };\n}\n\nexport function formatScheduleTimestamp(value: string | undefined): string {\n if (!value) return \"Never\";\n const timestamp = new Date(value);\n return Number.isNaN(timestamp.getTime()) ? value : timestamp.toLocaleString();\n}\n"],"names":[],"mappings":";AAIO,SAAS,sBACd,YACqB;AACrB,SAAO,WAAW;AAAA,IAChB,CAAC,EAAE,UAAA,MAAU;;AAAM,qBAAQ,UAAU,iBAAe,eAAU,UAAU,MAApB,mBAAuB,SAAQ;AAAA;AAAA,EAAA;AAEvF;AAEO,SAAS,eAAe,WAAkD;AAC/E,UAAO,uCAAW,UAAU,aAAW,uCAAW,UAAU,gBAAe;AAC7E;AAEO,SAAS,cACd,YACA,aAC+B;AAC/B,SAAO,WAAW,KAAK,CAAC,EAAE,gBAAgB,UAAU,gBAAgB,WAAW;AACjF;AAEO,SAAS,4BAAoD;AAClE,SAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,SAAS,CAAA;AAAA,IACT,MAAM,CAAA;AAAA,IACN,MAAM;AAAA,IACN,UAAU,KAAK,eAAA,EAAiB,gBAAA,EAAkB,YAAY;AAAA,IAC9D,SAAS;AAAA,EAAA;AAEb;AAEO,SAAS,gBAAgB,UAAqD;AACnF,SAAO;AAAA,IACL,MAAM,SAAS;AAAA,IACf,aAAa,SAAS;AAAA,IACtB,SAAS,CAAC,GAAG,SAAS,OAAO;AAAA,IAC7B,MAAM,SAAS;AAAA,IACf,MAAM,SAAS;AAAA,IACf,UAAU,SAAS;AAAA,IACnB,SAAS,SAAS;AAAA,EAAA;AAEtB;AAEO,SAAS,wBAAwB,OAAmC;AACzE,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,YAAY,IAAI,KAAK,KAAK;AAChC,SAAO,OAAO,MAAM,UAAU,QAAA,CAAS,IAAI,QAAQ,UAAU,eAAA;AAC/D;"}
@@ -1,4 +1,5 @@
1
1
  import { ResolvedOperation } from './types.js';
2
+ import { OperationsApiClient } from './useOperations.js';
2
3
  import { ComboboxOption } from '../components/combobox-types.js';
3
4
  export interface OperationSchedule {
4
5
  id: string;
@@ -9,17 +10,21 @@ export interface OperationSchedule {
9
10
  cron: string;
10
11
  timezone: string;
11
12
  enabled: boolean;
13
+ /** Targets executed at once in a multi-target run (1..targets.length); the rest queue. Server default 1. */
14
+ concurrency?: number;
12
15
  lastRun?: string;
13
16
  nextRun?: string;
14
17
  }
15
18
  export type OperationScheduleInput = Omit<OperationSchedule, "id" | "lastRun" | "nextRun">;
16
- export type OperationScheduleRunInput = Pick<OperationScheduleInput, "operationId" | "args" | "targets">;
19
+ export type OperationScheduleRunInput = Pick<OperationScheduleInput, "operationId" | "args" | "targets" | "concurrency">;
17
20
  export interface OperationScheduleCLI {
18
21
  executable: string;
19
22
  globalFlags?: Record<string, unknown>;
20
23
  targetFlag?: string;
21
24
  }
22
25
  export interface OperationSchedulesProps {
26
+ /** Client for the argument form's lookups (the operation's parameter pickers). */
27
+ client: OperationsApiClient;
23
28
  operations: readonly ResolvedOperation[];
24
29
  schedules: readonly OperationSchedule[];
25
30
  targetOptions: ComboboxOption[];
@@ -1 +1 @@
1
- {"version":3,"file":"operation-schedule-types.d.ts","sourceRoot":"","sources":["../../src/rpc/operation-schedule-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,iBAAiB,EACjB,IAAI,GAAG,SAAS,GAAG,SAAS,CAC7B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,sBAAsB,EACtB,aAAa,GAAG,MAAM,GAAG,SAAS,CACnC,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACxC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1E,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,UAAU,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACpE"}
1
+ {"version":3,"file":"operation-schedule-types.d.ts","sourceRoot":"","sources":["../../src/rpc/operation-schedule-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,4GAA4G;IAC5G,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,iBAAiB,EACjB,IAAI,GAAG,SAAS,GAAG,SAAS,CAC7B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,sBAAsB,EACtB,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,CACnD,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,kFAAkF;IAClF,MAAM,EAAE,mBAAmB,CAAC;IAC5B,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACzC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACxC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9D,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1E,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,UAAU,EAAE,CAAC,KAAK,EAAE,yBAAyB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACpE"}
package/dist/rpc.cjs CHANGED
@@ -18,6 +18,7 @@ const commandFormUtils = require("./rpc/command-form-utils.cjs");
18
18
  const CommandOutput = require("./rpc/CommandOutput.cjs");
19
19
  const FilterForm = require("./rpc/FilterForm.cjs");
20
20
  const InlineError = require("./rpc/InlineError.cjs");
21
+ const OperationArgsForm = require("./rpc/OperationArgsForm.cjs");
21
22
  const OperationActionDialog = require("./rpc/OperationActionDialog.cjs");
22
23
  const OperationPicker = require("./rpc/OperationPicker.cjs");
23
24
  const OperationScheduleDialog = require("./rpc/OperationScheduleDialog.cjs");
@@ -76,6 +77,7 @@ exports.submitValue = commandFormUtils.submitValue;
76
77
  exports.CommandOutput = CommandOutput.CommandOutput;
77
78
  exports.FilterForm = FilterForm.FilterForm;
78
79
  exports.InlineError = InlineError.InlineError;
80
+ exports.OperationArgsForm = OperationArgsForm.OperationArgsForm;
79
81
  exports.OperationActionDialog = OperationActionDialog.OperationActionDialog;
80
82
  exports.OperationPicker = OperationPicker.OperationPicker;
81
83
  exports.OperationScheduleDialog = OperationScheduleDialog.OperationScheduleDialog;
package/dist/rpc.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"rpc.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/rpc.d.ts CHANGED
@@ -17,6 +17,7 @@ export { normalizeParameters, pathParamNames, submitValue, } from './rpc/command
17
17
  export { CommandOutput, type CommandOutputProps } from './rpc/CommandOutput.js';
18
18
  export { FilterForm, type FilterFormProps } from './rpc/FilterForm.js';
19
19
  export { InlineError, type InlineErrorProps } from './rpc/InlineError.js';
20
+ export { OperationArgsForm, type OperationArgs, type OperationArgsFormProps, } from './rpc/OperationArgsForm.js';
20
21
  export { OperationActionDialog, type OperationActionDialogProps, } from './rpc/OperationActionDialog.js';
21
22
  export { OperationPicker, type OperationPickerProps, } from './rpc/OperationPicker.js';
22
23
  export { OperationScheduleDialog, type OperationScheduleDialogProps, } from './rpc/OperationScheduleDialog.js';
package/dist/rpc.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
package/dist/rpc.js CHANGED
@@ -16,6 +16,7 @@ import { normalizeParameters, pathParamNames, submitValue } from "./rpc/command-
16
16
  import { CommandOutput } from "./rpc/CommandOutput.js";
17
17
  import { FilterForm } from "./rpc/FilterForm.js";
18
18
  import { InlineError } from "./rpc/InlineError.js";
19
+ import { OperationArgsForm } from "./rpc/OperationArgsForm.js";
19
20
  import { OperationActionDialog } from "./rpc/OperationActionDialog.js";
20
21
  import { OperationPicker } from "./rpc/OperationPicker.js";
21
22
  import { OperationScheduleDialog } from "./rpc/OperationScheduleDialog.js";
@@ -48,6 +49,7 @@ export {
48
49
  InlineError,
49
50
  OperationActionBar,
50
51
  OperationActionDialog,
52
+ OperationArgsForm,
51
53
  OperationCatalog,
52
54
  OperationCommandPage,
53
55
  OperationEntityContextPicker,
package/dist/rpc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"rpc.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}