orcheo-studio 0.23.1 → 0.23.2
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/.bumpversion.cfg +1 -1
- package/dist/assets/{arc-CqnxfCHp.js → arc-BokkJPzk.js} +1 -1
- package/dist/assets/{architectureDiagram-VXUJARFQ-UGPIhA1j.js → architectureDiagram-VXUJARFQ-CzmPOZBu.js} +1 -1
- package/dist/assets/{blockDiagram-VD42YOAC-Cn6wka40.js → blockDiagram-VD42YOAC-DG89LeH9.js} +1 -1
- package/dist/assets/{c4Diagram-YG6GDRKO-BvPRNdur.js → c4Diagram-YG6GDRKO-DymWpJZb.js} +1 -1
- package/dist/assets/channel-DPwJ8Ajm.js +1 -0
- package/dist/assets/{chunk-4BX2VUAB-F_o1AmTw.js → chunk-4BX2VUAB-DulKpeK2.js} +1 -1
- package/dist/assets/{chunk-55IACEB6-Cl075es2.js → chunk-55IACEB6-Bi6MBeyB.js} +1 -1
- package/dist/assets/{chunk-B4BG7PRW-DcErQhy9.js → chunk-B4BG7PRW-teHvBEMz.js} +1 -1
- package/dist/assets/{chunk-DI55MBZ5-CFxCndOp.js → chunk-DI55MBZ5-Clydm5zE.js} +1 -1
- package/dist/assets/{chunk-FMBD7UC4-XOcF0fgy.js → chunk-FMBD7UC4-BGh0gUNB.js} +1 -1
- package/dist/assets/{chunk-QN33PNHL-CjJH_Bvj.js → chunk-QN33PNHL-D-9fma_8.js} +1 -1
- package/dist/assets/{chunk-QZHKN3VN-nLb-Go8u.js → chunk-QZHKN3VN-Bux-KM8v.js} +1 -1
- package/dist/assets/{chunk-TZMSLE5B-L07ovmT0.js → chunk-TZMSLE5B-pgx8j0M-.js} +1 -1
- package/dist/assets/classDiagram-2ON5EDUG-CYBYFsly.js +1 -0
- package/dist/assets/classDiagram-v2-WZHVMYZB-CYBYFsly.js +1 -0
- package/dist/assets/clone-tT9-ZTc-.js +1 -0
- package/dist/assets/{cose-bilkent-S5V4N54A-B6IcYcMk.js → cose-bilkent-S5V4N54A-CszLJ5HU.js} +1 -1
- package/dist/assets/{dagre-6UL2VRFP-CN7ADhef.js → dagre-6UL2VRFP-Cr25CaNe.js} +1 -1
- package/dist/assets/{diagram-PSM6KHXK-3chqLyzk.js → diagram-PSM6KHXK-CnsZe68H.js} +1 -1
- package/dist/assets/{diagram-QEK2KX5R-MrbKZWaG.js → diagram-QEK2KX5R-CN8ov45N.js} +1 -1
- package/dist/assets/{diagram-S2PKOQOG-Dr7BijIx.js → diagram-S2PKOQOG-v2bUyBL7.js} +1 -1
- package/dist/assets/{erDiagram-Q2GNP2WA-Ck-v9a6N.js → erDiagram-Q2GNP2WA-BxxatPhi.js} +1 -1
- package/dist/assets/{flowDiagram-NV44I4VS-D662eMD1.js → flowDiagram-NV44I4VS-DIKLSwgl.js} +1 -1
- package/dist/assets/{ganttDiagram-JELNMOA3-c2mXK47M.js → ganttDiagram-JELNMOA3-D_0u3tXB.js} +1 -1
- package/dist/assets/{gitGraphDiagram-V2S2FVAM-DUMhfhsS.js → gitGraphDiagram-V2S2FVAM-B_nu7ypr.js} +1 -1
- package/dist/assets/{graph-DkWlmVun.js → graph-DmMuvtfO.js} +1 -1
- package/dist/assets/{index-kH6EkBsZ.js → index-DVxGch9w.js} +177 -177
- package/dist/assets/{infoDiagram-HS3SLOUP-OTL7qvkP.js → infoDiagram-HS3SLOUP-DLLSS3lr.js} +1 -1
- package/dist/assets/{isUndefined-BmZvH1PX.js → isUndefined-u8cwznUN.js} +1 -1
- package/dist/assets/{journeyDiagram-XKPGCS4Q-BYzqE5D8.js → journeyDiagram-XKPGCS4Q-fF1HZxKQ.js} +1 -1
- package/dist/assets/{kanban-definition-3W4ZIXB7-NtzQ4y9p.js → kanban-definition-3W4ZIXB7-CcmlUntf.js} +1 -1
- package/dist/assets/{layout-CwhyLMkP.js → layout-CuCF7WdL.js} +1 -1
- package/dist/assets/{linear-Cirf2V1x.js → linear-BVXj8lVL.js} +1 -1
- package/dist/assets/{min-C81vLJYh.js → min-DEoUCRl0.js} +1 -1
- package/dist/assets/{mindmap-definition-VGOIOE7T-TDnLQIKZ.js → mindmap-definition-VGOIOE7T-DtNTD5Hm.js} +1 -1
- package/dist/assets/{pieDiagram-ADFJNKIX-d0-JhjNZ.js → pieDiagram-ADFJNKIX-a07QMF4s.js} +1 -1
- package/dist/assets/{quadrantDiagram-AYHSOK5B-wCoihp8a.js → quadrantDiagram-AYHSOK5B-NxQVfG-F.js} +1 -1
- package/dist/assets/{requirementDiagram-UZGBJVZJ-BqiCIjcI.js → requirementDiagram-UZGBJVZJ-DfwcBFwx.js} +1 -1
- package/dist/assets/{sankeyDiagram-TZEHDZUN-BPH0Pd1D.js → sankeyDiagram-TZEHDZUN-BeRNGGtP.js} +1 -1
- package/dist/assets/{sequenceDiagram-WL72ISMW-B8FfJraH.js → sequenceDiagram-WL72ISMW-dTp9Xfca.js} +1 -1
- package/dist/assets/{stateDiagram-FKZM4ZOC-ZQR3Q9_8.js → stateDiagram-FKZM4ZOC-uXrzw1Ia.js} +1 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-dqZSxN9f.js +1 -0
- package/dist/assets/{timeline-definition-IT6M3QCI-D-arYxX5.js → timeline-definition-IT6M3QCI-Jx4tDH4r.js} +1 -1
- package/dist/assets/{treemap-GDKQZRPO-Dw5BHp_B.js → treemap-GDKQZRPO-CYRu_RLQ.js} +1 -1
- package/dist/assets/{xychartDiagram-PRI3JC2R-Dt1zH6V2.js → xychartDiagram-PRI3JC2R-DVYMDr6g.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/src/features/auth/lib/auth-api.ts +21 -3
- package/src/features/workflow/pages/workflow/hooks/use-workflow-saver.ts +3 -2
- package/src/features/workflow/pages/workflow-gallery/workflow-gallery-tabs.tsx +11 -9
- package/src/lib/auth-fetch.ts +81 -15
- package/dist/assets/channel-FjxqoZWk.js +0 -1
- package/dist/assets/classDiagram-2ON5EDUG-8JYNY9Ic.js +0 -1
- package/dist/assets/classDiagram-v2-WZHVMYZB-8JYNY9Ic.js +0 -1
- package/dist/assets/clone-NPVQC0Uc.js +0 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-uDYn1wPF.js +0 -1
package/src/lib/auth-fetch.ts
CHANGED
|
@@ -1,35 +1,101 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAccessToken,
|
|
3
|
+
getAuthTokens,
|
|
3
4
|
getDevAuthSessionHeaderValue,
|
|
4
5
|
} from "@features/auth/lib/auth-session";
|
|
6
|
+
import { refreshSession } from "@features/auth/lib/auth-api";
|
|
5
7
|
import { getWorkspaceSelectionHeaders } from "./workspace-session";
|
|
6
8
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
): Promise<Response> => {
|
|
12
|
-
const headers = new Headers(init.headers ?? {});
|
|
9
|
+
const buildAuthHeaders = (
|
|
10
|
+
headers: Headers,
|
|
11
|
+
shouldAttachAuth: boolean,
|
|
12
|
+
): string | null => {
|
|
13
13
|
const token = getAccessToken();
|
|
14
|
-
if (token &&
|
|
14
|
+
if (token && shouldAttachAuth) {
|
|
15
15
|
headers.set("Authorization", `Bearer ${token}`);
|
|
16
16
|
}
|
|
17
17
|
const devSession = getDevAuthSessionHeaderValue();
|
|
18
18
|
if (devSession && !headers.has("X-Orcheo-Dev-Session")) {
|
|
19
19
|
headers.set("X-Orcheo-Dev-Session", devSession);
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
21
|
+
return shouldAttachAuth ? token : null;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
const attachWorkspaceHeaders = (headers: Headers): void => {
|
|
25
|
+
for (const [name, value] of Object.entries(getWorkspaceSelectionHeaders())) {
|
|
26
|
+
if (!headers.has(name)) {
|
|
27
|
+
headers.set(name, value);
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
|
-
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const fetchWithHeaders = (
|
|
33
|
+
input: RequestInfo | URL,
|
|
34
|
+
init: RequestInit,
|
|
35
|
+
headers: Headers,
|
|
36
|
+
): Promise<Response> =>
|
|
37
|
+
globalThis.fetch(input, {
|
|
31
38
|
...init,
|
|
32
39
|
credentials: init.credentials ?? "include",
|
|
33
40
|
headers,
|
|
34
41
|
});
|
|
42
|
+
|
|
43
|
+
const buildRequestHeaders = (
|
|
44
|
+
init: RequestInit,
|
|
45
|
+
shouldAttachAuth: boolean,
|
|
46
|
+
includeWorkspaceHeaders: boolean,
|
|
47
|
+
headers = new Headers(init.headers ?? {}),
|
|
48
|
+
): { headers: Headers; accessToken: string | null } => {
|
|
49
|
+
const accessToken = buildAuthHeaders(headers, shouldAttachAuth);
|
|
50
|
+
if (includeWorkspaceHeaders) {
|
|
51
|
+
attachWorkspaceHeaders(headers);
|
|
52
|
+
}
|
|
53
|
+
return { headers, accessToken };
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export const authFetch = async (
|
|
57
|
+
input: RequestInfo | URL,
|
|
58
|
+
init: RequestInit = {},
|
|
59
|
+
options: { includeWorkspaceHeaders?: boolean } = {},
|
|
60
|
+
): Promise<Response> => {
|
|
61
|
+
const originalHeaders = new Headers(init.headers ?? {});
|
|
62
|
+
const shouldAttachAuth = !originalHeaders.has("Authorization");
|
|
63
|
+
// getAccessToken includes the shared 60-second expiry skew, so nearly expired
|
|
64
|
+
// tokens are treated as missing and refreshed before protected requests.
|
|
65
|
+
if (shouldAttachAuth && !getAccessToken() && getAuthTokens()?.refreshToken) {
|
|
66
|
+
await refreshSession();
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
const includeWorkspaceHeaders = options.includeWorkspaceHeaders ?? true;
|
|
70
|
+
const { headers, accessToken: requestAccessToken } = buildRequestHeaders(
|
|
71
|
+
init,
|
|
72
|
+
shouldAttachAuth,
|
|
73
|
+
includeWorkspaceHeaders,
|
|
74
|
+
originalHeaders,
|
|
75
|
+
);
|
|
76
|
+
const response = await fetchWithHeaders(input, init, headers);
|
|
77
|
+
if (response.status !== 401 || !shouldAttachAuth) {
|
|
78
|
+
return response;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
const currentAccessToken = getAccessToken();
|
|
82
|
+
if (currentAccessToken && currentAccessToken !== requestAccessToken) {
|
|
83
|
+
const { headers: retryHeaders } = buildRequestHeaders(
|
|
84
|
+
init,
|
|
85
|
+
shouldAttachAuth,
|
|
86
|
+
includeWorkspaceHeaders,
|
|
87
|
+
);
|
|
88
|
+
return fetchWithHeaders(input, init, retryHeaders);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
if (!getAuthTokens()?.refreshToken || !(await refreshSession())) {
|
|
92
|
+
return response;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
const { headers: retryHeaders } = buildRequestHeaders(
|
|
96
|
+
init,
|
|
97
|
+
shouldAttachAuth,
|
|
98
|
+
includeWorkspaceHeaders,
|
|
99
|
+
);
|
|
100
|
+
return fetchWithHeaders(input, init, retryHeaders);
|
|
35
101
|
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ap as o,aq as n}from"./index-kH6EkBsZ.js";const t=(a,r)=>o.lang.round(n.parse(a)[r]);export{t as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-B4BG7PRW-DcErQhy9.js";import{_ as i}from"./index-kH6EkBsZ.js";import"./chunk-FMBD7UC4-XOcF0fgy.js";import"./chunk-55IACEB6-Cl075es2.js";import"./chunk-QN33PNHL-CjJH_Bvj.js";var p={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{p as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as a,c as s,a as e,C as t}from"./chunk-B4BG7PRW-DcErQhy9.js";import{_ as i}from"./index-kH6EkBsZ.js";import"./chunk-FMBD7UC4-XOcF0fgy.js";import"./chunk-55IACEB6-Cl075es2.js";import"./chunk-QN33PNHL-CjJH_Bvj.js";var p={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{p as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ay as r}from"./index-kH6EkBsZ.js";var a=4;function n(o){return r(o,a)}export{n as c};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{s as t,b as r,a,S as s}from"./chunk-DI55MBZ5-CFxCndOp.js";import{_ as i}from"./index-kH6EkBsZ.js";import"./chunk-55IACEB6-Cl075es2.js";import"./chunk-QN33PNHL-CjJH_Bvj.js";var l={parser:a,get db(){return new s(2)},renderer:r,styles:t,init:i(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{l as diagram};
|