@loopstack/loopstack-studio 0.22.0 → 0.23.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/app/EnvironmentEmbedRoot.js +20 -18
  2. package/dist/components/dynamic-form/Form.js +50 -27
  3. package/dist/components/dynamic-form/InputController.js +3 -1
  4. package/dist/components/dynamic-form/fields/MarkdownViewField.js +20 -0
  5. package/dist/components/feedback/ErrorBoundary.js +43 -0
  6. package/dist/components/{LoadingCentered.js → feedback/LoadingCentered.js} +1 -1
  7. package/dist/components/feedback/index.js +5 -0
  8. package/dist/components/index.js +6 -3
  9. package/dist/components/layout/MainLayout.js +32 -16
  10. package/dist/components/layout/StudioSidebar.js +165 -0
  11. package/dist/components/ui-widgets/widgets/SandboxRun.js +1 -0
  12. package/dist/features/code-explorer/CodeExplorer.js +6 -0
  13. package/dist/features/code-explorer/components/CodeExplorerTree.js +5 -0
  14. package/dist/features/code-explorer/components/CodeExplorerTreeNode.js +82 -0
  15. package/dist/features/code-explorer/components/FileContentViewer.js +1 -0
  16. package/dist/features/code-explorer/components/FileTabsBar.js +3 -190
  17. package/dist/features/code-explorer/components/FileTabsBarBase.js +190 -0
  18. package/dist/features/code-explorer/index.js +4 -0
  19. package/dist/features/code-explorer/providers/CodeExplorerProvider.js +2 -162
  20. package/dist/features/code-explorer/utils/fileIcons.js +7 -4
  21. package/dist/features/debug/components/ConfigFlowViewer.js +1 -1
  22. package/dist/features/debug/components/PipelineFlowViewer.js +47 -46
  23. package/dist/features/debug/components/pipeline-flow/WorkflowGraph.js +19 -19
  24. package/dist/features/debug/index.js +3 -0
  25. package/dist/features/documents/DocumentRenderer.js +58 -0
  26. package/dist/features/{workbench → documents}/components/DocumentItem.js +1 -1
  27. package/dist/features/{workbench → documents}/components/DocumentMetadataPills.js +2 -2
  28. package/dist/features/{workbench/components → documents}/document-details/DocumentDetails.js +3 -3
  29. package/dist/features/{workbench/components → documents}/document-details/PromptDetails.js +3 -3
  30. package/dist/features/documents/index.js +4 -0
  31. package/dist/features/{workbench/components/document-renderer → documents/renderers}/AiMessage.js +5 -5
  32. package/dist/features/documents/renderers/ClaudeMessage.js +96 -0
  33. package/dist/features/{workbench/components/document-renderer → documents/renderers}/DocumentDebugRenderer.js +1 -1
  34. package/dist/features/{workbench/components/document-renderer → documents/renderers}/DocumentFormRenderer.js +3 -3
  35. package/dist/features/{workbench/components/document-renderer → documents/renderers}/DocumentMessageRenderer.js +1 -1
  36. package/dist/features/{workbench/components/document-renderer → documents/renderers}/ErrorMessageRenderer.js +1 -1
  37. package/dist/features/{workbench/components/document-renderer → documents/renderers}/LinkMessageRenderer.js +1 -1
  38. package/dist/features/{workbench/components/document-renderer → documents/renderers}/MarkdownMessageRenderer.js +2 -2
  39. package/dist/features/{workbench/components/document-renderer → documents/renderers}/PlainMessageRenderer.js +1 -1
  40. package/dist/features/health/index.js +1 -0
  41. package/dist/features/workbench/NavigationItems.js +29 -29
  42. package/dist/features/workbench/Workbench.js +71 -99
  43. package/dist/features/workbench/WorkflowItem.js +63 -55
  44. package/dist/features/workbench/WorkflowList.js +52 -81
  45. package/dist/features/workbench/components/NewRunDialog.js +2 -1
  46. package/dist/features/workbench/components/RemoteFileTabsBar.js +18 -0
  47. package/dist/features/workbench/components/RemoteFileTree.js +90 -0
  48. package/dist/features/workbench/components/WorkbenchFilesPanel.js +60 -0
  49. package/dist/features/workbench/components/WorkbenchFlowPanel.js +4 -3
  50. package/dist/features/workbench/components/WorkbenchIconSidebar.js +37 -29
  51. package/dist/features/workbench/components/WorkflowHistoryItem.js +11 -11
  52. package/dist/features/workbench/components/buttons/WorkflowButtons.js +49 -50
  53. package/dist/features/workbench/hooks/useWorkflowData.js +49 -0
  54. package/dist/features/workbench/hooks/useWorkflowListState.js +50 -0
  55. package/dist/features/workbench/index.js +8 -0
  56. package/dist/features/workbench/providers/RemoteFileExplorerProvider.js +145 -0
  57. package/dist/features/workbench/providers/WorkbenchLayoutProvider.js +47 -45
  58. package/dist/features/workspaces/components/CreateWorkspace.js +1 -1
  59. package/dist/features/workspaces/components/ExecutionTimeline.js +1 -1
  60. package/dist/features/workspaces/components/PipelineForm.js +2 -2
  61. package/dist/features/workspaces/components/WorkspaceHomePage.js +93 -0
  62. package/dist/features/workspaces/index.js +3 -0
  63. package/dist/hooks/index.js +3 -2
  64. package/dist/hooks/query-keys.js +138 -0
  65. package/dist/hooks/useAuth.js +43 -42
  66. package/dist/hooks/useConfig.js +31 -35
  67. package/dist/hooks/useDashboard.js +9 -13
  68. package/dist/hooks/useDebounce.js +8 -17
  69. package/dist/hooks/useDocuments.js +4 -9
  70. package/dist/hooks/useFiles.js +1 -51
  71. package/dist/hooks/useNamespaces.js +2 -8
  72. package/dist/hooks/usePipelines.js +132 -155
  73. package/dist/hooks/useProcessor.js +11 -14
  74. package/dist/hooks/useWorkflows.js +40 -62
  75. package/dist/hooks/useWorkspaces.js +105 -110
  76. package/dist/index.d.ts +105 -3
  77. package/dist/index.js +15 -7
  78. package/dist/node_modules/@xyflow/react/dist/esm/index.js +1 -1
  79. package/dist/pages/DashboardPage.js +1 -1
  80. package/dist/pages/DebugWorkflowDetailsPage.js +2 -2
  81. package/dist/pages/EmbedWorkbenchPage.js +4 -3
  82. package/dist/pages/PipelineDebugPage.js +6 -5
  83. package/dist/pages/PreviewWorkbenchPage.js +228 -128
  84. package/dist/pages/RunsListPage.js +52 -24
  85. package/dist/pages/StudioLandingPage.js +1 -0
  86. package/dist/pages/WorkbenchPage.js +3 -2
  87. package/dist/pages/WorkspacePage.js +103 -51
  88. package/dist/pages/WorkspaceRunsPage.js +71 -0
  89. package/dist/providers/InvalidationEventsProvider.js +9 -11
  90. package/dist/providers/StudioProvider.js +2 -2
  91. package/dist/routing/LocalRouter.js +18 -8
  92. package/package.json +2 -2
  93. package/dist/features/workbench/components/DocumentRenderer.js +0 -54
  94. /package/dist/components/{content → feedback}/ErrorAlert.js +0 -0
  95. /package/dist/components/{snackbars → feedback}/ErrorSnackbar.js +0 -0
  96. /package/dist/components/{snackbars → feedback}/Snackbar.js +0 -0
  97. /package/dist/features/{workbench → documents}/components/DocumentList.js +0 -0
  98. /package/dist/features/{workbench/components/document-renderer → documents/renderers}/AiMessageContent.js +0 -0
@@ -1,44 +1,40 @@
1
+ import { getAvailableEnvironmentsCacheKey, getPipelineTypesCacheKey, getWorkspaceTypesCacheKey } from "./query-keys.js";
1
2
  import { useApiClient } from "./useApi.js";
2
3
  import { c } from "react/compiler-runtime";
3
4
  import { useQuery } from "@tanstack/react-query";
4
5
  function useWorkspaceConfig() {
5
- let r = c(7), { envKey: i, api: a } = useApiClient(), o;
6
- r[0] === i ? o = r[1] : (o = ["workspace-types", i], r[0] = i, r[1] = o);
7
- let s;
8
- r[2] === a ? s = r[3] : (s = () => a.config.getWorkspaceTypes(), r[2] = a, r[3] = s);
6
+ let e = c(7), { envKey: i, api: o } = useApiClient(), s;
7
+ e[0] === i ? s = e[1] : (s = getWorkspaceTypesCacheKey(i), e[0] = i, e[1] = s);
9
8
  let l;
10
- return r[4] !== o || r[5] !== s ? (l = {
11
- queryKey: o,
12
- queryFn: s,
13
- enabled: !0
14
- }, r[4] = o, r[5] = s, r[6] = l) : l = r[6], useQuery(l);
15
- }
16
- function usePipelineConfig(r) {
17
- let i = c(10), { envKey: a, api: o } = useApiClient(), s;
18
- i[0] !== a || i[1] !== r ? (s = [
19
- "pipeline-types",
20
- r,
21
- a
22
- ], i[0] = a, i[1] = r, i[2] = s) : s = i[2];
23
- let l;
24
- i[3] !== o || i[4] !== r ? (l = () => o.config.getPipelineTypesByWorkspace({ workspaceBlockName: r }), i[3] = o, i[4] = r, i[5] = l) : l = i[5];
25
- let u = !!r, d;
26
- return i[6] !== s || i[7] !== l || i[8] !== u ? (d = {
9
+ e[2] === o ? l = e[3] : (l = () => o.config.getWorkspaceTypes(), e[2] = o, e[3] = l);
10
+ let u;
11
+ return e[4] !== s || e[5] !== l ? (u = {
27
12
  queryKey: s,
28
- queryFn: l,
29
- enabled: u
30
- }, i[6] = s, i[7] = l, i[8] = u, i[9] = d) : d = i[9], useQuery(d);
13
+ queryFn: l
14
+ }, e[4] = s, e[5] = l, e[6] = u) : u = e[6], useQuery(u);
31
15
  }
32
- function useAvailableEnvironments(r) {
33
- let i = c(8), { envKey: a, api: o } = useApiClient(), s;
34
- i[0] === a ? s = i[1] : (s = ["available-environments", a], i[0] = a, i[1] = s);
35
- let l;
36
- i[2] === o ? l = i[3] : (l = () => o.config.getAvailableEnvironments(), i[2] = o, i[3] = l);
37
- let u = r?.enabled ?? !0, d;
38
- return i[4] !== s || i[5] !== l || i[6] !== u ? (d = {
39
- queryKey: s,
40
- queryFn: l,
41
- enabled: u
42
- }, i[4] = s, i[5] = l, i[6] = u, i[7] = d) : d = i[7], useQuery(d);
16
+ function usePipelineConfig(e) {
17
+ let a = c(10), { envKey: o, api: s } = useApiClient(), l;
18
+ a[0] !== o || a[1] !== e ? (l = getPipelineTypesCacheKey(o, e), a[0] = o, a[1] = e, a[2] = l) : l = a[2];
19
+ let u;
20
+ a[3] !== s || a[4] !== e ? (u = () => s.config.getPipelineTypesByWorkspace({ workspaceBlockName: e }), a[3] = s, a[4] = e, a[5] = u) : u = a[5];
21
+ let d = !!e, f;
22
+ return a[6] !== l || a[7] !== u || a[8] !== d ? (f = {
23
+ queryKey: l,
24
+ queryFn: u,
25
+ enabled: d
26
+ }, a[6] = l, a[7] = u, a[8] = d, a[9] = f) : f = a[9], useQuery(f);
27
+ }
28
+ function useAvailableEnvironments(i) {
29
+ let a = c(8), { envKey: o, api: s } = useApiClient(), l;
30
+ a[0] === o ? l = a[1] : (l = getAvailableEnvironmentsCacheKey(o), a[0] = o, a[1] = l);
31
+ let u;
32
+ a[2] === s ? u = a[3] : (u = () => s.config.getAvailableEnvironments(), a[2] = s, a[3] = u);
33
+ let d = i?.enabled ?? !0, f;
34
+ return a[4] !== l || a[5] !== u || a[6] !== d ? (f = {
35
+ queryKey: l,
36
+ queryFn: u,
37
+ enabled: d
38
+ }, a[4] = l, a[5] = u, a[6] = d, a[7] = f) : f = a[7], useQuery(f);
43
39
  }
44
40
  export { useAvailableEnvironments, usePipelineConfig, useWorkspaceConfig };
@@ -1,20 +1,16 @@
1
+ import { getDashboardStatsCacheKey } from "./query-keys.js";
1
2
  import { useApiClient } from "./useApi.js";
2
3
  import { c } from "react/compiler-runtime";
3
4
  import { useQuery } from "@tanstack/react-query";
4
5
  function useDashboardStats() {
5
- let r = c(7), { envKey: i, api: a } = useApiClient(), o;
6
- r[0] === i ? o = r[1] : (o = [
7
- "dashboard",
8
- "stats",
9
- i
10
- ], r[0] = i, r[1] = o);
11
- let s;
12
- r[2] === a ? s = r[3] : (s = () => a.dashboard.getStats(), r[2] = a, r[3] = s);
6
+ let i = c(7), { envKey: a, api: o } = useApiClient(), s;
7
+ i[0] === a ? s = i[1] : (s = getDashboardStatsCacheKey(a), i[0] = a, i[1] = s);
13
8
  let l;
14
- return r[4] !== o || r[5] !== s ? (l = {
15
- queryKey: o,
16
- queryFn: s,
17
- enabled: !0
18
- }, r[4] = o, r[5] = s, r[6] = l) : l = r[6], useQuery(l);
9
+ i[2] === o ? l = i[3] : (l = () => o.dashboard.getStats(), i[2] = o, i[3] = l);
10
+ let u;
11
+ return i[4] !== s || i[5] !== l ? (u = {
12
+ queryKey: s,
13
+ queryFn: l
14
+ }, i[4] = s, i[5] = l, i[6] = u) : u = i[6], useQuery(u);
19
15
  }
20
16
  export { useDashboardStats };
@@ -4,24 +4,15 @@ function useDebounce(r, i) {
4
4
  let a = c(4), o = i === void 0 ? 500 : i, [s, l] = useState(r), u, d;
5
5
  return a[0] !== o || a[1] !== r ? (u = () => {
6
6
  if (typeof r == "string") {
7
- let e = r;
8
- if (r === void 0 || e === "" || e.length >= 3) {
9
- let e = setTimeout(() => {
10
- l(r);
11
- }, o);
12
- return () => {
13
- clearTimeout(e);
14
- };
15
- }
16
- return;
17
- } else {
18
- let e = setTimeout(() => {
19
- l(r);
20
- }, o);
21
- return () => {
22
- clearTimeout(e);
23
- };
7
+ let e = r.length;
8
+ if (e > 0 && e < 3) return;
24
9
  }
10
+ let e = setTimeout(() => {
11
+ l(r);
12
+ }, o);
13
+ return () => {
14
+ clearTimeout(e);
15
+ };
25
16
  }, d = [r, o], a[0] = o, a[1] = r, a[2] = u, a[3] = d) : (u = a[2], d = a[3]), useEffect(u, d), s;
26
17
  }
27
18
  export { useDebounce };
@@ -1,13 +1,7 @@
1
+ import { getDocumentsCacheKey } from "./query-keys.js";
1
2
  import { useApiClient } from "./useApi.js";
2
3
  import { c } from "react/compiler-runtime";
3
4
  import { useQuery } from "@tanstack/react-query";
4
- function getDocumentsCacheKey(e, i) {
5
- return [
6
- "documents",
7
- e,
8
- i
9
- ];
10
- }
11
5
  function useFilterDocuments(a) {
12
6
  let o = c(15), { envKey: s, api: l } = useApiClient(), u;
13
7
  o[0] === a ? u = o[1] : (u = JSON.stringify({
@@ -27,15 +21,16 @@ function useFilterDocuments(a) {
27
21
  let p = f, m;
28
22
  o[5] !== s || o[6] !== a ? (m = getDocumentsCacheKey(s, a), o[5] = s, o[6] = a, o[7] = m) : m = o[7];
29
23
  let h;
30
- o[8] !== l || o[9] !== p ? (h = () => l.documents.getAll(p).then(_temp), o[8] = l, o[9] = p, o[10] = h) : h = o[10];
24
+ o[8] !== l || o[9] !== p ? (h = () => l.documents.getAll(p), o[8] = l, o[9] = p, o[10] = h) : h = o[10];
31
25
  let g = !!a, _;
32
26
  return o[11] !== m || o[12] !== h || o[13] !== g ? (_ = {
33
27
  queryKey: m,
34
28
  queryFn: h,
29
+ select: _temp,
35
30
  enabled: g
36
31
  }, o[11] = m, o[12] = h, o[13] = g, o[14] = _) : _ = o[14], useQuery(_);
37
32
  }
38
33
  function _temp(e) {
39
34
  return e.data;
40
35
  }
41
- export { getDocumentsCacheKey, useFilterDocuments };
36
+ export { useFilterDocuments };
@@ -1,53 +1,3 @@
1
- import { useApiClient } from "./useApi.js";
1
+ import "./useApi.js";
2
2
  import { c } from "react/compiler-runtime";
3
3
  import { useQuery } from "@tanstack/react-query";
4
- function useFileTree(r, a) {
5
- let o = c(10), s = a === void 0 ? !0 : a, { envKey: l, api: u } = useApiClient(), d;
6
- o[0] !== l || o[1] !== r ? (d = [
7
- "fileTree",
8
- r,
9
- l
10
- ], o[0] = l, o[1] = r, o[2] = d) : d = o[2];
11
- let f;
12
- o[3] !== u || o[4] !== r ? (f = () => {
13
- if (!r) throw Error("Pipeline ID is required");
14
- return u.pipelines.getFileTree({ pipelineId: r });
15
- }, o[3] = u, o[4] = r, o[5] = f) : f = o[5];
16
- let p = !!r && s, m;
17
- return o[6] !== d || o[7] !== f || o[8] !== p ? (m = {
18
- queryKey: d,
19
- queryFn: f,
20
- enabled: p,
21
- staleTime: 3e5,
22
- refetchOnMount: !1,
23
- refetchOnWindowFocus: !1,
24
- placeholderData: _temp
25
- }, o[6] = d, o[7] = f, o[8] = p, o[9] = m) : m = o[9], useQuery(m);
26
- }
27
- function _temp(e) {
28
- return e;
29
- }
30
- function useFileContent(r, i, a) {
31
- let o = c(12), s = a === void 0 ? !0 : a, { envKey: l, api: u } = useApiClient(), d;
32
- o[0] !== l || o[1] !== i || o[2] !== r ? (d = [
33
- "fileContent",
34
- r,
35
- i,
36
- l
37
- ], o[0] = l, o[1] = i, o[2] = r, o[3] = d) : d = o[3];
38
- let f;
39
- o[4] !== u || o[5] !== i || o[6] !== r ? (f = () => {
40
- if (!r || !i) throw Error("Pipeline ID and file path are required");
41
- return u.pipelines.getFileContent({
42
- pipelineId: r,
43
- filePath: i
44
- });
45
- }, o[4] = u, o[5] = i, o[6] = r, o[7] = f) : f = o[7];
46
- let p = !!r && !!i && s, m;
47
- return o[8] !== d || o[9] !== f || o[10] !== p ? (m = {
48
- queryKey: d,
49
- queryFn: f,
50
- enabled: p
51
- }, o[8] = d, o[9] = f, o[10] = p, o[11] = m) : m = o[11], useQuery(m);
52
- }
53
- export { useFileContent, useFileTree };
@@ -1,13 +1,7 @@
1
+ import { getNamespacesByPipelineCacheKey } from "./query-keys.js";
1
2
  import { useApiClient } from "./useApi.js";
2
3
  import { c } from "react/compiler-runtime";
3
4
  import { useQuery } from "@tanstack/react-query";
4
- function getNamespacesByPipelineCacheKey(e, i) {
5
- return [
6
- "namespaces",
7
- e,
8
- i
9
- ];
10
- }
11
5
  function useFilterNamespaces(a) {
12
6
  let o = c(14), { envKey: s, api: l } = useApiClient(), u;
13
7
  o[0] === a ? u = o[1] : (u = JSON.stringify({ pipelineId: a }), o[0] = a, o[1] = u);
@@ -28,4 +22,4 @@ function useFilterNamespaces(a) {
28
22
  function _temp(e) {
29
23
  return e.data;
30
24
  }
31
- export { getNamespacesByPipelineCacheKey, useFilterNamespaces };
25
+ export { useFilterNamespaces };
@@ -1,184 +1,161 @@
1
+ import { getPipelineCacheKey, getPipelineConfigCacheKey, getPipelineSourceCacheKey, getPipelinesCacheKey, getPipelinesChildrenCacheKey } from "./query-keys.js";
1
2
  import { useApiClient } from "./useApi.js";
2
3
  import { c } from "react/compiler-runtime";
3
4
  import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
4
- function usePipeline(n) {
5
+ function usePipeline(r) {
5
6
  let i = c(10), { envKey: a, api: o } = useApiClient(), s;
6
- i[0] !== a || i[1] !== n ? (s = [
7
- "pipeline",
8
- n,
9
- a
10
- ], i[0] = a, i[1] = n, i[2] = s) : s = i[2];
11
- let l;
12
- i[3] !== o || i[4] !== n ? (l = () => o.pipelines.getById({ id: n }), i[3] = o, i[4] = n, i[5] = l) : l = i[5];
13
- let u = !!n, d;
14
- return i[6] !== s || i[7] !== l || i[8] !== u ? (d = {
7
+ i[0] !== a || i[1] !== r ? (s = getPipelineCacheKey(a, r), i[0] = a, i[1] = r, i[2] = s) : s = i[2];
8
+ let u;
9
+ i[3] !== o || i[4] !== r ? (u = () => o.pipelines.getById({ id: r }), i[3] = o, i[4] = r, i[5] = u) : u = i[5];
10
+ let d = !!r, f;
11
+ return i[6] !== s || i[7] !== u || i[8] !== d ? (f = {
15
12
  queryKey: s,
16
- queryFn: l,
17
- enabled: u
18
- }, i[6] = s, i[7] = l, i[8] = u, i[9] = d) : d = i[9], useQuery(d);
13
+ queryFn: u,
14
+ enabled: d
15
+ }, i[6] = s, i[7] = u, i[8] = d, i[9] = f) : f = i[9], useQuery(f);
19
16
  }
20
- function useFilterPipelines(n, i, a, o, s, l) {
21
- let u = c(23), d = a === void 0 ? "id" : a, f = o === void 0 ? "DESC" : o, p = s === void 0 ? 0 : s, m = l === void 0 ? 10 : l, { envKey: h, api: g } = useApiClient(), _ = Object.keys(i).length > 0, v;
22
- u[0] !== i || u[1] !== _ ? (v = _ && { filter: JSON.stringify(i) }, u[0] = i, u[1] = _, u[2] = v) : v = u[2];
23
- let y;
24
- u[3] !== f || u[4] !== d ? (y = JSON.stringify([{
25
- field: d,
26
- order: f
27
- }]), u[3] = f, u[4] = d, u[5] = y) : y = u[5];
28
- let b;
29
- u[6] === n ? b = u[7] : (b = n && {
30
- search: n,
17
+ function useFilterPipelines(e, r, i, o, s, u) {
18
+ let d = c(30), f = i === void 0 ? "id" : i, p = o === void 0 ? "DESC" : o, m = s === void 0 ? 0 : s, h = u === void 0 ? 10 : u, { envKey: g, api: _ } = useApiClient(), v = Object.keys(r).length > 0, y;
19
+ d[0] !== r || d[1] !== v ? (y = v ? JSON.stringify(r) : void 0, d[0] = r, d[1] = v, d[2] = y) : y = d[2];
20
+ let b = y, x;
21
+ d[3] === b ? x = d[4] : (x = b && { filter: b }, d[3] = b, d[4] = x);
22
+ let S;
23
+ d[5] !== p || d[6] !== f ? (S = JSON.stringify([{
24
+ field: f,
25
+ order: p
26
+ }]), d[5] = p, d[6] = f, d[7] = S) : S = d[7];
27
+ let C;
28
+ d[8] === e ? C = d[9] : (C = e && {
29
+ search: e,
31
30
  searchColumns: JSON.stringify(["title", "model"])
32
- }, u[6] = n, u[7] = b);
33
- let x;
34
- u[8] !== m || u[9] !== p || u[10] !== v || u[11] !== y || u[12] !== b ? (x = {
35
- ...v,
36
- sortBy: y,
37
- page: p,
38
- limit: m,
39
- ...b
40
- }, u[8] = m, u[9] = p, u[10] = v, u[11] = y, u[12] = b, u[13] = x) : x = u[13];
41
- let S = x, C;
42
- u[14] !== h || u[15] !== S ? (C = [
43
- "pipelines",
44
- S,
45
- h
46
- ], u[14] = h, u[15] = S, u[16] = C) : C = u[16];
31
+ }, d[8] = e, d[9] = C);
47
32
  let w;
48
- u[17] !== g || u[18] !== S ? (w = () => g.pipelines.getAll(S), u[17] = g, u[18] = S, u[19] = w) : w = u[19];
49
- let T;
50
- return u[20] !== C || u[21] !== w ? (T = {
51
- queryKey: C,
52
- queryFn: w,
53
- enabled: !0
54
- }, u[20] = C, u[21] = w, u[22] = T) : T = u[22], useQuery(T);
33
+ d[10] !== h || d[11] !== m || d[12] !== x || d[13] !== S || d[14] !== C ? (w = {
34
+ ...x,
35
+ sortBy: S,
36
+ page: m,
37
+ limit: h,
38
+ ...C
39
+ }, d[10] = h, d[11] = m, d[12] = x, d[13] = S, d[14] = C, d[15] = w) : w = d[15];
40
+ let T = w, E;
41
+ d[16] !== g || d[17] !== b || d[18] !== h || d[19] !== p || d[20] !== m || d[21] !== e || d[22] !== f ? (E = [
42
+ ...getPipelinesCacheKey(g),
43
+ "list",
44
+ e ?? "",
45
+ b ?? "",
46
+ f,
47
+ p,
48
+ m,
49
+ h
50
+ ], d[16] = g, d[17] = b, d[18] = h, d[19] = p, d[20] = m, d[21] = e, d[22] = f, d[23] = E) : E = d[23];
51
+ let D;
52
+ d[24] !== _ || d[25] !== T ? (D = () => _.pipelines.getAll(T), d[24] = _, d[25] = T, d[26] = D) : D = d[26];
53
+ let O;
54
+ return d[27] !== D || d[28] !== E ? (O = {
55
+ queryKey: E,
56
+ queryFn: D
57
+ }, d[27] = D, d[28] = E, d[29] = O) : O = d[29], useQuery(O);
55
58
  }
56
59
  function useCreatePipeline() {
57
- let r = c(8), { envKey: a, api: o } = useApiClient(), s = useQueryClient(), l;
58
- r[0] === o ? l = r[1] : (l = (e) => o.pipelines.create(e), r[0] = o, r[1] = l);
59
- let u;
60
- r[2] !== a || r[3] !== s ? (u = () => {
61
- s.invalidateQueries({ queryKey: ["pipelines", a] });
62
- }, r[2] = a, r[3] = s, r[4] = u) : u = r[4];
60
+ let e = c(8), { envKey: r, api: i } = useApiClient(), o = useQueryClient(), l;
61
+ e[0] === i ? l = e[1] : (l = (e) => i.pipelines.create(e), e[0] = i, e[1] = l);
63
62
  let d;
64
- return r[5] !== l || r[6] !== u ? (d = {
63
+ e[2] !== r || e[3] !== o ? (d = () => {
64
+ o.invalidateQueries({ queryKey: getPipelinesCacheKey(r) });
65
+ }, e[2] = r, e[3] = o, e[4] = d) : d = e[4];
66
+ let f;
67
+ return e[5] !== l || e[6] !== d ? (f = {
65
68
  mutationFn: l,
66
- onSuccess: u
67
- }, r[5] = l, r[6] = u, r[7] = d) : d = r[7], useMutation(d);
69
+ onSuccess: d
70
+ }, e[5] = l, e[6] = d, e[7] = f) : f = e[7], useMutation(f);
68
71
  }
69
72
  function useUpdatePipeline() {
70
- let r = c(8), { envKey: a, api: o } = useApiClient(), s = useQueryClient(), l;
71
- r[0] === o ? l = r[1] : (l = (e) => o.pipelines.update(e), r[0] = o, r[1] = l);
72
- let u;
73
- r[2] !== a || r[3] !== s ? (u = (e, t) => {
74
- s.invalidateQueries({ queryKey: [
75
- "pipeline",
76
- t.id,
77
- a
78
- ] }), s.invalidateQueries({ queryKey: ["pipelines", a] });
79
- }, r[2] = a, r[3] = s, r[4] = u) : u = r[4];
80
- let d;
81
- return r[5] !== l || r[6] !== u ? (d = {
82
- mutationFn: l,
83
- onSuccess: u
84
- }, r[5] = l, r[6] = u, r[7] = d) : d = r[7], useMutation(d);
73
+ let r = c(8), { envKey: i, api: o } = useApiClient(), l = useQueryClient(), d;
74
+ r[0] === o ? d = r[1] : (d = (e) => o.pipelines.update(e), r[0] = o, r[1] = d);
75
+ let f;
76
+ r[2] !== i || r[3] !== l ? (f = (r, o) => {
77
+ l.invalidateQueries({ queryKey: getPipelineCacheKey(i, o.id) }), l.invalidateQueries({ queryKey: getPipelinesCacheKey(i) });
78
+ }, r[2] = i, r[3] = l, r[4] = f) : f = r[4];
79
+ let p;
80
+ return r[5] !== d || r[6] !== f ? (p = {
81
+ mutationFn: d,
82
+ onSuccess: f
83
+ }, r[5] = d, r[6] = f, r[7] = p) : p = r[7], useMutation(p);
85
84
  }
86
- function usePipelineConfig(n, i) {
87
- let a = c(12), { envKey: o, api: s } = useApiClient(), l;
88
- a[0] !== o || a[1] !== i || a[2] !== n ? (l = [
89
- "pipelineConfig",
90
- n,
91
- i,
92
- o
93
- ], a[0] = o, a[1] = i, a[2] = n, a[3] = l) : l = a[3];
94
- let u;
95
- a[4] !== s || a[5] !== i || a[6] !== n ? (u = () => s.config.getPipelineConfigByName({
96
- workspaceBlockName: n,
85
+ function usePipelineConfigByName(e, i) {
86
+ let a = c(12), { envKey: o, api: s } = useApiClient(), u;
87
+ a[0] !== o || a[1] !== i || a[2] !== e ? (u = getPipelineConfigCacheKey(o, e, i), a[0] = o, a[1] = i, a[2] = e, a[3] = u) : u = a[3];
88
+ let d;
89
+ a[4] !== s || a[5] !== i || a[6] !== e ? (d = () => s.config.getPipelineConfigByName({
90
+ workspaceBlockName: e,
97
91
  pipelineName: i
98
- }), a[4] = s, a[5] = i, a[6] = n, a[7] = u) : u = a[7];
99
- let d = !!n && !!i, f;
100
- return a[8] !== l || a[9] !== u || a[10] !== d ? (f = {
101
- queryKey: l,
102
- queryFn: u,
103
- enabled: d
104
- }, a[8] = l, a[9] = u, a[10] = d, a[11] = f) : f = a[11], useQuery(f);
92
+ }), a[4] = s, a[5] = i, a[6] = e, a[7] = d) : d = a[7];
93
+ let f = !!e && !!i, p;
94
+ return a[8] !== u || a[9] !== d || a[10] !== f ? (p = {
95
+ queryKey: u,
96
+ queryFn: d,
97
+ enabled: f
98
+ }, a[8] = u, a[9] = d, a[10] = f, a[11] = p) : p = a[11], useQuery(p);
105
99
  }
106
100
  function useDeletePipeline() {
107
- let r = c(8), { envKey: a, api: o } = useApiClient(), s = useQueryClient(), l;
108
- r[0] === o ? l = r[1] : (l = (e) => o.pipelines.delete({ id: e }), r[0] = o, r[1] = l);
109
- let u;
110
- r[2] !== a || r[3] !== s ? (u = (e, t) => {
111
- s.removeQueries({ queryKey: [
112
- "pipeline",
113
- t,
114
- a
115
- ] }), s.invalidateQueries({ queryKey: ["pipelines", a] });
116
- }, r[2] = a, r[3] = s, r[4] = u) : u = r[4];
117
- let d;
118
- return r[5] !== l || r[6] !== u ? (d = {
119
- mutationFn: l,
120
- onSuccess: u
121
- }, r[5] = l, r[6] = u, r[7] = d) : d = r[7], useMutation(d);
101
+ let r = c(8), { envKey: i, api: o } = useApiClient(), l = useQueryClient(), d;
102
+ r[0] === o ? d = r[1] : (d = (e) => o.pipelines.delete({ id: e }), r[0] = o, r[1] = d);
103
+ let f;
104
+ r[2] !== i || r[3] !== l ? (f = (r, o) => {
105
+ l.removeQueries({ queryKey: getPipelineCacheKey(i, o) }), l.invalidateQueries({ queryKey: getPipelinesCacheKey(i) });
106
+ }, r[2] = i, r[3] = l, r[4] = f) : f = r[4];
107
+ let p;
108
+ return r[5] !== d || r[6] !== f ? (p = {
109
+ mutationFn: d,
110
+ onSuccess: f
111
+ }, r[5] = d, r[6] = f, r[7] = p) : p = r[7], useMutation(p);
122
112
  }
123
113
  function useBatchDeletePipeline() {
124
- let r = c(7), { api: a } = useApiClient(), o = useQueryClient(), s;
125
- r[0] === a ? s = r[1] : (s = (e) => a.pipelines.batchDelete({ ids: e }), r[0] = a, r[1] = s);
126
- let l;
127
- r[2] === o ? l = r[3] : (l = () => {
128
- o.invalidateQueries({
129
- queryKey: ["pipelines"],
130
- type: "all"
131
- });
132
- }, r[2] = o, r[3] = l);
133
- let u;
134
- return r[4] !== s || r[5] !== l ? (u = {
135
- mutationFn: s,
136
- onSuccess: l
137
- }, r[4] = s, r[5] = l, r[6] = u) : u = r[6], useMutation(u);
114
+ let e = c(8), { envKey: r, api: i } = useApiClient(), o = useQueryClient(), l;
115
+ e[0] === i ? l = e[1] : (l = (e) => i.pipelines.batchDelete({ ids: e }), e[0] = i, e[1] = l);
116
+ let d;
117
+ e[2] !== r || e[3] !== o ? (d = () => {
118
+ o.invalidateQueries({ queryKey: getPipelinesCacheKey(r) });
119
+ }, e[2] = r, e[3] = o, e[4] = d) : d = e[4];
120
+ let f;
121
+ return e[5] !== l || e[6] !== d ? (f = {
122
+ mutationFn: l,
123
+ onSuccess: d
124
+ }, e[5] = l, e[6] = d, e[7] = f) : f = e[7], useMutation(f);
138
125
  }
139
- function useChildPipelines(n, i) {
140
- let a = c(10), { envKey: o, api: s } = useApiClient(), l;
141
- a[0] !== o || a[1] !== n ? (l = [
142
- "pipelines",
143
- "children",
144
- n,
145
- o
146
- ], a[0] = o, a[1] = n, a[2] = l) : l = a[2];
147
- let u;
148
- a[3] !== s || a[4] !== n ? (u = () => s.pipelines.getAll({
149
- filter: JSON.stringify({ parentId: n }),
126
+ function useChildPipelines(e, r) {
127
+ let i = c(10), { envKey: a, api: s } = useApiClient(), u;
128
+ i[0] !== a || i[1] !== e ? (u = getPipelinesChildrenCacheKey(a, e), i[0] = a, i[1] = e, i[2] = u) : u = i[2];
129
+ let d;
130
+ i[3] !== s || i[4] !== e ? (d = () => s.pipelines.getAll({
131
+ filter: JSON.stringify({ parentId: e }),
150
132
  sortBy: JSON.stringify([{
151
133
  field: "createdAt",
152
134
  order: "ASC"
153
135
  }]),
154
136
  page: 0,
155
137
  limit: 100
156
- }), a[3] = s, a[4] = n, a[5] = u) : u = a[5];
157
- let d = i && !!n, f;
158
- return a[6] !== l || a[7] !== u || a[8] !== d ? (f = {
159
- queryKey: l,
160
- queryFn: u,
161
- enabled: d
162
- }, a[6] = l, a[7] = u, a[8] = d, a[9] = f) : f = a[9], useQuery(f);
138
+ }), i[3] = s, i[4] = e, i[5] = d) : d = i[5];
139
+ let f = r && !!e, p;
140
+ return i[6] !== u || i[7] !== d || i[8] !== f ? (p = {
141
+ queryKey: u,
142
+ queryFn: d,
143
+ enabled: f
144
+ }, i[6] = u, i[7] = d, i[8] = f, i[9] = p) : p = i[9], useQuery(p);
163
145
  }
164
- function usePipelineSource(n, i) {
165
- let a = c(12), { envKey: o, api: s } = useApiClient(), l;
166
- a[0] !== o || a[1] !== i || a[2] !== n ? (l = [
167
- "pipelineSource",
168
- n,
169
- i,
170
- o
171
- ], a[0] = o, a[1] = i, a[2] = n, a[3] = l) : l = a[3];
172
- let u;
173
- a[4] !== s || a[5] !== i || a[6] !== n ? (u = () => s.config.getPipelineSourceByName({
174
- workspaceBlockName: n,
175
- pipelineName: i
176
- }), a[4] = s, a[5] = i, a[6] = n, a[7] = u) : u = a[7];
177
- let d = !!n && !!i, f;
178
- return a[8] !== l || a[9] !== u || a[10] !== d ? (f = {
179
- queryKey: l,
180
- queryFn: u,
181
- enabled: d
182
- }, a[8] = l, a[9] = u, a[10] = d, a[11] = f) : f = a[11], useQuery(f);
146
+ function usePipelineSource(e, r) {
147
+ let a = c(12), { envKey: o, api: s } = useApiClient(), u;
148
+ a[0] !== o || a[1] !== r || a[2] !== e ? (u = getPipelineSourceCacheKey(o, e, r), a[0] = o, a[1] = r, a[2] = e, a[3] = u) : u = a[3];
149
+ let d;
150
+ a[4] !== s || a[5] !== r || a[6] !== e ? (d = () => s.config.getPipelineSourceByName({
151
+ workspaceBlockName: e,
152
+ pipelineName: r
153
+ }), a[4] = s, a[5] = r, a[6] = e, a[7] = d) : d = a[7];
154
+ let f = !!e && !!r, p;
155
+ return a[8] !== u || a[9] !== d || a[10] !== f ? (p = {
156
+ queryKey: u,
157
+ queryFn: d,
158
+ enabled: f
159
+ }, a[8] = u, a[9] = d, a[10] = f, a[11] = p) : p = a[11], useQuery(p);
183
160
  }
184
- export { useBatchDeletePipeline, useChildPipelines, useCreatePipeline, useDeletePipeline, useFilterPipelines, usePipeline, usePipelineConfig, usePipelineSource, useUpdatePipeline };
161
+ export { useBatchDeletePipeline, useChildPipelines, useCreatePipeline, useDeletePipeline, useFilterPipelines, usePipeline, usePipelineConfigByName, usePipelineSource, useUpdatePipeline };
@@ -1,21 +1,18 @@
1
+ import { getPipelinesCacheKey } from "./query-keys.js";
1
2
  import { useApiClient } from "./useApi.js";
2
3
  import { c } from "react/compiler-runtime";
3
4
  import { useMutation, useQueryClient } from "@tanstack/react-query";
4
5
  function useRunPipeline() {
5
- let a = c(7), { api: o } = useApiClient(), s = useQueryClient(), l;
6
- a[0] === o ? l = a[1] : (l = (e) => o.processor.runPipeline(e), a[0] = o, a[1] = l);
7
- let u;
8
- a[2] === s ? u = a[3] : (u = () => {
9
- console.log("success"), s.invalidateQueries({ queryKey: ["pipelines"] });
10
- }, a[2] = s, a[3] = u);
6
+ let a = c(8), { envKey: o, api: s } = useApiClient(), l = useQueryClient(), u;
7
+ a[0] === s ? u = a[1] : (u = (e) => s.processor.runPipeline(e), a[0] = s, a[1] = u);
11
8
  let d;
12
- return a[4] !== l || a[5] !== u ? (d = {
13
- mutationFn: l,
14
- onSuccess: u,
15
- onError: _temp
16
- }, a[4] = l, a[5] = u, a[6] = d) : d = a[6], useMutation(d);
17
- }
18
- function _temp(e) {
19
- console.error("Error:", e);
9
+ a[2] !== o || a[3] !== l ? (d = () => {
10
+ l.invalidateQueries({ queryKey: getPipelinesCacheKey(o) });
11
+ }, a[2] = o, a[3] = l, a[4] = d) : d = a[4];
12
+ let f;
13
+ return a[5] !== u || a[6] !== d ? (f = {
14
+ mutationFn: u,
15
+ onSuccess: d
16
+ }, a[5] = u, a[6] = d, a[7] = f) : f = a[7], useMutation(f);
20
17
  }
21
18
  export { useRunPipeline };