@burdenoff/fe-libs 2026.624.2 → 2026.625.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/dist/chrome/SideNavigation.d.ts.map +1 -1
- package/dist/chrome/SideNavigation.js +2 -1
- package/dist/chrome/ThemePreferences.d.ts +15 -0
- package/dist/chrome/ThemePreferences.d.ts.map +1 -0
- package/dist/chrome/ThemePreferences.js +604 -0
- package/dist/chrome/index.d.ts +1 -0
- package/dist/chrome/index.d.ts.map +1 -1
- package/dist/chrome.js +2 -1
- package/dist/shared/providers/AppShellProvider.d.ts +10 -2
- package/dist/shared/providers/AppShellProvider.d.ts.map +1 -1
- package/dist/shared/providers/AppShellProvider.js +183 -175
- package/dist/shared/providers/shell/ThemeProvider.d.ts +40 -8
- package/dist/shared/providers/shell/ThemeProvider.d.ts.map +1 -1
- package/dist/shared/providers/shell/ThemeProvider.js +165 -54
- package/dist/ui/cta-overflow-menu.d.ts +39 -0
- package/dist/ui/cta-overflow-menu.d.ts.map +1 -0
- package/dist/ui/cta-overflow-menu.js +38 -0
- package/dist/ui/emphasis-panel.d.ts +18 -0
- package/dist/ui/emphasis-panel.d.ts.map +1 -0
- package/dist/ui/emphasis-panel.js +14 -0
- package/dist/ui/glass-card.d.ts +24 -0
- package/dist/ui/glass-card.d.ts.map +1 -0
- package/dist/ui/glass-card.js +27 -0
- package/dist/ui/index.d.ts +4 -0
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/show-more.d.ts +28 -0
- package/dist/ui/show-more.d.ts.map +1 -0
- package/dist/ui/show-more.js +31 -0
- package/dist/ui.js +5 -1
- package/package.json +1 -1
- package/src/shared/tokens/build/brands/fluidgrids.css +2 -2
- package/src/shared/tokens/build/brands/healthybowl.css +2 -2
- package/src/shared/tokens/build/brands/tenant.css +2 -2
- package/src/shared/tokens/build/brands/workspaces.css +2 -2
- package/src/shared/tokens/build/foundation.css +9 -0
- package/src/shared/tokens/build/semantic.css +38 -0
- package/src/shared/tokens/build/tailwind.preset.js +12 -0
- package/src/shared/tokens/build/themes.css +12 -0
- package/src/shared/tokens/tokens.css +37 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import { Brand } from './shell/ThemeProvider';
|
|
2
|
+
import { Brand, ThemeMode, Density, Typography, GlassIntensity } from './shell/ThemeProvider';
|
|
3
3
|
import { TranslationDictionary } from './shell/I18nProvider';
|
|
4
4
|
import { BurdenoffEventName } from '../events';
|
|
5
5
|
export interface AppShellConfig {
|
|
@@ -24,8 +24,16 @@ export interface AppShellConfig {
|
|
|
24
24
|
allowedOrigins?: string;
|
|
25
25
|
debug?: boolean;
|
|
26
26
|
};
|
|
27
|
-
/** Default theme brand */
|
|
27
|
+
/** Default theme brand (per-product accent) */
|
|
28
28
|
defaultBrand?: Brand;
|
|
29
|
+
/** Per-product default theme mode (e.g. a product can default to dark/midnight). */
|
|
30
|
+
defaultMode?: ThemeMode;
|
|
31
|
+
/** Per-product default density. */
|
|
32
|
+
defaultDensity?: Density;
|
|
33
|
+
/** Per-product default typography scale. */
|
|
34
|
+
defaultTypography?: Typography;
|
|
35
|
+
/** Per-product default glass intensity. */
|
|
36
|
+
defaultGlass?: GlassIntensity;
|
|
29
37
|
/** Enable PWA install banner */
|
|
30
38
|
enablePWA?: boolean;
|
|
31
39
|
/** Brand initial for PWA banner icon */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppShellProvider.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/AppShellProvider.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAqD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAa1F,OAAO,
|
|
1
|
+
{"version":3,"file":"AppShellProvider.d.ts","sourceRoot":"","sources":["../../../src/shared/providers/AppShellProvider.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAqD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAa1F,OAAO,EAEL,KAAK,KAAK,EACV,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAY/B,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAQL,KAAK,kBAAkB,EACxB,MAAM,WAAW,CAAC;AAyBnB,MAAM,WAAW,cAAc;IAC7B,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAC;IAEtB,4BAA4B;IAC5B,WAAW,EAAE;QACX,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IAEF,gCAAgC;IAChC,UAAU,CAAC,EAAE;QACX,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IAEF,+CAA+C;IAC/C,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,oFAAoF;IACpF,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,mCAAmC;IACnC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,2CAA2C;IAC3C,YAAY,CAAC,EAAE,cAAc,CAAC;IAE9B,gCAAgC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,mDAAmD;IACnD,cAAc,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;IAExC,mCAAmC;IACnC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B,qDAAqD;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE7D,mCAAmC;IACnC,kBAAkB,CAAC,EAAE;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;KAChC,CAAC;IAEF,uBAAuB;IACvB,eAAe,CAAC,EACZ,UAAU,GACV,YAAY,GACZ,WAAW,GACX,aAAa,GACb,eAAe,GACf,cAAc,CAAC;IAEnB,uEAAuE;IACvE,aAAa,CAAC,EAAE,2BAA2B,CAAC;CAC7C;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE;QACP,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;QACjC,UAAU,CAAC,EAAE,kBAAkB,CAAC;QAChC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAC;KACtD,CAAC;IACF,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,YAAY,CAAC,EAAE;QACb,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,wBAAwB;IACvC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAwFD,wBAAgB,kCAAkC,CAChD,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,wBAAwB,GAC5B,2BAA2B,CAiC7B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,2FAA2F;IAC3F,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAmdD,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,qBAAqB,2CA4S3F"}
|
|
@@ -2,43 +2,43 @@ import { isShellLessRoute as e } from "../config/shellRoutes.js";
|
|
|
2
2
|
import { readActiveContextValueWithUrlPrecedence as t } from "./shell/ActiveContextStorage.js";
|
|
3
3
|
import { BACKEND_ERROR_EVENT as n, CONNECTION_STATUS_EVENT as r, dispatchBackendErrorEvent as i, isBackendErrorDisplay as a, shouldToastBackendError as o } from "../utils/backendErrors.js";
|
|
4
4
|
import { graphqlFetch as s } from "../graphql/fetch.js";
|
|
5
|
-
import { attemptTokenRefresh as c, clearAuthSessionStorage as l, isAuthNetworkError as
|
|
6
|
-
import { AuthProvider as
|
|
7
|
-
import { ActiveContextProvider as
|
|
8
|
-
import { LogManager as
|
|
9
|
-
import { ConsoleTransport as
|
|
10
|
-
import { ThemeProvider as
|
|
11
|
-
import { ErrorFallback as
|
|
12
|
-
import { m as
|
|
13
|
-
import { PWAInstallBanner as
|
|
14
|
-
import { FeatureFlagsProvider as
|
|
15
|
-
import { FeatureFlagProvider as
|
|
16
|
-
import { GlobalUiProvider as
|
|
17
|
-
import { ShellUiProvider as
|
|
18
|
-
import { ContextManagerProvider as
|
|
19
|
-
import { AuthTokenProvider as
|
|
20
|
-
import { MultiGatewayProvider as
|
|
21
|
-
import { G as
|
|
22
|
-
import { ProfileI18nBridge as
|
|
23
|
-
import { ProfileGeographyBridge as
|
|
5
|
+
import { attemptTokenRefresh as c, clearAuthSessionStorage as l, isAuthNetworkError as u } from "../utils/authErrorHandling.js";
|
|
6
|
+
import { AuthProvider as d } from "./shell/AuthProvider.js";
|
|
7
|
+
import { ActiveContextProvider as f } from "./shell/ActiveContextProvider.js";
|
|
8
|
+
import { LogManager as p } from "../logger/LogManager.js";
|
|
9
|
+
import { ConsoleTransport as ee } from "../logger/ConsoleTransport.js";
|
|
10
|
+
import { ThemeProvider as m } from "./shell/ThemeProvider.js";
|
|
11
|
+
import { ErrorFallback as te } from "../components/ErrorFallback.js";
|
|
12
|
+
import { m as h } from "../../node_modules/react-error-boundary/dist/react-error-boundary.js";
|
|
13
|
+
import { PWAInstallBanner as g } from "../components/PWAInstallBanner.js";
|
|
14
|
+
import { FeatureFlagsProvider as _ } from "./shell/FeatureFlagsProvider.js";
|
|
15
|
+
import { FeatureFlagProvider as v } from "../feature-flags/FeatureFlagProvider.js";
|
|
16
|
+
import { GlobalUiProvider as y } from "./shell/GlobalUiProvider.js";
|
|
17
|
+
import { ShellUiProvider as b } from "./shell/ShellUiProvider.js";
|
|
18
|
+
import { ContextManagerProvider as ne } from "./shell/ContextManagerProvider.js";
|
|
19
|
+
import { AuthTokenProvider as re } from "./shell/AuthTokenProvider.js";
|
|
20
|
+
import { MultiGatewayProvider as ie } from "./shell/MultiGatewayProvider.js";
|
|
21
|
+
import { G as x, j as S, w as C } from "../../node_modules/web-vitals/dist/web-vitals.js";
|
|
22
|
+
import { ProfileI18nBridge as w } from "./shell/ProfileI18nBridge.js";
|
|
23
|
+
import { ProfileGeographyBridge as ae } from "./shell/ProfileGeographyBridge.js";
|
|
24
24
|
import { AppShellContextProvider as oe } from "./shell/AppShellContext.js";
|
|
25
|
-
import { DevtoolsSink as
|
|
26
|
-
import { BroadcastChannelSink as
|
|
27
|
-
import { BackendAuditSink as
|
|
28
|
-
import { RybbitSink as
|
|
29
|
-
import { OtelBrowserSink as
|
|
30
|
-
import { EventBusProvider as
|
|
31
|
-
import { useReferralAttribution as
|
|
32
|
-
import { TourPlayerProvider as
|
|
33
|
-
import { ToursProvider as
|
|
34
|
-
import { TourInitializer as
|
|
35
|
-
import { Suspense as
|
|
36
|
-
import { Fragment as
|
|
37
|
-
import { BrowserRouter as
|
|
38
|
-
import { Toaster as
|
|
39
|
-
import { MutationCache as
|
|
25
|
+
import { DevtoolsSink as se } from "../events/sinks/DevtoolsSink.js";
|
|
26
|
+
import { BroadcastChannelSink as T } from "../events/sinks/BroadcastChannelSink.js";
|
|
27
|
+
import { BackendAuditSink as E } from "../events/sinks/BackendAuditSink.js";
|
|
28
|
+
import { RybbitSink as D } from "../events/sinks/RybbitSink.js";
|
|
29
|
+
import { OtelBrowserSink as O } from "../events/sinks/OtelBrowserSink.js";
|
|
30
|
+
import { EventBusProvider as ce, useEventBus as k } from "../../shared-events.js";
|
|
31
|
+
import { useReferralAttribution as A } from "../hooks/useReferralAttribution.js";
|
|
32
|
+
import { TourPlayerProvider as j } from "../tours/TourPlayerProvider.js";
|
|
33
|
+
import { ToursProvider as M, useToursContext as N } from "../tours/ToursContext.js";
|
|
34
|
+
import { TourInitializer as P } from "../tours/TourInitializer.js";
|
|
35
|
+
import { Suspense as F, useCallback as I, useEffect as L, useMemo as R, useRef as z } from "react";
|
|
36
|
+
import { Fragment as B, jsx as V, jsxs as H } from "react/jsx-runtime";
|
|
37
|
+
import { BrowserRouter as le, useLocation as U } from "react-router-dom";
|
|
38
|
+
import { Toaster as W, toast as G } from "sonner";
|
|
39
|
+
import { MutationCache as ue, QueryCache as de, QueryClient as fe, QueryClientProvider as pe } from "@tanstack/react-query";
|
|
40
40
|
//#region src/shared/providers/AppShellProvider.tsx
|
|
41
|
-
var
|
|
41
|
+
var K = {
|
|
42
42
|
bigconsole: {
|
|
43
43
|
prod: "292459a3e86c",
|
|
44
44
|
nonProd: "a7e7362b0de3"
|
|
@@ -57,8 +57,8 @@ var Y = {
|
|
|
57
57
|
},
|
|
58
58
|
vibecontrols: { prod: "8a46449d9c07" },
|
|
59
59
|
workspaces: { prod: "da0c142f4b2e" }
|
|
60
|
-
},
|
|
61
|
-
function
|
|
60
|
+
}, q = /* @__PURE__ */ "nav.route.changed,auth.signed_in,auth.signed_out,support.ticket.created,support.ticket.closed,support.ticket.reopened,support.kb.article_rated,conversations.conversation.created,conversations.conversation.archived,notification.item.opened,notification.preference.updated,notification.admin.sent,notification.template.saved,notification.schedule.updated,vibecontrols.agent.registered,vibecontrols.agent.gateway_auth_setup,vibecontrols.session.created,vibecontrols.session.started,vibecontrols.session.terminal_opened_in_browser,vibecontrols.session.share_link_created,vibecontrols.session.joined_shared,vibecontrols.tunnel.created,vibecontrols.tunnel.started,vibecontrols.vibedeck.button_executed,vibecontrols.quota.agent_limit_hit,vibecontrols.quota.session_limit_hit,vibecontrols.quota.tunnel_limit_hit,vibecontrols.billing.upgrade_clicked".split(","), J = 4e3;
|
|
61
|
+
function Y(e) {
|
|
62
62
|
let t = e.technicalMessage ?? e.extensions?.technicalMessage, n = {
|
|
63
63
|
code: e.code,
|
|
64
64
|
operationName: e.operationName,
|
|
@@ -70,13 +70,13 @@ function fe(e) {
|
|
|
70
70
|
};
|
|
71
71
|
console.error("[Burdenoff backend error]", e.message, n);
|
|
72
72
|
}
|
|
73
|
-
function
|
|
73
|
+
function X(e) {
|
|
74
74
|
return e === "prod" || e === "production" ? "prod" : e === "alpha" || e === "staging" ? "alpha" : "dev";
|
|
75
75
|
}
|
|
76
|
-
function
|
|
76
|
+
function Z(e, t) {
|
|
77
77
|
return e.VITE_DISABLE_ANALYTICS === "true" ? !1 : e.VITE_ENABLE_ANALYTICS === "true" || e.PROD || t !== "dev" ? !0 : e.VITE_ENABLE_ANALYTICS !== "false";
|
|
78
78
|
}
|
|
79
|
-
function
|
|
79
|
+
function me() {
|
|
80
80
|
return {
|
|
81
81
|
BASE_URL: "/",
|
|
82
82
|
DEV: !1,
|
|
@@ -85,8 +85,8 @@ function he() {
|
|
|
85
85
|
SSR: !1
|
|
86
86
|
};
|
|
87
87
|
}
|
|
88
|
-
function
|
|
89
|
-
let n =
|
|
88
|
+
function Q(e, t) {
|
|
89
|
+
let n = X(t.VITE_DEPLOY_ENV ?? t.MODE), r = Z(t, n), i = K[e], a = n === "prod" ? i?.prod : i?.nonProd, o = t.VITE_RYBBIT_SITE_ID || a, s = t.VITE_BACKEND_AUDIT_ENDPOINT || (t.PROD ? "/api/fe-events" : void 0);
|
|
90
90
|
return {
|
|
91
91
|
enabled: r,
|
|
92
92
|
appVersion: t.VITE_APP_VERSION || "0.0.0",
|
|
@@ -97,7 +97,7 @@ function Z(e, t) {
|
|
|
97
97
|
enabled: r && !!o,
|
|
98
98
|
siteId: o,
|
|
99
99
|
scriptUrl: t.VITE_RYBBIT_SCRIPT_URL,
|
|
100
|
-
allowlist:
|
|
100
|
+
allowlist: q,
|
|
101
101
|
identifyOn: "auth.signed_in",
|
|
102
102
|
rename: { "nav.route.changed": "pageview" }
|
|
103
103
|
},
|
|
@@ -112,16 +112,16 @@ function Z(e, t) {
|
|
|
112
112
|
}
|
|
113
113
|
};
|
|
114
114
|
}
|
|
115
|
-
function
|
|
116
|
-
let { trackProgress: a, recordStepCompletion: o, trackEvent: s } =
|
|
117
|
-
return /* @__PURE__ */
|
|
118
|
-
onTourStart:
|
|
115
|
+
function he({ children: e, enablePWA: t, toasterPosition: n, productName: r, brandInitial: i }) {
|
|
116
|
+
let { trackProgress: a, recordStepCompletion: o, trackEvent: s } = N(), c = I((e, t) => e.steps?.[t], []);
|
|
117
|
+
return /* @__PURE__ */ H(j, {
|
|
118
|
+
onTourStart: I((e) => {
|
|
119
119
|
a(e.id, "started"), s("TOUR_STARTED", e.id);
|
|
120
120
|
}, [s, a]),
|
|
121
|
-
onTourComplete:
|
|
121
|
+
onTourComplete: I((e) => {
|
|
122
122
|
a(e.id, "completed"), s("TOUR_COMPLETED", e.id);
|
|
123
123
|
}, [s, a]),
|
|
124
|
-
onTourSkip:
|
|
124
|
+
onTourSkip: I((e, t) => {
|
|
125
125
|
let n = c(e, t);
|
|
126
126
|
a(e.id, "skipped"), s("TOUR_SKIPPED", e.id, {
|
|
127
127
|
stepId: n?.id,
|
|
@@ -132,14 +132,14 @@ function ge({ children: e, enablePWA: t, toasterPosition: n, productName: r, bra
|
|
|
132
132
|
s,
|
|
133
133
|
a
|
|
134
134
|
]),
|
|
135
|
-
onStepChange:
|
|
135
|
+
onStepChange: I((e, t) => {
|
|
136
136
|
let n = c(e, t);
|
|
137
137
|
n && s("STEP_VIEWED", e.id, {
|
|
138
138
|
stepId: n.id,
|
|
139
139
|
stepOrder: n.stepOrder
|
|
140
140
|
});
|
|
141
141
|
}, [c, s]),
|
|
142
|
-
onStepComplete:
|
|
142
|
+
onStepComplete: I((e, t) => {
|
|
143
143
|
let n = c(e, t);
|
|
144
144
|
n && (o(e.id, n.id), s("STEP_COMPLETED", e.id, {
|
|
145
145
|
stepId: n.id,
|
|
@@ -151,18 +151,18 @@ function ge({ children: e, enablePWA: t, toasterPosition: n, productName: r, bra
|
|
|
151
151
|
s
|
|
152
152
|
]),
|
|
153
153
|
children: [
|
|
154
|
-
/* @__PURE__ */
|
|
154
|
+
/* @__PURE__ */ V(P, {}),
|
|
155
155
|
e,
|
|
156
|
-
/* @__PURE__ */
|
|
157
|
-
/* @__PURE__ */
|
|
158
|
-
/* @__PURE__ */
|
|
156
|
+
/* @__PURE__ */ V(ge, {}),
|
|
157
|
+
/* @__PURE__ */ V(ve, {}),
|
|
158
|
+
/* @__PURE__ */ V(W, {
|
|
159
159
|
position: n,
|
|
160
160
|
richColors: !0,
|
|
161
161
|
closeButton: !0
|
|
162
162
|
}),
|
|
163
|
-
t && /* @__PURE__ */
|
|
163
|
+
t && /* @__PURE__ */ V(F, {
|
|
164
164
|
fallback: null,
|
|
165
|
-
children: /* @__PURE__ */
|
|
165
|
+
children: /* @__PURE__ */ V(g, {
|
|
166
166
|
productName: r,
|
|
167
167
|
brandInitial: i
|
|
168
168
|
})
|
|
@@ -170,44 +170,44 @@ function ge({ children: e, enablePWA: t, toasterPosition: n, productName: r, bra
|
|
|
170
170
|
]
|
|
171
171
|
});
|
|
172
172
|
}
|
|
173
|
-
function
|
|
174
|
-
let e =
|
|
175
|
-
return
|
|
173
|
+
function ge() {
|
|
174
|
+
let e = z(null);
|
|
175
|
+
return L(() => {
|
|
176
176
|
let t = (t) => {
|
|
177
177
|
let n = t instanceof CustomEvent && a(t.detail) ? t.detail : null;
|
|
178
178
|
if (!o(n)) return;
|
|
179
|
-
|
|
179
|
+
Y(n);
|
|
180
180
|
let r = `${n.code ?? ""}|${n.message}`, i = Date.now(), s = e.current;
|
|
181
|
-
s?.key === r && i - s.shownAt <
|
|
181
|
+
s?.key === r && i - s.shownAt < J || (e.current = {
|
|
182
182
|
key: r,
|
|
183
183
|
shownAt: i
|
|
184
|
-
},
|
|
184
|
+
}, G.error(n.message, { duration: 7e3 }));
|
|
185
185
|
};
|
|
186
186
|
return window.addEventListener(n, t), () => window.removeEventListener(n, t);
|
|
187
187
|
}, []), null;
|
|
188
188
|
}
|
|
189
|
-
var
|
|
189
|
+
var $ = "burdenoff-connection-status", _e = 1500;
|
|
190
190
|
function ve() {
|
|
191
|
-
let e =
|
|
192
|
-
return
|
|
191
|
+
let e = z(null), t = z(!1);
|
|
192
|
+
return L(() => {
|
|
193
193
|
let n = () => {
|
|
194
|
-
t.current || (t.current = !0,
|
|
195
|
-
id:
|
|
194
|
+
t.current || (t.current = !0, G.error("Connection lost. Trying to reconnect…", {
|
|
195
|
+
id: $,
|
|
196
196
|
duration: Infinity
|
|
197
197
|
}));
|
|
198
198
|
}, i = () => {
|
|
199
199
|
t.current || e.current || (e.current = setTimeout(() => {
|
|
200
200
|
e.current = null, n();
|
|
201
|
-
},
|
|
201
|
+
}, _e));
|
|
202
202
|
}, a = (n) => {
|
|
203
203
|
if (e.current &&= (clearTimeout(e.current), null), !t.current) {
|
|
204
|
-
|
|
204
|
+
G.dismiss($);
|
|
205
205
|
return;
|
|
206
206
|
}
|
|
207
|
-
t.current = !1, n ?
|
|
208
|
-
id:
|
|
207
|
+
t.current = !1, n ? G.success("Back online", {
|
|
208
|
+
id: $,
|
|
209
209
|
duration: 2500
|
|
210
|
-
}) :
|
|
210
|
+
}) : G.dismiss($);
|
|
211
211
|
}, o = (e) => {
|
|
212
212
|
if (!(e instanceof CustomEvent)) return;
|
|
213
213
|
let t = e.detail;
|
|
@@ -220,39 +220,43 @@ function ve() {
|
|
|
220
220
|
};
|
|
221
221
|
}, []), null;
|
|
222
222
|
}
|
|
223
|
-
function ye({ children: e, i18nProductId: t, fallbackTranslations: n, defaultBrand: r,
|
|
224
|
-
let
|
|
225
|
-
|
|
226
|
-
let
|
|
223
|
+
function ye({ children: e, i18nProductId: t, fallbackTranslations: n, defaultBrand: r, defaultMode: i, defaultDensity: a, defaultTypography: o, defaultGlass: s, productName: c, brandInitial: l, enablePWA: u, toasterPosition: d }) {
|
|
224
|
+
let f = U();
|
|
225
|
+
A();
|
|
226
|
+
let p = /* @__PURE__ */ V(ae, { children: /* @__PURE__ */ V(_, { children: /* @__PURE__ */ V(v, {
|
|
227
227
|
workspaceId: null,
|
|
228
228
|
gateway: "global",
|
|
229
229
|
defaultEnabled: !0,
|
|
230
|
-
children: /* @__PURE__ */
|
|
230
|
+
children: /* @__PURE__ */ V(y, { children: /* @__PURE__ */ V(b, { children: /* @__PURE__ */ V(h, {
|
|
231
231
|
fallback: null,
|
|
232
|
-
children: /* @__PURE__ */
|
|
233
|
-
disabled:
|
|
234
|
-
children: /* @__PURE__ */
|
|
235
|
-
enablePWA:
|
|
236
|
-
toasterPosition:
|
|
237
|
-
productName:
|
|
238
|
-
brandInitial:
|
|
232
|
+
children: /* @__PURE__ */ V(M, {
|
|
233
|
+
disabled: f.pathname.startsWith("/devportal") || f.pathname.startsWith("/organizations") || f.pathname.startsWith("/workspaces"),
|
|
234
|
+
children: /* @__PURE__ */ V(he, {
|
|
235
|
+
enablePWA: u,
|
|
236
|
+
toasterPosition: d,
|
|
237
|
+
productName: c,
|
|
238
|
+
brandInitial: l,
|
|
239
239
|
children: e
|
|
240
240
|
})
|
|
241
241
|
})
|
|
242
242
|
}) }) })
|
|
243
243
|
}) }) });
|
|
244
|
-
return /* @__PURE__ */
|
|
244
|
+
return /* @__PURE__ */ H(m, {
|
|
245
245
|
defaultBrand: r,
|
|
246
|
-
|
|
246
|
+
defaultMode: i,
|
|
247
|
+
defaultDensity: a,
|
|
248
|
+
defaultTypography: o,
|
|
249
|
+
defaultGlass: s,
|
|
250
|
+
children: [/* @__PURE__ */ V(be, {}), /* @__PURE__ */ V(w, {
|
|
247
251
|
i18nProductId: t,
|
|
248
252
|
fallbackTranslations: n,
|
|
249
|
-
children:
|
|
253
|
+
children: p
|
|
250
254
|
})]
|
|
251
255
|
});
|
|
252
256
|
}
|
|
253
257
|
function be() {
|
|
254
|
-
let e =
|
|
255
|
-
return
|
|
258
|
+
let e = U();
|
|
259
|
+
return L(() => {
|
|
256
260
|
e.hash || requestAnimationFrame(() => {
|
|
257
261
|
window.scrollTo({
|
|
258
262
|
top: 0,
|
|
@@ -280,8 +284,8 @@ function xe(e) {
|
|
|
280
284
|
}
|
|
281
285
|
}
|
|
282
286
|
function Se() {
|
|
283
|
-
let e =
|
|
284
|
-
return
|
|
287
|
+
let e = k(), t = U(), n = z(void 0), r = z(void 0);
|
|
288
|
+
return L(() => {
|
|
285
289
|
let i = `${t.pathname}${t.search}${t.hash}`;
|
|
286
290
|
r.current !== i && (e.emit("nav.route.changed", {
|
|
287
291
|
pathname: t.pathname,
|
|
@@ -295,7 +299,7 @@ function Se() {
|
|
|
295
299
|
t.hash,
|
|
296
300
|
t.pathname,
|
|
297
301
|
t.search
|
|
298
|
-
]),
|
|
302
|
+
]), L(() => {
|
|
299
303
|
let t = (t) => {
|
|
300
304
|
e.emit("error.runtime.caught", {
|
|
301
305
|
message: t.message || "Runtime error",
|
|
@@ -310,22 +314,22 @@ function Se() {
|
|
|
310
314
|
return window.addEventListener("error", t), window.addEventListener("unhandledrejection", n), () => {
|
|
311
315
|
window.removeEventListener("error", t), window.removeEventListener("unhandledrejection", n);
|
|
312
316
|
};
|
|
313
|
-
}, [e]),
|
|
314
|
-
|
|
317
|
+
}, [e]), L(() => {
|
|
318
|
+
x((t) => {
|
|
315
319
|
e.emit("perf.lcp.measured", {
|
|
316
320
|
metric: "LCP",
|
|
317
321
|
value: t.value,
|
|
318
322
|
id: t.id,
|
|
319
323
|
rating: t.rating
|
|
320
324
|
});
|
|
321
|
-
}),
|
|
325
|
+
}), C((t) => {
|
|
322
326
|
e.emit("perf.cls.measured", {
|
|
323
327
|
metric: "CLS",
|
|
324
328
|
value: t.value,
|
|
325
329
|
id: t.id,
|
|
326
330
|
rating: t.rating
|
|
327
331
|
});
|
|
328
|
-
}),
|
|
332
|
+
}), S((t) => {
|
|
329
333
|
e.emit("perf.inp.measured", {
|
|
330
334
|
metric: "INP",
|
|
331
335
|
value: t.value,
|
|
@@ -336,18 +340,18 @@ function Se() {
|
|
|
336
340
|
}, [e]), null;
|
|
337
341
|
}
|
|
338
342
|
function Ce({ config: e, productSlug: t }) {
|
|
339
|
-
return /* @__PURE__ */
|
|
340
|
-
e.devtools ? /* @__PURE__ */
|
|
341
|
-
e.broadcast === !1 ? null : /* @__PURE__ */
|
|
342
|
-
e.backendAudit?.enabled && e.backendAudit.endpoint ? /* @__PURE__ */
|
|
343
|
-
e.rybbit?.enabled && e.rybbit.siteId ? /* @__PURE__ */
|
|
343
|
+
return /* @__PURE__ */ H(B, { children: [/* @__PURE__ */ V(Se, {}), e.enabled === !1 ? null : /* @__PURE__ */ H(B, { children: [
|
|
344
|
+
e.devtools ? /* @__PURE__ */ V(se, { enabled: !0 }) : null,
|
|
345
|
+
e.broadcast === !1 ? null : /* @__PURE__ */ V(T, {}),
|
|
346
|
+
e.backendAudit?.enabled && e.backendAudit.endpoint ? /* @__PURE__ */ V(E, { endpoint: e.backendAudit.endpoint }) : null,
|
|
347
|
+
e.rybbit?.enabled && e.rybbit.siteId ? /* @__PURE__ */ V(D, {
|
|
344
348
|
siteId: e.rybbit.siteId,
|
|
345
349
|
scriptUrl: e.rybbit.scriptUrl,
|
|
346
350
|
allowlist: e.rybbit.allowlist,
|
|
347
351
|
identifyOn: e.rybbit.identifyOn,
|
|
348
352
|
rename: e.rybbit.rename
|
|
349
353
|
}) : null,
|
|
350
|
-
e.otel?.enabled && e.otel.endpoint ? /* @__PURE__ */
|
|
354
|
+
e.otel?.enabled && e.otel.endpoint ? /* @__PURE__ */ V(O, {
|
|
351
355
|
endpoint: e.otel.endpoint,
|
|
352
356
|
serviceName: e.otel.serviceName ?? `${t}-app`,
|
|
353
357
|
flushInterval: e.otel.flushInterval
|
|
@@ -355,19 +359,19 @@ function Ce({ config: e, productSlug: t }) {
|
|
|
355
359
|
] })] });
|
|
356
360
|
}
|
|
357
361
|
function we({ config: n, children: r, clearAuthStore: a }) {
|
|
358
|
-
let { productName: o, productSlug:
|
|
362
|
+
let { productName: o, productSlug: m = o.toLowerCase().replace(/\s+/g, ""), tagline: g = "", domain: _, i18nProductId: v, gatewayUrls: y, authBridge: b, defaultBrand: x = "default", defaultMode: S, defaultDensity: C, defaultTypography: w, defaultGlass: ae, enablePWA: se = !0, brandInitial: T = o.charAt(0), defaultGateway: E = "workspace", enableSubscriptions: D = !0, fallbackTranslations: O, queryClientOptions: k, toasterPosition: A = "bottom-right", observability: j } = n, M = j ?? Q(m, me()), N = R(() => ({
|
|
359
363
|
productName: o,
|
|
360
|
-
productSlug:
|
|
361
|
-
brandInitial:
|
|
362
|
-
tagline:
|
|
363
|
-
domain:
|
|
364
|
+
productSlug: m,
|
|
365
|
+
brandInitial: T,
|
|
366
|
+
tagline: g,
|
|
367
|
+
domain: _
|
|
364
368
|
}), [
|
|
365
369
|
o,
|
|
366
|
-
f,
|
|
367
|
-
S,
|
|
368
370
|
m,
|
|
369
|
-
|
|
370
|
-
|
|
371
|
+
T,
|
|
372
|
+
g,
|
|
373
|
+
_
|
|
374
|
+
]), P = z(!1), F = z(!1), B = z(null), U = z(!!b?.url), W = I(() => {
|
|
371
375
|
if ((() => {
|
|
372
376
|
try {
|
|
373
377
|
let e = sessionStorage.getItem("bf-active-profile");
|
|
@@ -377,26 +381,26 @@ function we({ config: n, children: r, clearAuthStore: a }) {
|
|
|
377
381
|
} catch {
|
|
378
382
|
return !1;
|
|
379
383
|
}
|
|
380
|
-
})() ||
|
|
381
|
-
|
|
384
|
+
})() || U.current || P.current) return;
|
|
385
|
+
P.current = !0, l(a);
|
|
382
386
|
let t = `${window.location.pathname}${window.location.search}`, n = `/auth/login?reason=session-expired&returnTo=${encodeURIComponent(t)}`, r = /^\/vibecontrols\/(share|deck)\//.test(window.location.pathname);
|
|
383
387
|
if (window.location.pathname.startsWith("/auth/") || e(window.location.pathname) || r) {
|
|
384
|
-
|
|
388
|
+
P.current = !1;
|
|
385
389
|
return;
|
|
386
390
|
}
|
|
387
391
|
window.location.replace(n);
|
|
388
|
-
}, [a]),
|
|
389
|
-
globalBaseUrl:
|
|
390
|
-
isRefreshing:
|
|
391
|
-
refreshPromise:
|
|
392
|
-
}), [
|
|
393
|
-
window.location.pathname.startsWith("/auth/") || await
|
|
394
|
-
}, [
|
|
395
|
-
|
|
396
|
-
}, [
|
|
392
|
+
}, [a]), G = R(() => ({
|
|
393
|
+
globalBaseUrl: y.globalBaseUrl,
|
|
394
|
+
isRefreshing: F,
|
|
395
|
+
refreshPromise: B
|
|
396
|
+
}), [y.globalBaseUrl]), K = I(async () => c(G), [G]), q = I(async () => {
|
|
397
|
+
window.location.pathname.startsWith("/auth/") || await K() || W();
|
|
398
|
+
}, [K, W]), J = I(async (e) => {
|
|
399
|
+
u(e) ? await K() || W() : console.error("[Network] Backend unreachable:", e.message);
|
|
400
|
+
}, [K, W]), Y = I(async (e) => {
|
|
397
401
|
let t = await s({
|
|
398
402
|
gateway: "global",
|
|
399
|
-
baseUrl:
|
|
403
|
+
baseUrl: y.globalBaseUrl,
|
|
400
404
|
authToken: "",
|
|
401
405
|
query: "mutation RefreshToken($token: String!) {\n refreshToken(token: $token) {\n accessToken\n refreshToken\n expiresIn\n }\n }",
|
|
402
406
|
variables: { token: e }
|
|
@@ -408,12 +412,12 @@ function we({ config: n, children: r, clearAuthStore: a }) {
|
|
|
408
412
|
refreshToken: n.refreshToken,
|
|
409
413
|
expiresAt: n.expiresIn ? Date.now() + n.expiresIn * 1e3 : void 0
|
|
410
414
|
};
|
|
411
|
-
}, [
|
|
412
|
-
let e = new
|
|
413
|
-
queryCache: new
|
|
415
|
+
}, [y.globalBaseUrl]), X = I(() => t("organization"), []), Z = R(() => {
|
|
416
|
+
let e = new fe({
|
|
417
|
+
queryCache: new de({ onError: (e) => {
|
|
414
418
|
i(e);
|
|
415
419
|
} }),
|
|
416
|
-
mutationCache: new
|
|
420
|
+
mutationCache: new ue({
|
|
417
421
|
onSuccess: () => {
|
|
418
422
|
e.invalidateQueries();
|
|
419
423
|
},
|
|
@@ -422,63 +426,67 @@ function we({ config: n, children: r, clearAuthStore: a }) {
|
|
|
422
426
|
}
|
|
423
427
|
}),
|
|
424
428
|
defaultOptions: { queries: {
|
|
425
|
-
staleTime:
|
|
426
|
-
retry:
|
|
427
|
-
refetchOnWindowFocus:
|
|
429
|
+
staleTime: k?.staleTime ?? 300 * 1e3,
|
|
430
|
+
retry: k?.retry ?? 1,
|
|
431
|
+
refetchOnWindowFocus: k?.refetchOnWindowFocus ?? !1
|
|
428
432
|
} }
|
|
429
433
|
});
|
|
430
434
|
return e;
|
|
431
|
-
}, [
|
|
432
|
-
return
|
|
433
|
-
let e =
|
|
434
|
-
e.getLogger("shell") || e.getLogger("shell").addTransport(new
|
|
435
|
-
}, []), /* @__PURE__ */
|
|
436
|
-
value:
|
|
437
|
-
children: /* @__PURE__ */
|
|
438
|
-
appName:
|
|
439
|
-
appVersion:
|
|
440
|
-
appEnv:
|
|
441
|
-
sourceMfe:
|
|
442
|
-
children: /* @__PURE__ */
|
|
443
|
-
FallbackComponent:
|
|
444
|
-
children: /* @__PURE__ */
|
|
445
|
-
config:
|
|
446
|
-
productSlug:
|
|
447
|
-
}), /* @__PURE__ */
|
|
448
|
-
client:
|
|
449
|
-
children: /* @__PURE__ */
|
|
450
|
-
workspaceBaseUrl:
|
|
451
|
-
globalBaseUrl:
|
|
452
|
-
organizationId:
|
|
453
|
-
defaultGateway:
|
|
454
|
-
enableSubscriptions:
|
|
455
|
-
onAuthError:
|
|
456
|
-
onNetworkError:
|
|
457
|
-
onRefreshToken:
|
|
458
|
-
children: /* @__PURE__ */
|
|
459
|
-
bridgeUrl:
|
|
460
|
-
bridgeAllowedOrigins:
|
|
461
|
-
bridgeDebug:
|
|
462
|
-
onRefreshToken:
|
|
435
|
+
}, [k]);
|
|
436
|
+
return L(() => {
|
|
437
|
+
let e = p.getInstance();
|
|
438
|
+
e.getLogger("shell") || e.getLogger("shell").addTransport(new ee());
|
|
439
|
+
}, []), /* @__PURE__ */ V(oe, {
|
|
440
|
+
value: N,
|
|
441
|
+
children: /* @__PURE__ */ V(ce, {
|
|
442
|
+
appName: m,
|
|
443
|
+
appVersion: M.appVersion,
|
|
444
|
+
appEnv: M.appEnv,
|
|
445
|
+
sourceMfe: m,
|
|
446
|
+
children: /* @__PURE__ */ V(h, {
|
|
447
|
+
FallbackComponent: te,
|
|
448
|
+
children: /* @__PURE__ */ H(le, { children: [/* @__PURE__ */ V(Ce, {
|
|
449
|
+
config: M,
|
|
450
|
+
productSlug: m
|
|
451
|
+
}), /* @__PURE__ */ V(pe, {
|
|
452
|
+
client: Z,
|
|
453
|
+
children: /* @__PURE__ */ V(re, { children: /* @__PURE__ */ V(ie, {
|
|
454
|
+
workspaceBaseUrl: y.workspaceBaseUrl,
|
|
455
|
+
globalBaseUrl: y.globalBaseUrl,
|
|
456
|
+
organizationId: X,
|
|
457
|
+
defaultGateway: E,
|
|
458
|
+
enableSubscriptions: D,
|
|
459
|
+
onAuthError: q,
|
|
460
|
+
onNetworkError: J,
|
|
461
|
+
onRefreshToken: K,
|
|
462
|
+
children: /* @__PURE__ */ V(d, {
|
|
463
|
+
bridgeUrl: b?.url,
|
|
464
|
+
bridgeAllowedOrigins: b?.allowedOrigins,
|
|
465
|
+
bridgeDebug: b?.debug,
|
|
466
|
+
onRefreshToken: Y,
|
|
463
467
|
onBridgeReady: () => {
|
|
464
|
-
|
|
468
|
+
U.current = !1;
|
|
465
469
|
},
|
|
466
470
|
onSessionExpiringSoon: () => {
|
|
467
471
|
console.warn("[Auth] Session will expire in 5 minutes");
|
|
468
472
|
},
|
|
469
473
|
onTokenExpired: () => {
|
|
470
|
-
|
|
474
|
+
W();
|
|
471
475
|
},
|
|
472
|
-
children: /* @__PURE__ */
|
|
476
|
+
children: /* @__PURE__ */ V(f, {
|
|
473
477
|
syncToUrl: !0,
|
|
474
|
-
children: /* @__PURE__ */
|
|
475
|
-
i18nProductId:
|
|
476
|
-
fallbackTranslations:
|
|
477
|
-
defaultBrand:
|
|
478
|
+
children: /* @__PURE__ */ V(ne, { children: /* @__PURE__ */ V(ye, {
|
|
479
|
+
i18nProductId: v,
|
|
480
|
+
fallbackTranslations: O,
|
|
481
|
+
defaultBrand: x,
|
|
482
|
+
defaultMode: S,
|
|
483
|
+
defaultDensity: C,
|
|
484
|
+
defaultTypography: w,
|
|
485
|
+
defaultGlass: ae,
|
|
478
486
|
productName: o,
|
|
479
|
-
brandInitial:
|
|
480
|
-
enablePWA:
|
|
481
|
-
toasterPosition:
|
|
487
|
+
brandInitial: T,
|
|
488
|
+
enablePWA: se,
|
|
489
|
+
toasterPosition: A,
|
|
482
490
|
children: r
|
|
483
491
|
}) })
|
|
484
492
|
})
|
|
@@ -490,4 +498,4 @@ function we({ config: n, children: r, clearAuthStore: a }) {
|
|
|
490
498
|
});
|
|
491
499
|
}
|
|
492
500
|
//#endregion
|
|
493
|
-
export { we as AppShellProvider,
|
|
501
|
+
export { we as AppShellProvider, Q as resolveAppShellObservabilityConfig };
|