@burdenoff/fe-libs 2026.1023.7 → 2026.1023.9
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/shared/events/sinks/RybbitSink.d.ts +21 -0
- package/dist/shared/events/sinks/RybbitSink.js +36 -11
- package/dist/shared/events/sinks/index.d.ts +1 -1
- package/dist/shared/graphql/client.d.ts +9 -0
- package/dist/shared/graphql/client.js +241 -201
- package/dist/shared/graphql/fetch.js +135 -123
- package/dist/shared/graphql/index.d.ts +1 -0
- package/dist/shared/graphql/workspaceOperationGuard.d.ts +70 -0
- package/dist/shared/graphql/workspaceOperationGuard.js +62 -0
- package/dist/shared/providers/AppShellProvider.d.ts +16 -0
- package/dist/shared/providers/AppShellProvider.js +232 -226
- package/dist/shared/providers/shell/AuthProvider.d.ts +14 -1
- package/dist/shared/providers/shell/AuthProvider.js +105 -94
- package/dist/shared/providers/shell/MultiGatewayProvider.d.ts +8 -1
- package/dist/shared/providers/shell/MultiGatewayProvider.js +115 -119
- package/dist/shared/providers/shell/ProfileStorageManager.js +1 -1
- package/dist/shared/providers/shell/WorkspaceWriteRefusedToastListener.d.ts +4 -0
- package/dist/shared/providers/shell/WorkspaceWriteRefusedToastListener.js +23 -0
- package/dist/shared/providers/shell/authProvider/identityChange.d.ts +26 -0
- package/dist/shared/providers/shell/authProvider/identityChange.js +11 -0
- package/dist/shared/providers/shell/authProvider/useAuthActions.d.ts +4 -1
- package/dist/shared/providers/shell/authProvider/useAuthActions.js +105 -92
- package/dist/shared/providers/shell/authProvider/useBridgeInitialization.d.ts +27 -1
- package/dist/shared/providers/shell/authProvider/useBridgeInitialization.js +82 -62
- package/dist/shared/providers/shell/authProvider/useRemoteSLO.d.ts +4 -1
- package/dist/shared/providers/shell/authProvider/useRemoteSLO.js +16 -14
- package/dist/shared/providers/shell/authProvider/useStorageSync.d.ts +4 -1
- package/dist/shared/providers/shell/authProvider/useStorageSync.js +19 -14
- package/dist/shared/providers/shell/contextSwitchCache.d.ts +4 -0
- package/dist/shared/providers/shell/contextSwitchCache.js +17 -0
- package/dist/shared/providers/shell/identityQueryReset.d.ts +17 -0
- package/dist/shared/providers/shell/identityQueryReset.js +21 -0
- package/dist/shared/providers/shell/identityScopedQueryReset.d.ts +16 -0
- package/dist/shared/providers/shell/identityScopedQueryReset.js +30 -0
- package/dist/shared/providers/shell/index.d.ts +1 -1
- package/dist/shared-events.js +29 -29
- package/dist/shared-graphql.js +11 -10
- package/dist/shared.js +129 -128
- package/package.json +2 -2
|
@@ -1,35 +1,40 @@
|
|
|
1
1
|
import { PROFILE_STORAGE_CHANGE_EVENT as e, getProfileTokens as t, getProfileUser as n, getProfileWorkspaceToken as r, resolveActiveProfileId as i } from "../ProfileStorageManager.js";
|
|
2
|
-
import {
|
|
2
|
+
import { SIGNED_OUT as a } from "./identityChange.js";
|
|
3
|
+
import { useCallback as o, useEffect as s } from "react";
|
|
3
4
|
//#region src/shared/providers/shell/authProvider/useStorageSync.ts
|
|
4
|
-
function
|
|
5
|
-
let
|
|
5
|
+
function c({ user: c, tokens: l, workspaceToken: u, activeId: d, setUser: f, setTokens: p, setWorkspaceTokenLocal: m, setActiveId: h, clearAccounts: g, refreshAccounts: _, announceIdentityChange: v }) {
|
|
6
|
+
let y = o(() => {
|
|
6
7
|
let e = i();
|
|
7
8
|
if (!e) {
|
|
8
|
-
(
|
|
9
|
+
(c || l) && (v("storage-sync", a), f(null), p(null), m(null), h(null), g());
|
|
9
10
|
return;
|
|
10
11
|
}
|
|
11
|
-
let
|
|
12
|
-
|
|
12
|
+
let o = t(e), s = r(e), y = n(e);
|
|
13
|
+
v("storage-sync", {
|
|
14
|
+
profileId: e,
|
|
15
|
+
userId: y ? y.id : c?.id ?? null
|
|
16
|
+
}), e !== d && h(e), o?.accessToken !== l?.accessToken && p(o), s !== u && m(s), y && y.id !== c?.id && f(y), _();
|
|
13
17
|
}, [
|
|
14
|
-
c,
|
|
15
|
-
s,
|
|
16
18
|
l,
|
|
19
|
+
c,
|
|
17
20
|
u,
|
|
18
|
-
g,
|
|
19
21
|
d,
|
|
22
|
+
_,
|
|
20
23
|
f,
|
|
21
24
|
p,
|
|
22
25
|
m,
|
|
23
|
-
h
|
|
26
|
+
h,
|
|
27
|
+
g,
|
|
28
|
+
v
|
|
24
29
|
]);
|
|
25
|
-
|
|
26
|
-
let t = () =>
|
|
30
|
+
s(() => {
|
|
31
|
+
let t = () => y();
|
|
27
32
|
window.addEventListener(e, t), window.addEventListener("storage", t);
|
|
28
33
|
let n = setInterval(t, 1e4);
|
|
29
34
|
return () => {
|
|
30
35
|
window.removeEventListener(e, t), window.removeEventListener("storage", t), clearInterval(n);
|
|
31
36
|
};
|
|
32
|
-
}, [
|
|
37
|
+
}, [y]);
|
|
33
38
|
}
|
|
34
39
|
//#endregion
|
|
35
|
-
export {
|
|
40
|
+
export { c as useStorageSync };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ApolloClient } from '@apollo/client/core';
|
|
2
|
+
import { WorkspaceOperationGuardMode } from '../../graphql/workspaceOperationGuard';
|
|
3
|
+
export declare function evictForContextChange(client: Pick<ApolloClient, 'cache'>, guard: WorkspaceOperationGuardMode): void;
|
|
4
|
+
export declare function refetchForContextChange(client: Pick<ApolloClient, 'refetchQueries'>, guard: WorkspaceOperationGuardMode, activeWorkspaceId: () => string | null): Promise<void>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { refetchActiveQueries as e } from "../../graphql/workspaceOperationGuard.js";
|
|
2
|
+
//#region src/shared/providers/shell/contextSwitchCache.ts
|
|
3
|
+
function t(e, t) {
|
|
4
|
+
try {
|
|
5
|
+
e.cache.evict(t === "enforce" ? {
|
|
6
|
+
id: "ROOT_QUERY",
|
|
7
|
+
broadcast: !1
|
|
8
|
+
} : { id: "ROOT_QUERY" }), e.cache.gc();
|
|
9
|
+
} catch {}
|
|
10
|
+
}
|
|
11
|
+
async function n(t, n, r) {
|
|
12
|
+
try {
|
|
13
|
+
await e(t, n, r);
|
|
14
|
+
} catch {}
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { t as evictForContextChange, n as refetchForContextChange };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
import { QueryClient } from '@tanstack/react-query';
|
|
3
|
+
/**
|
|
4
|
+
* Drop every cached result before the account changes. A query no screen
|
|
5
|
+
* observes is removed. A query a mounted screen observes is reset to its
|
|
6
|
+
* initial state instead, which tells that screen its data is gone (a removed
|
|
7
|
+
* query would leave the screen holding the previous account's rows). Nothing is
|
|
8
|
+
* refetched here; in-flight fetches are cancelled silently (no error toast).
|
|
9
|
+
*/
|
|
10
|
+
export declare function emptyQueryClientForIdentityChange(queryClient: QueryClient): void;
|
|
11
|
+
export interface IdentityQueryReset {
|
|
12
|
+
/** Pass to `AuthProvider` as `onBeforeIdentityChange`. */
|
|
13
|
+
onBeforeIdentityChange: () => void;
|
|
14
|
+
/** Counts announcements; pass to `IdentityScopedQueryReset`. */
|
|
15
|
+
announcementsRef: RefObject<number>;
|
|
16
|
+
}
|
|
17
|
+
export declare function useIdentityQueryReset(queryClient: QueryClient): IdentityQueryReset;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { useCallback as e, useMemo as t, useRef as n } from "react";
|
|
2
|
+
import { notifyManager as r } from "@tanstack/react-query";
|
|
3
|
+
//#region src/shared/providers/shell/identityQueryReset.ts
|
|
4
|
+
function i(e) {
|
|
5
|
+
e.cancelQueries();
|
|
6
|
+
let t = e.getQueryCache();
|
|
7
|
+
r.batch(() => {
|
|
8
|
+
for (let e of t.getAll()) e.getObserversCount() > 0 ? e.reset() : t.remove(e);
|
|
9
|
+
}), e.getMutationCache().clear();
|
|
10
|
+
}
|
|
11
|
+
function a(r) {
|
|
12
|
+
let a = n(0), o = e(() => {
|
|
13
|
+
a.current += 1, i(r);
|
|
14
|
+
}, [r]);
|
|
15
|
+
return t(() => ({
|
|
16
|
+
onBeforeIdentityChange: o,
|
|
17
|
+
announcementsRef: a
|
|
18
|
+
}), [o]);
|
|
19
|
+
}
|
|
20
|
+
//#endregion
|
|
21
|
+
export { i as emptyQueryClientForIdentityChange, a as useIdentityQueryReset };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Mount inside `AuthProvider`, under the same `QueryClientProvider`, before the
|
|
4
|
+
* app's screens. After each commit:
|
|
5
|
+
* - an announcement came since the last commit: the cache was emptied for the
|
|
6
|
+
* account now committed, so the screens still mounted are refetched;
|
|
7
|
+
* - the account changed with no announcement (a missed path): every query is
|
|
8
|
+
* reset, which drops its data, tells mounted screens, and refetches the
|
|
9
|
+
* active ones under the account now signed in.
|
|
10
|
+
* Signed out, nothing is refetched: there is no account to fetch for, and a
|
|
11
|
+
* screen still mounted in that commit would only send a request with no
|
|
12
|
+
* credentials. Emptying the cache is enough.
|
|
13
|
+
*/
|
|
14
|
+
export declare function IdentityScopedQueryReset({ announcementsRef, }: {
|
|
15
|
+
announcementsRef: RefObject<number>;
|
|
16
|
+
}): null;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { SIGNED_OUT_IDENTITY_KEY as e, identityKeyOf as t } from "./authProvider/identityChange.js";
|
|
2
|
+
import { useAuth as n } from "./AuthProvider.js";
|
|
3
|
+
import { emptyQueryClientForIdentityChange as r } from "./identityQueryReset.js";
|
|
4
|
+
import { useLayoutEffect as i, useRef as a } from "react";
|
|
5
|
+
import { useQueryClient as o } from "@tanstack/react-query";
|
|
6
|
+
//#region src/shared/providers/shell/identityScopedQueryReset.tsx
|
|
7
|
+
function s({ announcementsRef: s }) {
|
|
8
|
+
let { activeProfileId: c, user: l } = n(), u = o(), d = t(c, l?.id), f = a(null);
|
|
9
|
+
return i(() => {
|
|
10
|
+
let t = f.current, n = s.current;
|
|
11
|
+
if (f.current = {
|
|
12
|
+
identityKey: d,
|
|
13
|
+
announcements: n
|
|
14
|
+
}, !t) return;
|
|
15
|
+
let i = d === e;
|
|
16
|
+
if (t.announcements !== n) {
|
|
17
|
+
i || u.refetchQueries({ type: "active" });
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (t.identityKey !== d) {
|
|
21
|
+
if (i) {
|
|
22
|
+
r(u);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
u.cancelQueries(), u.resetQueries();
|
|
26
|
+
}
|
|
27
|
+
}), null;
|
|
28
|
+
}
|
|
29
|
+
//#endregion
|
|
30
|
+
export { s as IdentityScopedQueryReset };
|
|
@@ -5,7 +5,7 @@ export type { Locale, TranslationDictionary, I18nContextValue, I18nProviderProps
|
|
|
5
5
|
export { useShellLabel } from './useShellLabel';
|
|
6
6
|
export type { ShellLabel } from './useShellLabel';
|
|
7
7
|
export { AuthProvider, useAuth } from './AuthProvider';
|
|
8
|
-
export type { User, AuthTokens, Account, AuthContextValue, AuthProviderProps, } from './AuthProvider';
|
|
8
|
+
export type { User, AuthTokens, Account, AuthContextValue, AuthProviderProps, IdentityChangeReason, } from './AuthProvider';
|
|
9
9
|
export { AuthBridgeClient, initAuthBridge, getAuthBridge, destroyAuthBridge, isAuthBridgeInitialized, } from './AuthBridgeClient';
|
|
10
10
|
export type { BridgeAuthState, BridgeMessage, AuthBridgeListener, AuthBridgeClientOptions, } from './AuthBridgeClient';
|
|
11
11
|
export * as ProfileStorage from './ProfileStorageManager';
|
package/dist/shared-events.js
CHANGED
|
@@ -4,13 +4,13 @@ import { DevtoolsSink as n } from "./shared/events/sinks/DevtoolsSink.js";
|
|
|
4
4
|
import { BroadcastChannelSink as r } from "./shared/events/sinks/BroadcastChannelSink.js";
|
|
5
5
|
import { BackendAuditSink as i } from "./shared/events/sinks/BackendAuditSink.js";
|
|
6
6
|
import { compileRybbitRoutePattern as a, isRybbitSkippedRoute as o } from "./shared/events/sinks/rybbitRoutes.js";
|
|
7
|
-
import { AnalyticsConsentBanner as s,
|
|
8
|
-
import { OtelBrowserSink as
|
|
7
|
+
import { AnalyticsConsentBanner as s, CONSENT_BANNER_OFFSET_VAR as c, RybbitSink as l, publishConsentBannerOffset as u, readAnalyticsConsent as d, readAnalyticsConsentChoice as f, setAnalyticsConsent as p } from "./shared/events/sinks/RybbitSink.js";
|
|
8
|
+
import { OtelBrowserSink as m } from "./shared/events/sinks/OtelBrowserSink.js";
|
|
9
9
|
import "./shared/events/sinks/index.js";
|
|
10
|
-
import { createContext as
|
|
11
|
-
import { jsx as
|
|
10
|
+
import { createContext as h, use as g, useCallback as _, useEffect as v, useMemo as y } from "react";
|
|
11
|
+
import { jsx as b } from "react/jsx-runtime";
|
|
12
12
|
//#region src/shared/events/index.tsx
|
|
13
|
-
var
|
|
13
|
+
var x = h({
|
|
14
14
|
emit: () => {},
|
|
15
15
|
emitCustom: () => {},
|
|
16
16
|
on: () => () => {},
|
|
@@ -18,22 +18,22 @@ var y = p({
|
|
|
18
18
|
getBuffer: () => [],
|
|
19
19
|
onAny: () => () => {}
|
|
20
20
|
});
|
|
21
|
-
function
|
|
22
|
-
if (!e) return
|
|
21
|
+
function S(e, t) {
|
|
22
|
+
if (!e) return C();
|
|
23
23
|
let n = e.getItem(t);
|
|
24
24
|
if (n) return n;
|
|
25
|
-
let r =
|
|
25
|
+
let r = C();
|
|
26
26
|
return e.setItem(t, r), r;
|
|
27
27
|
}
|
|
28
|
-
function
|
|
28
|
+
function C() {
|
|
29
29
|
return typeof crypto < "u" && "randomUUID" in crypto ? crypto.randomUUID() : `${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;
|
|
30
30
|
}
|
|
31
|
-
function
|
|
31
|
+
function w() {
|
|
32
32
|
if (typeof document > "u") return "light";
|
|
33
33
|
let e = document.documentElement;
|
|
34
34
|
return e.classList.contains("hc") || e.dataset.theme === "hc" ? "hc" : e.classList.contains("dark") || e.dataset.theme === "dark" ? "dark" : "light";
|
|
35
35
|
}
|
|
36
|
-
function
|
|
36
|
+
function T(t, n, r) {
|
|
37
37
|
let i = typeof window < "u" ? window.location : void 0, a = e(), o = typeof navigator < "u" ? navigator : {
|
|
38
38
|
userAgent: "",
|
|
39
39
|
language: "en"
|
|
@@ -43,11 +43,11 @@ function C(t, n, r) {
|
|
|
43
43
|
pathname: i?.pathname ?? "",
|
|
44
44
|
search: i?.search ?? ""
|
|
45
45
|
},
|
|
46
|
-
sessionId:
|
|
47
|
-
deviceId:
|
|
46
|
+
sessionId: S(typeof sessionStorage < "u" ? sessionStorage : void 0, "bf-event-session-id"),
|
|
47
|
+
deviceId: S(typeof localStorage < "u" ? localStorage : void 0, "bf-event-device-id"),
|
|
48
48
|
userAgent: o.userAgent,
|
|
49
49
|
locale: o.language || "en",
|
|
50
|
-
theme:
|
|
50
|
+
theme: w(),
|
|
51
51
|
app: {
|
|
52
52
|
name: t,
|
|
53
53
|
version: n,
|
|
@@ -57,8 +57,8 @@ function C(t, n, r) {
|
|
|
57
57
|
spanId: a.spanId
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
|
-
function
|
|
61
|
-
let a =
|
|
60
|
+
function E({ appName: e, appVersion: t = "0.0.0", appEnv: n = "dev", sourceMfe: r = e, children: i }) {
|
|
61
|
+
let a = y(() => D({
|
|
62
62
|
appName: e,
|
|
63
63
|
appVersion: t,
|
|
64
64
|
appEnv: n,
|
|
@@ -69,16 +69,16 @@ function w({ appName: e, appVersion: t = "0.0.0", appEnv: n = "dev", sourceMfe:
|
|
|
69
69
|
t,
|
|
70
70
|
r
|
|
71
71
|
]);
|
|
72
|
-
return /* @__PURE__ */
|
|
72
|
+
return /* @__PURE__ */ b(x.Provider, {
|
|
73
73
|
value: a,
|
|
74
74
|
children: i
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
|
-
function
|
|
77
|
+
function D({ appName: e, appVersion: t = "0.0.0", appEnv: n = "dev", sourceMfe: r = e }) {
|
|
78
78
|
let i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Set(), o = [];
|
|
79
79
|
function s(i, a, o) {
|
|
80
80
|
return {
|
|
81
|
-
id:
|
|
81
|
+
id: C(),
|
|
82
82
|
name: i,
|
|
83
83
|
version: 1,
|
|
84
84
|
source: {
|
|
@@ -88,7 +88,7 @@ function T({ appName: e, appVersion: t = "0.0.0", appEnv: n = "dev", sourceMfe:
|
|
|
88
88
|
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
89
89
|
monotonic: performance.now(),
|
|
90
90
|
payload: a,
|
|
91
|
-
metadata:
|
|
91
|
+
metadata: T(e, t, n)
|
|
92
92
|
};
|
|
93
93
|
}
|
|
94
94
|
function c(e) {
|
|
@@ -123,24 +123,24 @@ function T({ appName: e, appVersion: t = "0.0.0", appEnv: n = "dev", sourceMfe:
|
|
|
123
123
|
}
|
|
124
124
|
};
|
|
125
125
|
}
|
|
126
|
-
function
|
|
127
|
-
return
|
|
126
|
+
function O() {
|
|
127
|
+
return g(x);
|
|
128
128
|
}
|
|
129
|
-
function
|
|
130
|
-
let n =
|
|
131
|
-
|
|
129
|
+
function k(e, t) {
|
|
130
|
+
let n = O();
|
|
131
|
+
v(() => n.on(e, t), [
|
|
132
132
|
n,
|
|
133
133
|
t,
|
|
134
134
|
e
|
|
135
135
|
]);
|
|
136
136
|
}
|
|
137
|
-
function
|
|
138
|
-
let n =
|
|
139
|
-
return
|
|
137
|
+
function A(e, t) {
|
|
138
|
+
let n = O();
|
|
139
|
+
return _((r) => n.emit(e, r, t), [
|
|
140
140
|
n,
|
|
141
141
|
e,
|
|
142
142
|
t
|
|
143
143
|
]);
|
|
144
144
|
}
|
|
145
145
|
//#endregion
|
|
146
|
-
export { s as AnalyticsConsentBanner, i as BackendAuditSink, r as BroadcastChannelSink, n as DevtoolsSink,
|
|
146
|
+
export { s as AnalyticsConsentBanner, i as BackendAuditSink, r as BroadcastChannelSink, c as CONSENT_BANNER_OFFSET_VAR, n as DevtoolsSink, E as EventBusProvider, t as FLUIDGRIDS_RYBBIT_EVENTS, m as OtelBrowserSink, l as RybbitSink, a as compileRybbitRoutePattern, D as createEventBus, o as isRybbitSkippedRoute, u as publishConsentBannerOffset, d as readAnalyticsConsent, f as readAnalyticsConsentChoice, p as setAnalyticsConsent, k as useEvent, O as useEventBus, A as useEventEmitter };
|
package/dist/shared-graphql.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { getWorkspaceTokenPayload as e, isWorkspaceTokenValidForContext as t } from "./shared/graphql/workspaceToken.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
|
|
2
|
+
import { WORKSPACE_CONTEXT_CHANGED as n, WORKSPACE_CONTEXT_MISMATCH_EVENT as r, WORKSPACE_WRITE_REFUSED_EVENT as i, WORKSPACE_WRITE_REFUSED_MESSAGE as a, WorkspaceContextChangedError as o, isWorkspaceContextChangedError as s, readContextInputWorkspaceId as c } from "./shared/graphql/workspaceOperationGuard.js";
|
|
3
|
+
import { clearGraphqlFetchResponseCache as l, getStoredAuthToken as u, getStoredLocale as d, getStoredOrganizationId as f, getStoredProjectId as p, getStoredWorkspaceId as m, getStoredWorkspaceToken as h, graphqlFetch as g, resolveGatewayUrl as _ } from "./shared/graphql/fetch.js";
|
|
4
|
+
import { SSELink as v } from "./shared/graphql/links/sse-link.js";
|
|
5
|
+
import { createGraphQLClient as y, getGlobalClient as b, getWorkspaceClient as x, initializeAppClients as S, resetAppClients as C } from "./shared/graphql/client.js";
|
|
6
|
+
import { GatewayProvider as w, useGateway as T, useGatewayClient as E, useSafeGateway as D, useSafeGatewayClient as O } from "./shared/graphql/GatewayContext.js";
|
|
7
|
+
import { useHasAuthToken as k } from "./shared/graphql/useHasAuthToken.js";
|
|
8
|
+
import { WsLink as A } from "./shared/graphql/links/ws-link.js";
|
|
9
|
+
import { prepareWorkspaceRequest as j } from "./shared/graphql/prepareWorkspaceRequest.js";
|
|
10
|
+
import { ApolloClient as M, InMemoryCache as N, gql as P } from "@apollo/client/core";
|
|
11
|
+
import { ApolloProvider as F, useApolloClient as I, useLazyQuery as L, useMutation as R, useQuery as z, useSubscription as B } from "@apollo/client/react";
|
|
12
|
+
export { M as ApolloClient, F as ApolloProvider, w as GatewayProvider, N as InMemoryCache, v as SSELink, n as WORKSPACE_CONTEXT_CHANGED, r as WORKSPACE_CONTEXT_MISMATCH_EVENT, i as WORKSPACE_WRITE_REFUSED_EVENT, a as WORKSPACE_WRITE_REFUSED_MESSAGE, o as WorkspaceContextChangedError, A as WsLink, l as clearGraphqlFetchResponseCache, y as createGraphQLClient, b as getGlobalClient, u as getStoredAuthToken, d as getStoredLocale, f as getStoredOrganizationId, p as getStoredProjectId, m as getStoredWorkspaceId, h as getStoredWorkspaceToken, x as getWorkspaceClient, e as getWorkspaceTokenPayload, P as gql, g as graphqlFetch, S as initializeAppClients, s as isWorkspaceContextChangedError, t as isWorkspaceTokenValidForContext, j as prepareWorkspaceRequest, c as readContextInputWorkspaceId, C as resetAppClients, _ as resolveGatewayUrl, I as useApolloClient, T as useGateway, E as useGatewayClient, k as useHasAuthToken, L as useLazyQuery, R as useMutation, z as useQuery, D as useSafeGateway, O as useSafeGatewayClient, B as useSubscription };
|