@loopstack/loopstack-studio 0.32.0 → 0.34.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/api/index.js +4 -1
- package/dist/api/workflows.js +1 -0
- package/dist/app/EnvironmentEmbedRoot.js +22 -24
- package/dist/components/loopstack-elements/link.js +64 -56
- package/dist/components/messages/CompletionMessagePaper.js +25 -29
- package/dist/events/sse-client-events.js +2 -0
- package/dist/features/dashboard/AppLauncher.js +111 -64
- package/dist/features/documents/DocumentRenderer.js +42 -42
- package/dist/features/documents/renderers/LinkMessageRenderer.js +10 -10
- package/dist/features/feature-registry/FeatureRegistryProvider.js +15 -17
- package/dist/features/feature-registry/available-features.js +3 -2
- package/dist/features/feature-registry/index.js +1 -1
- package/dist/features/file-explorer/api/files.js +8 -3
- package/dist/features/file-explorer/components/FileExplorerPanel.js +64 -43
- package/dist/features/file-explorer/file-explorer-feature.js +15 -7
- package/dist/features/file-explorer/hooks/useFileExplorer.js +31 -29
- package/dist/features/file-explorer/index.js +1 -1
- package/dist/features/file-explorer/providers/FileExplorerProvider.js +77 -77
- package/dist/features/git/components/WorkbenchGitPanel.js +1 -1
- package/dist/features/secrets/components/WorkbenchSecretsPanel.js +1 -1
- package/dist/features/workbench/Workbench.js +16 -16
- package/dist/features/workbench/components/NewRunDialog.js +1 -1
- package/dist/features/workbench/components/WorkbenchIconSidebar.js +1 -1
- package/dist/features/workbench/components/WorkbenchSidebarShell.js +3 -3
- package/dist/features/workbench/index.js +1 -1
- package/dist/features/workspaces/Workspaces.js +1 -1
- package/dist/hooks/index.js +2 -2
- package/dist/hooks/query-keys.js +39 -32
- package/dist/hooks/useSecrets.js +9 -45
- package/dist/hooks/useWorkflows.js +73 -61
- package/dist/index.d.ts +39 -13
- package/dist/index.js +8 -8
- package/dist/loopstack-studio.css +1 -1
- package/dist/pages/EmbedWorkbenchPage.js +46 -40
- package/dist/pages/WorkbenchPage.js +50 -45
- package/dist/pages/WorkspacePage.js +39 -25
- package/dist/pages/WorkspaceRunsPage.js +34 -26
- package/dist/providers/InvalidationEventsProvider.js +22 -20
- package/package.json +2 -2
|
@@ -1,21 +1,33 @@
|
|
|
1
|
-
import { getChildWorkflowsCacheKey, getWorkflowCacheKey, getWorkflowConfigCacheKey, getWorkflowSourceCacheKey, getWorkflowsCacheKey } from "./query-keys.js";
|
|
1
|
+
import { getChildWorkflowsCacheKey, getWorkflowCacheKey, getWorkflowConfigCacheKey, getWorkflowSourceCacheKey, getWorkflowStatusCacheKey, getWorkflowsCacheKey } from "./query-keys.js";
|
|
2
2
|
import { useApiClient } from "./useApi.js";
|
|
3
3
|
import { c } from "react/compiler-runtime";
|
|
4
4
|
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
5
5
|
function useWorkflow(e) {
|
|
6
6
|
let i = c(10), { envKey: a, api: o } = useApiClient(), s;
|
|
7
7
|
i[0] !== a || i[1] !== e ? (s = getWorkflowCacheKey(a, e), i[0] = a, i[1] = e, i[2] = s) : s = i[2];
|
|
8
|
-
let
|
|
9
|
-
i[3] !== o || i[4] !== e ? (
|
|
8
|
+
let l;
|
|
9
|
+
i[3] !== o || i[4] !== e ? (l = () => o.workflows.getById({ id: e }), i[3] = o, i[4] = e, i[5] = l) : l = i[5];
|
|
10
|
+
let d = !!e, f;
|
|
11
|
+
return i[6] !== s || i[7] !== l || i[8] !== d ? (f = {
|
|
12
|
+
queryKey: s,
|
|
13
|
+
queryFn: l,
|
|
14
|
+
enabled: d
|
|
15
|
+
}, i[6] = s, i[7] = l, i[8] = d, i[9] = f) : f = i[9], useQuery(f);
|
|
16
|
+
}
|
|
17
|
+
function useWorkflowStatus(e) {
|
|
18
|
+
let r = c(10), { envKey: i, api: a } = useApiClient(), s;
|
|
19
|
+
r[0] !== i || r[1] !== e ? (s = getWorkflowStatusCacheKey(i, e), r[0] = i, r[1] = e, r[2] = s) : s = r[2];
|
|
20
|
+
let l;
|
|
21
|
+
r[3] !== a || r[4] !== e ? (l = () => a.workflows.getStatusById({ id: e }), r[3] = a, r[4] = e, r[5] = l) : l = r[5];
|
|
10
22
|
let d = !!e, f;
|
|
11
|
-
return
|
|
23
|
+
return r[6] !== s || r[7] !== l || r[8] !== d ? (f = {
|
|
12
24
|
queryKey: s,
|
|
13
|
-
queryFn:
|
|
25
|
+
queryFn: l,
|
|
14
26
|
enabled: d
|
|
15
|
-
},
|
|
27
|
+
}, r[6] = s, r[7] = l, r[8] = d, r[9] = f) : f = r[9], useQuery(f);
|
|
16
28
|
}
|
|
17
|
-
function useFilterWorkflows(e, r, i, a,
|
|
18
|
-
let d = c(32), f = i === void 0 ? "id" : i, p = a === void 0 ? "DESC" : a, m =
|
|
29
|
+
function useFilterWorkflows(e, r, i, a, o, l) {
|
|
30
|
+
let d = c(32), f = i === void 0 ? "id" : i, p = a === void 0 ? "DESC" : a, m = o === void 0 ? 0 : o, h = l === void 0 ? 10 : l, { envKey: g, api: _ } = useApiClient(), v;
|
|
19
31
|
d[0] === r ? v = d[1] : (v = Object.keys(r), d[0] = r, d[1] = v);
|
|
20
32
|
let y = v.length > 0, b;
|
|
21
33
|
d[2] !== r || d[3] !== y ? (b = y ? JSON.stringify(r) : void 0, d[2] = r, d[3] = y, d[4] = b) : b = d[4];
|
|
@@ -59,62 +71,62 @@ function useFilterWorkflows(e, r, i, a, s, u) {
|
|
|
59
71
|
}, d[29] = D, d[30] = O, d[31] = k) : k = d[31], useQuery(k);
|
|
60
72
|
}
|
|
61
73
|
function useCreateWorkflow() {
|
|
62
|
-
let e = c(8), { envKey: r, api: i } = useApiClient(), a = useQueryClient(),
|
|
63
|
-
e[0] === i ?
|
|
64
|
-
let
|
|
65
|
-
e[2] !== r || e[3] !== a ? (
|
|
74
|
+
let e = c(8), { envKey: r, api: i } = useApiClient(), a = useQueryClient(), o;
|
|
75
|
+
e[0] === i ? o = e[1] : (o = (e) => i.workflows.create(e), e[0] = i, e[1] = o);
|
|
76
|
+
let u;
|
|
77
|
+
e[2] !== r || e[3] !== a ? (u = () => {
|
|
66
78
|
a.invalidateQueries({ queryKey: getWorkflowsCacheKey(r) });
|
|
67
|
-
}, e[2] = r, e[3] = a, e[4] =
|
|
79
|
+
}, e[2] = r, e[3] = a, e[4] = u) : u = e[4];
|
|
68
80
|
let f;
|
|
69
|
-
return e[5] !==
|
|
70
|
-
mutationFn:
|
|
71
|
-
onSuccess:
|
|
72
|
-
}, e[5] =
|
|
81
|
+
return e[5] !== o || e[6] !== u ? (f = {
|
|
82
|
+
mutationFn: o,
|
|
83
|
+
onSuccess: u
|
|
84
|
+
}, e[5] = o, e[6] = u, e[7] = f) : f = e[7], useMutation(f);
|
|
73
85
|
}
|
|
74
86
|
function useUpdateWorkflow() {
|
|
75
|
-
let e = c(8), { envKey: i, api: a } = useApiClient(),
|
|
76
|
-
e[0] === a ?
|
|
87
|
+
let e = c(8), { envKey: i, api: a } = useApiClient(), o = useQueryClient(), u;
|
|
88
|
+
e[0] === a ? u = e[1] : (u = (e) => a.workflows.update(e), e[0] = a, e[1] = u);
|
|
77
89
|
let f;
|
|
78
|
-
e[2] !== i || e[3] !==
|
|
79
|
-
|
|
80
|
-
}, e[2] = i, e[3] =
|
|
90
|
+
e[2] !== i || e[3] !== o ? (f = (e, a) => {
|
|
91
|
+
o.invalidateQueries({ queryKey: getWorkflowCacheKey(i, a.id) }), o.invalidateQueries({ queryKey: getWorkflowsCacheKey(i) });
|
|
92
|
+
}, e[2] = i, e[3] = o, e[4] = f) : f = e[4];
|
|
81
93
|
let p;
|
|
82
|
-
return e[5] !==
|
|
83
|
-
mutationFn:
|
|
94
|
+
return e[5] !== u || e[6] !== f ? (p = {
|
|
95
|
+
mutationFn: u,
|
|
84
96
|
onSuccess: f
|
|
85
|
-
}, e[5] =
|
|
97
|
+
}, e[5] = u, e[6] = f, e[7] = p) : p = e[7], useMutation(p);
|
|
86
98
|
}
|
|
87
99
|
function useDeleteWorkflow() {
|
|
88
|
-
let e = c(8), { envKey: i, api: a } = useApiClient(),
|
|
89
|
-
e[0] === a ?
|
|
100
|
+
let e = c(8), { envKey: i, api: a } = useApiClient(), o = useQueryClient(), u;
|
|
101
|
+
e[0] === a ? u = e[1] : (u = (e) => a.workflows.delete({ id: e }), e[0] = a, e[1] = u);
|
|
90
102
|
let f;
|
|
91
|
-
e[2] !== i || e[3] !==
|
|
92
|
-
|
|
93
|
-
}, e[2] = i, e[3] =
|
|
103
|
+
e[2] !== i || e[3] !== o ? (f = (e, a) => {
|
|
104
|
+
o.removeQueries({ queryKey: getWorkflowCacheKey(i, a) }), o.invalidateQueries({ queryKey: getWorkflowsCacheKey(i) });
|
|
105
|
+
}, e[2] = i, e[3] = o, e[4] = f) : f = e[4];
|
|
94
106
|
let p;
|
|
95
|
-
return e[5] !==
|
|
96
|
-
mutationFn:
|
|
107
|
+
return e[5] !== u || e[6] !== f ? (p = {
|
|
108
|
+
mutationFn: u,
|
|
97
109
|
onSuccess: f
|
|
98
|
-
}, e[5] =
|
|
110
|
+
}, e[5] = u, e[6] = f, e[7] = p) : p = e[7], useMutation(p);
|
|
99
111
|
}
|
|
100
112
|
function useBatchDeleteWorkflows() {
|
|
101
|
-
let e = c(8), { envKey: r, api: i } = useApiClient(), a = useQueryClient(),
|
|
102
|
-
e[0] === i ?
|
|
103
|
-
let
|
|
104
|
-
e[2] !== r || e[3] !== a ? (
|
|
113
|
+
let e = c(8), { envKey: r, api: i } = useApiClient(), a = useQueryClient(), o;
|
|
114
|
+
e[0] === i ? o = e[1] : (o = (e) => i.workflows.batchDelete({ ids: e }), e[0] = i, e[1] = o);
|
|
115
|
+
let u;
|
|
116
|
+
e[2] !== r || e[3] !== a ? (u = () => {
|
|
105
117
|
a.invalidateQueries({ queryKey: getWorkflowsCacheKey(r) });
|
|
106
|
-
}, e[2] = r, e[3] = a, e[4] =
|
|
118
|
+
}, e[2] = r, e[3] = a, e[4] = u) : u = e[4];
|
|
107
119
|
let f;
|
|
108
|
-
return e[5] !==
|
|
109
|
-
mutationFn:
|
|
110
|
-
onSuccess:
|
|
111
|
-
}, e[5] =
|
|
120
|
+
return e[5] !== o || e[6] !== u ? (f = {
|
|
121
|
+
mutationFn: o,
|
|
122
|
+
onSuccess: u
|
|
123
|
+
}, e[5] = o, e[6] = u, e[7] = f) : f = e[7], useMutation(f);
|
|
112
124
|
}
|
|
113
125
|
function useChildWorkflows(r, i) {
|
|
114
|
-
let a = c(10), o = i === void 0 ? !0 : i, { envKey: s, api:
|
|
126
|
+
let a = c(10), o = i === void 0 ? !0 : i, { envKey: s, api: l } = useApiClient(), d;
|
|
115
127
|
a[0] !== s || a[1] !== r ? (d = getChildWorkflowsCacheKey(s, r), a[0] = s, a[1] = r, a[2] = d) : d = a[2];
|
|
116
128
|
let f;
|
|
117
|
-
a[3] !==
|
|
129
|
+
a[3] !== l || a[4] !== r ? (f = () => l.workflows.getAll({
|
|
118
130
|
filter: JSON.stringify({ parentId: r }),
|
|
119
131
|
sortBy: JSON.stringify([{
|
|
120
132
|
field: "createdAt",
|
|
@@ -122,7 +134,7 @@ function useChildWorkflows(r, i) {
|
|
|
122
134
|
}]),
|
|
123
135
|
page: 0,
|
|
124
136
|
limit: 100
|
|
125
|
-
}), a[3] =
|
|
137
|
+
}), a[3] = l, a[4] = r, a[5] = f) : f = a[5];
|
|
126
138
|
let p = o && !!r, m;
|
|
127
139
|
return a[6] !== d || a[7] !== f || a[8] !== p ? (m = {
|
|
128
140
|
queryKey: d,
|
|
@@ -137,37 +149,37 @@ function _temp(e) {
|
|
|
137
149
|
function useWorkflowConfigByName(e) {
|
|
138
150
|
let r = c(10), { envKey: a, api: o } = useApiClient(), s;
|
|
139
151
|
r[0] !== a || r[1] !== e ? (s = getWorkflowConfigCacheKey(a, e), r[0] = a, r[1] = e, r[2] = s) : s = r[2];
|
|
140
|
-
let
|
|
141
|
-
r[3] !== o || r[4] !== e ? (
|
|
152
|
+
let l;
|
|
153
|
+
r[3] !== o || r[4] !== e ? (l = () => o.config.getWorkflowConfig({ workflowName: e }), r[3] = o, r[4] = e, r[5] = l) : l = r[5];
|
|
142
154
|
let d = !!e, f;
|
|
143
|
-
return r[6] !== s || r[7] !==
|
|
155
|
+
return r[6] !== s || r[7] !== l || r[8] !== d ? (f = {
|
|
144
156
|
queryKey: s,
|
|
145
|
-
queryFn:
|
|
157
|
+
queryFn: l,
|
|
146
158
|
enabled: d
|
|
147
|
-
}, r[6] = s, r[7] =
|
|
159
|
+
}, r[6] = s, r[7] = l, r[8] = d, r[9] = f) : f = r[9], useQuery(f);
|
|
148
160
|
}
|
|
149
161
|
function useWorkflowSource(e) {
|
|
150
162
|
let r = c(10), { envKey: i, api: o } = useApiClient(), s;
|
|
151
163
|
r[0] !== i || r[1] !== e ? (s = getWorkflowSourceCacheKey(i, e), r[0] = i, r[1] = e, r[2] = s) : s = r[2];
|
|
152
|
-
let
|
|
153
|
-
r[3] !== o || r[4] !== e ? (
|
|
164
|
+
let l;
|
|
165
|
+
r[3] !== o || r[4] !== e ? (l = () => o.config.getWorkflowSource({ workflowName: e }), r[3] = o, r[4] = e, r[5] = l) : l = r[5];
|
|
154
166
|
let d = !!e, f;
|
|
155
|
-
return r[6] !== s || r[7] !==
|
|
167
|
+
return r[6] !== s || r[7] !== l || r[8] !== d ? (f = {
|
|
156
168
|
queryKey: s,
|
|
157
|
-
queryFn:
|
|
169
|
+
queryFn: l,
|
|
158
170
|
enabled: d
|
|
159
|
-
}, r[6] = s, r[7] =
|
|
171
|
+
}, r[6] = s, r[7] = l, r[8] = d, r[9] = f) : f = r[9], useQuery(f);
|
|
160
172
|
}
|
|
161
173
|
function useWorkflowCheckpoints(e) {
|
|
162
174
|
let i = c(10), { envKey: a, api: o } = useApiClient(), s;
|
|
163
175
|
i[0] !== a || i[1] !== e ? (s = [...getWorkflowCacheKey(a, e), "checkpoints"], i[0] = a, i[1] = e, i[2] = s) : s = i[2];
|
|
164
|
-
let
|
|
165
|
-
i[3] !== o || i[4] !== e ? (
|
|
176
|
+
let l;
|
|
177
|
+
i[3] !== o || i[4] !== e ? (l = () => o.workflows.getCheckpoints({ id: e }), i[3] = o, i[4] = e, i[5] = l) : l = i[5];
|
|
166
178
|
let d = !!e, f;
|
|
167
|
-
return i[6] !== s || i[7] !==
|
|
179
|
+
return i[6] !== s || i[7] !== l || i[8] !== d ? (f = {
|
|
168
180
|
queryKey: s,
|
|
169
|
-
queryFn:
|
|
181
|
+
queryFn: l,
|
|
170
182
|
enabled: d
|
|
171
|
-
}, i[6] = s, i[7] =
|
|
183
|
+
}, i[6] = s, i[7] = l, i[8] = d, i[9] = f) : f = i[9], useQuery(f);
|
|
172
184
|
}
|
|
173
|
-
export { useBatchDeleteWorkflows, useChildWorkflows, useCreateWorkflow, useDeleteWorkflow, useFilterWorkflows, useUpdateWorkflow, useWorkflow, useWorkflowCheckpoints, useWorkflowConfigByName, useWorkflowSource };
|
|
185
|
+
export { useBatchDeleteWorkflows, useChildWorkflows, useCreateWorkflow, useDeleteWorkflow, useFilterWorkflows, useUpdateWorkflow, useWorkflow, useWorkflowCheckpoints, useWorkflowConfigByName, useWorkflowSource, useWorkflowStatus };
|
package/dist/index.d.ts
CHANGED
|
@@ -49,6 +49,7 @@ import { WorkflowCreateInterface } from '@loopstack/contracts/api';
|
|
|
49
49
|
import { WorkflowFullInterface } from '@loopstack/contracts/api';
|
|
50
50
|
import { WorkflowItemInterface } from '@loopstack/contracts/api';
|
|
51
51
|
import { WorkflowSourceInterface } from '@loopstack/contracts/api';
|
|
52
|
+
import { WorkflowStatusInterface } from '@loopstack/contracts/api';
|
|
52
53
|
import { WorkflowUpdateInterface } from '@loopstack/contracts/api';
|
|
53
54
|
import { WorkspaceCreateInterface } from '@loopstack/contracts/api';
|
|
54
55
|
import { WorkspaceEnvironmentInterface } from '@loopstack/contracts/api';
|
|
@@ -292,14 +293,26 @@ declare function createApi(http: AxiosInstance): {
|
|
|
292
293
|
}>;
|
|
293
294
|
};
|
|
294
295
|
files: {
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
296
|
+
local: {
|
|
297
|
+
getTree: (params: {
|
|
298
|
+
workspaceId: string;
|
|
299
|
+
path?: string;
|
|
300
|
+
}) => Promise<FileExplorerNode[]>;
|
|
301
|
+
readFile: (params: {
|
|
302
|
+
workspaceId: string;
|
|
303
|
+
path: string;
|
|
304
|
+
}) => Promise<FileContent>;
|
|
305
|
+
};
|
|
306
|
+
remote: {
|
|
307
|
+
getTree: (params: {
|
|
308
|
+
workspaceId: string;
|
|
309
|
+
path?: string;
|
|
310
|
+
}) => Promise<FileExplorerNode[]>;
|
|
311
|
+
readFile: (params: {
|
|
312
|
+
workspaceId: string;
|
|
313
|
+
path: string;
|
|
314
|
+
}) => Promise<FileContent>;
|
|
315
|
+
};
|
|
303
316
|
};
|
|
304
317
|
git: {
|
|
305
318
|
getStatus: (params: {
|
|
@@ -367,6 +380,9 @@ declare function createApi(http: AxiosInstance): {
|
|
|
367
380
|
getById: (params: {
|
|
368
381
|
id: string;
|
|
369
382
|
}) => Promise<WorkflowFullInterface>;
|
|
383
|
+
getStatusById: (params: {
|
|
384
|
+
id: string;
|
|
385
|
+
}) => Promise<WorkflowStatusInterface>;
|
|
370
386
|
getAll: (params?: {
|
|
371
387
|
filter?: string;
|
|
372
388
|
sortBy?: string;
|
|
@@ -735,11 +751,11 @@ declare class EventEmitter {
|
|
|
735
751
|
emit(event: string, ...args: unknown[]): void;
|
|
736
752
|
}
|
|
737
753
|
|
|
738
|
-
export declare function FeatureRegistryProvider({
|
|
754
|
+
export declare function FeatureRegistryProvider({ appName, children }: FeatureRegistryProviderProps): JSX.Element;
|
|
739
755
|
|
|
740
756
|
export declare interface FeatureRegistryProviderProps {
|
|
741
|
-
/**
|
|
742
|
-
|
|
757
|
+
/** App name to scope features to. Must match an `appName` from `/api/v1/config/apps`. */
|
|
758
|
+
appName: string;
|
|
743
759
|
children: ReactNode;
|
|
744
760
|
}
|
|
745
761
|
|
|
@@ -748,8 +764,6 @@ declare interface FileContent {
|
|
|
748
764
|
content: string;
|
|
749
765
|
}
|
|
750
766
|
|
|
751
|
-
export declare const fileExplorerFeature: StudioFeature;
|
|
752
|
-
|
|
753
767
|
declare interface FileExplorerNode {
|
|
754
768
|
id: string;
|
|
755
769
|
name: string;
|
|
@@ -817,6 +831,8 @@ export declare function getWorkflowsCacheKey(envKey: string): string[];
|
|
|
817
831
|
|
|
818
832
|
export declare function getWorkflowSourceCacheKey(envKey: string, alias: string): string[];
|
|
819
833
|
|
|
834
|
+
export declare function getWorkflowStatusCacheKey(envKey: string, id: string): string[];
|
|
835
|
+
|
|
820
836
|
export declare function getWorkflowTypesCacheKey(envKey: string, appBlockName: string): string[];
|
|
821
837
|
|
|
822
838
|
export declare function getWorkspaceCacheKey(envKey: string, id: string): string[];
|
|
@@ -934,6 +950,8 @@ declare interface LoadingCenteredProps extends default_2.HTMLAttributes<HTMLDivE
|
|
|
934
950
|
children?: default_2.ReactNode;
|
|
935
951
|
}
|
|
936
952
|
|
|
953
|
+
export declare const localFileExplorerFeature: StudioFeature;
|
|
954
|
+
|
|
937
955
|
export declare const LocalHealthCheck: () => JSX.Element | null;
|
|
938
956
|
|
|
939
957
|
export declare class LocalRouter implements StudioRouter {
|
|
@@ -1037,6 +1055,8 @@ export declare function RadioGroup({ className, ...props }: React_2.ComponentPro
|
|
|
1037
1055
|
|
|
1038
1056
|
export declare function RadioGroupItem({ className, ...props }: React_2.ComponentProps<typeof RadioGroupPrimitive.Item>): JSX.Element;
|
|
1039
1057
|
|
|
1058
|
+
export declare const remoteFileExplorerFeature: StudioFeature;
|
|
1059
|
+
|
|
1040
1060
|
export declare interface RowAction<T = any> {
|
|
1041
1061
|
id: string;
|
|
1042
1062
|
label: string;
|
|
@@ -1506,6 +1526,12 @@ export declare function useWorkflowConfigByName(workflowName: string | undefined
|
|
|
1506
1526
|
*/
|
|
1507
1527
|
export declare function useWorkflowSource(workflowName: string | undefined): UseQueryResult<WorkflowSourceInterface, Error>;
|
|
1508
1528
|
|
|
1529
|
+
/**
|
|
1530
|
+
* Fetch the slim live status for a single workflow — used by embedded sub-workflow link cards
|
|
1531
|
+
* to react to state changes without pulling the full workflow payload.
|
|
1532
|
+
*/
|
|
1533
|
+
export declare function useWorkflowStatus(id: string | undefined): UseQueryResult<WorkflowStatusInterface, Error>;
|
|
1534
|
+
|
|
1509
1535
|
export declare function useWorkspace(id: string | undefined): UseQueryResult<WorkspaceInterface, Error>;
|
|
1510
1536
|
|
|
1511
1537
|
export declare function useWorkspaceEnvironments(workspaceId?: string): UseQueryResult<WorkspaceEnvironmentInterface[], Error>;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getAppTypesCacheKey, getAvailableEnvironmentsCacheKey, getChildWorkflowsCacheKey, getDashboardStatsCacheKey, getDocumentCacheKey, getDocumentsCacheKey, getFileContentCacheKey, getFileTreeCacheKey, getGitLogCacheKey, getGitRemoteCacheKey, getGitStatusCacheKey, getHealthCacheKey, getMeCacheKey, getSecretsCacheKey, getStudioAppsCacheKey, getToolConfigCacheKey, getToolConfigsCacheKey, getWorkflowCacheKey, getWorkflowConfigCacheKey, getWorkflowSourceCacheKey, getWorkflowTypesCacheKey, getWorkflowsCacheKey, getWorkspaceCacheKey, getWorkspacesCacheKey } from "./hooks/query-keys.js";
|
|
1
|
+
import { getAppTypesCacheKey, getAvailableEnvironmentsCacheKey, getChildWorkflowsCacheKey, getDashboardStatsCacheKey, getDocumentCacheKey, getDocumentsCacheKey, getFileContentCacheKey, getFileTreeCacheKey, getGitLogCacheKey, getGitRemoteCacheKey, getGitStatusCacheKey, getHealthCacheKey, getMeCacheKey, getSecretsCacheKey, getStudioAppsCacheKey, getToolConfigCacheKey, getToolConfigsCacheKey, getWorkflowCacheKey, getWorkflowConfigCacheKey, getWorkflowSourceCacheKey, getWorkflowStatusCacheKey, getWorkflowTypesCacheKey, getWorkflowsCacheKey, getWorkspaceCacheKey, getWorkspacesCacheKey } from "./hooks/query-keys.js";
|
|
2
2
|
import { createApiClient } from "./services/createApiClient.js";
|
|
3
3
|
import { eventBus } from "./services/eventEmitter.js";
|
|
4
4
|
import "./services/index.js";
|
|
@@ -7,7 +7,7 @@ import { useApiClient } from "./hooks/useApi.js";
|
|
|
7
7
|
import { useIsMobile } from "./hooks/use-mobile.js";
|
|
8
8
|
import { useAppsConfig, useAvailableEnvironments, useDocumentConfigs } from "./hooks/useConfig.js";
|
|
9
9
|
import { useReplaceEnvironments, useResetEnvironment, useWorkspaceEnvironments } from "./hooks/useEnvironments.js";
|
|
10
|
-
import { useBatchDeleteWorkflows, useChildWorkflows, useCreateWorkflow, useDeleteWorkflow, useFilterWorkflows, useUpdateWorkflow, useWorkflow, useWorkflowCheckpoints, useWorkflowConfigByName, useWorkflowSource } from "./hooks/useWorkflows.js";
|
|
10
|
+
import { useBatchDeleteWorkflows, useChildWorkflows, useCreateWorkflow, useDeleteWorkflow, useFilterWorkflows, useUpdateWorkflow, useWorkflow, useWorkflowCheckpoints, useWorkflowConfigByName, useWorkflowSource, useWorkflowStatus } from "./hooks/useWorkflows.js";
|
|
11
11
|
import { useBatchDeleteWorkspaces, useCreateWorkspace, useDeleteWorkspace, useFilterWorkspaces, useSetFavouriteWorkspace, useUpdateWorkspace, useWorkspace } from "./hooks/useWorkspaces.js";
|
|
12
12
|
import "./hooks/index.js";
|
|
13
13
|
import { StudioPreferencesProvider, useOptionalStudioPreferences, useStudioPreferences } from "./providers/StudioPreferencesProvider.js";
|
|
@@ -64,17 +64,17 @@ import ErrorSnackbar_default from "./components/feedback/ErrorSnackbar.js";
|
|
|
64
64
|
import ErrorAlert_default from "./components/feedback/ErrorAlert.js";
|
|
65
65
|
import "./components/index.js";
|
|
66
66
|
import DebugPage_default from "./pages/DebugPage.js";
|
|
67
|
+
import { FeatureRegistryProvider } from "./features/feature-registry/FeatureRegistryProvider.js";
|
|
68
|
+
import "./features/feature-registry/index.js";
|
|
67
69
|
import { EnvironmentSlotSelector } from "./features/workspaces/components/EnvironmentSlotSelector.js";
|
|
68
70
|
import CreateWorkspace_default from "./features/workspaces/components/CreateWorkspace.js";
|
|
69
|
-
import DashboardPage from "./pages/DashboardPage.js";
|
|
70
|
-
import WorkspacesPage from "./pages/WorkspacesPage.js";
|
|
71
71
|
import "./features/workspaces/index.js";
|
|
72
|
-
import {
|
|
72
|
+
import { localFileExplorerFeature, remoteFileExplorerFeature } from "./features/file-explorer/file-explorer-feature.js";
|
|
73
73
|
import "./features/file-explorer/index.js";
|
|
74
74
|
import { secretsFeature } from "./features/secrets/secrets-feature.js";
|
|
75
75
|
import "./features/secrets/index.js";
|
|
76
|
-
import
|
|
77
|
-
import "./
|
|
76
|
+
import DashboardPage from "./pages/DashboardPage.js";
|
|
77
|
+
import WorkspacesPage from "./pages/WorkspacesPage.js";
|
|
78
78
|
import WorkspacePage_default from "./pages/WorkspacePage.js";
|
|
79
79
|
import WorkspaceRunsPage_default from "./pages/WorkspaceRunsPage.js";
|
|
80
80
|
import WorkbenchPage from "./pages/WorkbenchPage.js";
|
|
@@ -90,4 +90,4 @@ import LocalHealthCheck_default from "./features/health/LocalHealthCheck.js";
|
|
|
90
90
|
import EnvironmentEmbedRoot from "./app/EnvironmentEmbedRoot.js";
|
|
91
91
|
import { StudioSidebar } from "./components/layout/StudioSidebar.js";
|
|
92
92
|
import "./features/health/index.js";
|
|
93
|
-
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, FeatureRegistryProvider, 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, 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, StudioPreferencesProvider, StudioProvider, StudioSidebar, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, WorkbenchPage, WorkflowDebugPage_default as WorkflowDebugPage, WorkspacePage_default as WorkspacePage, WorkspaceRunsPage_default as WorkspaceRunsPage, WorkspacesPage, badgeVariants, buttonVariants, createApiClient, eventBus,
|
|
93
|
+
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, FeatureRegistryProvider, 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, 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, StudioPreferencesProvider, StudioProvider, StudioSidebar, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, WorkbenchPage, WorkflowDebugPage_default as WorkflowDebugPage, WorkspacePage_default as WorkspacePage, WorkspaceRunsPage_default as WorkspaceRunsPage, WorkspacesPage, badgeVariants, buttonVariants, createApiClient, eventBus, getAppTypesCacheKey, getAvailableEnvironmentsCacheKey, getChildWorkflowsCacheKey, getDashboardStatsCacheKey, getDocumentCacheKey, getDocumentsCacheKey, getFileContentCacheKey, getFileTreeCacheKey, getGitLogCacheKey, getGitRemoteCacheKey, getGitStatusCacheKey, getHealthCacheKey, getMeCacheKey, getSecretsCacheKey, getStudioAppsCacheKey, getToolConfigCacheKey, getToolConfigsCacheKey, getWorkflowCacheKey, getWorkflowConfigCacheKey, getWorkflowSourceCacheKey, getWorkflowStatusCacheKey, getWorkflowTypesCacheKey, getWorkflowsCacheKey, getWorkspaceCacheKey, getWorkspacesCacheKey, localFileExplorerFeature, remoteFileExplorerFeature, secretsFeature, useApiClient, useAppsConfig, useAvailableEnvironments, useBatchDeleteWorkflows, useBatchDeleteWorkspaces, useChildWorkflows, useComponentOverrides, useCreateWorkflow, useCreateWorkspace, useDeleteWorkflow, useDeleteWorkspace, useDocumentConfigs, useFilterWorkflows, useFilterWorkspaces, useIsMobile, useOptionalStudioPreferences, useReplaceEnvironments, useResetEnvironment, useRouter, useSetFavouriteWorkspace, useSidebar, useStudio, useStudioOptional, useStudioPreferences, useUpdateWorkflow, useUpdateWorkspace, useWorkflow, useWorkflowCheckpoints, useWorkflowConfigByName, useWorkflowSource, useWorkflowStatus, useWorkspace, useWorkspaceEnvironments };
|