@loopstack/loopstack-studio 0.22.0 → 0.23.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.
- package/dist/app/EnvironmentEmbedRoot.js +20 -18
- package/dist/components/feedback/ErrorBoundary.js +43 -0
- package/dist/components/{LoadingCentered.js → feedback/LoadingCentered.js} +1 -1
- package/dist/components/feedback/index.js +5 -0
- package/dist/components/index.js +6 -3
- package/dist/components/layout/MainLayout.js +32 -16
- package/dist/components/layout/StudioSidebar.js +165 -0
- package/dist/components/ui-widgets/widgets/SandboxRun.js +1 -0
- package/dist/features/code-explorer/CodeExplorer.js +6 -0
- package/dist/features/code-explorer/components/CodeExplorerTree.js +5 -0
- package/dist/features/code-explorer/components/CodeExplorerTreeNode.js +6 -0
- package/dist/features/code-explorer/components/FileContentViewer.js +1 -0
- package/dist/features/code-explorer/components/FileTabsBar.js +1 -1
- package/dist/features/code-explorer/index.js +4 -0
- package/dist/features/debug/components/ConfigFlowViewer.js +1 -1
- package/dist/features/debug/components/PipelineFlowViewer.js +1 -1
- package/dist/features/debug/index.js +3 -0
- package/dist/features/documents/DocumentRenderer.js +53 -0
- package/dist/features/{workbench → documents}/components/DocumentItem.js +1 -1
- package/dist/features/{workbench → documents}/components/DocumentMetadataPills.js +2 -2
- package/dist/features/{workbench/components → documents}/document-details/DocumentDetails.js +3 -3
- package/dist/features/{workbench/components → documents}/document-details/PromptDetails.js +3 -3
- package/dist/features/documents/index.js +4 -0
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/AiMessage.js +5 -5
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/DocumentDebugRenderer.js +1 -1
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/DocumentFormRenderer.js +3 -3
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/DocumentMessageRenderer.js +1 -1
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/ErrorMessageRenderer.js +1 -1
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/LinkMessageRenderer.js +1 -1
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/MarkdownMessageRenderer.js +2 -2
- package/dist/features/{workbench/components/document-renderer → documents/renderers}/PlainMessageRenderer.js +1 -1
- package/dist/features/health/index.js +1 -0
- package/dist/features/workbench/NavigationItems.js +29 -29
- package/dist/features/workbench/Workbench.js +57 -69
- package/dist/features/workbench/WorkflowItem.js +63 -55
- package/dist/features/workbench/WorkflowList.js +52 -81
- package/dist/features/workbench/components/NewRunDialog.js +2 -1
- package/dist/features/workbench/components/WorkbenchFlowPanel.js +5 -4
- package/dist/features/workbench/components/WorkflowHistoryItem.js +11 -11
- package/dist/features/workbench/components/buttons/WorkflowButtons.js +49 -50
- package/dist/features/workbench/hooks/useWorkflowData.js +49 -0
- package/dist/features/workbench/hooks/useWorkflowListState.js +50 -0
- package/dist/features/workbench/index.js +8 -0
- package/dist/features/workbench/providers/WorkbenchLayoutProvider.js +2 -3
- package/dist/features/workspaces/components/CreateWorkspace.js +1 -1
- package/dist/features/workspaces/components/ExecutionTimeline.js +1 -1
- package/dist/features/workspaces/components/PipelineForm.js +1 -1
- package/dist/features/workspaces/index.js +3 -0
- package/dist/hooks/index.js +3 -2
- package/dist/hooks/query-keys.js +138 -0
- package/dist/hooks/useAuth.js +43 -42
- package/dist/hooks/useConfig.js +31 -35
- package/dist/hooks/useDashboard.js +9 -13
- package/dist/hooks/useDebounce.js +8 -17
- package/dist/hooks/useDocuments.js +4 -9
- package/dist/hooks/useFiles.js +31 -39
- package/dist/hooks/useNamespaces.js +2 -8
- package/dist/hooks/usePipelines.js +132 -155
- package/dist/hooks/useProcessor.js +11 -14
- package/dist/hooks/useWorkflows.js +40 -62
- package/dist/hooks/useWorkspaces.js +105 -110
- package/dist/index.d.ts +99 -3
- package/dist/index.js +14 -7
- package/dist/pages/DashboardPage.js +1 -1
- package/dist/pages/DebugWorkflowDetailsPage.js +2 -2
- package/dist/pages/EmbedWorkbenchPage.js +4 -3
- package/dist/pages/PipelineDebugPage.js +6 -5
- package/dist/pages/PreviewWorkbenchPage.js +121 -118
- package/dist/pages/RunsListPage.js +52 -24
- package/dist/pages/StudioLandingPage.js +1 -0
- package/dist/pages/WorkbenchPage.js +3 -2
- package/dist/pages/WorkspacePage.js +1 -1
- package/dist/providers/InvalidationEventsProvider.js +9 -11
- package/dist/providers/StudioProvider.js +2 -2
- package/dist/routing/LocalRouter.js +12 -8
- package/package.json +1 -1
- package/dist/features/workbench/components/DocumentRenderer.js +0 -54
- /package/dist/components/{content → feedback}/ErrorAlert.js +0 -0
- /package/dist/components/{snackbars → feedback}/ErrorSnackbar.js +0 -0
- /package/dist/components/{snackbars → feedback}/Snackbar.js +0 -0
- /package/dist/features/{workbench → documents}/components/DocumentList.js +0 -0
- /package/dist/features/{workbench/components/document-renderer → documents/renderers}/AiMessageContent.js +0 -0
|
@@ -1,135 +1,130 @@
|
|
|
1
|
+
import { getWorkspaceCacheKey, getWorkspacesCacheKey } 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 useWorkspace(
|
|
5
|
-
let i = c(10), { envKey:
|
|
6
|
-
i[0] !==
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
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);
|
|
5
|
+
function useWorkspace(t) {
|
|
6
|
+
let i = c(10), { envKey: o, api: s } = useApiClient(), l;
|
|
7
|
+
i[0] !== o || i[1] !== t ? (l = getWorkspaceCacheKey(o, t), i[0] = o, i[1] = t, i[2] = l) : l = i[2];
|
|
8
|
+
let u;
|
|
9
|
+
i[3] !== s || i[4] !== t ? (u = () => s.workspaces.getById({ id: t }), i[3] = s, i[4] = t, i[5] = u) : u = i[5];
|
|
10
|
+
let d = !!t, f;
|
|
11
|
+
return i[6] !== l || i[7] !== u || i[8] !== d ? (f = {
|
|
12
|
+
queryKey: l,
|
|
13
|
+
queryFn: u,
|
|
14
|
+
enabled: d
|
|
15
|
+
}, i[6] = l, i[7] = u, i[8] = d, i[9] = f) : f = i[9], useQuery(f);
|
|
19
16
|
}
|
|
20
|
-
function useFilterWorkspaces(
|
|
21
|
-
let
|
|
22
|
-
|
|
23
|
-
let y;
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
17
|
+
function useFilterWorkspaces(e, i, o, s, l, u) {
|
|
18
|
+
let d = c(30), f = o === void 0 ? "id" : o, p = s === void 0 ? "DESC" : s, m = l === void 0 ? 0 : l, h = u === void 0 ? 10 : u, { envKey: g, api: _ } = useApiClient(), v = Object.keys(i).length > 0, y;
|
|
19
|
+
d[0] !== i || d[1] !== v ? (y = v ? JSON.stringify(i) : void 0, d[0] = i, 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"])
|
|
32
|
-
},
|
|
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
|
-
"workspaces",
|
|
44
|
-
h,
|
|
45
|
-
S
|
|
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
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
},
|
|
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
|
+
...getWorkspacesCacheKey(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 = () => _.workspaces.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 useCreateWorkspace() {
|
|
57
|
-
let
|
|
58
|
-
|
|
59
|
-
let u;
|
|
60
|
-
r[2] !== a || r[3] !== s ? (u = () => {
|
|
61
|
-
s.invalidateQueries({ queryKey: ["workspaces", a] });
|
|
62
|
-
}, r[2] = a, r[3] = s, r[4] = u) : u = r[4];
|
|
60
|
+
let e = c(8), { envKey: a, api: s } = useApiClient(), l = useQueryClient(), u;
|
|
61
|
+
e[0] === s ? u = e[1] : (u = (e) => s.workspaces.create(e), e[0] = s, e[1] = u);
|
|
63
62
|
let d;
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
63
|
+
e[2] !== a || e[3] !== l ? (d = () => {
|
|
64
|
+
l.invalidateQueries({ queryKey: getWorkspacesCacheKey(a) });
|
|
65
|
+
}, e[2] = a, e[3] = l, e[4] = d) : d = e[4];
|
|
66
|
+
let f;
|
|
67
|
+
return e[5] !== u || e[6] !== d ? (f = {
|
|
68
|
+
mutationFn: u,
|
|
69
|
+
onSuccess: d
|
|
70
|
+
}, e[5] = u, e[6] = d, e[7] = f) : f = e[7], useMutation(f);
|
|
68
71
|
}
|
|
69
72
|
function useUpdateWorkspace() {
|
|
70
|
-
let
|
|
71
|
-
|
|
72
|
-
let
|
|
73
|
-
|
|
74
|
-
s.invalidateQueries({ queryKey:
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
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 a = c(8), { envKey: s, api: l } = useApiClient(), u = useQueryClient(), d;
|
|
74
|
+
a[0] === l ? d = a[1] : (d = (e) => l.workspaces.update(e), a[0] = l, a[1] = d);
|
|
75
|
+
let f;
|
|
76
|
+
a[2] !== s || a[3] !== u ? (f = (n, r) => {
|
|
77
|
+
u.invalidateQueries({ queryKey: getWorkspaceCacheKey(s, r.id) }), u.invalidateQueries({ queryKey: getWorkspacesCacheKey(s) });
|
|
78
|
+
}, a[2] = s, a[3] = u, a[4] = f) : f = a[4];
|
|
79
|
+
let p;
|
|
80
|
+
return a[5] !== d || a[6] !== f ? (p = {
|
|
81
|
+
mutationFn: d,
|
|
82
|
+
onSuccess: f
|
|
83
|
+
}, a[5] = d, a[6] = f, a[7] = p) : p = a[7], useMutation(p);
|
|
85
84
|
}
|
|
86
85
|
function useDeleteWorkspace() {
|
|
87
|
-
let
|
|
88
|
-
|
|
89
|
-
let
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
return r[5] !== l || r[6] !== u ? (d = {
|
|
99
|
-
mutationFn: l,
|
|
100
|
-
onSuccess: u
|
|
101
|
-
}, r[5] = l, r[6] = u, r[7] = d) : d = r[7], useMutation(d);
|
|
86
|
+
let a = c(8), { envKey: s, api: l } = useApiClient(), u = useQueryClient(), d;
|
|
87
|
+
a[0] === l ? d = a[1] : (d = (e) => l.workspaces.delete({ id: e }), a[0] = l, a[1] = d);
|
|
88
|
+
let f;
|
|
89
|
+
a[2] !== s || a[3] !== u ? (f = (n, r) => {
|
|
90
|
+
u.removeQueries({ queryKey: getWorkspaceCacheKey(s, r) }), u.invalidateQueries({ queryKey: getWorkspacesCacheKey(s) });
|
|
91
|
+
}, a[2] = s, a[3] = u, a[4] = f) : f = a[4];
|
|
92
|
+
let p;
|
|
93
|
+
return a[5] !== d || a[6] !== f ? (p = {
|
|
94
|
+
mutationFn: d,
|
|
95
|
+
onSuccess: f
|
|
96
|
+
}, a[5] = d, a[6] = f, a[7] = p) : p = a[7], useMutation(p);
|
|
102
97
|
}
|
|
103
98
|
function useSetFavouriteWorkspace() {
|
|
104
|
-
let
|
|
105
|
-
|
|
99
|
+
let e = c(8), { envKey: a, api: s } = useApiClient(), l = useQueryClient(), u;
|
|
100
|
+
e[0] === s ? u = e[1] : (u = (e) => {
|
|
106
101
|
let { id: t, isFavourite: n } = e;
|
|
107
|
-
return
|
|
102
|
+
return s.workspaces.setFavourite({
|
|
108
103
|
id: t,
|
|
109
104
|
workspaceFavouriteDto: { isFavourite: n }
|
|
110
105
|
});
|
|
111
|
-
},
|
|
112
|
-
let u;
|
|
113
|
-
r[2] !== a || r[3] !== s ? (u = () => {
|
|
114
|
-
s.invalidateQueries({ queryKey: ["workspaces", a] });
|
|
115
|
-
}, r[2] = a, r[3] = s, r[4] = u) : u = r[4];
|
|
106
|
+
}, e[0] = s, e[1] = u);
|
|
116
107
|
let d;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
108
|
+
e[2] !== a || e[3] !== l ? (d = () => {
|
|
109
|
+
l.invalidateQueries({ queryKey: getWorkspacesCacheKey(a) });
|
|
110
|
+
}, e[2] = a, e[3] = l, e[4] = d) : d = e[4];
|
|
111
|
+
let f;
|
|
112
|
+
return e[5] !== u || e[6] !== d ? (f = {
|
|
113
|
+
mutationFn: u,
|
|
114
|
+
onSuccess: d
|
|
115
|
+
}, e[5] = u, e[6] = d, e[7] = f) : f = e[7], useMutation(f);
|
|
121
116
|
}
|
|
122
117
|
function useBatchDeleteWorkspaces() {
|
|
123
|
-
let
|
|
124
|
-
|
|
125
|
-
let u;
|
|
126
|
-
r[2] !== a || r[3] !== s ? (u = () => {
|
|
127
|
-
s.invalidateQueries({ queryKey: ["workspaces", a] });
|
|
128
|
-
}, r[2] = a, r[3] = s, r[4] = u) : u = r[4];
|
|
118
|
+
let e = c(8), { envKey: a, api: s } = useApiClient(), l = useQueryClient(), u;
|
|
119
|
+
e[0] === s ? u = e[1] : (u = (e) => s.workspaces.batchDelete({ ids: e }), e[0] = s, e[1] = u);
|
|
129
120
|
let d;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
121
|
+
e[2] !== a || e[3] !== l ? (d = () => {
|
|
122
|
+
l.invalidateQueries({ queryKey: getWorkspacesCacheKey(a) });
|
|
123
|
+
}, e[2] = a, e[3] = l, e[4] = d) : d = e[4];
|
|
124
|
+
let f;
|
|
125
|
+
return e[5] !== u || e[6] !== d ? (f = {
|
|
126
|
+
mutationFn: u,
|
|
127
|
+
onSuccess: d
|
|
128
|
+
}, e[5] = u, e[6] = d, e[7] = f) : f = e[7], useMutation(f);
|
|
134
129
|
}
|
|
135
130
|
export { useBatchDeleteWorkspaces, useCreateWorkspace, useDeleteWorkspace, useFilterWorkspaces, useSetFavouriteWorkspace, useUpdateWorkspace, useWorkspace };
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import { AxiosInstance } from 'axios';
|
|
|
6
6
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
7
7
|
import { ClassProp } from 'class-variance-authority/types';
|
|
8
8
|
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
9
|
+
import { Component } from 'react';
|
|
9
10
|
import { ComponentType } from 'react';
|
|
10
11
|
import { Context } from 'react';
|
|
11
12
|
import { DashboardStatsInterface } from '@loopstack/contracts/api';
|
|
@@ -15,6 +16,7 @@ import { DocumentItemInterface } from '@loopstack/contracts/api';
|
|
|
15
16
|
import { Drawer as Drawer_2 } from 'vaul';
|
|
16
17
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
17
18
|
import { EnvironmentConfigInterface } from '@loopstack/contracts/api';
|
|
19
|
+
import { ErrorInfo } from 'react';
|
|
18
20
|
import { ExternalToast } from 'sonner';
|
|
19
21
|
import { FileContentInterface } from '@loopstack/contracts/api';
|
|
20
22
|
import { FileExplorerNodeInterface } from '@loopstack/contracts/api';
|
|
@@ -124,6 +126,10 @@ declare interface BaseSnackbarProps {
|
|
|
124
126
|
onDismiss?: () => void;
|
|
125
127
|
}
|
|
126
128
|
|
|
129
|
+
declare interface BasicErrorComponentProps {
|
|
130
|
+
error?: string | null;
|
|
131
|
+
}
|
|
132
|
+
|
|
127
133
|
export declare interface BatchAction {
|
|
128
134
|
id: string;
|
|
129
135
|
label: string;
|
|
@@ -216,6 +222,8 @@ declare interface CompletionMessagePaperProps {
|
|
|
216
222
|
export declare interface ComponentOverrides {
|
|
217
223
|
CreateWorkspace?: ComponentType<CreateWorkspaceProps>;
|
|
218
224
|
EditWorkspace?: ComponentType<EditWorkspaceProps>;
|
|
225
|
+
SidebarHeader?: ComponentType;
|
|
226
|
+
SidebarFooter?: ComponentType;
|
|
219
227
|
}
|
|
220
228
|
|
|
221
229
|
export declare const ComponentOverridesProvider: ({ children, overrides, }: {
|
|
@@ -376,6 +384,8 @@ export declare function createApiClient(environment: Environment): {
|
|
|
376
384
|
auth: ApiClient['auth'];
|
|
377
385
|
};
|
|
378
386
|
|
|
387
|
+
export declare const CreateWorkspace: ({ types, workspace, onSuccess }: CreateWorkspaceProps) => JSX.Element;
|
|
388
|
+
|
|
379
389
|
export declare interface CreateWorkspaceProps {
|
|
380
390
|
types: WorkspaceConfigInterface[];
|
|
381
391
|
workspace?: WorkspaceItemInterface;
|
|
@@ -631,6 +641,27 @@ declare interface EnvironmentSlotSelectorProps {
|
|
|
631
641
|
error?: string;
|
|
632
642
|
}
|
|
633
643
|
|
|
644
|
+
export declare const ErrorAlert: default_2.FC<BasicErrorComponentProps>;
|
|
645
|
+
|
|
646
|
+
export declare class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBoundaryState> {
|
|
647
|
+
state: ErrorBoundaryState;
|
|
648
|
+
static getDerivedStateFromError(error: Error): ErrorBoundaryState;
|
|
649
|
+
componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
|
|
650
|
+
handleRetry: () => void;
|
|
651
|
+
render(): ReactNode;
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
declare interface ErrorBoundaryProps {
|
|
655
|
+
children: ReactNode;
|
|
656
|
+
fallback?: ReactNode;
|
|
657
|
+
onRetry?: () => void;
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
declare interface ErrorBoundaryState {
|
|
661
|
+
hasError: boolean;
|
|
662
|
+
error: Error | null;
|
|
663
|
+
}
|
|
664
|
+
|
|
634
665
|
export declare const ErrorSnackbar: default_2.FC<ErrorSnackbarProps>;
|
|
635
666
|
|
|
636
667
|
declare interface ErrorSnackbarProps {
|
|
@@ -650,6 +681,62 @@ export declare type FilterOption = string | {
|
|
|
650
681
|
value: string;
|
|
651
682
|
};
|
|
652
683
|
|
|
684
|
+
export declare function getAllWorkflowsCacheKey(envKey: string): string[];
|
|
685
|
+
|
|
686
|
+
export declare function getAvailableEnvironmentsCacheKey(envKey: string): string[];
|
|
687
|
+
|
|
688
|
+
export declare function getDashboardStatsCacheKey(envKey: string): string[];
|
|
689
|
+
|
|
690
|
+
export declare function getDocumentCacheKey(envKey: string, documentId: string): string[];
|
|
691
|
+
|
|
692
|
+
export declare function getDocumentsCacheKey(envKey: string, workflowId: string): string[];
|
|
693
|
+
|
|
694
|
+
export declare function getFileContentCacheKey(envKey: string, pipelineId: string, filePath: string): string[];
|
|
695
|
+
|
|
696
|
+
export declare function getFileTreeCacheKey(envKey: string, pipelineId: string): string[];
|
|
697
|
+
|
|
698
|
+
export declare function getHealthCacheKey(envKey: string): string[];
|
|
699
|
+
|
|
700
|
+
/**
|
|
701
|
+
* Centralized cache key builders for React Query.
|
|
702
|
+
*
|
|
703
|
+
* Conventions:
|
|
704
|
+
* - All keys start with a domain prefix, followed by envKey for environment scoping.
|
|
705
|
+
* - Singular keys (e.g. 'pipeline') are for single-entity queries.
|
|
706
|
+
* - Plural keys (e.g. 'pipelines') are for list/filter queries.
|
|
707
|
+
* - Mutations should invalidate the plural key to catch all list variations.
|
|
708
|
+
* - Use `select` (not `.then()` in queryFn) for response transformations.
|
|
709
|
+
*/
|
|
710
|
+
export declare function getMeCacheKey(envKey: string): string[];
|
|
711
|
+
|
|
712
|
+
export declare function getNamespaceCacheKey(envKey: string, namespaceId: string): string[];
|
|
713
|
+
|
|
714
|
+
export declare function getNamespacesByPipelineCacheKey(envKey: string, pipelineId: string): string[];
|
|
715
|
+
|
|
716
|
+
export declare function getPipelineCacheKey(envKey: string, id: string): string[];
|
|
717
|
+
|
|
718
|
+
export declare function getPipelineConfigCacheKey(envKey: string, workspaceBlockName: string, pipelineBlockName: string): string[];
|
|
719
|
+
|
|
720
|
+
export declare function getPipelinesCacheKey(envKey: string): string[];
|
|
721
|
+
|
|
722
|
+
export declare function getPipelinesChildrenCacheKey(envKey: string, parentId: string): string[];
|
|
723
|
+
|
|
724
|
+
export declare function getPipelineSourceCacheKey(envKey: string, workspaceBlockName: string, pipelineBlockName: string): string[];
|
|
725
|
+
|
|
726
|
+
export declare function getPipelineTypesCacheKey(envKey: string, workspaceBlockName: string): string[];
|
|
727
|
+
|
|
728
|
+
export declare function getWorkflowCacheKey(envKey: string, workflowId: string): string[];
|
|
729
|
+
|
|
730
|
+
export declare function getWorkflowsByPipelineCacheKey(envKey: string, pipelineId: string): string[];
|
|
731
|
+
|
|
732
|
+
export declare function getWorkflowsCacheKey(envKey: string, namespaceId: string): string[];
|
|
733
|
+
|
|
734
|
+
export declare function getWorkspaceCacheKey(envKey: string, id: string): string[];
|
|
735
|
+
|
|
736
|
+
export declare function getWorkspacesCacheKey(envKey: string): string[];
|
|
737
|
+
|
|
738
|
+
export declare function getWorkspaceTypesCacheKey(envKey: string): string[];
|
|
739
|
+
|
|
653
740
|
export declare const GoogleLogo: default_2.FC<GoogleLogoProps>;
|
|
654
741
|
|
|
655
742
|
declare interface GoogleLogoProps {
|
|
@@ -741,8 +828,10 @@ export declare const LocalHealthCheck: () => JSX.Element | null;
|
|
|
741
828
|
export declare class LocalRouter implements StudioRouter {
|
|
742
829
|
private navigate;
|
|
743
830
|
private envId;
|
|
744
|
-
|
|
831
|
+
private embedPrefix;
|
|
832
|
+
constructor(navigate: ReturnType<typeof useNavigate>, envId: string, embedPrefix?: string);
|
|
745
833
|
navigateToHome(): Promise<void>;
|
|
834
|
+
getEnvironmentInfo(): string;
|
|
746
835
|
navigateToEnvironmentInfo(): Promise<void>;
|
|
747
836
|
getRuns(): string;
|
|
748
837
|
getRunsActionRequired(): string;
|
|
@@ -1025,6 +1114,7 @@ export declare const StudioProvider: ({ children, router, environment, }: {
|
|
|
1025
1114
|
|
|
1026
1115
|
export declare interface StudioRouter {
|
|
1027
1116
|
navigateToHome(): Promise<void>;
|
|
1117
|
+
getEnvironmentInfo(): string;
|
|
1028
1118
|
navigateToEnvironmentInfo(): Promise<void>;
|
|
1029
1119
|
getRuns(): string;
|
|
1030
1120
|
getRunsActionRequired(): string;
|
|
@@ -1049,6 +1139,8 @@ export declare interface StudioRouter {
|
|
|
1049
1139
|
getTheme(): 'local' | 'cloud';
|
|
1050
1140
|
}
|
|
1051
1141
|
|
|
1142
|
+
export declare const StudioSidebar: () => JSX.Element;
|
|
1143
|
+
|
|
1052
1144
|
export declare function Switch({ className, ...props }: React_2.ComponentProps<typeof SwitchPrimitive.Root>): JSX.Element;
|
|
1053
1145
|
|
|
1054
1146
|
export declare function Table({ className, ...props }: React_2.ComponentProps<'table'>): JSX.Element;
|
|
@@ -1116,11 +1208,13 @@ export declare function useIsMobile(): boolean;
|
|
|
1116
1208
|
|
|
1117
1209
|
export declare function usePipeline(id: string | undefined): UseQueryResult<PipelineInterface, Error>;
|
|
1118
1210
|
|
|
1119
|
-
export declare function usePipelineConfig(workspaceBlockName: string | undefined
|
|
1211
|
+
export declare function usePipelineConfig(workspaceBlockName: string | undefined): UseQueryResult<PipelineConfigInterface[], Error>;
|
|
1212
|
+
|
|
1213
|
+
export declare function usePipelineConfigByName(workspaceBlockName: string | undefined, pipelineBlockName: string | undefined): UseQueryResult<PipelineConfigInterface, Error>;
|
|
1120
1214
|
|
|
1121
1215
|
export declare function usePipelineSource(workspaceBlockName: string | undefined, pipelineBlockName: string | undefined): UseQueryResult<PipelineSourceInterface, Error>;
|
|
1122
1216
|
|
|
1123
|
-
export declare const useRouter: (envId: string) => StudioRouter;
|
|
1217
|
+
export declare const useRouter: (envId: string, embedPrefix?: string) => StudioRouter;
|
|
1124
1218
|
|
|
1125
1219
|
export declare function useSetFavouriteWorkspace(): UseMutationResult<void, Error, {
|
|
1126
1220
|
id: string;
|
|
@@ -1131,6 +1225,8 @@ export declare function useSidebar(): SidebarContextProps;
|
|
|
1131
1225
|
|
|
1132
1226
|
export declare const useStudio: () => StudioContext;
|
|
1133
1227
|
|
|
1228
|
+
export declare const useStudioOptional: () => StudioContext | null;
|
|
1229
|
+
|
|
1134
1230
|
export declare function useUpdatePipeline(): UseMutationResult<PipelineInterface, Error, {
|
|
1135
1231
|
id: string;
|
|
1136
1232
|
pipelineUpdateDto: PipelineUpdateInterface;
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
import { getAllWorkflowsCacheKey, getAvailableEnvironmentsCacheKey, getDashboardStatsCacheKey, getDocumentCacheKey, getDocumentsCacheKey, getFileContentCacheKey, getFileTreeCacheKey, getHealthCacheKey, getMeCacheKey, getNamespaceCacheKey, getNamespacesByPipelineCacheKey, getPipelineCacheKey, getPipelineConfigCacheKey, getPipelineSourceCacheKey, getPipelineTypesCacheKey, getPipelinesCacheKey, getPipelinesChildrenCacheKey, getWorkflowCacheKey, getWorkflowsByPipelineCacheKey, getWorkflowsCacheKey, getWorkspaceCacheKey, getWorkspaceTypesCacheKey, getWorkspacesCacheKey } from "./hooks/query-keys.js";
|
|
1
2
|
import { createApiClient } from "./services/createApiClient.js";
|
|
2
3
|
import { eventBus } from "./services/eventEmitter.js";
|
|
3
4
|
import "./services/index.js";
|
|
4
|
-
import { StudioProvider, useStudio } from "./providers/StudioProvider.js";
|
|
5
|
+
import { StudioProvider, useStudio, useStudioOptional } from "./providers/StudioProvider.js";
|
|
5
6
|
import { useApiClient } from "./hooks/useApi.js";
|
|
6
7
|
import { useIsMobile } from "./hooks/use-mobile.js";
|
|
7
|
-
import { useAvailableEnvironments, useWorkspaceConfig } from "./hooks/useConfig.js";
|
|
8
|
-
import { useBatchDeletePipeline, useChildPipelines, useCreatePipeline, useDeletePipeline, useFilterPipelines, usePipeline,
|
|
8
|
+
import { useAvailableEnvironments, usePipelineConfig, useWorkspaceConfig } from "./hooks/useConfig.js";
|
|
9
|
+
import { useBatchDeletePipeline, useChildPipelines, useCreatePipeline, useDeletePipeline, useFilterPipelines, usePipeline, usePipelineConfigByName, usePipelineSource, useUpdatePipeline } from "./hooks/usePipelines.js";
|
|
9
10
|
import { useBatchDeleteWorkspaces, useCreateWorkspace, useDeleteWorkspace, useFilterWorkspaces, useSetFavouriteWorkspace, useUpdateWorkspace, useWorkspace } from "./hooks/useWorkspaces.js";
|
|
10
11
|
import "./hooks/index.js";
|
|
11
12
|
import { ComponentOverridesProvider, useComponentOverrides } from "./providers/ComponentOverridesProvider.js";
|
|
@@ -54,15 +55,19 @@ import { DataList } from "./components/data-table/DataList.js";
|
|
|
54
55
|
import ListView_default from "./components/lists/ListView.js";
|
|
55
56
|
import CustomListView_default from "./components/lists/CustomListView.js";
|
|
56
57
|
import CompletionMessagePaper_default from "./components/messages/CompletionMessagePaper.js";
|
|
57
|
-
import
|
|
58
|
-
import
|
|
59
|
-
import
|
|
58
|
+
import { ErrorBoundary } from "./components/feedback/ErrorBoundary.js";
|
|
59
|
+
import LoadingCentered_default from "./components/feedback/LoadingCentered.js";
|
|
60
|
+
import Snackbar_default from "./components/feedback/Snackbar.js";
|
|
61
|
+
import ErrorSnackbar_default from "./components/feedback/ErrorSnackbar.js";
|
|
62
|
+
import ErrorAlert_default from "./components/feedback/ErrorAlert.js";
|
|
60
63
|
import "./components/index.js";
|
|
61
64
|
import DebugPage_default from "./pages/DebugPage.js";
|
|
62
65
|
import DashboardPage from "./pages/DashboardPage.js";
|
|
63
66
|
import { EnvironmentSlotSelector } from "./features/workspaces/components/EnvironmentSlotSelector.js";
|
|
67
|
+
import CreateWorkspace_default from "./features/workspaces/components/CreateWorkspace.js";
|
|
64
68
|
import WorkspacesPage from "./pages/WorkspacesPage.js";
|
|
65
69
|
import WorkspacePage_default from "./pages/WorkspacePage.js";
|
|
70
|
+
import "./features/workspaces/index.js";
|
|
66
71
|
import WorkbenchPage from "./pages/WorkbenchPage.js";
|
|
67
72
|
import PipelineDebugPage_default from "./pages/PipelineDebugPage.js";
|
|
68
73
|
import DebugWorkflowsPage from "./pages/DebugWorkflowsPage.js";
|
|
@@ -74,4 +79,6 @@ import RunsListPage from "./pages/RunsListPage.js";
|
|
|
74
79
|
import StudioLandingPage from "./pages/StudioLandingPage.js";
|
|
75
80
|
import LocalHealthCheck_default from "./features/health/LocalHealthCheck.js";
|
|
76
81
|
import EnvironmentEmbedRoot from "./app/EnvironmentEmbedRoot.js";
|
|
77
|
-
|
|
82
|
+
import { StudioSidebar } from "./components/layout/StudioSidebar.js";
|
|
83
|
+
import "./features/health/index.js";
|
|
84
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, Avatar, AvatarFallback, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, CompletionMessagePaper_default as CompletionMessagePaper, ComponentOverridesProvider, ConfirmDialog_default as ConfirmDialog, CreateWorkspace_default as CreateWorkspace, CustomListView_default as CustomItemListView, DashboardPage, DataList, DataTable, DataTableBatchAction_default as DataTableBatchActions, DataTableFilters_default as DataTableFilters, DataTablePagination_default as DataTablePagination, DataTableToolbar_default as DataTableToolbar, DebugPage_default as DebugPage, DebugWorkflowDetailsPage, DebugWorkflowsPage, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DiscordLogo, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmbedWorkbenchPage, EnvironmentEmbedRoot, EnvironmentSlotSelector, ErrorAlert_default as ErrorAlert, ErrorBoundary, ErrorSnackbar_default as ErrorSnackbar, GoogleLogo, Input, InvalidationEventsProvider, ListView_default as ItemListView, Label, LoadingCentered_default as LoadingCentered, LocalHealthCheck_default as LocalHealthCheck, LocalRouter, MainLayout_default as MainLayout, PageBreadcrumbs_default as PageBreadcrumbs, PipelineDebugPage_default as PipelineDebugPage, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, PreviewWorkbenchPage, RadioGroup, RadioGroupItem, RunsListPage, RunsPage, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarInsetDiv, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuDiv, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Snackbar_default as Snackbar, SseProvider, StudioLandingPage, StudioProvider, StudioSidebar, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, WorkbenchPage, WorkspacePage_default as WorkspacePage, WorkspacesPage, badgeVariants, buttonVariants, createApiClient, eventBus, getAllWorkflowsCacheKey, getAvailableEnvironmentsCacheKey, getDashboardStatsCacheKey, getDocumentCacheKey, getDocumentsCacheKey, getFileContentCacheKey, getFileTreeCacheKey, getHealthCacheKey, getMeCacheKey, getNamespaceCacheKey, getNamespacesByPipelineCacheKey, getPipelineCacheKey, getPipelineConfigCacheKey, getPipelineSourceCacheKey, getPipelineTypesCacheKey, getPipelinesCacheKey, getPipelinesChildrenCacheKey, getWorkflowCacheKey, getWorkflowsByPipelineCacheKey, getWorkflowsCacheKey, getWorkspaceCacheKey, getWorkspaceTypesCacheKey, getWorkspacesCacheKey, useApiClient, useAvailableEnvironments, useBatchDeletePipeline, useBatchDeleteWorkspaces, useChildPipelines, useComponentOverrides, useCreatePipeline, useCreateWorkspace, useDeletePipeline, useDeleteWorkspace, useFilterPipelines, useFilterWorkspaces, useIsMobile, usePipeline, usePipelineConfig, usePipelineConfigByName, usePipelineSource, useRouter, useSetFavouriteWorkspace, useSidebar, useStudio, useStudioOptional, useUpdatePipeline, useUpdateWorkspace, useWorkspace, useWorkspaceConfig };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useStudio } from "../providers/StudioProvider.js";
|
|
2
2
|
import { Alert } from "../components/ui/alert.js";
|
|
3
3
|
import MainLayout_default from "../components/layout/MainLayout.js";
|
|
4
|
-
import LoadingCentered_default from "../components/LoadingCentered.js";
|
|
4
|
+
import LoadingCentered_default from "../components/feedback/LoadingCentered.js";
|
|
5
5
|
import Dashboard from "../features/dashboard/Dashboard.js";
|
|
6
6
|
import { useDashboardStats } from "../hooks/useDashboard.js";
|
|
7
7
|
import { c } from "react/compiler-runtime";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useStudio } from "../providers/StudioProvider.js";
|
|
2
|
-
import {
|
|
2
|
+
import { usePipelineConfigByName, usePipelineSource } from "../hooks/usePipelines.js";
|
|
3
3
|
import MainLayout_default from "../components/layout/MainLayout.js";
|
|
4
4
|
import { ReactFlowProvider } from "../node_modules/@xyflow/react/dist/esm/index.js";
|
|
5
5
|
import ConfigFlowViewer_default from "../features/debug/components/ConfigFlowViewer.js";
|
|
@@ -28,7 +28,7 @@ function DebugWorkflowDetailsPage() {
|
|
|
28
28
|
let m;
|
|
29
29
|
h[3] === g ? m = h[4] : (m = ["default", g], h[3] = g, h[4] = m), v = m;
|
|
30
30
|
}
|
|
31
|
-
let [y, b] = v, { data: x, isLoading: S } =
|
|
31
|
+
let [y, b] = v, { data: x, isLoading: S } = usePipelineConfigByName(y, b), { data: C, isLoading: w } = usePipelineSource(y, b), T = S || w, E;
|
|
32
32
|
h[5] === _ ? E = h[6] : (E = _.getDashboard(), h[5] = _, h[6] = E);
|
|
33
33
|
let D;
|
|
34
34
|
h[7] === Symbol.for("react.memo_cache_sentinel") ? (D = /* @__PURE__ */ jsx(Home, { className: "h-4 w-4" }), h[7] = D) : D = h[7];
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { usePipeline } from "../hooks/usePipelines.js";
|
|
2
|
-
import
|
|
3
|
-
import ErrorSnackbar_default from "../components/
|
|
4
|
-
import LoadingCentered_default from "../components/LoadingCentered.js";
|
|
2
|
+
import LoadingCentered_default from "../components/feedback/LoadingCentered.js";
|
|
3
|
+
import ErrorSnackbar_default from "../components/feedback/ErrorSnackbar.js";
|
|
5
4
|
import { require_enums } from "../packages/contracts/dist/enums/index.js";
|
|
5
|
+
import { useFetchWorkflowsByPipeline } from "../hooks/useWorkflows.js";
|
|
6
6
|
import WorkflowItem_default from "../features/workbench/WorkflowItem.js";
|
|
7
|
+
import "../features/workbench/index.js";
|
|
7
8
|
import { requireParam } from "../lib/requireParam.js";
|
|
8
9
|
import { c } from "react/compiler-runtime";
|
|
9
10
|
import { useEffect, useRef } from "react";
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { useStudio } from "../providers/StudioProvider.js";
|
|
2
|
-
import { usePipeline,
|
|
2
|
+
import { usePipeline, usePipelineConfigByName } from "../hooks/usePipelines.js";
|
|
3
3
|
import { useWorkspace } from "../hooks/useWorkspaces.js";
|
|
4
|
-
import { useFetchWorkflowsByPipeline } from "../hooks/useWorkflows.js";
|
|
5
4
|
import MainLayout_default from "../components/layout/MainLayout.js";
|
|
6
|
-
import ErrorSnackbar_default from "../components/
|
|
5
|
+
import ErrorSnackbar_default from "../components/feedback/ErrorSnackbar.js";
|
|
7
6
|
import { ReactFlowProvider } from "../node_modules/@xyflow/react/dist/esm/index.js";
|
|
7
|
+
import { useFetchWorkflowsByPipeline } from "../hooks/useWorkflows.js";
|
|
8
8
|
import PipelineFlowViewer_default from "../features/debug/components/PipelineFlowViewer.js";
|
|
9
|
-
import { requireParam } from "../lib/requireParam.js";
|
|
10
9
|
import PipelineDebugHeader_default from "../features/debug/components/PipelineDebugHeader.js";
|
|
10
|
+
import "../features/debug/index.js";
|
|
11
|
+
import { requireParam } from "../lib/requireParam.js";
|
|
11
12
|
import { c } from "react/compiler-runtime";
|
|
12
13
|
import React, { useMemo } from "react";
|
|
13
14
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -18,7 +19,7 @@ var PipelineDebugPage_default = () => {
|
|
|
18
19
|
v[0] === b ? x = v[1] : (x = requireParam(b, "pipelineId"), v[0] = b, v[1] = x);
|
|
19
20
|
let S = x, C = usePipeline(S), w = C.data?.workspaceId, T = useWorkspace(w), E = useFetchWorkflowsByPipeline(S), D;
|
|
20
21
|
v[2] === E.data ? D = v[3] : (D = E.data ?? [], v[2] = E.data, v[3] = D);
|
|
21
|
-
let O = D, k = T.data?.blockName, A = C.data?.blockName, j =
|
|
22
|
+
let O = D, k = T.data?.blockName, A = C.data?.blockName, j = usePipelineConfigByName(k, A), M;
|
|
22
23
|
v[4] === y ? M = v[5] : (M = y.getDashboard(), v[4] = y, v[5] = M);
|
|
23
24
|
let N;
|
|
24
25
|
v[6] === Symbol.for("react.memo_cache_sentinel") ? (N = /* @__PURE__ */ jsx(Home, { className: "h-4 w-4" }), v[6] = N) : N = v[6];
|