@burdenoff/fe-libs 2026.1021.3 → 2026.1021.5

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.
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Header organization / workspace switches (BOFF-8078), shared by every shell
3
+ * through `useContextSwitchController` (lifted from fluidgrids-app, where the
4
+ * same file was copied into bigconsole-app and healthybowl-app).
5
+ *
6
+ * `selectWorkspace` (microfe-auth) issues a token for the workspace it is
7
+ * given and then lists that workspace's projects. The list request does NOT
8
+ * carry the workspace it was asked about: fe-libs `graphqlFetch` derives the
9
+ * `x-workspace-id` header, and the context the fresh workspace token is
10
+ * validated against, from the stored ActiveContext (`bf-p-<uid>-context`, with
11
+ * the `?workspace=` URL param taking precedence). When the handler calls
12
+ * `selectWorkspace(B)` while ActiveContext still names workspace A, the new
13
+ * token is dropped as "invalid for context A", a token for A is minted in its
14
+ * place, and the request lists A's projects. The handler then selected A's
15
+ * first project, so the stored context paired workspace B with a project from
16
+ * workspace A, and kept that pair across reloads.
17
+ *
18
+ * Measured in prod on 2026-09-28 with the header switcher, A = f423fce9 and
19
+ * B = 089761cb: `MyProjectsForContext` went out with `x-workspace-id: f423fce9`
20
+ * and A's workspace token right after `IssueWorkspaceToken` returned B's token,
21
+ * and answered A's only project (e35d7c3b). VibeControls, which publishes the
22
+ * new workspace first, ends on B's project (e6febd92).
23
+ *
24
+ * So both switches publish the target context to ActiveContext first — the
25
+ * organization and workspace, with the project cleared — and only then ask
26
+ * microfe-auth to select it. Only a project that belongs to the target
27
+ * workspace is ever selected, and a switch that a later switch has superseded
28
+ * is discarded instead of applied.
29
+ */
30
+ export interface SwitchableOrganization {
31
+ id: string;
32
+ tenantId?: unknown;
33
+ }
34
+ export interface SwitchableWorkspace {
35
+ id: string;
36
+ organizationId?: string | null;
37
+ tenantId?: unknown;
38
+ }
39
+ export interface SwitchableProject {
40
+ id: string;
41
+ workspaceId?: string | null;
42
+ }
43
+ export interface WorkspaceSelection<P extends SwitchableProject> {
44
+ success: boolean;
45
+ projects?: ReadonlyArray<P>;
46
+ }
47
+ export interface ContextSwitchDeps<O extends SwitchableOrganization, W extends SwitchableWorkspace, P extends SwitchableProject> {
48
+ /**
49
+ * Monotonic switch counter (a React ref), shared by the organization and
50
+ * workspace switches: the most recent switch of either kind wins.
51
+ */
52
+ requests: {
53
+ current: number;
54
+ };
55
+ setOrganization: (organizationId: string | null) => void;
56
+ setWorkspace: (workspaceId: string | null) => void;
57
+ setProject: (projectId: string | null) => void;
58
+ setTenant: (tenantId: string | null) => void;
59
+ selectOrganization: (organization: O) => Promise<ReadonlyArray<W>>;
60
+ selectWorkspace: (workspace: W) => Promise<WorkspaceSelection<P>>;
61
+ selectProject: (project: P) => void;
62
+ }
63
+ export type ContextSwitchOutcome = {
64
+ status: 'project-selected';
65
+ workspaceId: string;
66
+ projectId: string;
67
+ } | {
68
+ status: 'no-project';
69
+ workspaceId: string;
70
+ } | {
71
+ status: 'no-workspace';
72
+ } | {
73
+ status: 'superseded';
74
+ };
75
+ /** The first project the selection returned that belongs to `workspaceId`. */
76
+ export declare function firstProjectOfWorkspace<P extends SwitchableProject>(selection: WorkspaceSelection<P>, workspaceId: string): P | null;
77
+ /** Header workspace switch: enter `workspace` and select its first project. */
78
+ export declare function switchWorkspace<O extends SwitchableOrganization, W extends SwitchableWorkspace, P extends SwitchableProject>(deps: ContextSwitchDeps<O, W, P>, workspace: W): Promise<ContextSwitchOutcome>;
79
+ /**
80
+ * Header organization switch: clear the workspace and project, load the
81
+ * organization's workspaces, then enter the first one exactly as a workspace
82
+ * switch would.
83
+ */
84
+ export declare function switchOrganization<O extends SwitchableOrganization, W extends SwitchableWorkspace, P extends SwitchableProject>(deps: ContextSwitchDeps<O, W, P>, organization: O): Promise<ContextSwitchOutcome>;
@@ -0,0 +1,31 @@
1
+ //#region src/chrome/contextSwitcher/contextSwitch.ts
2
+ function e(e, t) {
3
+ return e.success ? e.projects?.find((e) => e.workspaceId === t) ?? null : null;
4
+ }
5
+ async function t(t, n, r) {
6
+ n.organizationId && t.setOrganization(n.organizationId), typeof n.tenantId == "string" && t.setTenant(n.tenantId), t.setWorkspace(n.id), t.setProject(null);
7
+ let i = await t.selectWorkspace(n);
8
+ if (r !== t.requests.current) return { status: "superseded" };
9
+ let a = e(i, n.id);
10
+ return a ? (t.selectProject(a), t.setProject(a.id), {
11
+ status: "project-selected",
12
+ workspaceId: n.id,
13
+ projectId: a.id
14
+ }) : {
15
+ status: "no-project",
16
+ workspaceId: n.id
17
+ };
18
+ }
19
+ function n(e, n) {
20
+ return t(e, n, ++e.requests.current);
21
+ }
22
+ async function r(e, n) {
23
+ let r = ++e.requests.current;
24
+ e.setOrganization(n.id), typeof n.tenantId == "string" && e.setTenant(n.tenantId), e.setWorkspace(null), e.setProject(null);
25
+ let i = await e.selectOrganization(n);
26
+ if (r !== e.requests.current) return { status: "superseded" };
27
+ let a = i[0];
28
+ return a ? t(e, a, r) : { status: "no-workspace" };
29
+ }
30
+ //#endregion
31
+ export { e as firstProjectOfWorkspace, r as switchOrganization, n as switchWorkspace };
@@ -0,0 +1,51 @@
1
+ /**
2
+ * resolveSwitchTarget — where to land when the active org/workspace changes.
3
+ *
4
+ * The workspace token is re-issued on every context switch (BOFF-2821). A route
5
+ * that holds a *resource id belonging to the old workspace* (a workflow, a run,
6
+ * an agent, a file …) would then fire queries the new token cannot authorize —
7
+ * the "Unexpected error" banners — or show the old workspace's record under the
8
+ * new workspace. So when the switch starts on such a resource-deep route the
9
+ * shell replace-navigates to that section's list page; the stale id is dropped.
10
+ *
11
+ * List/section pages (no resource id) are NOT redirected: they re-scope in place
12
+ * through the new selection. Each product passes its own rule table, because the
13
+ * route shapes are product-specific (VibeControls' `/vibecontrols/<section>/<id>`,
14
+ * FluidGrids' `/workflows/workflow/<key>/<version>` and `/workflows/runs/<id>`).
15
+ *
16
+ * Lifted from vibecontrols-app `src/routes/resolveSwitchTarget.ts` (BOFF-2821),
17
+ * with VibeControls' hard-coded tables turned into a parameter.
18
+ */
19
+ /** One resource-deep route and the list/landing route that replaces it. */
20
+ export interface ContextSwitchRedirectRule {
21
+ /**
22
+ * Matches a pathname that carries a resource id of the old context. Rules are
23
+ * tried in order; the first match wins. A `g`/`y` flag is ignored (the match
24
+ * is always made from the start of a fresh state), so a shared rule table
25
+ * gives the same answer on every call.
26
+ */
27
+ match: RegExp;
28
+ /** The landing to go to: a fixed path, or one computed from the match. */
29
+ to: string | ((match: RegExpExecArray) => string);
30
+ }
31
+ /**
32
+ * The target pathname to replace-navigate to after a context switch, or `null`
33
+ * to stay on `pathname` (only the context query params change).
34
+ *
35
+ * Returns `null` when no rule matches, and when the matching rule's landing is
36
+ * `pathname` itself, so a rule can never loop on its own landing page.
37
+ */
38
+ export declare function resolveSwitchTarget(pathname: string, rules: ReadonlyArray<ContextSwitchRedirectRule>): string | null;
39
+ /**
40
+ * A rule for a family of `<prefix>/<section>/<id…>` detail routes: anything
41
+ * deeper than a `<prefix>/<section>` landing redirects back to that landing, so
42
+ * current and future detail routes are covered without enumerating each one.
43
+ * The bare `<prefix>/<section>` page and `<prefix>` itself stay in place.
44
+ *
45
+ * `sectionLandingRule('/vibecontrols')` is VibeControls' rule:
46
+ * `/vibecontrols/agents/a1` → `/vibecontrols/agents`,
47
+ * `/vibecontrols/calendar/task/t1` → `/vibecontrols/calendar`.
48
+ *
49
+ * @param prefix a rooted path without a trailing slash, e.g. `/vibecontrols`
50
+ */
51
+ export declare function sectionLandingRule(prefix: string): ContextSwitchRedirectRule;
@@ -0,0 +1,26 @@
1
+ //#region src/chrome/contextSwitcher/resolveSwitchTarget.ts
2
+ function e(e, n) {
3
+ for (let r of n) {
4
+ let n = t(r.match).exec(e);
5
+ if (!n) continue;
6
+ let i = typeof r.to == "string" ? r.to : r.to(n);
7
+ return i === e ? null : i;
8
+ }
9
+ return null;
10
+ }
11
+ function t(e) {
12
+ return !e.global && !e.sticky ? e : new RegExp(e.source, e.flags.replace(/[gy]/g, ""));
13
+ }
14
+ function n(e) {
15
+ return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
16
+ }
17
+ function r(e) {
18
+ if (!/^\/[^/]/.test(e) || e.endsWith("/")) throw Error(`sectionLandingRule: prefix must be a rooted path without a trailing slash, got "${e}"`);
19
+ let t = n(e);
20
+ return {
21
+ match: RegExp(`^${t}/([^/]+)/[^/]+`),
22
+ to: (t) => `${e}/${t[1]}`
23
+ };
24
+ }
25
+ //#endregion
26
+ export { e as resolveSwitchTarget, r as sectionLandingRule };
@@ -0,0 +1,50 @@
1
+ import { ContextSwitchOutcome, SwitchableOrganization, SwitchableProject, SwitchableWorkspace, WorkspaceSelection } from './contextSwitch';
2
+ import { ContextSwitchRedirectRule } from './resolveSwitchTarget';
3
+ /** Which header switch produced an outcome. */
4
+ export type ContextSwitchKind = 'organization' | 'workspace';
5
+ export interface ContextSwitchEvent {
6
+ kind: ContextSwitchKind;
7
+ /** The organization or workspace the user picked. */
8
+ id: string;
9
+ outcome: ContextSwitchOutcome;
10
+ }
11
+ export interface UseContextSwitchControllerOptions<O extends SwitchableOrganization, W extends SwitchableWorkspace, P extends SwitchableProject> {
12
+ /** The switcher's lists; a pick is resolved to its full record here. */
13
+ organizations: ReadonlyArray<O>;
14
+ workspaces: ReadonlyArray<W>;
15
+ projects: ReadonlyArray<P>;
16
+ /** microfe-auth: select the organization and list its workspaces. */
17
+ selectOrganization: (organization: O) => Promise<ReadonlyArray<W>>;
18
+ /** microfe-auth: issue the workspace token and list the workspace's projects. */
19
+ selectWorkspace: (workspace: W) => Promise<WorkspaceSelection<P>>;
20
+ /** microfe-auth: select a project. */
21
+ selectProject: (project: P) => void;
22
+ /**
23
+ * The product's resource-deep routes and their list pages. Omitted or empty:
24
+ * a switch never navigates.
25
+ */
26
+ redirectRules?: ReadonlyArray<ContextSwitchRedirectRule>;
27
+ /** Called with every switch's outcome, superseded ones included. */
28
+ onSwitch?: (event: ContextSwitchEvent) => void;
29
+ }
30
+ export interface ContextSwitchController {
31
+ /**
32
+ * Switch to `organization` and enter its first workspace. Resolves to the
33
+ * outcome, or `null` when the id is not in `organizations`.
34
+ */
35
+ onOrganizationChange: (organization: {
36
+ id: string;
37
+ }) => Promise<ContextSwitchOutcome | null>;
38
+ /**
39
+ * Switch to `workspace` and select its first project. Resolves to the
40
+ * outcome, or `null` when the id is not in `workspaces`.
41
+ */
42
+ onWorkspaceChange: (workspace: {
43
+ id: string;
44
+ }) => Promise<ContextSwitchOutcome | null>;
45
+ /** Select `project` (an id missing from `projects` still becomes active). */
46
+ onProjectChange: (project: {
47
+ id: string;
48
+ }) => void;
49
+ }
50
+ export declare function useContextSwitchController<O extends SwitchableOrganization, W extends SwitchableWorkspace, P extends SwitchableProject>(options: UseContextSwitchControllerOptions<O, W, P>): ContextSwitchController;
@@ -0,0 +1,62 @@
1
+ import { useActiveContext as e } from "../../shared/providers/shell/ActiveContextProvider.js";
2
+ import { useLogger as t } from "../../shared/logger/useLogger.js";
3
+ import { switchOrganization as n, switchWorkspace as r } from "./contextSwitch.js";
4
+ import { resolveSwitchTarget as i } from "./resolveSwitchTarget.js";
5
+ import { useRef as a } from "react";
6
+ import { useLocation as o, useNavigate as s } from "react-router";
7
+ //#region src/chrome/contextSwitcher/useContextSwitchController.ts
8
+ function c(c) {
9
+ let { organizations: l, workspaces: u, projects: d, selectOrganization: f, selectWorkspace: p, selectProject: m, redirectRules: h, onSwitch: g } = c, _ = t("ContextSwitcher"), v = s(), { pathname: y } = o(), b = e(), x = {
10
+ requests: a(0),
11
+ setOrganization: b.setOrganization,
12
+ setWorkspace: b.setWorkspace,
13
+ setProject: b.setProject,
14
+ setTenant: b.setTenant,
15
+ selectOrganization: f,
16
+ selectWorkspace: p,
17
+ selectProject: m
18
+ }, S = () => {
19
+ if (!h || h.length === 0) return;
20
+ let e = i(y, h);
21
+ e && (_.info("Leaving a resource of the previous context", {
22
+ from: y,
23
+ to: e
24
+ }), v({
25
+ pathname: e,
26
+ search: typeof window > "u" ? "" : window.location.search
27
+ }, { replace: !0 }));
28
+ }, C = (e, t, n) => {
29
+ n.status === "superseded" && _.info(`Discarding stale ${e}-switch result`, { [`${e}Id`]: t }), g?.({
30
+ kind: e,
31
+ id: t,
32
+ outcome: n
33
+ });
34
+ };
35
+ return {
36
+ onOrganizationChange: async (e) => {
37
+ let t = l.find((t) => t.id === e.id);
38
+ if (!t) return _.warn("Organization switch ignored: not in the switcher list", { organizationId: e.id }), null;
39
+ _.info("Changing organization", { organizationId: t.id });
40
+ let r = t.id !== b.organizationId, i = n(x, t);
41
+ r && S();
42
+ let a = await i;
43
+ return C("organization", t.id, a), a;
44
+ },
45
+ onWorkspaceChange: async (e) => {
46
+ let t = u.find((t) => t.id === e.id);
47
+ if (!t) return _.warn("Workspace switch ignored: not in the switcher list", { workspaceId: e.id }), null;
48
+ _.info("Changing workspace", { workspaceId: t.id });
49
+ let n = t.id !== b.workspaceId, i = r(x, t);
50
+ n && S();
51
+ let a = await i;
52
+ return C("workspace", t.id, a), a;
53
+ },
54
+ onProjectChange: (e) => {
55
+ _.info("Changing project", { projectId: e.id });
56
+ let t = d.find((t) => t.id === e.id);
57
+ t && m(t), b.setProject(e.id);
58
+ }
59
+ };
60
+ }
61
+ //#endregion
62
+ export { c as useContextSwitchController };
@@ -84,6 +84,12 @@ export type { LanguageSwitcherProps, Language } from './LanguageSwitcher';
84
84
  export type { GeographySwitcherProps } from './GeographySwitcher';
85
85
  export type { NotificationCenterProps } from './NotificationCenter';
86
86
  export type { ContextSwitcherProps, Organization, Workspace, Project, } from './ContextSwitcher';
87
+ export { useContextSwitchController } from './contextSwitcher/useContextSwitchController';
88
+ export type { ContextSwitchController, ContextSwitchEvent, ContextSwitchKind, UseContextSwitchControllerOptions, } from './contextSwitcher/useContextSwitchController';
89
+ export { firstProjectOfWorkspace, switchOrganization, switchWorkspace, } from './contextSwitcher/contextSwitch';
90
+ export type { ContextSwitchDeps, ContextSwitchOutcome, SwitchableOrganization, SwitchableProject, SwitchableWorkspace, WorkspaceSelection, } from './contextSwitcher/contextSwitch';
91
+ export { resolveSwitchTarget, sectionLandingRule, } from './contextSwitcher/resolveSwitchTarget';
92
+ export type { ContextSwitchRedirectRule } from './contextSwitcher/resolveSwitchTarget';
87
93
  export type { LanguagePickerSheetProps } from './LanguagePickerSheet';
88
94
  export type { ProductPickerSheetProps } from './ProductPickerSheet';
89
95
  export type { AccountSwitcherProps, Account } from './AccountSwitcher';
package/dist/chrome.js CHANGED
@@ -23,26 +23,29 @@ import { NotificationCenter as D } from "./chrome/NotificationCenter.js";
23
23
  import { LanguagePickerSheet as O } from "./chrome/LanguagePickerSheet.js";
24
24
  import { ProductPickerSheet as k } from "./chrome/ProductPickerSheet.js";
25
25
  import { AccountSwitcher as A } from "./chrome/AccountSwitcher.js";
26
- import { AutoBreadcrumbs as j, registerBreadcrumbName as M, unregisterBreadcrumbName as N } from "./chrome/AutoBreadcrumbs.js";
27
- import { NavCustomizeDialog as P } from "./chrome/NavCustomizeDialog.js";
28
- import { PersonaSimulationPill as F, PersonaSurfaceControls as I } from "./chrome/PersonaSurfaceControls.js";
29
- import { ProductSideNav as L } from "./chrome/ProductSideNav.js";
30
- import { BrandMark as R } from "./chrome/BrandMark.js";
31
- import { DynamicFooter as z } from "./chrome/DynamicFooter.js";
32
- import { PanelTabs as B } from "./chrome/PanelTabs.js";
33
- import { PanelContainer as V } from "./chrome/PanelContainer.js";
34
- import { StatusBar as H } from "./chrome/StatusBar.js";
35
- import { PluginRoutes as U } from "./chrome/PluginRoutes.js";
36
- import { PluginSettingsPage as W } from "./chrome/PluginSettingsPage.js";
37
- import { PluginToolbar as G } from "./chrome/PluginToolbar.js";
38
- import { PluginWidgetGrid as K } from "./chrome/PluginWidgetGrid.js";
39
- import { PluginContextMenuTarget as q } from "./chrome/PluginContextMenuTarget.js";
40
- import { ThemePreferences as J } from "./chrome/ThemePreferences.js";
41
- import { selectMobileTabs as Y } from "./chrome/mobileTabBar/selectTabs.js";
42
- import { useMobileTabBarVisible as X } from "./chrome/mobileTabBar/useMobileTabBarVisible.js";
43
- import { MobileTabBar as Z } from "./chrome/MobileTabBar.js";
44
- import { NativeTopBar as Q } from "./chrome/NativeTopBar.js";
45
- import { SwipeNavigation as $ } from "./chrome/SwipeNavigation.js";
46
- import { NativePageTransition as ee } from "./chrome/NativePageTransition.js";
47
- import { findNavTitle as te, useNativeTopBarTitle as ne } from "./chrome/nativeTopBarTitle.js";
48
- export { A as AccountSwitcher, o as AppShellLayout, j as AutoBreadcrumbs, R as BrandMark, _ as Breadcrumbs, g as CommandPalette, w as ContextSwitcher, d as DEFAULT_FOOTER_COLUMNS, f as DEFAULT_SOCIAL_LINKS, z as DynamicFooter, p as Footer, l as FooterBar, T as GeographySwitcher, h as GlobalSearch, c as HeaderBar, O as LanguagePickerSheet, C as LanguageSwitcher, Z as MobileTabBar, t as NAV_MORE_ID_PREFIX, ee as NativePageTransition, Q as NativeTopBar, P as NavCustomizeDialog, v as NavLink, D as NotificationCenter, s as PageHeader, V as PanelContainer, B as PanelTabs, F as PersonaSimulationPill, I as PersonaSurfaceControls, q as PluginContextMenuTarget, u as PluginFooterStrip, U as PluginRoutes, W as PluginSettingsPage, G as PluginToolbar, K as PluginWidgetGrid, k as ProductPickerSheet, L as ProductSideNav, S as ProductSwitcher, x as ProfileSwitcher, E as PushOptInToggle, e as ShortcutHelpDialog, m as SideNavigation, b as Sidebar, H as StatusBar, $ as SwipeNavigation, y as Tabs, J as ThemePreferences, n as applyNavVisibility, r as applyPermissionFilter, i as applySurfaceVisibility, te as findNavTitle, a as isItemEffectivelyShown, M as registerBreadcrumbName, Y as selectMobileTabs, N as unregisterBreadcrumbName, X as useMobileTabBarVisible, ne as useNativeTopBarTitle };
26
+ import { firstProjectOfWorkspace as j, switchOrganization as M, switchWorkspace as N } from "./chrome/contextSwitcher/contextSwitch.js";
27
+ import { resolveSwitchTarget as P, sectionLandingRule as F } from "./chrome/contextSwitcher/resolveSwitchTarget.js";
28
+ import { useContextSwitchController as I } from "./chrome/contextSwitcher/useContextSwitchController.js";
29
+ import { AutoBreadcrumbs as L, registerBreadcrumbName as R, unregisterBreadcrumbName as z } from "./chrome/AutoBreadcrumbs.js";
30
+ import { NavCustomizeDialog as B } from "./chrome/NavCustomizeDialog.js";
31
+ import { PersonaSimulationPill as V, PersonaSurfaceControls as H } from "./chrome/PersonaSurfaceControls.js";
32
+ import { ProductSideNav as U } from "./chrome/ProductSideNav.js";
33
+ import { BrandMark as W } from "./chrome/BrandMark.js";
34
+ import { DynamicFooter as G } from "./chrome/DynamicFooter.js";
35
+ import { PanelTabs as K } from "./chrome/PanelTabs.js";
36
+ import { PanelContainer as q } from "./chrome/PanelContainer.js";
37
+ import { StatusBar as J } from "./chrome/StatusBar.js";
38
+ import { PluginRoutes as Y } from "./chrome/PluginRoutes.js";
39
+ import { PluginSettingsPage as X } from "./chrome/PluginSettingsPage.js";
40
+ import { PluginToolbar as Z } from "./chrome/PluginToolbar.js";
41
+ import { PluginWidgetGrid as Q } from "./chrome/PluginWidgetGrid.js";
42
+ import { PluginContextMenuTarget as $ } from "./chrome/PluginContextMenuTarget.js";
43
+ import { ThemePreferences as ee } from "./chrome/ThemePreferences.js";
44
+ import { selectMobileTabs as te } from "./chrome/mobileTabBar/selectTabs.js";
45
+ import { useMobileTabBarVisible as ne } from "./chrome/mobileTabBar/useMobileTabBarVisible.js";
46
+ import { MobileTabBar as re } from "./chrome/MobileTabBar.js";
47
+ import { NativeTopBar as ie } from "./chrome/NativeTopBar.js";
48
+ import { SwipeNavigation as ae } from "./chrome/SwipeNavigation.js";
49
+ import { NativePageTransition as oe } from "./chrome/NativePageTransition.js";
50
+ import { findNavTitle as se, useNativeTopBarTitle as ce } from "./chrome/nativeTopBarTitle.js";
51
+ export { A as AccountSwitcher, o as AppShellLayout, L as AutoBreadcrumbs, W as BrandMark, _ as Breadcrumbs, g as CommandPalette, w as ContextSwitcher, d as DEFAULT_FOOTER_COLUMNS, f as DEFAULT_SOCIAL_LINKS, G as DynamicFooter, p as Footer, l as FooterBar, T as GeographySwitcher, h as GlobalSearch, c as HeaderBar, O as LanguagePickerSheet, C as LanguageSwitcher, re as MobileTabBar, t as NAV_MORE_ID_PREFIX, oe as NativePageTransition, ie as NativeTopBar, B as NavCustomizeDialog, v as NavLink, D as NotificationCenter, s as PageHeader, q as PanelContainer, K as PanelTabs, V as PersonaSimulationPill, H as PersonaSurfaceControls, $ as PluginContextMenuTarget, u as PluginFooterStrip, Y as PluginRoutes, X as PluginSettingsPage, Z as PluginToolbar, Q as PluginWidgetGrid, k as ProductPickerSheet, U as ProductSideNav, S as ProductSwitcher, x as ProfileSwitcher, E as PushOptInToggle, e as ShortcutHelpDialog, m as SideNavigation, b as Sidebar, J as StatusBar, ae as SwipeNavigation, y as Tabs, ee as ThemePreferences, n as applyNavVisibility, r as applyPermissionFilter, i as applySurfaceVisibility, se as findNavTitle, j as firstProjectOfWorkspace, a as isItemEffectivelyShown, R as registerBreadcrumbName, P as resolveSwitchTarget, F as sectionLandingRule, te as selectMobileTabs, M as switchOrganization, N as switchWorkspace, z as unregisterBreadcrumbName, I as useContextSwitchController, ne as useMobileTabBarVisible, ce as useNativeTopBarTitle };
@@ -111,9 +111,12 @@ export type QuotaKind = "sandbox" | "ai-credits" | "generic";
111
111
  * product keeps HealthyBowl's existing `healthybowl:quota-exhausted` byte for
112
112
  * byte, and stops two products in one page colliding.
113
113
  *
114
- * ★ Nothing listens for it yet, in any product — verified across the repo. The
115
- * chat area surfaces the wall inline instead. Kept because the dispatch is the
116
- * cheap half of a future upgrade dialog, but do not mistake it for a live path.
114
+ * ★ Who listens is up to the product, and no census is kept here (the last one,
115
+ * "nothing listens", was false by the time it was read: VibeControls' shell and
116
+ * microfrontend both did). A shell answers it by mounting `QuotaUpgradeBridge`
117
+ * (`@burdenoff/fe-libs/shared/components`) beside its `UpgradePromptModal`; a
118
+ * product microfrontend that renders its own dialog claims the event with
119
+ * `withQuotaDialogOwnership` / `useQuotaDialogOwnership` so only one opens.
117
120
  */
118
121
  export declare function quotaExhaustedEventName(product: string): string;
119
122
  export interface QuotaExhaustedEventDetail {
@@ -1,5 +1,5 @@
1
- import { useAssistantTr as e } from "../i18n.js";
2
- import { quotaExhaustedEventName as t } from "../quota.js";
1
+ import { quotaExhaustedEventName as e } from "../quota.js";
2
+ import { useAssistantTr as t } from "../i18n.js";
3
3
  import { assistantPanelOwnsEscape as n } from "./panelOverlays.js";
4
4
  import { AssistantPreviewBridgeHost as r } from "../preview/bridgeHost.js";
5
5
  import { ASSISTANT_DOCK_WIDTH_VAR as i, ASSISTANT_OVERLAY_DESKTOP_QUERY as a, ASSISTANT_OVERLAY_TOP_VAR as o, ASSISTANT_PANEL_INSET_VAR as s, ASSISTANT_SHEET_BOTTOM_VAR as c, assistantLauncherBottom as l, assistantOverlayClassName as u, assistantOverlayEscapeAction as d, assistantOverlayKeys as f, assistantQuotaKindOf as p, closestAround as m, createAssistantNavigate as h, isAssistantToggleShortcut as g, nextAssistantOpenState as _, publishedAssistantDockWidth as v, publishedAssistantPanelInset as y, readAssistantOverlayFlag as b, requestedAssistantOpenState as x, writeAssistantOverlayFlag as S } from "./assistantOverlayState.js";
@@ -31,15 +31,15 @@ function U() {
31
31
  function W() {
32
32
  return M(H, U, () => !1);
33
33
  }
34
- function G(e, n) {
34
+ function G(t, n) {
35
35
  let r = A(n);
36
36
  O(() => {
37
37
  r.current = n;
38
38
  }, [n]), O(() => {
39
- if (!e || typeof window > "u") return;
40
- let n = t(e), i = (e) => r.current(p(e), e);
39
+ if (!t || typeof window > "u") return;
40
+ let n = e(t), i = (e) => r.current(p(e), e);
41
41
  return window.addEventListener(n, i), () => window.removeEventListener(n, i);
42
- }, [e]);
42
+ }, [t]);
43
43
  }
44
44
  var K = () => {};
45
45
  function q({ keyPrefix: e, quota: t, children: n }) {
@@ -121,8 +121,8 @@ function Y(e) {
121
121
  ...e
122
122
  }) : null;
123
123
  }
124
- function X({ state: t, panelId: i = "ai-assistant", panelProps: a, renderPanel: s, navigate: f, isShellLessTarget: p, topOffsetPx: g = 56, launcherIcon: _, launcherBottomInset: v = "1.5rem", showLauncher: y = !0 }) {
125
- let { isOpen: b, close: x, toggle: S, docked: w, toggleDock: T } = t, E = e();
124
+ function X({ state: e, panelId: i = "ai-assistant", panelProps: a, renderPanel: s, navigate: f, isShellLessTarget: p, topOffsetPx: g = 56, launcherIcon: _, launcherBottomInset: v = "1.5rem", showLauncher: y = !0 }) {
125
+ let { isOpen: b, close: x, toggle: S, docked: w, toggleDock: T } = e, E = t();
126
126
  C(a?.serverHistory === !0);
127
127
  let [D, A] = j(!1), M = k(() => f ? h({
128
128
  navigate: f,
@@ -0,0 +1,99 @@
1
+ import { ComponentType } from 'react';
2
+ /**
3
+ * The words for one kind of quota wall. `title`/`message` are the English
4
+ * fallbacks; the optional keys are looked up in the shell's i18n layer first,
5
+ * and an untranslated key falls back rather than showing the raw key.
6
+ */
7
+ export interface QuotaUpgradeCopy {
8
+ titleKey?: string;
9
+ title: string;
10
+ messageKey?: string;
11
+ message: string;
12
+ }
13
+ /**
14
+ * Copy per `detail.kind` (e.g. `sandbox`, `ai-credits`, `runs`). `generic` is
15
+ * used for any kind not listed — and for an event with no kind at all.
16
+ */
17
+ export type QuotaUpgradeCopyByKind = Readonly<Partial<Record<string, QuotaUpgradeCopy>>>;
18
+ /** Used when a product supplies no `generic` copy of its own. */
19
+ export declare const DEFAULT_QUOTA_UPGRADE_COPY: QuotaUpgradeCopy;
20
+ /** Detail carried by a `<product>:quota-exhausted` event. */
21
+ export interface ProductQuotaExhaustedDetail {
22
+ /** Which wall — the key into the product's {@link QuotaUpgradeCopyByKind}. */
23
+ kind: string;
24
+ /** The server's phrasing. Never shown: it names the wall, not the way past it. */
25
+ message?: string;
26
+ operationName?: string | null;
27
+ /** WHICH ceiling (e.g. `fluidgrids.runs.monthly`), forwarded to the prompt. */
28
+ quotaName?: string | null;
29
+ }
30
+ /**
31
+ * The `kind` of a quota event, or null when it carries none. Tolerates the
32
+ * shapes real dispatchers produce: a plain `Event`, a null detail, a detail
33
+ * without a kind.
34
+ */
35
+ export declare function quotaEventKind(event: Event): string | null;
36
+ /** The copy for a kind; anything unlisted (or no kind) is the generic copy. */
37
+ export declare function resolveQuotaUpgradeCopy(copy: QuotaUpgradeCopyByKind | undefined, kind: string | null): QuotaUpgradeCopy;
38
+ /**
39
+ * Report a product quota wall from code that is not the assistant — e.g. a
40
+ * product SDK whose run mutation came back `QUOTA_EXHAUSTED`. The shell's
41
+ * bridge (or the product microfrontend that owns the dialog) answers it.
42
+ * Safe no-op on SSR.
43
+ */
44
+ export declare function dispatchProductQuotaExhausted(product: string, detail: ProductQuotaExhaustedDetail): void;
45
+ /**
46
+ * Record that something which shows its own quota dialog for `product` is
47
+ * mounted. Returns the release to call on unmount. Each claim is distinct, so
48
+ * Strict Mode's mount → unmount → mount stays balanced.
49
+ */
50
+ export declare function claimQuotaDialog(product: string): () => void;
51
+ /**
52
+ * Note who owns `product`'s dialog NOW, and return a check to run LATER: is an
53
+ * owner that was mounted at capture time still mounted?
54
+ *
55
+ * ★★ Both halves matter. An owning provider does not open its dialog when the
56
+ * event arrives — it defers a tick (so a page with a local dialog can claim the
57
+ * failure first) and clears that timer if it unmounts. So it shows a dialog
58
+ * only if it was listening at dispatch AND is still mounted when its timer
59
+ * fires:
60
+ *
61
+ * - mounted at dispatch, unmounted before the tick: its timer was cleared, so
62
+ * nobody shows anything unless the bridge does.
63
+ * - not mounted at dispatch, mounted before the tick: it never heard the
64
+ * event, so again the bridge must.
65
+ *
66
+ * A single "is anyone mounted?" read, at either moment, gets one of those wrong.
67
+ */
68
+ export declare function captureQuotaDialogOwners(product: string): () => boolean;
69
+ /** Claim `product`'s quota dialog for as long as the calling component is mounted. */
70
+ export declare function useQuotaDialogOwnership(product: string): void;
71
+ /**
72
+ * Wrap a component that renders its own quota dialog for `product`, so the
73
+ * shell's bridge stands down while it is mounted.
74
+ *
75
+ * Apply it where a lazy chunk RESOLVES (`lazy(() => import(...).then(m => ({
76
+ * default: withQuotaDialogOwnership(m.Root, 'product') })))`), so the claim can
77
+ * only exist once the real root — and the provider inside it — does.
78
+ */
79
+ export declare function withQuotaDialogOwnership<P extends object>(Root: ComponentType<P>, product: string): ComponentType<P>;
80
+ export interface QuotaUpgradeBridgeOptions {
81
+ /** The product id the events are namespaced under (`<product>:quota-exhausted`). */
82
+ product: string;
83
+ /** Copy per quota kind; `generic` (or {@link DEFAULT_QUOTA_UPGRADE_COPY}) for the rest. */
84
+ copy?: QuotaUpgradeCopyByKind;
85
+ }
86
+ /**
87
+ * Listen for `<product>:quota-exhausted` and open the shell's upgrade prompt,
88
+ * unless a mounted owner shows its own dialog. Mount ONCE per shell, beside
89
+ * `UpgradePromptModal`.
90
+ *
91
+ * ★ The listener is registered once per product. The copy and the translator
92
+ * are read through refs: re-subscribing when a host passed a fresh copy object
93
+ * or the locale changed would run the cleanup, and the cleanup cancels pending
94
+ * timers — dropping a refusal that arrived just before the re-render.
95
+ */
96
+ export declare function useQuotaUpgradeBridge({ product, copy }: QuotaUpgradeBridgeOptions): void;
97
+ export type QuotaUpgradeBridgeProps = QuotaUpgradeBridgeOptions;
98
+ /** {@link useQuotaUpgradeBridge} as a component. Renders nothing. */
99
+ export declare function QuotaUpgradeBridge(props: QuotaUpgradeBridgeProps): null;
@@ -0,0 +1,106 @@
1
+ import { QUOTA_EXHAUSTED_CODE as e } from "../utils/quotaErrors.js";
2
+ import { useOptionalI18n as t } from "../providers/shell/I18nProvider.js";
3
+ import { dispatchUpgradePrompt as n } from "./UpgradePromptModal.js";
4
+ import { quotaExhaustedEventName as r } from "../assistant/quota.js";
5
+ import { useEffect as i, useRef as a } from "react";
6
+ import { jsx as o } from "react/jsx-runtime";
7
+ //#region src/shared/components/QuotaUpgradeBridge.tsx
8
+ var s = {
9
+ title: "Plan Quota Reached",
10
+ message: "You've reached a limit on your current plan. Upgrade to continue using this feature."
11
+ };
12
+ function c(e) {
13
+ if (typeof CustomEvent > "u" || !(e instanceof CustomEvent)) return null;
14
+ let t = e.detail;
15
+ if (typeof t != "object" || !t || !("kind" in t)) return null;
16
+ let n = t.kind;
17
+ return typeof n == "string" && n.length > 0 ? n : null;
18
+ }
19
+ function l(e) {
20
+ if (typeof CustomEvent > "u" || !(e instanceof CustomEvent)) return;
21
+ let t = e.detail;
22
+ if (typeof t != "object" || !t || !("quotaName" in t)) return;
23
+ let n = t.quotaName;
24
+ return typeof n == "string" && n.length > 0 ? n : void 0;
25
+ }
26
+ function u(e, t) {
27
+ return (t !== null && t !== "generic" ? e?.[t] : void 0) ?? e?.generic ?? s;
28
+ }
29
+ function d(e, t) {
30
+ typeof window > "u" || window.dispatchEvent(new CustomEvent(r(e), { detail: t }));
31
+ }
32
+ var f = Symbol.for("burdenoff.fe-libs.quotaDialogOwners");
33
+ function p() {
34
+ let e = globalThis, t = e[f];
35
+ return t || (t = /* @__PURE__ */ new Map(), e[f] = t), t;
36
+ }
37
+ function m(e) {
38
+ let t = p(), n = t.get(e);
39
+ return n || (n = /* @__PURE__ */ new Set(), t.set(e, n)), n;
40
+ }
41
+ function h(e) {
42
+ let t = Symbol(`${e}-quota-dialog-owner`);
43
+ return m(e).add(t), () => {
44
+ m(e).delete(t);
45
+ };
46
+ }
47
+ function g(e) {
48
+ let t = [...m(e)];
49
+ return () => {
50
+ let n = m(e);
51
+ return t.some((e) => n.has(e));
52
+ };
53
+ }
54
+ function _(e) {
55
+ i(() => h(e), [e]);
56
+ }
57
+ function v(e, t) {
58
+ function n(n) {
59
+ return _(t), /* @__PURE__ */ o(e, { ...n });
60
+ }
61
+ return n.displayName = `withQuotaDialogOwnership(${e.displayName ?? e.name ?? "Component"})`, n;
62
+ }
63
+ function y({ product: o, copy: s }) {
64
+ let d = t()?.t, f = a({
65
+ copy: s,
66
+ translate: d
67
+ });
68
+ i(() => {
69
+ f.current = {
70
+ copy: s,
71
+ translate: d
72
+ };
73
+ }, [s, d]), i(() => {
74
+ if (!o || typeof window > "u") return;
75
+ let t = r(o), i = /* @__PURE__ */ new Set(), a = (e, t) => {
76
+ let n = f.current.translate;
77
+ if (!e || !n) return t;
78
+ let r = n(e, t);
79
+ return r && r !== e ? r : t;
80
+ }, s = (t) => {
81
+ let r = c(t), s = l(t), d = g(o), p = setTimeout(() => {
82
+ if (i.delete(p), d()) return;
83
+ let t = u(f.current.copy, r);
84
+ n({
85
+ extensions: s ? {
86
+ code: e,
87
+ quotaName: s
88
+ } : { code: e },
89
+ title: a(t.titleKey, t.title),
90
+ description: a(t.messageKey, t.message)
91
+ });
92
+ }, 0);
93
+ i.add(p);
94
+ };
95
+ return window.addEventListener(t, s), () => {
96
+ window.removeEventListener(t, s);
97
+ for (let e of i) clearTimeout(e);
98
+ i.clear();
99
+ };
100
+ }, [o]);
101
+ }
102
+ function b(e) {
103
+ return y(e), null;
104
+ }
105
+ //#endregion
106
+ export { s as DEFAULT_QUOTA_UPGRADE_COPY, b as QuotaUpgradeBridge, g as captureQuotaDialogOwners, h as claimQuotaDialog, d as dispatchProductQuotaExhausted, c as quotaEventKind, u as resolveQuotaUpgradeCopy, _ as useQuotaDialogOwnership, y as useQuotaUpgradeBridge, v as withQuotaDialogOwnership };
@@ -1,9 +1,13 @@
1
1
  import { UpgradeErrorExtensions } from '../utils/quotaErrors';
2
2
  /**
3
3
  * Global window event the shell listens for to open the upgrade modal.
4
- * Dispatched by the Apollo error link (and any imperative caller) when
5
- * a STORAGE_QUOTA_EXCEEDED / RESOURCE_CAP_EXCEEDED / QUOTA_EXHAUSTED
6
- * GraphQL error is observed.
4
+ * Dispatched by the Apollo error link for STORAGE_QUOTA_EXCEEDED /
5
+ * RESOURCE_CAP_EXCEEDED, by `QuotaUpgradeBridge` for a product's
6
+ * `<product>:quota-exhausted` walls, and by any imperative caller.
7
+ *
8
+ * ★ The Apollo link deliberately does NOT dispatch for QUOTA_EXHAUSTED: several
9
+ * product pages still answer that code with a local dialog, and a global
10
+ * dispatch would stack a second one on top.
7
11
  */
8
12
  export declare const UPGRADE_PROMPT_EVENT = "burdenoff:upgrade-prompt";
9
13
  export interface UpgradePromptDetail {
@@ -25,6 +25,8 @@ export { UpgradePromptModal, dispatchUpgradePrompt, UPGRADE_PROMPT_EVENT, } from
25
25
  export type { UpgradePromptModalProps, UpgradePromptDetail } from './UpgradePromptModal';
26
26
  export { UpgradeInlineBanner } from './UpgradeInlineBanner';
27
27
  export type { UpgradeInlineBannerProps } from './UpgradeInlineBanner';
28
+ export { QuotaUpgradeBridge, useQuotaUpgradeBridge, dispatchProductQuotaExhausted, resolveQuotaUpgradeCopy, quotaEventKind, claimQuotaDialog, captureQuotaDialogOwners, useQuotaDialogOwnership, withQuotaDialogOwnership, DEFAULT_QUOTA_UPGRADE_COPY, } from './QuotaUpgradeBridge';
29
+ export type { QuotaUpgradeBridgeProps, QuotaUpgradeBridgeOptions, QuotaUpgradeCopy, QuotaUpgradeCopyByKind, ProductQuotaExhaustedDetail, } from './QuotaUpgradeBridge';
28
30
  export { getSSORedirectUrl, redirectToSSO, SSORedirectSpinner, checkSLO, checkRemoteSLO, clearLocalAuthState, } from './SSORedirectGuard';
29
31
  export { LandingOrDashboardRedirect, LandingGateView, resolveLandingGate, hasStoredValidSession, } from './LandingOrDashboardRedirect';
30
32
  export type { LandingOrDashboardRedirectProps, LandingGateViewProps, LandingGateDecision, LandingGateInput, } from './LandingOrDashboardRedirect';
@@ -1,15 +1,15 @@
1
1
  import { clearAssistantControls as e, getAssistantControl as t, hasAssistantControl as n, registerAssistantControl as r } from "./shared/assistant/appControls/registry.js";
2
2
  import { useAssistantControl as i, useAssistantPageControls as a } from "./shared/assistant/appControls/useAssistantControl.js";
3
- import { START_RETRY_COOLDOWN_MS as o, isSpeechRecognitionSupported as s, startIsCoolingDown as c, useVoiceInput as l } from "./shared/assistant/voice/useVoiceInput.js";
4
- import { AssistantProductProvider as u, resolveModeConfig as d, useAssistantPageLabel as f, useAssistantProduct as p, useAssistantProductOrNull as m, useAssistantStorageFolders as h } from "./shared/assistant/product.js";
5
- import { AssistantI18nProvider as g, assistantTranslationKey as _, useAssistantI18nNamespace as v, useAssistantTr as y } from "./shared/assistant/i18n.js";
6
- import { copyToClipboard as b } from "./shared/assistant/clipboard.js";
7
- import { AssistantMarkdownImage as x, imageHostLabel as S, isRemoteImageSrc as C } from "./shared/assistant/ui/AssistantMarkdownImage.js";
8
- import { assistantRoutePath as w, assistantUrlTransform as T, classifyAssistantHref as E, transformAssistantUrl as D } from "./shared/assistant/uiActions/assistantHref.js";
9
- import { AssistantMarkdownRenderer as O, AssistantNavigateProvider as k, browserShouldHandle as A, useAssistantNavigate as j } from "./shared/assistant/ui/AssistantMarkdownRenderer.js";
10
- import { UNSAVED_CHANGE_LABEL_MAX as M, listUnsavedChanges as N, registerUnsavedChange as P, unsavedChangesBlocking as F, useUnsavedChanges as I } from "./shared/navigation/unsavedChanges.js";
11
- import { ASSISTANT_LLM_TERMINAL_CODES as L, SandboxProxyError as R, assistantLlmTerminalCodeOf as z, isAssistantLlmTerminalCode as B, sandboxProxyErrorFromBody as V, sandboxProxyErrorFromTurnTerminal as H, terminalCodeRecoverability as U } from "./shared/assistant/sandboxProxyError.js";
12
- import { classifyQuotaError as W, describeQuotaError as G, extensionObjectsIn as K, isQuotaExhaustedError as q, quotaExhaustedEventName as J } from "./shared/assistant/quota.js";
3
+ import { ASSISTANT_LLM_TERMINAL_CODES as o, SandboxProxyError as s, assistantLlmTerminalCodeOf as c, isAssistantLlmTerminalCode as l, sandboxProxyErrorFromBody as u, sandboxProxyErrorFromTurnTerminal as d, terminalCodeRecoverability as f } from "./shared/assistant/sandboxProxyError.js";
4
+ import { classifyQuotaError as p, describeQuotaError as m, extensionObjectsIn as h, isQuotaExhaustedError as g, quotaExhaustedEventName as _ } from "./shared/assistant/quota.js";
5
+ import { START_RETRY_COOLDOWN_MS as v, isSpeechRecognitionSupported as y, startIsCoolingDown as b, useVoiceInput as x } from "./shared/assistant/voice/useVoiceInput.js";
6
+ import { AssistantProductProvider as S, resolveModeConfig as C, useAssistantPageLabel as w, useAssistantProduct as T, useAssistantProductOrNull as E, useAssistantStorageFolders as D } from "./shared/assistant/product.js";
7
+ import { AssistantI18nProvider as O, assistantTranslationKey as k, useAssistantI18nNamespace as A, useAssistantTr as j } from "./shared/assistant/i18n.js";
8
+ import { copyToClipboard as M } from "./shared/assistant/clipboard.js";
9
+ import { AssistantMarkdownImage as N, imageHostLabel as P, isRemoteImageSrc as F } from "./shared/assistant/ui/AssistantMarkdownImage.js";
10
+ import { assistantRoutePath as I, assistantUrlTransform as L, classifyAssistantHref as R, transformAssistantUrl as z } from "./shared/assistant/uiActions/assistantHref.js";
11
+ import { AssistantMarkdownRenderer as B, AssistantNavigateProvider as V, browserShouldHandle as H, useAssistantNavigate as U } from "./shared/assistant/ui/AssistantMarkdownRenderer.js";
12
+ import { UNSAVED_CHANGE_LABEL_MAX as W, listUnsavedChanges as G, registerUnsavedChange as K, unsavedChangesBlocking as q, useUnsavedChanges as J } from "./shared/navigation/unsavedChanges.js";
13
13
  import { buildSandboxContextInput as Y, executeAssistantGraphQLOnce as X, executeSandboxGraphQL as Z } from "./shared/assistant/gatewayClient.js";
14
14
  import { CHECK_AI_CREDITS as Q, CREATE_SANDBOX as $, EXTEND_MY_ASSISTANT_SANDBOX_TTL as ee, EXTEND_SANDBOX_TTL as te, GET_ACTIVE_SANDBOXES as ne, GET_SANDBOX as re, PROVISION_ASSISTANT_SANDBOX as ie, PROXY_SANDBOX_REQUEST as ae, REPORT_AI_TOKEN_USAGE as oe, REPORT_MY_ASSISTANT_TURN_TIMINGS as se, STOP_ASSISTANT_SANDBOX as ce, STOP_MY_ASSISTANT_SANDBOX as le, WAIT_FOR_SANDBOX_RUNNING as ue } from "./shared/assistant/operations.js";
15
15
  import { ASSISTANT_MODE_FALLBACK_LABELS as de, ASSISTANT_MODE_IDS as fe, assistantModeFallbackLabel as pe, isBuiltInAssistantMode as me } from "./shared/assistant/modeCopy.js";
@@ -312,4 +312,4 @@ import { AvatarFace as vT } from "./shared/assistant/avatar/live/AvatarFace.js";
312
312
  import { avatarSpeakerFor as yT, hostedAvatarVoice as bT, liveAvatarVoicesFrom as xT, restoreVoiceWhenOutputLeaves as ST } from "./shared/assistant/avatar/live/avatarVoice.js";
313
313
  import { LiveAvatarTabView as CT, avatarPreviewVoice as wT, avatarVoiceDisplayName as TT } from "./shared/assistant/avatar/live/LiveAvatarTabView.js";
314
314
  import { createLiveAvatarSeam as ET, isLiveAvatarBrowserSupported as DT, liveAvatarAuthorization as OT, liveAvatarWorkspaceAuthorization as kT } from "./shared/assistant/avatar/live/createLiveAvatarSeam.js";
315
- export { pb as ABANDONED_TURN_OUTCOME, bu as ADMIN_MODE_ACCESS_WAIT_MS, kC as AIAssistantPanel, Tx as ARABIC_COMMANDS, pS as ASSENT_MAX_TOKENS, mS as ASSENT_MAX_ZH_CHARS, eb as ASSISTANT_ADMIN_ACTION, tb as ASSISTANT_ADMIN_RESOURCE_TYPE, xe as ASSISTANT_API_AUTH_STRATEGY, xh as ASSISTANT_BOTTOM_CHROME_CLEARANCE, Sh as ASSISTANT_DIALOG_SELECTOR, Ch as ASSISTANT_DOCKED_DESKTOP_CLASS, wh as ASSISTANT_DOCK_WIDTH_PX, Th as ASSISTANT_DOCK_WIDTH_VAR, Eh as ASSISTANT_FLOATING_DESKTOP_CLASS, Dh as ASSISTANT_FLOATING_RIGHT_PX, Oh as ASSISTANT_FLOATING_WIDTH_PX, pg as ASSISTANT_HISTORY_BACKOFF_BASE_MS, mg as ASSISTANT_HISTORY_BACKOFF_MAX_MS, Sg as ASSISTANT_HISTORY_CHANGES_OPERATION, Cg as ASSISTANT_HISTORY_CHANGES_QUERY, wg as ASSISTANT_HISTORY_CHANGES_QUERY_BASE, a_ as ASSISTANT_HISTORY_CONTROLS_RECHECK_MS, Tg as ASSISTANT_HISTORY_CONVERSATIONS_OPERATION, Eg as ASSISTANT_HISTORY_CONVERSATIONS_QUERY, Dg as ASSISTANT_HISTORY_CONVERSATIONS_QUERY_BASE, Og as ASSISTANT_HISTORY_DELETE_MUTATION, kg as ASSISTANT_HISTORY_DELETE_MUTATION_BASE, Ag as ASSISTANT_HISTORY_DELETE_OPERATION, iv as ASSISTANT_HISTORY_DONE_TTL_MS, jg as ASSISTANT_HISTORY_ENTRIES_OPERATION, Mg as ASSISTANT_HISTORY_ENTRIES_QUERY, Ng as ASSISTANT_HISTORY_ENTRIES_QUERY_BASE, o_ as ASSISTANT_HISTORY_MASKED_DRIFT_STREAK, p_ as ASSISTANT_HISTORY_MAX_CACHED_CONVERSATIONS, av as ASSISTANT_HISTORY_MAX_HEADERS, ov as ASSISTANT_HISTORY_MAX_TOMBSTONES, Pg as ASSISTANT_HISTORY_OPERATIONS, hg as ASSISTANT_HISTORY_QUOTA_RETRY_MS, gg as ASSISTANT_HISTORY_REJECTION_KEYS, Sv as ASSISTANT_HISTORY_RESET_TRUST_MS, Fg as ASSISTANT_HISTORY_SAVE_MUTATION, Ig as ASSISTANT_HISTORY_SAVE_MUTATION_BASE, Lg as ASSISTANT_HISTORY_SAVE_OPERATION, _g as ASSISTANT_HISTORY_SCHEMA_PAUSE_MS, Yg as ASSISTANT_HISTORY_SEARCH_DEBOUNCE_MS, Xg as ASSISTANT_HISTORY_SEARCH_MAX_CODE_POINTS, Ev as ASSISTANT_HISTORY_SEARCH_MAX_RETRY_MS, Zg as ASSISTANT_HISTORY_SEARCH_MIN_CODE_POINTS, Rg as ASSISTANT_HISTORY_SEARCH_OPERATION, Qg as ASSISTANT_HISTORY_SEARCH_PAGE_SIZE, zg as ASSISTANT_HISTORY_SEARCH_QUERY, sv as ASSISTANT_HISTORY_STORAGE_NAME, cv as ASSISTANT_HISTORY_TOMBSTONE_TTL_MS, Bg as ASSISTANT_HISTORY_UPDATE_MUTATION, Vg as ASSISTANT_HISTORY_UPDATE_OPERATION, mu as ASSISTANT_I18N_COMPUTED_COPY, hu as ASSISTANT_I18N_LITERAL_COPY, gu as ASSISTANT_I18N_MANIFEST, _u as ASSISTANT_I18N_SEED_COMPAT_COPY, Tc as ASSISTANT_LANGUAGES, kh as ASSISTANT_LAUNCHER_LIFT_VAR, L as ASSISTANT_LLM_TERMINAL_CODES, de as ASSISTANT_MODE_FALLBACK_LABELS, fe as ASSISTANT_MODE_IDS, Km as ASSISTANT_MODE_META, Tf as ASSISTANT_OVERLAY_ATTR, Ah as ASSISTANT_OVERLAY_DEFAULT_TOP_PX, jh as ASSISTANT_OVERLAY_DESKTOP_QUERY, Mh as ASSISTANT_OVERLAY_TOP_VAR, Ef as ASSISTANT_PANEL_ATTR, Nh as ASSISTANT_PANEL_INSET_VAR, Ph as ASSISTANT_SHEET_BASE_CLASS, Fh as ASSISTANT_SHEET_BOTTOM_VAR, Ih as ASSISTANT_SHEET_COMPACT_CLASS, Lh as ASSISTANT_SHEET_EXPANDED_CLASS, Rh as ASSISTANT_TOGGLE_SHORTCUT_LABEL, Df as ASSISTANT_VOICE_SESSION_ATTR, cl as ATTACHMENT_ACCEPT, Bu as ATTACHMENT_COMMIT_CODES, Vu as ATTACHMENT_COMMIT_POLICY, Hu as ATTACHMENT_DIRECT_UPLOAD_MAX_BYTES, Gl as ATTACHMENT_SOURCES, Uu as ATTACHMENT_URL_MAX_AGE_MS, zs as AUDIO_TRACK_MIN_CHROME, Re as AUTO_CARRY_OVER_MAX_CHARS, ze as AUTO_CARRY_OVER_MAX_CHARS_PER_MESSAGE, Be as AUTO_CARRY_OVER_MAX_MESSAGES, qm as AUTO_MODE_OPTION_ID, Ve as AUTO_READ_MODE, $m as AUTO_VOICE, He as AUTO_WRITE_MODE, Qw as AVATAR_API_PATH, XC as AVATAR_AUDIO_STREAM_TOPIC, ZC as AVATAR_CLEAR_BUFFER_TIMEOUT_MS, QC as AVATAR_PCM_BYTES_PER_SECOND, $C as AVATAR_PCM_CHANNELS, ew as AVATAR_PCM_SAMPLE_RATE, BC as AVATAR_PREFERENCES_STORAGE_NAME, tw as AVATAR_RPC_CLEAR_BUFFER, nw as AVATAR_RPC_PLAYBACK_FINISHED, rw as AVATAR_RPC_PLAYBACK_STARTED, kw as AVATAR_SAMPLE_RATE, Of as AVATAR_TAB_OVERLAY, Mu as AWAITING_FIRST_CHUNK, DC as AssistantApiCallsConsentDialog, Em as AssistantAttachmentButton, Dm as AssistantAttachmentChips, ip as AssistantAutoSpeakToggle, af as AssistantAvatar, $y as AssistantAvatarTab, By as AssistantAvatarTabs, OC as AssistantChatArea, CC as AssistantComposer, Cm as AssistantConnectSourceItem, ym as AssistantConnectSourceProvider, Uv as AssistantControlConfirmDialog, Gv as AssistantControlConfirmProvider, Vv as AssistantConversationDeleteDialogProvider, Mv as AssistantConversationFilters, Pv as AssistantConversationList, Iv as AssistantDeleteConversationDialog, Fv as AssistantEmptyState, Lm as AssistantEntityPreview, nh as AssistantHandsFreeInterruptToggle, sg as AssistantHeader, ph as AssistantHistoryArchivedNotice, cg as AssistantHistoryControlsUnavailableError, mh as AssistantHistoryDeletedNotice, hh as AssistantHistoryLoadState, gh as AssistantHistoryPinLimitBanner, _h as AssistantHistoryReadOnlyBanner, lg as AssistantHistoryResponseError, ug as AssistantHistoryScopeInactiveError, Nv as AssistantHistorySearchBox, dg as AssistantHistorySearchQueryError, fg as AssistantHistorySearchUnavailableError, vh as AssistantHistoryShowEarlier, yh as AssistantHistoryUnsavedDeleteNotice, g as AssistantI18nProvider, hm as AssistantLanguageMenu, Wm as AssistantLanguageSelector, Xv as AssistantLeaveConfirmNavigateProvider, x as AssistantMarkdownImage, O as AssistantMarkdownRenderer, ap as AssistantMessageAttachments, hy as AssistantMessageItem, jy as AssistantMessageList, Jm as AssistantModeSelector, og as AssistantMoreMenu, k as AssistantNavigateProvider, Lv as AssistantNothingToDeleteNotice, jC as AssistantOverlay, MC as AssistantOverlayProvider, op as AssistantPendingWriteCard, Hm as AssistantPreviewBridgeHost, Um as AssistantPreviewOverlay, Ap as AssistantPreviewProvider, u as AssistantProductProvider, gm as AssistantReplyLanguageSelector, _r as AssistantRuntimeManager, Jr as AssistantSendRefusal, _m as AssistantSpeakButton, Cf as AssistantSpeechProvider, vm as AssistantSpokenTurnsNotice, Im as AssistantStepRail, Jd as AssistantToolActivity, py as AssistantTurnActivity, Ny as AssistantUiOfferLink, Py as AssistantUiOfferLinks, Zm as AssistantVoiceButton, th as AssistantVoiceGraceSelector, rh as AssistantVoiceOrb, eh as AssistantVoiceSelector, zy as AssistantVoiceSession, ih as AssistantVoiceSessionButton, LC as AssistantWorkflowClient, Tp as AssistantWriteConfirmDialog, bp as AssistantWriteProposalCard, kp as AssistantWriteProposalSlot, ed as AttachmentFilesPortContext, ll as AttachmentRejectedError, Sw as AudioDecodeAbortedError, Cw as AudioDecodeError, $w as AvatarApiError, vT as AvatarFace, vw as AvatarLevelDetector, uw as AvatarNotReadyError, Ww as AvatarOutputFailure, Gw as AvatarOutputLeft, Kw as AvatarOutputRefusal, sw as AvatarRpcRejectedError, dw as AvatarSegmentBusyError, fw as AvatarSegmentEndedError, Yy as AvatarTabAskBox, Xy as AvatarTabLastExchange, pw as AvatarTransportClosedError, Rx as BACK_GRAMMAR, kS as BACK_STACK_CAPACITY, Hc as BOILERPLATE_PAGE_SHARE, Wo as BRANCH_DELAY_S, pi as BUILT_IN_MODE_CAPABILITIES, ah as CAPTION_SCROLL_ATTR, Ts as CAPTURE_CONSTRAINTS, vs as CAPTURE_FRAME_MS, ys as CAPTURE_FRAME_SAMPLES, bs as CAPTURE_PROCESSOR_NAME, xs as CAPTURE_SAMPLE_RATE, Ss as CAPTURE_WORKLET_SOURCE, Q as CHECK_AI_CREDITS, jx as CHINESE_COMMANDS, os as CLOSE_CODE_ERRORS, Xb as COMMAND_FAMILIES, Zb as COMMAND_LOCALES, Qb as COMMAND_MANIFEST, Wv as CONTROL_CONFIRM_ARM_MS, xx as CONTROL_KEYS, $ as CREATE_SANDBOX, zw as DEFAULT_AVATAR_DECODE_MAX_BYTES, Bw as DEFAULT_AVATAR_DECODE_STRATEGY, yw as DEFAULT_AVATAR_LEVEL_CONFIG, hw as DEFAULT_AVATAR_TRACKER_CONFIG, VC as DEFAULT_AVATAR_VOICE_MODE, Cs as DEFAULT_ECHO_GATE_PARAMS, Et as DEFAULT_HISTORY_LIST_FILTER, ul as DEFAULT_INLINE_LIMITS, As as DEFAULT_PREROLL_MS, ob as DEFAULT_REMINT_DELAYS_MS, rc as DEFAULT_SPEAKABLE_LABELS, Ec as DEFAULT_SPEECH_RATE, xi as DEFAULT_STREAM_BUDGET_MS, Fs as DEFAULT_VAD_PARAMS, lt as DEFAULT_VOICE_GRACE_MS, Rv as DELETE_CONFIRM_ARM_MS, gS as EMPTY_CONTROL_SNAPSHOT, Do as ENDPOINT_GRACE_MS, Px as ENGLISH_COMMAND_ADDITIONS, Wx as ENTITY_TARGET_PREFIX, vS as EVAL_FAMILIES, ee as EXTEND_MY_ASSISTANT_SANDBOX_TTL, te as EXTEND_SANDBOX_TTL, ws as EchoGate, Qv as FOCUS_AFTER_KEEP_INTERVAL_MS, $v as FOCUS_AFTER_KEEP_MAX_MS, Gm as FOLLOW_APP_LOCALE, cw as FakeAvatarScheduler, ne as GET_ACTIVE_SANDBOXES, re as GET_SANDBOX, Ly as HANDS_FREE_NOTICE_ATTR, bt as HANDS_FREE_OVERRIDE_KEY, qo as HANDS_FREE_STREAM_NOTICE_VERSION, xt as HANDS_FREE_TRANSPORT_OVERRIDE_KEY, Ys as HIDDEN_RELEASE_MS, kx as HINDI_COMMANDS, G_ as HISTORY_CATCH_UP_MAX_GAP, K_ as HISTORY_CATCH_UP_PAGE, D_ as HISTORY_CLIENT_ID_PATTERN, O_ as HISTORY_ENTRY_CONTENT_CAP_BYTES, q_ as HISTORY_LOAD_PAGE, k_ as HISTORY_MAX_CONTENT_BYTES, A_ as HISTORY_METADATA_ENVELOPE_MAX_BYTES, j_ as HISTORY_METADATA_KEYS, M_ as HISTORY_REQUEST_HEADROOM_BYTES, ny as HISTORY_RESUME_CLOSE, ry as HISTORY_RESUME_MAX_ANSWER_CHARS, iy as HISTORY_RESUME_MAX_CHARS, ay as HISTORY_RESUME_MAX_EXCHANGES, oy as HISTORY_RESUME_MAX_PROMPT_CHARS, sy as HISTORY_RESUME_OPEN, N_ as HISTORY_SAVE_REQUEST_BUDGET_BYTES, Dt as HISTORY_TITLE_MAX_CODE_POINTS, P_ as HISTORY_TRUNCATION_MARKER, $i as HOSTED_DISABLE_MS, ha as HOSTED_OUTPUT_MIN_AUDIO_BYTES_PER_SECOND, ga as HOSTED_OUTPUT_STALL_AUDIO_RATIO, _a as HOSTED_OUTPUT_STALL_BASE_MS, Ki as HOSTED_SPEAKERS, ea as HOSTED_TTS_MAX_CHARS, qi as HOSTED_TTS_TIER, Ji as HOSTED_VOICES, wa as HOSTED_VOICE_RANK, Ry as HandsFreePrivacyNotice, zm as HostedPreviewBridgeContext, km as IDLE_ACTIVE_TAB, Nu as IDLE_PLAYBACK, Ip as IDLE_PREVIEW, Mp as IDLE_PREVIEW_STATE, So as IDLE_ROTATION_CLOCK, Si as INCOMPLETE_TURN_NOTICES, Oo as INITIAL_SESSION, jc as INITIAL_TRANSCRIPT_AUTO_OPEN, dl as INLINE_IMAGE_MAX_DIM, fl as INLINE_IMAGE_QUALITY, ko as INTERRUPT_MAX_MS, Ao as INTERRUPT_MIN_MS, ww as InvalidAudioError, ss as KEEP_ALIVE_MS, Md as LANGUAGE_REPLY_DEADLINE_MS, Nd as LANGUAGE_REPLY_GRACE_MS, c_ as LEGACY_HISTORY_KEY_PREFIX, mn as LEGACY_WRITE_CONSENT_KEY, iS as LINKED_CHOICE_MAX, zS as LINK_TEXT_MAX, aT as LIVE_AVATAR_CONNECT_TIMEOUT_MS, oT as LIVE_AVATAR_END_BEFORE_DEADLINE_MS, sT as LIVE_AVATAR_IDLE_MS, cT as LIVE_AVATAR_REQUEST_TIMEOUT_MS, lT as LIVE_AVATAR_TAB_OFF_GUARD_MS, _y as LIVE_MESSAGE_LIMIT, vy as LIVE_PART_LIMIT, Dy as LIVE_RENDER_THROTTLE_MS, My as LIVE_SCROLL_GAP_MS, yy as LIVE_TEXT_LIMIT, Mx as LOCALE_TABLES, Qm as ListeningDot, Lf as LiveAvatarMiniIndicator, Rf as LiveAvatarSeamProvider, mT as LiveAvatarStageView, zf as LiveAvatarTabContext, CT as LiveAvatarTabView, mw as LiveKitAvatarTransport, $b as MANIFEST_FAMILIES, mi as MAX_ASSISTANT_STREAM_BUDGET_MS, pl as MAX_ATTACHMENTS, Uc as MAX_BOILERPLATE_LINE_CHARS, ml as MAX_CONFIGURABLE_INLINE_CHARS, Jl as MAX_COPY_SLUG_LENGTH, Wc as MAX_EXTRACTED_CHARS, hl as MAX_FILE_BYTES, gl as MAX_INLINE_CHARS_PER_FILE, _l as MAX_INLINE_CHARS_TOTAL, Tn as MAX_INLINE_IMAGE_BASE64_BYTES, vl as MAX_INLINE_IMAGE_BASE64_CHARS, yl as MAX_INLINE_IMAGE_PARTS, bl as MAX_INLINE_TURN_BODY_BYTES, Gc as MAX_PDF_PAGES_SCANNED, Ot as MAX_PINNED, js as MAX_PREROLL_MS, mb as MAX_REPORTED_TURN_MS, En as MAX_REQUEST_BODY_BYTES, cs as MAX_SEND_BYTES, ic as MAX_SPEAKABLE_CHARS, ac as MAX_SPOKEN_TABLE_ROWS, xl as MAX_TURN_BODY_BYTES, qw as MAY_HAVE_BEGUN_MARGIN_MS, gc as MINI_CAPTION_BUDGET, Kc as MIN_PAGE_TEXT_CHARS, Ms as MIN_PREROLL_MS, ls as MIN_STABLE_MS, qc as MIN_TEXT_PAGE_SHARE, sb as MIN_WAKE_GAP_MS, Es as MicCaptureError, NS as NAVIGATE_RECORD_BUDGET_BYTES, wS as NAVIGATION_CEILING_MS, TS as NAVIGATION_POLL_MS, ES as NAVIGATION_QUIET_MS, nC as NAV_INTENT_OBJECT_MAX_WORDS, jo as NOTHING_HEARD, ps as NOTHING_HEARD_MS, Hd as NO_FIRST_TEXT, Lp as NO_OWNER, kf as NO_PANEL_OVERLAY, Aw as PCM16_BYTES_PER_SAMPLE, Qt as PENDING_WRITE_APPROVAL_WINDOW_MS, ms as PHANTOM_BARGE_INS_BEFORE_FALLBACK, lo as PHRASE_ROTATE_MS, vc as POLL_FAST_MS, yc as POLL_FAST_UNTIL_MS, bc as POLL_SLOW_MS, xc as POLL_STEADY_MS, Sc as POLL_STEADY_UNTIL_MS, Eb as PREOPEN_MAX_AGE_MS, Db as PREOPEN_MAX_ENTRIES, mc as PREVIEW_LANGUAGES, Ob as PREWARM_COOLDOWN_MS, he as PRODUCT_ASSISTANT_MODE_ID_MAX_LENGTH, ge as PRODUCT_ASSISTANT_MODE_ID_PATTERN, On as PROMPT_CONVERSATION_ID_PATTERN, Sl as PROMPT_ENVELOPE_RESERVE_BYTES, yC as PROPOSAL_WRITE_RULES, Cl as PROVIDER_READABLE_FILE_MEDIA_TYPES, Wr as PROVISIONING_NOT_PERMITTED_I18N_KEY, ie as PROVISION_ASSISTANT_SANDBOX, ae as PROXY_SANDBOX_REQUEST, Tw as PcmFormatError, Ns as PreRollRing, kb as QuarantineSet, ex as RECALL_FLOOR, us as RECONNECT_CLOSE_CODES, Yx as RECORD_CHOICE_MAX, Xx as RECORD_LOOKUP_TIMEOUT_MS, Zx as RECORD_MATCHES_MAX, $d as REDUCED_MOTION_ATTRIBUTE, ef as REDUCED_MOTION_QUERY, VS as REFUSED_OFFER_LOOK_THROUGH_MAX, Jw as RELEASE_MARGIN_MS, oe as REPORT_AI_TOKEN_USAGE, se as REPORT_MY_ASSISTANT_TURN_TIMINGS, Dn as REQUEST_TOO_LARGE_REFUSAL, gw as ReplyPlaybackTracker, $f as SANDBOX_READY_TTL_MS, va as SILENT_WAV_DATA_URI, Ex as SPANISH_COMMANDS, ta as SPEAKING_RATE_MAX, na as SPEAKING_RATE_MAX_STREAMING, ra as SPEAKING_RATE_MAX_SYNC, ia as SPEAKING_RATE_MIN, oc as SPEECH_CHUNK_CHARS, sc as SPEECH_CHUNK_CJK_CHARS, cc as SPEECH_FIRST_CHUNK_MAX_CHARS, Ta as SPEECH_LANG, Pi as SPEECH_OUTPUT_LEFT, Fi as SPEECH_OUTPUT_REFUSE_AUDIBLE, Eu as SPOKEN_LABEL_LANGUAGES, uo as STAGE_COPY, o as START_RETRY_COOLDOWN_MS, ce as STOP_ASSISTANT_SANDBOX, le as STOP_MY_ASSISTANT_SANDBOX, Ci as STREAM_BUDGET_MS, Oe as STREAM_MINT_BACKOFF_ERROR_MS, ke as STREAM_MINT_BACKOFF_UNAVAILABLE_MS, Is as STRICT_ONSET_FRAMES, Sx as STRONG_CONFIRMATION_KEYS, Jo as STT_BEARER_PREFIX, Yo as STT_STREAM_PATH, Xo as STT_SUBPROTOCOL, R as SandboxProxyError, gy as StreamingCaret, hn as TAKE_ACTION_ENGLISH, Ax as TAMIL_COMMANDS, fo as THINKING_PHRASES, Go as TRAILING_RESULT_MS, ut as TRAILING_RESULT_WINDOW_MS, cb as TRANSPORT_OVERRIDE_KEY, wl as TURN_BODY_HEADROOM_BYTES, of as TURN_MILESTONES, pn as TURN_OUTCOME_COPY, sf as TURN_SEGMENTS, cf as TURN_TIMELINE_EVENT, bb as TURN_TIMING_REPORTING, hb as TURN_TIMING_REPORT_FIELDS, gb as TURN_TIMING_STAGES, Ew as TruncatedAudioError, my as TurnActivityLine, JS as UI_CATALOGUE_MAX_BYTES, YS as UI_CATALOGUE_MAX_ENTRIES, Cx as UI_LANGUAGE_CODES, Or as UI_OFFER_CATALOGUE_ID_PATTERN, kr as UI_OFFER_CONVERSATION_ID_PATTERN, Ar as UI_OFFER_ID_PATTERN, jr as UI_OFFER_LIFETIME_MS, Fy as UI_OFFER_LINK_CLASS, Mr as UI_OFFER_MAX_PER_READ, Nr as UI_OFFER_MESSAGE_ID_PATTERN, Pr as UI_OFFER_SESSION_MAX, hi as UNAVAILABLE_MODE_REFUSAL, gi as UNDECLARED_MODE_CAPABILITIES, Yw as UNMEASURED_START_LATENCY_MS, M as UNSAVED_CHANGE_LABEL_MAX, $r as USAGE_REPORT_FAILED_EVENT, ei as USAGE_REPORT_RETRY_DELAYS_MS, Fr as UiOfferSession, Yu as VOICE_COMMIT_BUDGET_MS, eg as VOICE_ESCAPE_LAYER_SELECTOR, tg as VOICE_ESCAPE_MODAL_SELECTOR, dt as VOICE_GRACE_CHOICES_MS, Ea as VOICE_LIST_TIMEOUT_MS, _o as VOICE_MUTED_LABEL, ru as VOICE_PROPOSAL_MODE, vo as VOICE_THINKING_LABEL, oh as VoiceCaption, sh as VoiceConversationView, dh as VoiceMiniController, fh as VoiceStage, lh as VoiceStatusLine, uh as VoiceStatusText, bh as VoiceTranscriptDrawer, ch as VoiceWaveform, ue as WAIT_FOR_SANDBOX_RUNNING, nb as WORKSPACE_ASSISTANT_ADMIN_QUERY, Ep as WRITE_CONFIRM_ARM_MS, xp as WRITE_PROPOSAL_DIALOG_KINDS, Jp as WRITE_PROPOSAL_ERROR_CODES, tu as WRITE_PROPOSAL_ERROR_COPY, sp as WRITE_PROPOSAL_MASK, em as WRITE_PROPOSAL_MAX_POLL_FAILURES, tm as WRITE_PROPOSAL_POLL_MS, Sp as WRITE_PROPOSAL_PRESENTED_AFTER_MS, iu as WRITE_PROPOSAL_READBACK_HIDDEN, Yp as WRITE_PROPOSAL_SANDBOX_MODE, au as WRITE_PROPOSAL_VOICE_COPY, Qe as WRITE_REPLY_COPY, lm as WRITE_REPLY_DECLINE_WAIT_MS, $e as WRITE_REPLY_LEXICON, et as WRITE_REPLY_OFFER_EXPIRED, Ab as WarmCancelled, zC as WorkflowAssistantPanel, Xp as WriteProposalError, kn as abortAssistantTurn, zh as aboveAssistantBottomChrome, Zo as accessTokenFrom, Nx as activeCommandLocales, Af as activePanelOverlay, Li as activePlaybackSource, yS as actualOf, _i as adminOnlyModeSendRefusal, xu as adminOnlyModeSendRefusalAfterAccess, Mo as advanceHeardClock, Co as advanceRotationClock, gC as aiCreditsUpdatedEventName, tx as allOnManifest, tt as analyseWriteReply, Ad as appControlCopy, J_ as applyHistoryPage, by as applyLiveDeltas, Rp as applyPreviewEvent, $t as approvalFollowUpReplyIds, An as approvePendingWrite, en as approvedPendingWriteIds, nm as asWriteProposalError, Dp as askProductToConfirmWrite, jn as askReuseMatchesProvisioning, Ir as asksOneQuestionLast, AS as assistantBackStack, Yl as assistantCopySlug, Cv as assistantHistory, vg as assistantHistoryBackoffMs, $_ as assistantHistoryGenerationOf, zv as assistantHistoryIsOn, l_ as assistantHistoryScopeKey, lv as assistantHistoryStore, vu as assistantI18nSeedCopy, Bh as assistantLauncherBottom, z as assistantLlmTerminalCodeOf, Xl as assistantModeDescriptionKey, pe as assistantModeFallbackLabel, yu as assistantModeI18nCopy, Ym as assistantModeMeta, Vh as assistantOverlayClassName, Hh as assistantOverlayEscapeAction, Uh as assistantOverlayKeys, Zl as assistantPageLabelKey, jf as assistantPanelOwnsEscape, Ql as assistantProductCopyEntries, Wh as assistantQuotaKindOf, w as assistantRoutePath, $l as assistantSuggestionKey, _ as assistantTranslationKey, T as assistantUrlTransform, ti as assistantUsageLedger, Ri as attachPlaybackReference, Wu as attachmentUrlIsStale, Ue as autoCarryOverFor, We as autoSuggestions, Kl as availableAttachmentSources, eT as avatarApiBaseFromTtsEndpoint, Uy as avatarAskBlocker, Wy as avatarAskBlockerLasts, Gy as avatarAskWrites, tT as avatarAvailabilityRefusal, nT as avatarIdempotencyKey, iw as avatarPcmDurationSec, HC as avatarPreferencesToPersist, wT as avatarPreviewVoice, rT as avatarRefusalFor, aw as avatarSegmentAttributes, yT as avatarSpeakerFor, Ky as avatarTabAskLine, Zy as avatarTabExchangeState, TT as avatarVoiceDisplayName, dd as backDoneCopy, Ae as backOffStreamMint, aa as base64ToBytes, tn as beginApprovalInFlight, xy as beginLiveGeneration, lf as beginTurn, uv as boundAssistantHistoryHeaders, Vw as browserAvatarAudioEnv, A as browserShouldHandle, Gi as browserSpeechEngine, _b as buildAbandonedTurnReport, Ud as buildAssistantProgress, Mn as buildAssistantSandboxEnv, Tl as buildAttachmentPromptBlock, Ge as buildAutoCarryOver, Tu as buildBoundedAttachmentTurn, ec as buildContinuedFromVoiceNote, Hg as buildHistoryDeleteVariables, Ug as buildHistoryEntriesVariables, Wg as buildHistoryListVariables, Gg as buildHistoryPageVariables, cy as buildHistoryResumePreamble, Kg as buildHistorySaveVariables, qg as buildHistorySearchVariables, Jg as buildHistoryUpdateVariables, PS as buildNavigateAction, HS as buildNavigationContext, mx as buildPrep, vr as buildProgress, Nn as buildPromptGatewayRequest, El as buildPromptParts, Pn as buildPromptRequestBody, Dl as buildPromptWithAttachments, Fn as buildProvisionAssistantSandboxInput, oa as buildRequest, Y as buildSandboxContextInput, vb as buildTurnTimingReport, XS as buildUiCatalogue, tc as buildVoiceTranscriptMarkdown, _e as builtInModeExtendedBy, jw as bytesToInt16LE, Ub as canonical, Pu as captionChunks, sx as carriesSymbolOrEmoticon, Di as chatTurns, In as checkAssistantAiCredits, fd as chooseDestinationCopy, pd as chooseLinkedCopy, Us as chooseTransport, lc as chunkForSpeech, ds as chunkFrames, Mw as chunkPcm16, jb as claimPreopenedSession, $g as clampHistorySearchText, Ps as clampPreRollMs, kt as clampToCodePoints, yg as classifyAssistantHistoryError, E as classifyAssistantHref, Ke as classifyAssistantIntent, Ol as classifyAttachment, sa as classifyHttpFailure, W as classifyQuotaError, Yr as classifyTurnFailure, ni as classifyUsageReportFailure, nt as classifyWriteReply, e as clearAssistantControls, US as clearPresentedLists, qa as clearReplyRequests, je as clearStreamMintBackoff, ux as closedSlot, Gh as closestAround, At as coalesceUpdatePatch, jt as codePointLength, Mt as collapseHistoryText, hx as collapseRepeat, Jc as columnLetterToIndex, Gu as commitAttachments, dx as compileFrame, Fx as compileNative, u_ as completeAssistantHistoryScope, yo as composeVoiceStatus, Qo as configureHandsFreeStreaming, za as configureSpeechEngine, jd as confirmDialogCopy, wm as connectSourceActivation, bm as connectSourceHrefRenders, Mb as consumeWarm, uc as containsCjk, m_ as conversationHasHistory, b as copyToClipboard, kl as countInlineImageCandidates, Al as countInlinedImageParts, Xd as countSpokenTurns, Su as createAdminModeAccessGate, wv as createAssistantHistoryEngine, ev as createAssistantHistoryStatusStore, dv as createAssistantHistoryStore, Kh as createAssistantNavigate, zp as createAssistantPreviewSurface, Ln as createAssistantSandbox, Rn as createAssistantSession, Ku as createAttachmentCommitter, Ko as createAudioTrackTransport, UC as createAvatarPreferencesStore, Xw as createAvatarReplyOutputs, iT as createAvatarSessionClient, qy as createAvatarTabDraft, Uw as createAvatarTransportPort, jS as createBackStack, fs as createBackendStreamTransport, hs as createEpochGuard, s_ as createGatewayHistoryTransport, Ze as createGuardedAssistantStorage, Rs as createHandsFreeController, Dv as createHistorySearchController, e_ as createHistorySearchMatcher, ya as createHostedTtsEngine, Yv as createLeaveConfirmNavigate, uT as createLiveAvatarController, ET as createLiveAvatarSeam, Oy as createLiveRender, Sy as createLiveState, pa as createPieceSink, rv as createProfileBoundStorage, ep as createReadinessTracker, Ra as createRoutingSpeechEngine, Up as createRunIdentityCache, Ws as createRuntimeTransport, ui as createSandboxAssistantTransport, Zp as createSandboxWriteProposalClient, fb as createSnapshotPoller, Ba as createSpeechEngines, Tv as createSystemHistoryClock, xb as createTurnTimingNonce, Sb as createTurnTimingReporter, Ls as createVad, Hs as createWebSpeechTransport, rm as createWriteProposalDiscovery, Bp as currentPreviewOwner, sC as decideActOnResolve, rt as decideWriteReply, ve as declareAssistantMode, ca as decodeAudioResponse, Hw as decodeMp3ToPcm16k, Yc as decodeXmlEntities, Bv as deleteAssistantConversation, Gp as deliverPreviewEvent, bS as describeCommand, Gr as describePermissionError, G as describeQuotaError, uf as describeTurn, Bs as desktopChromeMajor, FS as destinationForPath, zi as detachPlaybackReference, jl as detectDocumentFormat, Au as detectScriptLocale, df as detectTurnDevice, ql as deviceHasCamera, la as disableDurationMs, _C as dispatchAssistantQuotaExhausted, Xc as docxXmlToText, zn as downloadAssistantArtifact, ig as downloadFile, Nw as downmixToMono, qu as drainPendingDiscards, Nb as dropPreopenedFor, nx as effectiveManifest, Ld as elapsedSince, fv as emptyAssistantHistoryPersisted, pv as emptyAssistantHistoryScopeState, nn as endApprovalInFlight, md as entityNounText, uC as enumFilter, qe as escalationToUndo, ng as escapeBelongsToLayerAbove, Mf as escapeDismisses, Ml as estimateTurnBodyBytes, xS as evaluateCommandItem, X as executeAssistantGraphQLOnce, Z as executeSandboxGraphQL, fx as expandTemplate, ag as exportConversation, Bn as extendAssistantSandboxTTL, K as extensionObjectsIn, xC as extractDocumentText, BS as extractInAppLinks, hT as faceInitials, Hx as fillEntityRoute, F_ as filterHistoryMetadata, dC as filtersOf, Dc as findAssistantLanguage, vi as findAssistantModeConfig, Vn as findExistingSandbox, Hn as findExistingSandboxWithStatus, Bc as findPendingWrite, I_ as fitHistoryMetadataEnvelope, Zc as fitPdfPages, Pw as floatToInt16, Fw as floatToPcm16Bytes, Nf as focusIsInsidePanel, t_ as foldHistorySearchText, rC as foldNavIntentPlural, cx as foldText, lx as foldWords, gx as foldedList, rn as forgetLiveTurns, ZS as forgetSentUiCatalogues, Ou as formatAvatarRetryTime, Nl as formatBytes, Xr as formatDailyLimitResetTime, Qc as formatPageRanges, cp as formatWriteProposalValue, Un as forwardsUserTokensToSandbox, Cy as freezeLiveParts, L_ as fromHistoryEntry, Zu as getActorId, an as getApprovalInFlight, Wn as getAssistantArtifacts, t as getAssistantControl, Id as getAssistantDisplayContent, yr as getAssistantMedia, Gn as getAssistantMessages, Kn as getAssistantSession, qn as getAssistantStreamAccess, br as getAssistantText, Pl as getAttachmentSendBlocker, Me as getCapability, Fl as getExtension, Ht as getHistoryStamp, Se as getImageForMode, Ce as getImageTagForMode, Qu as getOrganizationId, xr as getRawMessageCreatedAt, we as getResourcesForMode, Te as getSandboxImageRegistry, Il as getSendableAttachments, Va as getSpeechEngine, Sr as getToolProgress, ri as getUsageBlock, $u as getWorkspaceId, on as goAheadSentReplyIds, Oi as groupBySession, ki as groupConsecutiveBySession, n as hasAssistantControl, Om as hasAssistantPreviewSurface, Ll as hasAttachmentWorkInFlight, xm as hasConnectSource, ot as hasContentBeyondAffirmation, wy as hasLiveText, Ja as hasPendingReplyRequests, ii as hasPendingUsageReports, mv as headerHasControls, Y_ as highestContiguousHistorySeq, Dx as hindiNameForms, h_ as historyConvKeyOf, R_ as historyEntriesMatchKind, Nt as historyFilterEmptyKind, Pt as historyFilterKey, g_ as historyHeaderOf, __ as historyListRowOf, Ut as historyOpenFilter, v_ as historyRowAcceptsControls, y_ as historyScopeKeyOfStamp, Ov as historySearchBusyDelay, i_ as historyTimestampToIso, bT as hostedAvatarVoice, Yi as hostedLocaleFor, ba as hostedOutputStallMs, Xi as hostedSupportsLanguage, Zi as hostedVoiceName, S as imageHostLabel, wi as incompleteTurnNotice, Dw as inspectMp3, Iw as int16ToBytesLE, aS as isAlreadyThere, bg as isAssistantHistoryControlsDrift, B as isAssistantLlmTerminalCode, ye as isAssistantModeId, Jn as isAssistantProvisioningUnavailable, qh as isAssistantToggleShortcut, Je as isAutoRoutingOffered, gT as isAvatarImageUrl, _w as isAvatarReportOverdue, Fu as isAwaitingFirstChunk, Mc as isAwaitingOwnConversation, zx as isBackRequest, MS as isBackRunnable, st as isBareAffirmation, Np as isBlankProse, me as isBuiltInAssistantMode, No as isCapturing, ff as isComparableTurn, tv as isCurrentAssistantHistoryGeneration, oS as isCurrentPath, Yn as isDedicatedAssistantSandbox, Xn as isDedicatedAssistantSandboxRow, Ft as isDefaultHistoryFilter, Po as isEcho, rx as isEnabled, Gx as isEntityTarget, yb as isFinishedTurn, ft as isGenuineUserSpeech, $o as isHandsFreeStreamingActive, z_ as isHistoryClientId, Wt as isHistoryConversationBusy, Qi as isHostedSpeaker, Da as isHostedVoice, ly as isKnownReadOnlyMode, sd as isLegacyFiller, d_ as isLegacyHistoryConvKey, cd as isLegacyStopped, DT as isLiveAvatarBrowserSupported, sn as isLiveTurn, Ds as isMicCaptureSupported, Ne as isMissingGatewayFieldError, Gs as isMobileUserAgent, Iy as isModifiedClick, $c as isMostlyImagePages, Xf as isMultimodalBodyRejection, Zf as isNeverRecoverableAssistantError, hv as isNewerAssistantHistoryFormat, b_ as isOtherScopeHistoryConversation, ma as isOutputRefusal, Bi as isPlaybackReferenceAttached, wC as isProdRuntime, be as isProductAssistantModeId, Rl as isProviderReadableFilePart, it as isQuestionReply, _x as isQuestionText, q as isQuotaExhaustedError, x_ as isReadOnlyHistoryConversation, Cr as isReapedSandboxConnectionError, tp as isRecentlyVerified, Qx as isRecordMatch, wr as isRecoverable, Qf as isRecoverableAssistantError, C as isRemoteImageSrc, S_ as isReusableHistoryDraft, Pp as isRunningStatus, n_ as isServerHistorySearchQuery, Iu as isSpeakingMessage, Oa as isSpeechBlocked, s as isSpeechRecognitionSupported, ld as isStageCopy, Fo as isSubmittable, Bx as isThereRequest, pt as isTrailingResultOfSubmitted, id as isTurnInFlight, Zs as isTurnSuperseded, Pe as isUnknownFieldError, at as isUserOriginatedWriteReply, It as isValidUpdatePatch, ou as isVoiceProposalBound, Ai as isVoiceTurn, RC as isWorkflowAssistantAdmissionRefusal, gn as isWriteModeAcknowledged, Qp as isWriteProposalError, qv as joinLabels, el as joinSheets, IS as labelForPath, Pd as languageConfirmationCopy, ka as languageDisplayName, wx as languageNameMap, Fd as languageReplyStep, zl as largestInlineCharsPerFile, WS as latestReplyOnSurface, Jv as leaveConfirmCopy, f_ as legacyHistoryConvKey, hd as linkNotOpenableCopy, N as listUnsavedChanges, fT as liveAvatarAskState, OT as liveAvatarAuthorization, pT as liveAvatarStatusText, xT as liveAvatarVoicesFrom, kT as liveAvatarWorkspaceAuthorization, Ty as liveCoverage, Lt as localChannelOf, ix as localeHasAnyOn, Os as looksLikeHeadset, $x as lookupNamedRecords, ax as manifestWith, Tr as mapSessionToHistory, cn as markLiveTurn, Fe as markSupported, pf as markTurn, Qs as markTurnSuperseded, QS as markUiCatalogueSent, Ie as markUnsupported, gd as markdownText, Jb as matchAppControl, Ux as matchEntityRoute, px as matchFrame, sS as matchLocalUiCommand, Ix as matchLocaleIntents, Rt as matchesHistoryFilter, C_ as materializeHistoryHeader, cS as mayBeNavigationFollowUp, Lx as mayBeThereOrPick, Nc as maySendSpokenTurn, B_ as measureHistorySaveRequest, gv as mergeAssistantHistoryPersisted, _v as mergeAssistantHistoryWithStored, mt as mergeFinalPhrase, X_ as mergeHistoryMessages, Er as mergeMessagesById, Sn as mergePersistedAssistantState, WC as mergePersistedAvatarPreferences, ro as micIsInterrupt, Zn as mintAssistantTurnStream, Qn as modeRequiresConfirmWrites, Rd as msUntilNextPhrase, cC as n4LeaveGuard, lS as navDestinations, Kx as navEntryIds, iC as navIntentRelevant, aC as navIntentWords, _d as navigationCommandCopy, vd as navigationOutcomeCopy, im as newWriteProposalRequestId, LS as newestAssistantOnSurface, kv as newestHistoryHeader, ln as newestModelReplyId, Am as nextActiveTab, Jh as nextAssistantOpenState, Xm as nextModeIndex, Pf as nextPanelOverlays, Fp as nextPreviewEvents, r_ as normaliseHistorySearchQuery, zt as normaliseHistoryTitle, eS as normaliseRecordName, vx as normaliseSaid, uS as normaliseUtterance, Aa as normalizeLangTag, es as normalizeSttStreamUrl, vC as notifyAiCreditsUpdated, Gt as notifyAssistantStorageFull, Ii as notifyCancellationSpeechEngine, yd as offerAnnounceText, hS as offerAssentFor, bd as offerExpiredCopy, xd as offerHintText, Kt as offerHistoryRename, Sd as offerKeptForUnsavedCopy, Cd as offerNotAvailableCopy, wd as offerOpenText, tC as offerYesOnSurface, Lr as offerYesState, di as offersOfThisTurn, Ks as openBrowserSocket, dT as openLiveKitAvatarRoom, lb as openTurnStream, fC as openersOf, Io as orbMode, RS as outcomeStatus, tl as pageMarker, Bm as panelOwnedPreviewBridge, Ff as panelOwnsEscape, ow as parseAvatarPlaybackFinished, Vx as parseChoice, Vc as parseConfirmationRefusal, Bl as parseDataUrl, Ow as parseFrameHeader, oC as parseNavIntent, tS as parseRecordRequest, nl as parseSharedStrings, Yd as parseToolActivity, Rr as parseUiOffers, rl as parseWorkbookSheets, $p as parseWriteProposalView, DS as pathnameOf, Lw as pcm16DurationOf, Rw as pcm16SamplesPerChunk, il as pdfTextItemsToPage, Bt as pendingUpdatesByConversation, Kr as permissionRefusalCopyId, qr as permissionRefusalMessage, Td as pickFromListCopy, jm as pinActiveTab, ad as planAbandonedTurn, np as planAfterTransportFailure, lC as planAppControl, xg as planAssistantHistoryRetry, Z_ as planHistoryEarlierLoad, Q_ as planHistoryOpenLoad, Lo as planListeningHold, gs as planOnset, nS as planRecordResolution, Ro as planReplyConsumption, ht as planSubmitTimer, dS as planThemeChange, gt as planThinkingSpeech, Pc as planTranscriptAutoOpen, rp as planTrustedSandboxFailure, od as planTurnAbort, zo as planVoiceAnnouncement, Fc as planVoiceSessionBinding, Ic as planVoiceSessionStart, Lc as planVoiceSpokenEntry, um as planWriteReply, Cc as pollDelayMs, Pb as preopenKey, Fb as preopenWanted, Ib as preopenedCountForTest, GS as presentedListFor, Lb as prewarmTarget, ja as primaryLanguageSubtag, xa as primeHostedPlayback, rb as probeWorkspaceAssistantAdmin, $n as promptGatewayRequestBytes, dm as promptWriteApproval, er as proxySandboxRaw, vv as pruneAssistantHistoryPersisted, Yh as publishedAssistantDockWidth, Xh as publishedAssistantPanelInset, Lu as publishedChunks, Yb as queryAsSaid, J as quotaExhaustedEventName, Wd as readAheadFor, yv as readAssistantHistoryPersisted, Zh as readAssistantOverlayFlag, _S as readControlSnapshot, St as readHandsFreeOverride, ts as readHandsFreeStreaming, tf as readReducedMotion, tr as readSandboxWriteCapabilities, nr as readSandboxWriteCapabilitiesOnce, Ha as readSpeechEngineConfig, qs as readTransportEnvironment, Ct as readTransportOverride, am as readWriteProposalRefs, lw as realAvatarScheduler, mf as recentTurnTimelines, Ed as recordChoiceCopy, Dd as recordKindsCopy, lp as redactWriteProposalText, Ey as reduceLiveFrame, Ju as refreshStaleAttachmentUrls, r as registerAssistantControl, P as registerUnsavedChange, Ya as releaseReplyRequestsOutside, rr as releaseSupersededAssistantSandboxes, KS as rememberPresentedList, yx as removeFillers, su as renderWriteProposalReadback, kc as replyFollowsInput, Xa as replyRequestsVersion, Za as replySpeechRequest, Qa as replyWantsAvatar, ir as reportAssistantAiTokenUsage, ai as reportUsageWithRetry, $a as requestReplyOnAvatar, Qh as requestedAssistantOpenState, Ru as requiresCancel, Sa as resetHostedPlaybackForTest, Vi as resetPlaybackReferenceForTest, eo as resetReplyRequestsForTest, Ua as resetSpeechEngine, Ga as resetSpeechFeedForTest, $s as resetSupersededTurnsForTest, hf as resetTurnTimelines, Cb as resetTurnTimingReporting, Rb as resetWarmsForTest, Cn as resolveActiveModeSandbox, ct as resolveAffirmationLanguage, un as resolveApprovablePendingWrite, Vl as resolveAssistantInlineLimits, Oc as resolveAssistantLanguage, yi as resolveAssistantModeCapabilities, Cu as resolveAssistantSendModeAfterAccess, Ye as resolveAutoRoute, GC as resolveAvatarVoiceMode, qb as resolveByLabel, ty as resolveConversationDeleteTarget, wt as resolveHandsFreeEnabled, w_ as resolveHistoryReopenMode, qx as resolveInAppLinks, Ac as resolveLanguagePair, d as resolveModeConfig, zr as resolveOffer, dn as resolveRetryableMessageId, Vt as resolveRowControls, Ee as resolveSandboxAssistantMode, ju as resolveSpeechLocale, KC as resolveStoredAvatarId, qC as resolveStoredAvatarVoice, JC as resolveStoredAvatarVoiceMode, Tt as resolveStoredHandsFree, Js as resolveStreamConnection, Jx as resolveUiTarget, _t as resolveVoiceGraceMs, gf as restartAttempt, _n as restoreAcknowledgedWriteModes, Xe as restoreAutoRouting, ST as restoreVoiceWhenOutputLeaves, uy as resumeContextFor, Ca as retryDelayMs, oi as retryPendingUsageReports, bw as rmsOfFloat32, wo as rotationElapsedMs, Vp as runBelongsTo, Wp as runIdentities, OS as runNavigation, Hp as sameOwner, De as sandboxBaseModeFor, V as sandboxProxyErrorFromBody, H as sandboxProxyErrorFromTurnTerminal, Br as sandboxServesUiOffers, ar as sandboxStatusOf, Dr as sanitize, _T as sanitizeAvatarImages, rS as sanitizeRecordMatches, SS as scoreboard, pC as searchOf, _f as segmentStats, T_ as selectAssistantHistoryList, or as selectExistingAssistantSandbox, E_ as selectHistoryEvictions, Av as selectHistorySearchList, Vs as selectSttTransport, sr as selectSupersededAssistantSandboxes, Ma as selectVoiceForLocale, cr as sendAssistantPromptAsync, wb as sendAssistantTurnTimings, lr as sendHeartbeat, qt as setAssistantStorageFullHandler, Hi as setDeviceVoice, Jt as setHistoryBusyProbe, Yt as setHistoryOpenFilterSource, Xt as setHistoryRenameSink, Zt as setHistoryStampSource, Xu as settleAndCommitSpokenTurn, bv as settleAssistantHistory, to as settleReplyRequest, zb as settleWarmBeforeSend, fm as settleWithin, al as sheetXmlToRows, ua as shouldDisableEngine, _s as shouldFallBackToTap, Mm as shouldPinOnMove, Nm as shouldPinOnSelect, Bo as shouldRecognise, _c as showPreviousChunk, io as showsAssistantCaption, ao as showsUserCaption, Ui as silencePlaybackReference, fS as singularVariants, Zw as sliceAvatarPcm, Gd as snapshotReplyFloor, mC as sortOf, da as speakableChunks, dc as speakableEmail, Ka as speechFeed, Na as speechGate, Du as speechLabelsFor, Pa as speechLangForLocale, zu as speechPlaybackReducer, vt as speechWords, fa as splitForVendor, fc as splitTableRow, Zd as spokenMessagesSinceContinueNote, Vo as spokenSoFar, Qd as spokenTurnText, po as stageText, xw as startAvatarAudioMeter, ey as startFocusReturnAfterKeep, c as startIsCoolingDown, ks as startMicCapture, zd as startPhraseTicker, Bb as startPreopen, To as startRotationTicker, Kd as startSessionReadAhead, Tb as startTurnTimingReporting, Vb as startWarm, mo as statusStageCopy, Cp as statusText, Pm as stepsFromToolActivity, ur as stopReapedAssistantSandbox, Ti as streamBudgetMs, ns as streamLanguagesFor, Le as streamMintBackedOff, bx as stripEdges, ud as stripLegacyFillerPrefix, yt as stripSubmittedPrefix, rs as sttStreamUrlFromGateway, is as sttSubprotocols, fn as subscribeApprovalInFlight, as as subscribeHandsFreeStreaming, nf as subscribeReducedMotion, no as subscribeReplyRequests, Wa as subscribeSpeechEngine, vf as subscribeTurnTimelines, ol as summarisePageText, yf as summariseTurnTimelines, Eo as syncRotationClock, Fm as tabForArrowKey, hC as tabsOf, Ox as tamilNameForms, Wi as tapPlaybackElement, U as terminalCodeRecoverability, Od as themeCommandCopy, ho as thinkingPhrase, go as thinkingPhraseEntry, wc as toCaptionText, V_ as toHistoryEntries, Hl as toMessageAttachment, pc as toSpeakableText, H_ as toStorableHistoryText, Uo as toVoiceReply, qd as trackFirstText, D as transformAssistantUrl, eu as translateProductCopy, ub as transportForcedToPoll, Ul as truncateForInline, sl as truncatePagesForInline, U_ as truncateUtf8, Bd as turnActivityCopy, Vd as turnActivityStage, bf as turnClockMs, Zr as turnConfirmsNoAction, Qr as turnOutcomeCopy, xf as turnSegments, db as turnStreamAvailable, Sf as turnTimeline, $S as uiCatalogueSent, eC as uiCatalogueSessionKey, Wb as uiLanguageEnglishName, Gb as uiLanguageFromWords, Kb as uiLanguageWords, Vr as uiOfferAgeMs, Hr as uiOfferHintKind, Ur as uiOfferInTime, bi as unofferedModeSendRefusal, wu as unofferedModeSendRefusalAfterAccess, F as unsavedChangesBlocking, kd as unsavedChangesCopy, si as usagePendingStorageKey, ci as usageReportClock, li as usageSendRefusal, ib as useAssistantApiAccess, SC as useAssistantAttachments, Sm as useAssistantConnectSource, i as useAssistantControl, NC as useAssistantDockWidth, TC as useAssistantHeartbeat, jv as useAssistantHistorySearch, nv as useAssistantHistoryStatus, xv as useAssistantHistoryStore, v as useAssistantI18nNamespace, EC as useAssistantKeyboardShortcuts, AC as useAssistantLauncherLift, j as useAssistantNavigate, PC as useAssistantOverlayOrNull, a as useAssistantPageControls, f as useAssistantPageLabel, FC as useAssistantPanelInset, jp as useAssistantPreview, Kp as useAssistantPreviewBridge, p as useAssistantProduct, m as useAssistantProductOrNull, IC as useAssistantQuotaExhausted, dy as useAssistantServerHistory, wf as useAssistantSpeech, h as useAssistantStorageFolders, wn as useAssistantStore, y as useAssistantTr, td as useAttachmentCommitter, nd as useAttachmentFilesPort, rd as useAttachmentUrlResolver, ku as useAvatarCopy, YC as useAvatarPreferencesStore, Jy as useAvatarTabDraft, Qy as useAvatarTabExchange, Kv as useControlConfirmDialog, Hv as useConversationDeleteDialog, ab as useConversationTurns, Tm as useDropdownEscape, Xs as useHandsFreeInterrupt, fy as useHistoryRowControlsFor, Vm as useHostedAssistantPreviewBridge, Zv as useLeaveConfirmAsking, Bf as useLiveAvatarHandsFreeGuard, Vf as useLiveAvatarMiniIndicatorShown, Hf as useLiveAvatarOn, Uf as useLiveAvatarSpeechEngine, Wf as useLiveAvatarStage, Gf as useLiveAvatarTab, Kf as useLiveAvatarTabOffered, qf as useLiveAvatarTabSeam, Jf as useLiveAvatarVoiceView, ky as useLiveOverlay, Ay as useLiveOverlayContent, Rm as useOverlayFocus, rf as usePrefersReducedMotion, fi as useSandboxAssistantTransport, I as useUnsavedChanges, l as useVoiceInput, Yf as useVoiceSession, bC as useWorkspaceWriteAccess, Op as useWriteProposalConfirm, up as useWriteProposalRemainingMs, mm as useWriteProposals, dr as usesDedicatedAssistantProvisioning, W_ as utf8ByteLength, Wl as validateFile, ox as validateManifest, CS as verdictOf, Fa as voiceAvailability, Rc as voiceBindingAtStart, zc as voiceBindingConversationId, ji as voiceMarker, hc as voicePreviewText, cu as voiceProposalChip, lu as voiceProposalChipText, Ia as voiceQualityRank, uu as voiceReadbacksDue, rg as voiceSessionEscapeAction, Mi as voiceSessionIdOf, If as voiceSessionOwnsEscape, Ho as voiceSessionReducer, oo as voiceStageState, Vy as voiceStartBlocker, Hy as voiceStartBlockerLasts, bo as voiceStatusParts, xo as voiceStatusSuffix, nc as voiceTranscriptFilename, Ni as voiceTurnsOnly, du as voiceWaitingProposals, La as voicesForLocale, fr as waitForAssistantServiceReady, pr as waitForSandboxRunning, Hb as warmState, so as waveformIsActive, co as waveformIsSettled, Ei as withIncompleteTurnNotice, qS as withOfferedTargets, vn as withWriteModeAcknowledged, qp as writeActionResultEvents, mr as writeApprovalModeOf, hr as writeApprovalReuseMatches, $h as writeAssistantOverlayFlag, gr as writeExecutionOf, yn as writeModeConsentCopy, bn as writeModeSendRefusal, xn as writeModeSendRefusalReason, dp as writeProposalArgumentValues, om as writeProposalBelongsTo, fp as writeProposalConfirmState, pp as writeProposalCountdownText, nu as writeProposalErrorLine, mp as writeProposalGatewayText, hp as writeProposalKindText, gp as writeProposalRemainingMs, _p as writeProposalRootFieldName, vp as writeProposalSensitiveTexts, sm as writeProposalSessionsToReopen, wp as writeProposalUsesDialog, yp as writeProposalVariableValues, fu as writeProposalVoiceLine, pu as writeProposalVoiceReadback, cm as writeProposalsEnabledFor, pm as writeReplyLiveState };
315
+ export { pb as ABANDONED_TURN_OUTCOME, bu as ADMIN_MODE_ACCESS_WAIT_MS, kC as AIAssistantPanel, Tx as ARABIC_COMMANDS, pS as ASSENT_MAX_TOKENS, mS as ASSENT_MAX_ZH_CHARS, eb as ASSISTANT_ADMIN_ACTION, tb as ASSISTANT_ADMIN_RESOURCE_TYPE, xe as ASSISTANT_API_AUTH_STRATEGY, xh as ASSISTANT_BOTTOM_CHROME_CLEARANCE, Sh as ASSISTANT_DIALOG_SELECTOR, Ch as ASSISTANT_DOCKED_DESKTOP_CLASS, wh as ASSISTANT_DOCK_WIDTH_PX, Th as ASSISTANT_DOCK_WIDTH_VAR, Eh as ASSISTANT_FLOATING_DESKTOP_CLASS, Dh as ASSISTANT_FLOATING_RIGHT_PX, Oh as ASSISTANT_FLOATING_WIDTH_PX, pg as ASSISTANT_HISTORY_BACKOFF_BASE_MS, mg as ASSISTANT_HISTORY_BACKOFF_MAX_MS, Sg as ASSISTANT_HISTORY_CHANGES_OPERATION, Cg as ASSISTANT_HISTORY_CHANGES_QUERY, wg as ASSISTANT_HISTORY_CHANGES_QUERY_BASE, a_ as ASSISTANT_HISTORY_CONTROLS_RECHECK_MS, Tg as ASSISTANT_HISTORY_CONVERSATIONS_OPERATION, Eg as ASSISTANT_HISTORY_CONVERSATIONS_QUERY, Dg as ASSISTANT_HISTORY_CONVERSATIONS_QUERY_BASE, Og as ASSISTANT_HISTORY_DELETE_MUTATION, kg as ASSISTANT_HISTORY_DELETE_MUTATION_BASE, Ag as ASSISTANT_HISTORY_DELETE_OPERATION, iv as ASSISTANT_HISTORY_DONE_TTL_MS, jg as ASSISTANT_HISTORY_ENTRIES_OPERATION, Mg as ASSISTANT_HISTORY_ENTRIES_QUERY, Ng as ASSISTANT_HISTORY_ENTRIES_QUERY_BASE, o_ as ASSISTANT_HISTORY_MASKED_DRIFT_STREAK, p_ as ASSISTANT_HISTORY_MAX_CACHED_CONVERSATIONS, av as ASSISTANT_HISTORY_MAX_HEADERS, ov as ASSISTANT_HISTORY_MAX_TOMBSTONES, Pg as ASSISTANT_HISTORY_OPERATIONS, hg as ASSISTANT_HISTORY_QUOTA_RETRY_MS, gg as ASSISTANT_HISTORY_REJECTION_KEYS, Sv as ASSISTANT_HISTORY_RESET_TRUST_MS, Fg as ASSISTANT_HISTORY_SAVE_MUTATION, Ig as ASSISTANT_HISTORY_SAVE_MUTATION_BASE, Lg as ASSISTANT_HISTORY_SAVE_OPERATION, _g as ASSISTANT_HISTORY_SCHEMA_PAUSE_MS, Yg as ASSISTANT_HISTORY_SEARCH_DEBOUNCE_MS, Xg as ASSISTANT_HISTORY_SEARCH_MAX_CODE_POINTS, Ev as ASSISTANT_HISTORY_SEARCH_MAX_RETRY_MS, Zg as ASSISTANT_HISTORY_SEARCH_MIN_CODE_POINTS, Rg as ASSISTANT_HISTORY_SEARCH_OPERATION, Qg as ASSISTANT_HISTORY_SEARCH_PAGE_SIZE, zg as ASSISTANT_HISTORY_SEARCH_QUERY, sv as ASSISTANT_HISTORY_STORAGE_NAME, cv as ASSISTANT_HISTORY_TOMBSTONE_TTL_MS, Bg as ASSISTANT_HISTORY_UPDATE_MUTATION, Vg as ASSISTANT_HISTORY_UPDATE_OPERATION, mu as ASSISTANT_I18N_COMPUTED_COPY, hu as ASSISTANT_I18N_LITERAL_COPY, gu as ASSISTANT_I18N_MANIFEST, _u as ASSISTANT_I18N_SEED_COMPAT_COPY, Tc as ASSISTANT_LANGUAGES, kh as ASSISTANT_LAUNCHER_LIFT_VAR, o as ASSISTANT_LLM_TERMINAL_CODES, de as ASSISTANT_MODE_FALLBACK_LABELS, fe as ASSISTANT_MODE_IDS, Km as ASSISTANT_MODE_META, Tf as ASSISTANT_OVERLAY_ATTR, Ah as ASSISTANT_OVERLAY_DEFAULT_TOP_PX, jh as ASSISTANT_OVERLAY_DESKTOP_QUERY, Mh as ASSISTANT_OVERLAY_TOP_VAR, Ef as ASSISTANT_PANEL_ATTR, Nh as ASSISTANT_PANEL_INSET_VAR, Ph as ASSISTANT_SHEET_BASE_CLASS, Fh as ASSISTANT_SHEET_BOTTOM_VAR, Ih as ASSISTANT_SHEET_COMPACT_CLASS, Lh as ASSISTANT_SHEET_EXPANDED_CLASS, Rh as ASSISTANT_TOGGLE_SHORTCUT_LABEL, Df as ASSISTANT_VOICE_SESSION_ATTR, cl as ATTACHMENT_ACCEPT, Bu as ATTACHMENT_COMMIT_CODES, Vu as ATTACHMENT_COMMIT_POLICY, Hu as ATTACHMENT_DIRECT_UPLOAD_MAX_BYTES, Gl as ATTACHMENT_SOURCES, Uu as ATTACHMENT_URL_MAX_AGE_MS, zs as AUDIO_TRACK_MIN_CHROME, Re as AUTO_CARRY_OVER_MAX_CHARS, ze as AUTO_CARRY_OVER_MAX_CHARS_PER_MESSAGE, Be as AUTO_CARRY_OVER_MAX_MESSAGES, qm as AUTO_MODE_OPTION_ID, Ve as AUTO_READ_MODE, $m as AUTO_VOICE, He as AUTO_WRITE_MODE, Qw as AVATAR_API_PATH, XC as AVATAR_AUDIO_STREAM_TOPIC, ZC as AVATAR_CLEAR_BUFFER_TIMEOUT_MS, QC as AVATAR_PCM_BYTES_PER_SECOND, $C as AVATAR_PCM_CHANNELS, ew as AVATAR_PCM_SAMPLE_RATE, BC as AVATAR_PREFERENCES_STORAGE_NAME, tw as AVATAR_RPC_CLEAR_BUFFER, nw as AVATAR_RPC_PLAYBACK_FINISHED, rw as AVATAR_RPC_PLAYBACK_STARTED, kw as AVATAR_SAMPLE_RATE, Of as AVATAR_TAB_OVERLAY, Mu as AWAITING_FIRST_CHUNK, DC as AssistantApiCallsConsentDialog, Em as AssistantAttachmentButton, Dm as AssistantAttachmentChips, ip as AssistantAutoSpeakToggle, af as AssistantAvatar, $y as AssistantAvatarTab, By as AssistantAvatarTabs, OC as AssistantChatArea, CC as AssistantComposer, Cm as AssistantConnectSourceItem, ym as AssistantConnectSourceProvider, Uv as AssistantControlConfirmDialog, Gv as AssistantControlConfirmProvider, Vv as AssistantConversationDeleteDialogProvider, Mv as AssistantConversationFilters, Pv as AssistantConversationList, Iv as AssistantDeleteConversationDialog, Fv as AssistantEmptyState, Lm as AssistantEntityPreview, nh as AssistantHandsFreeInterruptToggle, sg as AssistantHeader, ph as AssistantHistoryArchivedNotice, cg as AssistantHistoryControlsUnavailableError, mh as AssistantHistoryDeletedNotice, hh as AssistantHistoryLoadState, gh as AssistantHistoryPinLimitBanner, _h as AssistantHistoryReadOnlyBanner, lg as AssistantHistoryResponseError, ug as AssistantHistoryScopeInactiveError, Nv as AssistantHistorySearchBox, dg as AssistantHistorySearchQueryError, fg as AssistantHistorySearchUnavailableError, vh as AssistantHistoryShowEarlier, yh as AssistantHistoryUnsavedDeleteNotice, O as AssistantI18nProvider, hm as AssistantLanguageMenu, Wm as AssistantLanguageSelector, Xv as AssistantLeaveConfirmNavigateProvider, N as AssistantMarkdownImage, B as AssistantMarkdownRenderer, ap as AssistantMessageAttachments, hy as AssistantMessageItem, jy as AssistantMessageList, Jm as AssistantModeSelector, og as AssistantMoreMenu, V as AssistantNavigateProvider, Lv as AssistantNothingToDeleteNotice, jC as AssistantOverlay, MC as AssistantOverlayProvider, op as AssistantPendingWriteCard, Hm as AssistantPreviewBridgeHost, Um as AssistantPreviewOverlay, Ap as AssistantPreviewProvider, S as AssistantProductProvider, gm as AssistantReplyLanguageSelector, _r as AssistantRuntimeManager, Jr as AssistantSendRefusal, _m as AssistantSpeakButton, Cf as AssistantSpeechProvider, vm as AssistantSpokenTurnsNotice, Im as AssistantStepRail, Jd as AssistantToolActivity, py as AssistantTurnActivity, Ny as AssistantUiOfferLink, Py as AssistantUiOfferLinks, Zm as AssistantVoiceButton, th as AssistantVoiceGraceSelector, rh as AssistantVoiceOrb, eh as AssistantVoiceSelector, zy as AssistantVoiceSession, ih as AssistantVoiceSessionButton, LC as AssistantWorkflowClient, Tp as AssistantWriteConfirmDialog, bp as AssistantWriteProposalCard, kp as AssistantWriteProposalSlot, ed as AttachmentFilesPortContext, ll as AttachmentRejectedError, Sw as AudioDecodeAbortedError, Cw as AudioDecodeError, $w as AvatarApiError, vT as AvatarFace, vw as AvatarLevelDetector, uw as AvatarNotReadyError, Ww as AvatarOutputFailure, Gw as AvatarOutputLeft, Kw as AvatarOutputRefusal, sw as AvatarRpcRejectedError, dw as AvatarSegmentBusyError, fw as AvatarSegmentEndedError, Yy as AvatarTabAskBox, Xy as AvatarTabLastExchange, pw as AvatarTransportClosedError, Rx as BACK_GRAMMAR, kS as BACK_STACK_CAPACITY, Hc as BOILERPLATE_PAGE_SHARE, Wo as BRANCH_DELAY_S, pi as BUILT_IN_MODE_CAPABILITIES, ah as CAPTION_SCROLL_ATTR, Ts as CAPTURE_CONSTRAINTS, vs as CAPTURE_FRAME_MS, ys as CAPTURE_FRAME_SAMPLES, bs as CAPTURE_PROCESSOR_NAME, xs as CAPTURE_SAMPLE_RATE, Ss as CAPTURE_WORKLET_SOURCE, Q as CHECK_AI_CREDITS, jx as CHINESE_COMMANDS, os as CLOSE_CODE_ERRORS, Xb as COMMAND_FAMILIES, Zb as COMMAND_LOCALES, Qb as COMMAND_MANIFEST, Wv as CONTROL_CONFIRM_ARM_MS, xx as CONTROL_KEYS, $ as CREATE_SANDBOX, zw as DEFAULT_AVATAR_DECODE_MAX_BYTES, Bw as DEFAULT_AVATAR_DECODE_STRATEGY, yw as DEFAULT_AVATAR_LEVEL_CONFIG, hw as DEFAULT_AVATAR_TRACKER_CONFIG, VC as DEFAULT_AVATAR_VOICE_MODE, Cs as DEFAULT_ECHO_GATE_PARAMS, Et as DEFAULT_HISTORY_LIST_FILTER, ul as DEFAULT_INLINE_LIMITS, As as DEFAULT_PREROLL_MS, ob as DEFAULT_REMINT_DELAYS_MS, rc as DEFAULT_SPEAKABLE_LABELS, Ec as DEFAULT_SPEECH_RATE, xi as DEFAULT_STREAM_BUDGET_MS, Fs as DEFAULT_VAD_PARAMS, lt as DEFAULT_VOICE_GRACE_MS, Rv as DELETE_CONFIRM_ARM_MS, gS as EMPTY_CONTROL_SNAPSHOT, Do as ENDPOINT_GRACE_MS, Px as ENGLISH_COMMAND_ADDITIONS, Wx as ENTITY_TARGET_PREFIX, vS as EVAL_FAMILIES, ee as EXTEND_MY_ASSISTANT_SANDBOX_TTL, te as EXTEND_SANDBOX_TTL, ws as EchoGate, Qv as FOCUS_AFTER_KEEP_INTERVAL_MS, $v as FOCUS_AFTER_KEEP_MAX_MS, Gm as FOLLOW_APP_LOCALE, cw as FakeAvatarScheduler, ne as GET_ACTIVE_SANDBOXES, re as GET_SANDBOX, Ly as HANDS_FREE_NOTICE_ATTR, bt as HANDS_FREE_OVERRIDE_KEY, qo as HANDS_FREE_STREAM_NOTICE_VERSION, xt as HANDS_FREE_TRANSPORT_OVERRIDE_KEY, Ys as HIDDEN_RELEASE_MS, kx as HINDI_COMMANDS, G_ as HISTORY_CATCH_UP_MAX_GAP, K_ as HISTORY_CATCH_UP_PAGE, D_ as HISTORY_CLIENT_ID_PATTERN, O_ as HISTORY_ENTRY_CONTENT_CAP_BYTES, q_ as HISTORY_LOAD_PAGE, k_ as HISTORY_MAX_CONTENT_BYTES, A_ as HISTORY_METADATA_ENVELOPE_MAX_BYTES, j_ as HISTORY_METADATA_KEYS, M_ as HISTORY_REQUEST_HEADROOM_BYTES, ny as HISTORY_RESUME_CLOSE, ry as HISTORY_RESUME_MAX_ANSWER_CHARS, iy as HISTORY_RESUME_MAX_CHARS, ay as HISTORY_RESUME_MAX_EXCHANGES, oy as HISTORY_RESUME_MAX_PROMPT_CHARS, sy as HISTORY_RESUME_OPEN, N_ as HISTORY_SAVE_REQUEST_BUDGET_BYTES, Dt as HISTORY_TITLE_MAX_CODE_POINTS, P_ as HISTORY_TRUNCATION_MARKER, $i as HOSTED_DISABLE_MS, ha as HOSTED_OUTPUT_MIN_AUDIO_BYTES_PER_SECOND, ga as HOSTED_OUTPUT_STALL_AUDIO_RATIO, _a as HOSTED_OUTPUT_STALL_BASE_MS, Ki as HOSTED_SPEAKERS, ea as HOSTED_TTS_MAX_CHARS, qi as HOSTED_TTS_TIER, Ji as HOSTED_VOICES, wa as HOSTED_VOICE_RANK, Ry as HandsFreePrivacyNotice, zm as HostedPreviewBridgeContext, km as IDLE_ACTIVE_TAB, Nu as IDLE_PLAYBACK, Ip as IDLE_PREVIEW, Mp as IDLE_PREVIEW_STATE, So as IDLE_ROTATION_CLOCK, Si as INCOMPLETE_TURN_NOTICES, Oo as INITIAL_SESSION, jc as INITIAL_TRANSCRIPT_AUTO_OPEN, dl as INLINE_IMAGE_MAX_DIM, fl as INLINE_IMAGE_QUALITY, ko as INTERRUPT_MAX_MS, Ao as INTERRUPT_MIN_MS, ww as InvalidAudioError, ss as KEEP_ALIVE_MS, Md as LANGUAGE_REPLY_DEADLINE_MS, Nd as LANGUAGE_REPLY_GRACE_MS, c_ as LEGACY_HISTORY_KEY_PREFIX, mn as LEGACY_WRITE_CONSENT_KEY, iS as LINKED_CHOICE_MAX, zS as LINK_TEXT_MAX, aT as LIVE_AVATAR_CONNECT_TIMEOUT_MS, oT as LIVE_AVATAR_END_BEFORE_DEADLINE_MS, sT as LIVE_AVATAR_IDLE_MS, cT as LIVE_AVATAR_REQUEST_TIMEOUT_MS, lT as LIVE_AVATAR_TAB_OFF_GUARD_MS, _y as LIVE_MESSAGE_LIMIT, vy as LIVE_PART_LIMIT, Dy as LIVE_RENDER_THROTTLE_MS, My as LIVE_SCROLL_GAP_MS, yy as LIVE_TEXT_LIMIT, Mx as LOCALE_TABLES, Qm as ListeningDot, Lf as LiveAvatarMiniIndicator, Rf as LiveAvatarSeamProvider, mT as LiveAvatarStageView, zf as LiveAvatarTabContext, CT as LiveAvatarTabView, mw as LiveKitAvatarTransport, $b as MANIFEST_FAMILIES, mi as MAX_ASSISTANT_STREAM_BUDGET_MS, pl as MAX_ATTACHMENTS, Uc as MAX_BOILERPLATE_LINE_CHARS, ml as MAX_CONFIGURABLE_INLINE_CHARS, Jl as MAX_COPY_SLUG_LENGTH, Wc as MAX_EXTRACTED_CHARS, hl as MAX_FILE_BYTES, gl as MAX_INLINE_CHARS_PER_FILE, _l as MAX_INLINE_CHARS_TOTAL, Tn as MAX_INLINE_IMAGE_BASE64_BYTES, vl as MAX_INLINE_IMAGE_BASE64_CHARS, yl as MAX_INLINE_IMAGE_PARTS, bl as MAX_INLINE_TURN_BODY_BYTES, Gc as MAX_PDF_PAGES_SCANNED, Ot as MAX_PINNED, js as MAX_PREROLL_MS, mb as MAX_REPORTED_TURN_MS, En as MAX_REQUEST_BODY_BYTES, cs as MAX_SEND_BYTES, ic as MAX_SPEAKABLE_CHARS, ac as MAX_SPOKEN_TABLE_ROWS, xl as MAX_TURN_BODY_BYTES, qw as MAY_HAVE_BEGUN_MARGIN_MS, gc as MINI_CAPTION_BUDGET, Kc as MIN_PAGE_TEXT_CHARS, Ms as MIN_PREROLL_MS, ls as MIN_STABLE_MS, qc as MIN_TEXT_PAGE_SHARE, sb as MIN_WAKE_GAP_MS, Es as MicCaptureError, NS as NAVIGATE_RECORD_BUDGET_BYTES, wS as NAVIGATION_CEILING_MS, TS as NAVIGATION_POLL_MS, ES as NAVIGATION_QUIET_MS, nC as NAV_INTENT_OBJECT_MAX_WORDS, jo as NOTHING_HEARD, ps as NOTHING_HEARD_MS, Hd as NO_FIRST_TEXT, Lp as NO_OWNER, kf as NO_PANEL_OVERLAY, Aw as PCM16_BYTES_PER_SAMPLE, Qt as PENDING_WRITE_APPROVAL_WINDOW_MS, ms as PHANTOM_BARGE_INS_BEFORE_FALLBACK, lo as PHRASE_ROTATE_MS, vc as POLL_FAST_MS, yc as POLL_FAST_UNTIL_MS, bc as POLL_SLOW_MS, xc as POLL_STEADY_MS, Sc as POLL_STEADY_UNTIL_MS, Eb as PREOPEN_MAX_AGE_MS, Db as PREOPEN_MAX_ENTRIES, mc as PREVIEW_LANGUAGES, Ob as PREWARM_COOLDOWN_MS, he as PRODUCT_ASSISTANT_MODE_ID_MAX_LENGTH, ge as PRODUCT_ASSISTANT_MODE_ID_PATTERN, On as PROMPT_CONVERSATION_ID_PATTERN, Sl as PROMPT_ENVELOPE_RESERVE_BYTES, yC as PROPOSAL_WRITE_RULES, Cl as PROVIDER_READABLE_FILE_MEDIA_TYPES, Wr as PROVISIONING_NOT_PERMITTED_I18N_KEY, ie as PROVISION_ASSISTANT_SANDBOX, ae as PROXY_SANDBOX_REQUEST, Tw as PcmFormatError, Ns as PreRollRing, kb as QuarantineSet, ex as RECALL_FLOOR, us as RECONNECT_CLOSE_CODES, Yx as RECORD_CHOICE_MAX, Xx as RECORD_LOOKUP_TIMEOUT_MS, Zx as RECORD_MATCHES_MAX, $d as REDUCED_MOTION_ATTRIBUTE, ef as REDUCED_MOTION_QUERY, VS as REFUSED_OFFER_LOOK_THROUGH_MAX, Jw as RELEASE_MARGIN_MS, oe as REPORT_AI_TOKEN_USAGE, se as REPORT_MY_ASSISTANT_TURN_TIMINGS, Dn as REQUEST_TOO_LARGE_REFUSAL, gw as ReplyPlaybackTracker, $f as SANDBOX_READY_TTL_MS, va as SILENT_WAV_DATA_URI, Ex as SPANISH_COMMANDS, ta as SPEAKING_RATE_MAX, na as SPEAKING_RATE_MAX_STREAMING, ra as SPEAKING_RATE_MAX_SYNC, ia as SPEAKING_RATE_MIN, oc as SPEECH_CHUNK_CHARS, sc as SPEECH_CHUNK_CJK_CHARS, cc as SPEECH_FIRST_CHUNK_MAX_CHARS, Ta as SPEECH_LANG, Pi as SPEECH_OUTPUT_LEFT, Fi as SPEECH_OUTPUT_REFUSE_AUDIBLE, Eu as SPOKEN_LABEL_LANGUAGES, uo as STAGE_COPY, v as START_RETRY_COOLDOWN_MS, ce as STOP_ASSISTANT_SANDBOX, le as STOP_MY_ASSISTANT_SANDBOX, Ci as STREAM_BUDGET_MS, Oe as STREAM_MINT_BACKOFF_ERROR_MS, ke as STREAM_MINT_BACKOFF_UNAVAILABLE_MS, Is as STRICT_ONSET_FRAMES, Sx as STRONG_CONFIRMATION_KEYS, Jo as STT_BEARER_PREFIX, Yo as STT_STREAM_PATH, Xo as STT_SUBPROTOCOL, s as SandboxProxyError, gy as StreamingCaret, hn as TAKE_ACTION_ENGLISH, Ax as TAMIL_COMMANDS, fo as THINKING_PHRASES, Go as TRAILING_RESULT_MS, ut as TRAILING_RESULT_WINDOW_MS, cb as TRANSPORT_OVERRIDE_KEY, wl as TURN_BODY_HEADROOM_BYTES, of as TURN_MILESTONES, pn as TURN_OUTCOME_COPY, sf as TURN_SEGMENTS, cf as TURN_TIMELINE_EVENT, bb as TURN_TIMING_REPORTING, hb as TURN_TIMING_REPORT_FIELDS, gb as TURN_TIMING_STAGES, Ew as TruncatedAudioError, my as TurnActivityLine, JS as UI_CATALOGUE_MAX_BYTES, YS as UI_CATALOGUE_MAX_ENTRIES, Cx as UI_LANGUAGE_CODES, Or as UI_OFFER_CATALOGUE_ID_PATTERN, kr as UI_OFFER_CONVERSATION_ID_PATTERN, Ar as UI_OFFER_ID_PATTERN, jr as UI_OFFER_LIFETIME_MS, Fy as UI_OFFER_LINK_CLASS, Mr as UI_OFFER_MAX_PER_READ, Nr as UI_OFFER_MESSAGE_ID_PATTERN, Pr as UI_OFFER_SESSION_MAX, hi as UNAVAILABLE_MODE_REFUSAL, gi as UNDECLARED_MODE_CAPABILITIES, Yw as UNMEASURED_START_LATENCY_MS, W as UNSAVED_CHANGE_LABEL_MAX, $r as USAGE_REPORT_FAILED_EVENT, ei as USAGE_REPORT_RETRY_DELAYS_MS, Fr as UiOfferSession, Yu as VOICE_COMMIT_BUDGET_MS, eg as VOICE_ESCAPE_LAYER_SELECTOR, tg as VOICE_ESCAPE_MODAL_SELECTOR, dt as VOICE_GRACE_CHOICES_MS, Ea as VOICE_LIST_TIMEOUT_MS, _o as VOICE_MUTED_LABEL, ru as VOICE_PROPOSAL_MODE, vo as VOICE_THINKING_LABEL, oh as VoiceCaption, sh as VoiceConversationView, dh as VoiceMiniController, fh as VoiceStage, lh as VoiceStatusLine, uh as VoiceStatusText, bh as VoiceTranscriptDrawer, ch as VoiceWaveform, ue as WAIT_FOR_SANDBOX_RUNNING, nb as WORKSPACE_ASSISTANT_ADMIN_QUERY, Ep as WRITE_CONFIRM_ARM_MS, xp as WRITE_PROPOSAL_DIALOG_KINDS, Jp as WRITE_PROPOSAL_ERROR_CODES, tu as WRITE_PROPOSAL_ERROR_COPY, sp as WRITE_PROPOSAL_MASK, em as WRITE_PROPOSAL_MAX_POLL_FAILURES, tm as WRITE_PROPOSAL_POLL_MS, Sp as WRITE_PROPOSAL_PRESENTED_AFTER_MS, iu as WRITE_PROPOSAL_READBACK_HIDDEN, Yp as WRITE_PROPOSAL_SANDBOX_MODE, au as WRITE_PROPOSAL_VOICE_COPY, Qe as WRITE_REPLY_COPY, lm as WRITE_REPLY_DECLINE_WAIT_MS, $e as WRITE_REPLY_LEXICON, et as WRITE_REPLY_OFFER_EXPIRED, Ab as WarmCancelled, zC as WorkflowAssistantPanel, Xp as WriteProposalError, kn as abortAssistantTurn, zh as aboveAssistantBottomChrome, Zo as accessTokenFrom, Nx as activeCommandLocales, Af as activePanelOverlay, Li as activePlaybackSource, yS as actualOf, _i as adminOnlyModeSendRefusal, xu as adminOnlyModeSendRefusalAfterAccess, Mo as advanceHeardClock, Co as advanceRotationClock, gC as aiCreditsUpdatedEventName, tx as allOnManifest, tt as analyseWriteReply, Ad as appControlCopy, J_ as applyHistoryPage, by as applyLiveDeltas, Rp as applyPreviewEvent, $t as approvalFollowUpReplyIds, An as approvePendingWrite, en as approvedPendingWriteIds, nm as asWriteProposalError, Dp as askProductToConfirmWrite, jn as askReuseMatchesProvisioning, Ir as asksOneQuestionLast, AS as assistantBackStack, Yl as assistantCopySlug, Cv as assistantHistory, vg as assistantHistoryBackoffMs, $_ as assistantHistoryGenerationOf, zv as assistantHistoryIsOn, l_ as assistantHistoryScopeKey, lv as assistantHistoryStore, vu as assistantI18nSeedCopy, Bh as assistantLauncherBottom, c as assistantLlmTerminalCodeOf, Xl as assistantModeDescriptionKey, pe as assistantModeFallbackLabel, yu as assistantModeI18nCopy, Ym as assistantModeMeta, Vh as assistantOverlayClassName, Hh as assistantOverlayEscapeAction, Uh as assistantOverlayKeys, Zl as assistantPageLabelKey, jf as assistantPanelOwnsEscape, Ql as assistantProductCopyEntries, Wh as assistantQuotaKindOf, I as assistantRoutePath, $l as assistantSuggestionKey, k as assistantTranslationKey, L as assistantUrlTransform, ti as assistantUsageLedger, Ri as attachPlaybackReference, Wu as attachmentUrlIsStale, Ue as autoCarryOverFor, We as autoSuggestions, Kl as availableAttachmentSources, eT as avatarApiBaseFromTtsEndpoint, Uy as avatarAskBlocker, Wy as avatarAskBlockerLasts, Gy as avatarAskWrites, tT as avatarAvailabilityRefusal, nT as avatarIdempotencyKey, iw as avatarPcmDurationSec, HC as avatarPreferencesToPersist, wT as avatarPreviewVoice, rT as avatarRefusalFor, aw as avatarSegmentAttributes, yT as avatarSpeakerFor, Ky as avatarTabAskLine, Zy as avatarTabExchangeState, TT as avatarVoiceDisplayName, dd as backDoneCopy, Ae as backOffStreamMint, aa as base64ToBytes, tn as beginApprovalInFlight, xy as beginLiveGeneration, lf as beginTurn, uv as boundAssistantHistoryHeaders, Vw as browserAvatarAudioEnv, H as browserShouldHandle, Gi as browserSpeechEngine, _b as buildAbandonedTurnReport, Ud as buildAssistantProgress, Mn as buildAssistantSandboxEnv, Tl as buildAttachmentPromptBlock, Ge as buildAutoCarryOver, Tu as buildBoundedAttachmentTurn, ec as buildContinuedFromVoiceNote, Hg as buildHistoryDeleteVariables, Ug as buildHistoryEntriesVariables, Wg as buildHistoryListVariables, Gg as buildHistoryPageVariables, cy as buildHistoryResumePreamble, Kg as buildHistorySaveVariables, qg as buildHistorySearchVariables, Jg as buildHistoryUpdateVariables, PS as buildNavigateAction, HS as buildNavigationContext, mx as buildPrep, vr as buildProgress, Nn as buildPromptGatewayRequest, El as buildPromptParts, Pn as buildPromptRequestBody, Dl as buildPromptWithAttachments, Fn as buildProvisionAssistantSandboxInput, oa as buildRequest, Y as buildSandboxContextInput, vb as buildTurnTimingReport, XS as buildUiCatalogue, tc as buildVoiceTranscriptMarkdown, _e as builtInModeExtendedBy, jw as bytesToInt16LE, Ub as canonical, Pu as captionChunks, sx as carriesSymbolOrEmoticon, Di as chatTurns, In as checkAssistantAiCredits, fd as chooseDestinationCopy, pd as chooseLinkedCopy, Us as chooseTransport, lc as chunkForSpeech, ds as chunkFrames, Mw as chunkPcm16, jb as claimPreopenedSession, $g as clampHistorySearchText, Ps as clampPreRollMs, kt as clampToCodePoints, yg as classifyAssistantHistoryError, R as classifyAssistantHref, Ke as classifyAssistantIntent, Ol as classifyAttachment, sa as classifyHttpFailure, p as classifyQuotaError, Yr as classifyTurnFailure, ni as classifyUsageReportFailure, nt as classifyWriteReply, e as clearAssistantControls, US as clearPresentedLists, qa as clearReplyRequests, je as clearStreamMintBackoff, ux as closedSlot, Gh as closestAround, At as coalesceUpdatePatch, jt as codePointLength, Mt as collapseHistoryText, hx as collapseRepeat, Jc as columnLetterToIndex, Gu as commitAttachments, dx as compileFrame, Fx as compileNative, u_ as completeAssistantHistoryScope, yo as composeVoiceStatus, Qo as configureHandsFreeStreaming, za as configureSpeechEngine, jd as confirmDialogCopy, wm as connectSourceActivation, bm as connectSourceHrefRenders, Mb as consumeWarm, uc as containsCjk, m_ as conversationHasHistory, M as copyToClipboard, kl as countInlineImageCandidates, Al as countInlinedImageParts, Xd as countSpokenTurns, Su as createAdminModeAccessGate, wv as createAssistantHistoryEngine, ev as createAssistantHistoryStatusStore, dv as createAssistantHistoryStore, Kh as createAssistantNavigate, zp as createAssistantPreviewSurface, Ln as createAssistantSandbox, Rn as createAssistantSession, Ku as createAttachmentCommitter, Ko as createAudioTrackTransport, UC as createAvatarPreferencesStore, Xw as createAvatarReplyOutputs, iT as createAvatarSessionClient, qy as createAvatarTabDraft, Uw as createAvatarTransportPort, jS as createBackStack, fs as createBackendStreamTransport, hs as createEpochGuard, s_ as createGatewayHistoryTransport, Ze as createGuardedAssistantStorage, Rs as createHandsFreeController, Dv as createHistorySearchController, e_ as createHistorySearchMatcher, ya as createHostedTtsEngine, Yv as createLeaveConfirmNavigate, uT as createLiveAvatarController, ET as createLiveAvatarSeam, Oy as createLiveRender, Sy as createLiveState, pa as createPieceSink, rv as createProfileBoundStorage, ep as createReadinessTracker, Ra as createRoutingSpeechEngine, Up as createRunIdentityCache, Ws as createRuntimeTransport, ui as createSandboxAssistantTransport, Zp as createSandboxWriteProposalClient, fb as createSnapshotPoller, Ba as createSpeechEngines, Tv as createSystemHistoryClock, xb as createTurnTimingNonce, Sb as createTurnTimingReporter, Ls as createVad, Hs as createWebSpeechTransport, rm as createWriteProposalDiscovery, Bp as currentPreviewOwner, sC as decideActOnResolve, rt as decideWriteReply, ve as declareAssistantMode, ca as decodeAudioResponse, Hw as decodeMp3ToPcm16k, Yc as decodeXmlEntities, Bv as deleteAssistantConversation, Gp as deliverPreviewEvent, bS as describeCommand, Gr as describePermissionError, m as describeQuotaError, uf as describeTurn, Bs as desktopChromeMajor, FS as destinationForPath, zi as detachPlaybackReference, jl as detectDocumentFormat, Au as detectScriptLocale, df as detectTurnDevice, ql as deviceHasCamera, la as disableDurationMs, _C as dispatchAssistantQuotaExhausted, Xc as docxXmlToText, zn as downloadAssistantArtifact, ig as downloadFile, Nw as downmixToMono, qu as drainPendingDiscards, Nb as dropPreopenedFor, nx as effectiveManifest, Ld as elapsedSince, fv as emptyAssistantHistoryPersisted, pv as emptyAssistantHistoryScopeState, nn as endApprovalInFlight, md as entityNounText, uC as enumFilter, qe as escalationToUndo, ng as escapeBelongsToLayerAbove, Mf as escapeDismisses, Ml as estimateTurnBodyBytes, xS as evaluateCommandItem, X as executeAssistantGraphQLOnce, Z as executeSandboxGraphQL, fx as expandTemplate, ag as exportConversation, Bn as extendAssistantSandboxTTL, h as extensionObjectsIn, xC as extractDocumentText, BS as extractInAppLinks, hT as faceInitials, Hx as fillEntityRoute, F_ as filterHistoryMetadata, dC as filtersOf, Dc as findAssistantLanguage, vi as findAssistantModeConfig, Vn as findExistingSandbox, Hn as findExistingSandboxWithStatus, Bc as findPendingWrite, I_ as fitHistoryMetadataEnvelope, Zc as fitPdfPages, Pw as floatToInt16, Fw as floatToPcm16Bytes, Nf as focusIsInsidePanel, t_ as foldHistorySearchText, rC as foldNavIntentPlural, cx as foldText, lx as foldWords, gx as foldedList, rn as forgetLiveTurns, ZS as forgetSentUiCatalogues, Ou as formatAvatarRetryTime, Nl as formatBytes, Xr as formatDailyLimitResetTime, Qc as formatPageRanges, cp as formatWriteProposalValue, Un as forwardsUserTokensToSandbox, Cy as freezeLiveParts, L_ as fromHistoryEntry, Zu as getActorId, an as getApprovalInFlight, Wn as getAssistantArtifacts, t as getAssistantControl, Id as getAssistantDisplayContent, yr as getAssistantMedia, Gn as getAssistantMessages, Kn as getAssistantSession, qn as getAssistantStreamAccess, br as getAssistantText, Pl as getAttachmentSendBlocker, Me as getCapability, Fl as getExtension, Ht as getHistoryStamp, Se as getImageForMode, Ce as getImageTagForMode, Qu as getOrganizationId, xr as getRawMessageCreatedAt, we as getResourcesForMode, Te as getSandboxImageRegistry, Il as getSendableAttachments, Va as getSpeechEngine, Sr as getToolProgress, ri as getUsageBlock, $u as getWorkspaceId, on as goAheadSentReplyIds, Oi as groupBySession, ki as groupConsecutiveBySession, n as hasAssistantControl, Om as hasAssistantPreviewSurface, Ll as hasAttachmentWorkInFlight, xm as hasConnectSource, ot as hasContentBeyondAffirmation, wy as hasLiveText, Ja as hasPendingReplyRequests, ii as hasPendingUsageReports, mv as headerHasControls, Y_ as highestContiguousHistorySeq, Dx as hindiNameForms, h_ as historyConvKeyOf, R_ as historyEntriesMatchKind, Nt as historyFilterEmptyKind, Pt as historyFilterKey, g_ as historyHeaderOf, __ as historyListRowOf, Ut as historyOpenFilter, v_ as historyRowAcceptsControls, y_ as historyScopeKeyOfStamp, Ov as historySearchBusyDelay, i_ as historyTimestampToIso, bT as hostedAvatarVoice, Yi as hostedLocaleFor, ba as hostedOutputStallMs, Xi as hostedSupportsLanguage, Zi as hostedVoiceName, P as imageHostLabel, wi as incompleteTurnNotice, Dw as inspectMp3, Iw as int16ToBytesLE, aS as isAlreadyThere, bg as isAssistantHistoryControlsDrift, l as isAssistantLlmTerminalCode, ye as isAssistantModeId, Jn as isAssistantProvisioningUnavailable, qh as isAssistantToggleShortcut, Je as isAutoRoutingOffered, gT as isAvatarImageUrl, _w as isAvatarReportOverdue, Fu as isAwaitingFirstChunk, Mc as isAwaitingOwnConversation, zx as isBackRequest, MS as isBackRunnable, st as isBareAffirmation, Np as isBlankProse, me as isBuiltInAssistantMode, No as isCapturing, ff as isComparableTurn, tv as isCurrentAssistantHistoryGeneration, oS as isCurrentPath, Yn as isDedicatedAssistantSandbox, Xn as isDedicatedAssistantSandboxRow, Ft as isDefaultHistoryFilter, Po as isEcho, rx as isEnabled, Gx as isEntityTarget, yb as isFinishedTurn, ft as isGenuineUserSpeech, $o as isHandsFreeStreamingActive, z_ as isHistoryClientId, Wt as isHistoryConversationBusy, Qi as isHostedSpeaker, Da as isHostedVoice, ly as isKnownReadOnlyMode, sd as isLegacyFiller, d_ as isLegacyHistoryConvKey, cd as isLegacyStopped, DT as isLiveAvatarBrowserSupported, sn as isLiveTurn, Ds as isMicCaptureSupported, Ne as isMissingGatewayFieldError, Gs as isMobileUserAgent, Iy as isModifiedClick, $c as isMostlyImagePages, Xf as isMultimodalBodyRejection, Zf as isNeverRecoverableAssistantError, hv as isNewerAssistantHistoryFormat, b_ as isOtherScopeHistoryConversation, ma as isOutputRefusal, Bi as isPlaybackReferenceAttached, wC as isProdRuntime, be as isProductAssistantModeId, Rl as isProviderReadableFilePart, it as isQuestionReply, _x as isQuestionText, g as isQuotaExhaustedError, x_ as isReadOnlyHistoryConversation, Cr as isReapedSandboxConnectionError, tp as isRecentlyVerified, Qx as isRecordMatch, wr as isRecoverable, Qf as isRecoverableAssistantError, F as isRemoteImageSrc, S_ as isReusableHistoryDraft, Pp as isRunningStatus, n_ as isServerHistorySearchQuery, Iu as isSpeakingMessage, Oa as isSpeechBlocked, y as isSpeechRecognitionSupported, ld as isStageCopy, Fo as isSubmittable, Bx as isThereRequest, pt as isTrailingResultOfSubmitted, id as isTurnInFlight, Zs as isTurnSuperseded, Pe as isUnknownFieldError, at as isUserOriginatedWriteReply, It as isValidUpdatePatch, ou as isVoiceProposalBound, Ai as isVoiceTurn, RC as isWorkflowAssistantAdmissionRefusal, gn as isWriteModeAcknowledged, Qp as isWriteProposalError, qv as joinLabels, el as joinSheets, IS as labelForPath, Pd as languageConfirmationCopy, ka as languageDisplayName, wx as languageNameMap, Fd as languageReplyStep, zl as largestInlineCharsPerFile, WS as latestReplyOnSurface, Jv as leaveConfirmCopy, f_ as legacyHistoryConvKey, hd as linkNotOpenableCopy, G as listUnsavedChanges, fT as liveAvatarAskState, OT as liveAvatarAuthorization, pT as liveAvatarStatusText, xT as liveAvatarVoicesFrom, kT as liveAvatarWorkspaceAuthorization, Ty as liveCoverage, Lt as localChannelOf, ix as localeHasAnyOn, Os as looksLikeHeadset, $x as lookupNamedRecords, ax as manifestWith, Tr as mapSessionToHistory, cn as markLiveTurn, Fe as markSupported, pf as markTurn, Qs as markTurnSuperseded, QS as markUiCatalogueSent, Ie as markUnsupported, gd as markdownText, Jb as matchAppControl, Ux as matchEntityRoute, px as matchFrame, sS as matchLocalUiCommand, Ix as matchLocaleIntents, Rt as matchesHistoryFilter, C_ as materializeHistoryHeader, cS as mayBeNavigationFollowUp, Lx as mayBeThereOrPick, Nc as maySendSpokenTurn, B_ as measureHistorySaveRequest, gv as mergeAssistantHistoryPersisted, _v as mergeAssistantHistoryWithStored, mt as mergeFinalPhrase, X_ as mergeHistoryMessages, Er as mergeMessagesById, Sn as mergePersistedAssistantState, WC as mergePersistedAvatarPreferences, ro as micIsInterrupt, Zn as mintAssistantTurnStream, Qn as modeRequiresConfirmWrites, Rd as msUntilNextPhrase, cC as n4LeaveGuard, lS as navDestinations, Kx as navEntryIds, iC as navIntentRelevant, aC as navIntentWords, _d as navigationCommandCopy, vd as navigationOutcomeCopy, im as newWriteProposalRequestId, LS as newestAssistantOnSurface, kv as newestHistoryHeader, ln as newestModelReplyId, Am as nextActiveTab, Jh as nextAssistantOpenState, Xm as nextModeIndex, Pf as nextPanelOverlays, Fp as nextPreviewEvents, r_ as normaliseHistorySearchQuery, zt as normaliseHistoryTitle, eS as normaliseRecordName, vx as normaliseSaid, uS as normaliseUtterance, Aa as normalizeLangTag, es as normalizeSttStreamUrl, vC as notifyAiCreditsUpdated, Gt as notifyAssistantStorageFull, Ii as notifyCancellationSpeechEngine, yd as offerAnnounceText, hS as offerAssentFor, bd as offerExpiredCopy, xd as offerHintText, Kt as offerHistoryRename, Sd as offerKeptForUnsavedCopy, Cd as offerNotAvailableCopy, wd as offerOpenText, tC as offerYesOnSurface, Lr as offerYesState, di as offersOfThisTurn, Ks as openBrowserSocket, dT as openLiveKitAvatarRoom, lb as openTurnStream, fC as openersOf, Io as orbMode, RS as outcomeStatus, tl as pageMarker, Bm as panelOwnedPreviewBridge, Ff as panelOwnsEscape, ow as parseAvatarPlaybackFinished, Vx as parseChoice, Vc as parseConfirmationRefusal, Bl as parseDataUrl, Ow as parseFrameHeader, oC as parseNavIntent, tS as parseRecordRequest, nl as parseSharedStrings, Yd as parseToolActivity, Rr as parseUiOffers, rl as parseWorkbookSheets, $p as parseWriteProposalView, DS as pathnameOf, Lw as pcm16DurationOf, Rw as pcm16SamplesPerChunk, il as pdfTextItemsToPage, Bt as pendingUpdatesByConversation, Kr as permissionRefusalCopyId, qr as permissionRefusalMessage, Td as pickFromListCopy, jm as pinActiveTab, ad as planAbandonedTurn, np as planAfterTransportFailure, lC as planAppControl, xg as planAssistantHistoryRetry, Z_ as planHistoryEarlierLoad, Q_ as planHistoryOpenLoad, Lo as planListeningHold, gs as planOnset, nS as planRecordResolution, Ro as planReplyConsumption, ht as planSubmitTimer, dS as planThemeChange, gt as planThinkingSpeech, Pc as planTranscriptAutoOpen, rp as planTrustedSandboxFailure, od as planTurnAbort, zo as planVoiceAnnouncement, Fc as planVoiceSessionBinding, Ic as planVoiceSessionStart, Lc as planVoiceSpokenEntry, um as planWriteReply, Cc as pollDelayMs, Pb as preopenKey, Fb as preopenWanted, Ib as preopenedCountForTest, GS as presentedListFor, Lb as prewarmTarget, ja as primaryLanguageSubtag, xa as primeHostedPlayback, rb as probeWorkspaceAssistantAdmin, $n as promptGatewayRequestBytes, dm as promptWriteApproval, er as proxySandboxRaw, vv as pruneAssistantHistoryPersisted, Yh as publishedAssistantDockWidth, Xh as publishedAssistantPanelInset, Lu as publishedChunks, Yb as queryAsSaid, _ as quotaExhaustedEventName, Wd as readAheadFor, yv as readAssistantHistoryPersisted, Zh as readAssistantOverlayFlag, _S as readControlSnapshot, St as readHandsFreeOverride, ts as readHandsFreeStreaming, tf as readReducedMotion, tr as readSandboxWriteCapabilities, nr as readSandboxWriteCapabilitiesOnce, Ha as readSpeechEngineConfig, qs as readTransportEnvironment, Ct as readTransportOverride, am as readWriteProposalRefs, lw as realAvatarScheduler, mf as recentTurnTimelines, Ed as recordChoiceCopy, Dd as recordKindsCopy, lp as redactWriteProposalText, Ey as reduceLiveFrame, Ju as refreshStaleAttachmentUrls, r as registerAssistantControl, K as registerUnsavedChange, Ya as releaseReplyRequestsOutside, rr as releaseSupersededAssistantSandboxes, KS as rememberPresentedList, yx as removeFillers, su as renderWriteProposalReadback, kc as replyFollowsInput, Xa as replyRequestsVersion, Za as replySpeechRequest, Qa as replyWantsAvatar, ir as reportAssistantAiTokenUsage, ai as reportUsageWithRetry, $a as requestReplyOnAvatar, Qh as requestedAssistantOpenState, Ru as requiresCancel, Sa as resetHostedPlaybackForTest, Vi as resetPlaybackReferenceForTest, eo as resetReplyRequestsForTest, Ua as resetSpeechEngine, Ga as resetSpeechFeedForTest, $s as resetSupersededTurnsForTest, hf as resetTurnTimelines, Cb as resetTurnTimingReporting, Rb as resetWarmsForTest, Cn as resolveActiveModeSandbox, ct as resolveAffirmationLanguage, un as resolveApprovablePendingWrite, Vl as resolveAssistantInlineLimits, Oc as resolveAssistantLanguage, yi as resolveAssistantModeCapabilities, Cu as resolveAssistantSendModeAfterAccess, Ye as resolveAutoRoute, GC as resolveAvatarVoiceMode, qb as resolveByLabel, ty as resolveConversationDeleteTarget, wt as resolveHandsFreeEnabled, w_ as resolveHistoryReopenMode, qx as resolveInAppLinks, Ac as resolveLanguagePair, C as resolveModeConfig, zr as resolveOffer, dn as resolveRetryableMessageId, Vt as resolveRowControls, Ee as resolveSandboxAssistantMode, ju as resolveSpeechLocale, KC as resolveStoredAvatarId, qC as resolveStoredAvatarVoice, JC as resolveStoredAvatarVoiceMode, Tt as resolveStoredHandsFree, Js as resolveStreamConnection, Jx as resolveUiTarget, _t as resolveVoiceGraceMs, gf as restartAttempt, _n as restoreAcknowledgedWriteModes, Xe as restoreAutoRouting, ST as restoreVoiceWhenOutputLeaves, uy as resumeContextFor, Ca as retryDelayMs, oi as retryPendingUsageReports, bw as rmsOfFloat32, wo as rotationElapsedMs, Vp as runBelongsTo, Wp as runIdentities, OS as runNavigation, Hp as sameOwner, De as sandboxBaseModeFor, u as sandboxProxyErrorFromBody, d as sandboxProxyErrorFromTurnTerminal, Br as sandboxServesUiOffers, ar as sandboxStatusOf, Dr as sanitize, _T as sanitizeAvatarImages, rS as sanitizeRecordMatches, SS as scoreboard, pC as searchOf, _f as segmentStats, T_ as selectAssistantHistoryList, or as selectExistingAssistantSandbox, E_ as selectHistoryEvictions, Av as selectHistorySearchList, Vs as selectSttTransport, sr as selectSupersededAssistantSandboxes, Ma as selectVoiceForLocale, cr as sendAssistantPromptAsync, wb as sendAssistantTurnTimings, lr as sendHeartbeat, qt as setAssistantStorageFullHandler, Hi as setDeviceVoice, Jt as setHistoryBusyProbe, Yt as setHistoryOpenFilterSource, Xt as setHistoryRenameSink, Zt as setHistoryStampSource, Xu as settleAndCommitSpokenTurn, bv as settleAssistantHistory, to as settleReplyRequest, zb as settleWarmBeforeSend, fm as settleWithin, al as sheetXmlToRows, ua as shouldDisableEngine, _s as shouldFallBackToTap, Mm as shouldPinOnMove, Nm as shouldPinOnSelect, Bo as shouldRecognise, _c as showPreviousChunk, io as showsAssistantCaption, ao as showsUserCaption, Ui as silencePlaybackReference, fS as singularVariants, Zw as sliceAvatarPcm, Gd as snapshotReplyFloor, mC as sortOf, da as speakableChunks, dc as speakableEmail, Ka as speechFeed, Na as speechGate, Du as speechLabelsFor, Pa as speechLangForLocale, zu as speechPlaybackReducer, vt as speechWords, fa as splitForVendor, fc as splitTableRow, Zd as spokenMessagesSinceContinueNote, Vo as spokenSoFar, Qd as spokenTurnText, po as stageText, xw as startAvatarAudioMeter, ey as startFocusReturnAfterKeep, b as startIsCoolingDown, ks as startMicCapture, zd as startPhraseTicker, Bb as startPreopen, To as startRotationTicker, Kd as startSessionReadAhead, Tb as startTurnTimingReporting, Vb as startWarm, mo as statusStageCopy, Cp as statusText, Pm as stepsFromToolActivity, ur as stopReapedAssistantSandbox, Ti as streamBudgetMs, ns as streamLanguagesFor, Le as streamMintBackedOff, bx as stripEdges, ud as stripLegacyFillerPrefix, yt as stripSubmittedPrefix, rs as sttStreamUrlFromGateway, is as sttSubprotocols, fn as subscribeApprovalInFlight, as as subscribeHandsFreeStreaming, nf as subscribeReducedMotion, no as subscribeReplyRequests, Wa as subscribeSpeechEngine, vf as subscribeTurnTimelines, ol as summarisePageText, yf as summariseTurnTimelines, Eo as syncRotationClock, Fm as tabForArrowKey, hC as tabsOf, Ox as tamilNameForms, Wi as tapPlaybackElement, f as terminalCodeRecoverability, Od as themeCommandCopy, ho as thinkingPhrase, go as thinkingPhraseEntry, wc as toCaptionText, V_ as toHistoryEntries, Hl as toMessageAttachment, pc as toSpeakableText, H_ as toStorableHistoryText, Uo as toVoiceReply, qd as trackFirstText, z as transformAssistantUrl, eu as translateProductCopy, ub as transportForcedToPoll, Ul as truncateForInline, sl as truncatePagesForInline, U_ as truncateUtf8, Bd as turnActivityCopy, Vd as turnActivityStage, bf as turnClockMs, Zr as turnConfirmsNoAction, Qr as turnOutcomeCopy, xf as turnSegments, db as turnStreamAvailable, Sf as turnTimeline, $S as uiCatalogueSent, eC as uiCatalogueSessionKey, Wb as uiLanguageEnglishName, Gb as uiLanguageFromWords, Kb as uiLanguageWords, Vr as uiOfferAgeMs, Hr as uiOfferHintKind, Ur as uiOfferInTime, bi as unofferedModeSendRefusal, wu as unofferedModeSendRefusalAfterAccess, q as unsavedChangesBlocking, kd as unsavedChangesCopy, si as usagePendingStorageKey, ci as usageReportClock, li as usageSendRefusal, ib as useAssistantApiAccess, SC as useAssistantAttachments, Sm as useAssistantConnectSource, i as useAssistantControl, NC as useAssistantDockWidth, TC as useAssistantHeartbeat, jv as useAssistantHistorySearch, nv as useAssistantHistoryStatus, xv as useAssistantHistoryStore, A as useAssistantI18nNamespace, EC as useAssistantKeyboardShortcuts, AC as useAssistantLauncherLift, U as useAssistantNavigate, PC as useAssistantOverlayOrNull, a as useAssistantPageControls, w as useAssistantPageLabel, FC as useAssistantPanelInset, jp as useAssistantPreview, Kp as useAssistantPreviewBridge, T as useAssistantProduct, E as useAssistantProductOrNull, IC as useAssistantQuotaExhausted, dy as useAssistantServerHistory, wf as useAssistantSpeech, D as useAssistantStorageFolders, wn as useAssistantStore, j as useAssistantTr, td as useAttachmentCommitter, nd as useAttachmentFilesPort, rd as useAttachmentUrlResolver, ku as useAvatarCopy, YC as useAvatarPreferencesStore, Jy as useAvatarTabDraft, Qy as useAvatarTabExchange, Kv as useControlConfirmDialog, Hv as useConversationDeleteDialog, ab as useConversationTurns, Tm as useDropdownEscape, Xs as useHandsFreeInterrupt, fy as useHistoryRowControlsFor, Vm as useHostedAssistantPreviewBridge, Zv as useLeaveConfirmAsking, Bf as useLiveAvatarHandsFreeGuard, Vf as useLiveAvatarMiniIndicatorShown, Hf as useLiveAvatarOn, Uf as useLiveAvatarSpeechEngine, Wf as useLiveAvatarStage, Gf as useLiveAvatarTab, Kf as useLiveAvatarTabOffered, qf as useLiveAvatarTabSeam, Jf as useLiveAvatarVoiceView, ky as useLiveOverlay, Ay as useLiveOverlayContent, Rm as useOverlayFocus, rf as usePrefersReducedMotion, fi as useSandboxAssistantTransport, J as useUnsavedChanges, x as useVoiceInput, Yf as useVoiceSession, bC as useWorkspaceWriteAccess, Op as useWriteProposalConfirm, up as useWriteProposalRemainingMs, mm as useWriteProposals, dr as usesDedicatedAssistantProvisioning, W_ as utf8ByteLength, Wl as validateFile, ox as validateManifest, CS as verdictOf, Fa as voiceAvailability, Rc as voiceBindingAtStart, zc as voiceBindingConversationId, ji as voiceMarker, hc as voicePreviewText, cu as voiceProposalChip, lu as voiceProposalChipText, Ia as voiceQualityRank, uu as voiceReadbacksDue, rg as voiceSessionEscapeAction, Mi as voiceSessionIdOf, If as voiceSessionOwnsEscape, Ho as voiceSessionReducer, oo as voiceStageState, Vy as voiceStartBlocker, Hy as voiceStartBlockerLasts, bo as voiceStatusParts, xo as voiceStatusSuffix, nc as voiceTranscriptFilename, Ni as voiceTurnsOnly, du as voiceWaitingProposals, La as voicesForLocale, fr as waitForAssistantServiceReady, pr as waitForSandboxRunning, Hb as warmState, so as waveformIsActive, co as waveformIsSettled, Ei as withIncompleteTurnNotice, qS as withOfferedTargets, vn as withWriteModeAcknowledged, qp as writeActionResultEvents, mr as writeApprovalModeOf, hr as writeApprovalReuseMatches, $h as writeAssistantOverlayFlag, gr as writeExecutionOf, yn as writeModeConsentCopy, bn as writeModeSendRefusal, xn as writeModeSendRefusalReason, dp as writeProposalArgumentValues, om as writeProposalBelongsTo, fp as writeProposalConfirmState, pp as writeProposalCountdownText, nu as writeProposalErrorLine, mp as writeProposalGatewayText, hp as writeProposalKindText, gp as writeProposalRemainingMs, _p as writeProposalRootFieldName, vp as writeProposalSensitiveTexts, sm as writeProposalSessionsToReopen, wp as writeProposalUsesDialog, yp as writeProposalVariableValues, fu as writeProposalVoiceLine, pu as writeProposalVoiceReadback, cm as writeProposalsEnabledFor, pm as writeReplyLiveState };
@@ -14,9 +14,10 @@ import { KeyboardHelpDialogWrapper as C } from "./shared/components/KeyboardHelp
14
14
  import { QuotaMeter as w } from "./shared/components/QuotaMeter.js";
15
15
  import { UPGRADE_PROMPT_EVENT as T, UpgradePromptModal as E, dispatchUpgradePrompt as D } from "./shared/components/UpgradePromptModal.js";
16
16
  import { UpgradeInlineBanner as O } from "./shared/components/UpgradeInlineBanner.js";
17
- import { LandingGateView as k, LandingOrDashboardRedirect as A, hasStoredValidSession as j, resolveLandingGate as M } from "./shared/components/LandingOrDashboardRedirect.js";
18
- import { useVoiceInput as N } from "./shared/components/assistantWidget/useVoiceInput.js";
19
- import { ASSISTANT_WIDGET_TOGGLE_EVENT as P, AssistantWidget as F } from "./shared/components/assistantWidget/AssistantWidget.js";
20
- import { Markdown as I } from "./shared/components/Markdown.js";
21
- import { DesktopUpdateToast as L } from "./shared/components/DesktopUpdateToast.js";
22
- export { P as ASSISTANT_WIDGET_TOGGLE_EVENT, f as AccessDenied, x as AppErrorBoundary, F as AssistantWidget, y as ConditionalShell, S as ContextConversationWidget, L as DesktopUpdateToast, o as ErrorBoundary, m as ErrorFallback, C as KeyboardHelpDialogWrapper, k as LandingGateView, A as LandingOrDashboardRedirect, h as LoadingFallback, I as Markdown, v as MicrofrontendErrorBoundary, b as PWAInstallBanner, g as PageLoadingFallback, l as PermissionButton, p as PermissionDenied, u as PermissionGate, d as PermissionLink, w as QuotaMeter, s as RequireAuth, c as RequireGuest, e as SSORedirectSpinner, _ as SectionLoadingFallback, T as UPGRADE_PROMPT_EVENT, O as UpgradeInlineBanner, E as UpgradePromptModal, t as checkRemoteSLO, n as checkSLO, r as clearLocalAuthState, D as dispatchUpgradePrompt, i as getSSORedirectUrl, j as hasStoredValidSession, a as redirectToSSO, M as resolveLandingGate, N as useVoiceInput };
17
+ import { DEFAULT_QUOTA_UPGRADE_COPY as k, QuotaUpgradeBridge as A, captureQuotaDialogOwners as j, claimQuotaDialog as M, dispatchProductQuotaExhausted as N, quotaEventKind as P, resolveQuotaUpgradeCopy as F, useQuotaDialogOwnership as I, useQuotaUpgradeBridge as L, withQuotaDialogOwnership as R } from "./shared/components/QuotaUpgradeBridge.js";
18
+ import { LandingGateView as z, LandingOrDashboardRedirect as B, hasStoredValidSession as V, resolveLandingGate as H } from "./shared/components/LandingOrDashboardRedirect.js";
19
+ import { useVoiceInput as U } from "./shared/components/assistantWidget/useVoiceInput.js";
20
+ import { ASSISTANT_WIDGET_TOGGLE_EVENT as W, AssistantWidget as G } from "./shared/components/assistantWidget/AssistantWidget.js";
21
+ import { Markdown as K } from "./shared/components/Markdown.js";
22
+ import { DesktopUpdateToast as q } from "./shared/components/DesktopUpdateToast.js";
23
+ export { W as ASSISTANT_WIDGET_TOGGLE_EVENT, f as AccessDenied, x as AppErrorBoundary, G as AssistantWidget, y as ConditionalShell, S as ContextConversationWidget, k as DEFAULT_QUOTA_UPGRADE_COPY, q as DesktopUpdateToast, o as ErrorBoundary, m as ErrorFallback, C as KeyboardHelpDialogWrapper, z as LandingGateView, B as LandingOrDashboardRedirect, h as LoadingFallback, K as Markdown, v as MicrofrontendErrorBoundary, b as PWAInstallBanner, g as PageLoadingFallback, l as PermissionButton, p as PermissionDenied, u as PermissionGate, d as PermissionLink, w as QuotaMeter, A as QuotaUpgradeBridge, s as RequireAuth, c as RequireGuest, e as SSORedirectSpinner, _ as SectionLoadingFallback, T as UPGRADE_PROMPT_EVENT, O as UpgradeInlineBanner, E as UpgradePromptModal, j as captureQuotaDialogOwners, t as checkRemoteSLO, n as checkSLO, M as claimQuotaDialog, r as clearLocalAuthState, N as dispatchProductQuotaExhausted, D as dispatchUpgradePrompt, i as getSSORedirectUrl, V as hasStoredValidSession, P as quotaEventKind, a as redirectToSSO, H as resolveLandingGate, F as resolveQuotaUpgradeCopy, I as useQuotaDialogOwnership, L as useQuotaUpgradeBridge, U as useVoiceInput, R as withQuotaDialogOwnership };
package/dist/shared.js CHANGED
@@ -68,77 +68,78 @@ import { KeyboardHelpDialogWrapper as Zr } from "./shared/components/KeyboardHel
68
68
  import { QuotaMeter as Qr } from "./shared/components/QuotaMeter.js";
69
69
  import { UPGRADE_PROMPT_EVENT as $r, UpgradePromptModal as ei, dispatchUpgradePrompt as ti } from "./shared/components/UpgradePromptModal.js";
70
70
  import { UpgradeInlineBanner as ni } from "./shared/components/UpgradeInlineBanner.js";
71
- import { getNativeEntryRoutes as ri, shouldShowNativeWelcome as ii } from "./shared/native/entry.js";
72
- import { LandingGateView as ai, LandingOrDashboardRedirect as oi, hasStoredValidSession as si, resolveLandingGate as ci } from "./shared/components/LandingOrDashboardRedirect.js";
73
- import { useVoiceInput as li } from "./shared/components/assistantWidget/useVoiceInput.js";
74
- import { ASSISTANT_WIDGET_TOGGLE_EVENT as ui, AssistantWidget as di } from "./shared/components/assistantWidget/AssistantWidget.js";
75
- import { Markdown as fi } from "./shared/components/Markdown.js";
76
- import { useNativePlatform as pi } from "./shared/native/hooks/useNativePlatform.js";
77
- import { useSafeArea as mi } from "./shared/native/hooks/useSafeArea.js";
78
- import { useNativeKeyboard as hi } from "./shared/native/hooks/useNativeKeyboard.js";
79
- import { useAppState as gi } from "./shared/native/hooks/useAppState.js";
80
- import { useDeviceInfo as _i } from "./shared/native/hooks/useDeviceInfo.js";
81
- import { useHaptics as vi } from "./shared/native/hooks/useHaptics.js";
82
- import { useStatusBar as yi } from "./shared/native/hooks/useStatusBar.js";
83
- import { resolveActionSheetOutcome as bi, useActionSheet as xi } from "./shared/native/hooks/useActionSheet.js";
84
- import { useDesktop as Si } from "./shared/native/hooks/useDesktop.js";
85
- import { useDesktopUpdateState as Ci } from "./shared/native/hooks/useDesktopUpdateState.js";
86
- import { useDesktopWindowState as wi } from "./shared/native/hooks/useDesktopWindowState.js";
87
- import { DesktopUpdateToast as Ti } from "./shared/components/DesktopUpdateToast.js";
71
+ import { DEFAULT_QUOTA_UPGRADE_COPY as ri, QuotaUpgradeBridge as ii, captureQuotaDialogOwners as ai, claimQuotaDialog as oi, dispatchProductQuotaExhausted as si, quotaEventKind as ci, resolveQuotaUpgradeCopy as li, useQuotaDialogOwnership as ui, useQuotaUpgradeBridge as di, withQuotaDialogOwnership as fi } from "./shared/components/QuotaUpgradeBridge.js";
72
+ import { getNativeEntryRoutes as pi, shouldShowNativeWelcome as mi } from "./shared/native/entry.js";
73
+ import { LandingGateView as hi, LandingOrDashboardRedirect as gi, hasStoredValidSession as _i, resolveLandingGate as vi } from "./shared/components/LandingOrDashboardRedirect.js";
74
+ import { useVoiceInput as yi } from "./shared/components/assistantWidget/useVoiceInput.js";
75
+ import { ASSISTANT_WIDGET_TOGGLE_EVENT as bi, AssistantWidget as xi } from "./shared/components/assistantWidget/AssistantWidget.js";
76
+ import { Markdown as Si } from "./shared/components/Markdown.js";
77
+ import { useNativePlatform as Ci } from "./shared/native/hooks/useNativePlatform.js";
78
+ import { useSafeArea as wi } from "./shared/native/hooks/useSafeArea.js";
79
+ import { useNativeKeyboard as Ti } from "./shared/native/hooks/useNativeKeyboard.js";
80
+ import { useAppState as Ei } from "./shared/native/hooks/useAppState.js";
81
+ import { useDeviceInfo as Di } from "./shared/native/hooks/useDeviceInfo.js";
82
+ import { useHaptics as Oi } from "./shared/native/hooks/useHaptics.js";
83
+ import { useStatusBar as ki } from "./shared/native/hooks/useStatusBar.js";
84
+ import { resolveActionSheetOutcome as Ai, useActionSheet as ji } from "./shared/native/hooks/useActionSheet.js";
85
+ import { useDesktop as Mi } from "./shared/native/hooks/useDesktop.js";
86
+ import { useDesktopUpdateState as Ni } from "./shared/native/hooks/useDesktopUpdateState.js";
87
+ import { useDesktopWindowState as Pi } from "./shared/native/hooks/useDesktopWindowState.js";
88
+ import { DesktopUpdateToast as Fi } from "./shared/components/DesktopUpdateToast.js";
88
89
  import "./shared-components.js";
89
- import { DevtoolsSink as Ei } from "./shared/events/sinks/DevtoolsSink.js";
90
- import { BroadcastChannelSink as Di } from "./shared/events/sinks/BroadcastChannelSink.js";
91
- import { BackendAuditSink as Oi } from "./shared/events/sinks/BackendAuditSink.js";
92
- import { AnalyticsConsentBanner as ki, RybbitSink as Ai, readAnalyticsConsent as ji, readAnalyticsConsentChoice as Mi, setAnalyticsConsent as Ni } from "./shared/events/sinks/RybbitSink.js";
93
- import { OtelBrowserSink as Pi } from "./shared/events/sinks/OtelBrowserSink.js";
94
- import { EventBusProvider as Fi, createEventBus as Ii, useEvent as Li, useEventBus as Ri, useEventEmitter as zi } from "./shared-events.js";
95
- import { useDebounce as Bi } from "./shared/hooks/useDebounce.js";
96
- import { useThrottle as Vi } from "./shared/hooks/useThrottle.js";
97
- import { BREAKPOINTS as Hi, useBreakpoint as Ui, useMobileBreakpoint as Wi } from "./shared/hooks/useBreakpoint.js";
98
- import { useOnClickOutside as Gi, useOnClickOutsideWithRef as Ki } from "./shared/hooks/useOnClickOutside.js";
99
- import { useKeyPress as qi, useKeyboardShortcut as Ji } from "./shared/hooks/useKeyPress.js";
100
- import { useExclusiveMenu as Yi } from "./shared/hooks/useExclusiveMenu.js";
101
- import { useLocalStorage as Xi } from "./shared/hooks/useLocalStorage.js";
102
- import { useSessionStorage as Zi } from "./shared/hooks/useSessionStorage.js";
103
- import { usePrevious as Qi, usePreviousDistinct as $i, usePreviousHistory as ea } from "./shared/hooks/usePrevious.js";
104
- import { useConditionalToggle as ta, useToggle as na, useToggleObject as ra } from "./shared/hooks/useToggle.js";
105
- import { usePagination as ia } from "./shared/hooks/usePagination.js";
106
- import { useAsync as aa, useAsyncImmediate as oa } from "./shared/hooks/useAsync.js";
107
- import { MODIFIER_KEYS as sa, PLATFORM_TYPES as ca } from "./shared/keyboard/types.js";
108
- import { useKeyboardShortcuts as la } from "./shared/keyboard/useKeyboardShortcuts.js";
109
- import { useHotkeys as ua } from "./shared/keyboard/useHotkeys.js";
110
- import { useShortcutHelp as da } from "./shared/keyboard/useShortcutHelp.js";
111
- import { GLOBAL_SHORTCUT_CATEGORIES as fa, createGlobalShortcuts as pa, getGlobalShortcutsByCategory as ma, mergeShortcuts as ha } from "./shared/keyboard/globalShortcuts.js";
112
- import { useLogger as ga } from "./shared/logger/useLogger.js";
113
- import { useHasAnimated as _a } from "./shared/hooks/useHasAnimated.js";
114
- import { useReferralAttribution as va } from "./shared/hooks/useReferralAttribution.js";
115
- import { useRecordProductVisit as ya } from "./shared/hooks/useRecordProductVisit.js";
116
- import { PUSH_DEVICE_ID_STORAGE_KEY as ba, getOrCreatePushDeviceId as xa, registerPushDevice as Sa, unregisterPushDevice as Ca } from "./shared/native/push-registration.js";
117
- import { usePushDeviceRegistration as wa } from "./shared/hooks/usePushDeviceRegistration.js";
118
- import { QUOTA_EXHAUSTED_EVENT as Ta, dispatchQuotaExhausted as Ea, useQuotaErrorToast as Da } from "./shared/hooks/useQuotaErrorToast.js";
119
- import { PLAN_USAGE_SNAPSHOT_EVENT as Oa, publishPlanUsageSnapshot as ka, useUpgradePrompt as Aa } from "./shared/hooks/useUpgradePrompt.js";
120
- import { appendContextToPath as ja, useCurrentContextSearchParams as Ma } from "./shared/hooks/useCurrentContextSearchParams.js";
121
- import { UNSAVED_CHANGE_LABEL_MAX as Na, listUnsavedChanges as Pa, registerUnsavedChange as Fa, unsavedChangesBlocking as Ia, useUnsavedChanges as La } from "./shared/navigation/unsavedChanges.js";
122
- import { MicrofrontendContext as Ra, useMicrofrontendContext as za } from "./shared-hooks.js";
123
- import { withTourProgressStatus as Ba } from "./shared/tours/progress.js";
124
- import { detectDeviceType as Va, getResponsiveSelector as Ha } from "./shared/tours/types.js";
125
- import { useTourPlayer as Ua } from "./shared/tours/useTourPlayer.js";
126
- import { TourSpotlight as Wa } from "./shared/tours/TourSpotlight.js";
127
- import { TourTooltip as Ga } from "./shared/tours/TourTooltip.js";
128
- import { TourPlayerProvider as Ka, useIsTourPlaying as qa, useStartTour as Ja, useStopTour as Ya, useTourPlayerContext as Xa } from "./shared/tours/TourPlayerProvider.js";
129
- import { TourPlayer as Za, TourTriggerButton as Qa, usePlayTour as $a } from "./shared/tours/TourPlayer.js";
130
- import { getTourContextRank as eo, getTourRouteCatalog as to, getTourRouteModules as no, getTourRoutePages as ro, isTourVisibleForContext as io, normalizeTourPath as ao, registerTourRouteCatalog as oo, resolveTourTargetPath as so } from "./shared/tours/routeCatalog.js";
131
- import { ToursProvider as co, useAutoStartTour as lo, useSafeToursContext as uo, useTours as fo, useToursContext as po } from "./shared/tours/ToursContext.js";
132
- import { TourInitializer as mo } from "./shared/tours/TourInitializer.js";
133
- import { AppShellProvider as ho, resolveAppShellObservabilityConfig as go } from "./shared/providers/AppShellProvider.js";
134
- import { MicrofrontendProvider as _o } from "./shared-providers.js";
135
- import { TourTrigger as vo } from "./shared/tours/TourTrigger.js";
90
+ import { DevtoolsSink as Ii } from "./shared/events/sinks/DevtoolsSink.js";
91
+ import { BroadcastChannelSink as Li } from "./shared/events/sinks/BroadcastChannelSink.js";
92
+ import { BackendAuditSink as Ri } from "./shared/events/sinks/BackendAuditSink.js";
93
+ import { AnalyticsConsentBanner as zi, RybbitSink as Bi, readAnalyticsConsent as Vi, readAnalyticsConsentChoice as Hi, setAnalyticsConsent as Ui } from "./shared/events/sinks/RybbitSink.js";
94
+ import { OtelBrowserSink as Wi } from "./shared/events/sinks/OtelBrowserSink.js";
95
+ import { EventBusProvider as Gi, createEventBus as Ki, useEvent as qi, useEventBus as Ji, useEventEmitter as Yi } from "./shared-events.js";
96
+ import { useDebounce as Xi } from "./shared/hooks/useDebounce.js";
97
+ import { useThrottle as Zi } from "./shared/hooks/useThrottle.js";
98
+ import { BREAKPOINTS as Qi, useBreakpoint as $i, useMobileBreakpoint as ea } from "./shared/hooks/useBreakpoint.js";
99
+ import { useOnClickOutside as ta, useOnClickOutsideWithRef as na } from "./shared/hooks/useOnClickOutside.js";
100
+ import { useKeyPress as ra, useKeyboardShortcut as ia } from "./shared/hooks/useKeyPress.js";
101
+ import { useExclusiveMenu as aa } from "./shared/hooks/useExclusiveMenu.js";
102
+ import { useLocalStorage as oa } from "./shared/hooks/useLocalStorage.js";
103
+ import { useSessionStorage as sa } from "./shared/hooks/useSessionStorage.js";
104
+ import { usePrevious as ca, usePreviousDistinct as la, usePreviousHistory as ua } from "./shared/hooks/usePrevious.js";
105
+ import { useConditionalToggle as da, useToggle as fa, useToggleObject as pa } from "./shared/hooks/useToggle.js";
106
+ import { usePagination as ma } from "./shared/hooks/usePagination.js";
107
+ import { useAsync as ha, useAsyncImmediate as ga } from "./shared/hooks/useAsync.js";
108
+ import { MODIFIER_KEYS as _a, PLATFORM_TYPES as va } from "./shared/keyboard/types.js";
109
+ import { useKeyboardShortcuts as ya } from "./shared/keyboard/useKeyboardShortcuts.js";
110
+ import { useHotkeys as ba } from "./shared/keyboard/useHotkeys.js";
111
+ import { useShortcutHelp as xa } from "./shared/keyboard/useShortcutHelp.js";
112
+ import { GLOBAL_SHORTCUT_CATEGORIES as Sa, createGlobalShortcuts as Ca, getGlobalShortcutsByCategory as wa, mergeShortcuts as Ta } from "./shared/keyboard/globalShortcuts.js";
113
+ import { useLogger as Ea } from "./shared/logger/useLogger.js";
114
+ import { useHasAnimated as Da } from "./shared/hooks/useHasAnimated.js";
115
+ import { useReferralAttribution as Oa } from "./shared/hooks/useReferralAttribution.js";
116
+ import { useRecordProductVisit as ka } from "./shared/hooks/useRecordProductVisit.js";
117
+ import { PUSH_DEVICE_ID_STORAGE_KEY as Aa, getOrCreatePushDeviceId as ja, registerPushDevice as Ma, unregisterPushDevice as Na } from "./shared/native/push-registration.js";
118
+ import { usePushDeviceRegistration as Pa } from "./shared/hooks/usePushDeviceRegistration.js";
119
+ import { QUOTA_EXHAUSTED_EVENT as Fa, dispatchQuotaExhausted as Ia, useQuotaErrorToast as La } from "./shared/hooks/useQuotaErrorToast.js";
120
+ import { PLAN_USAGE_SNAPSHOT_EVENT as Ra, publishPlanUsageSnapshot as za, useUpgradePrompt as Ba } from "./shared/hooks/useUpgradePrompt.js";
121
+ import { appendContextToPath as Va, useCurrentContextSearchParams as Ha } from "./shared/hooks/useCurrentContextSearchParams.js";
122
+ import { UNSAVED_CHANGE_LABEL_MAX as Ua, listUnsavedChanges as Wa, registerUnsavedChange as Ga, unsavedChangesBlocking as Ka, useUnsavedChanges as qa } from "./shared/navigation/unsavedChanges.js";
123
+ import { MicrofrontendContext as Ja, useMicrofrontendContext as Ya } from "./shared-hooks.js";
124
+ import { withTourProgressStatus as Xa } from "./shared/tours/progress.js";
125
+ import { detectDeviceType as Za, getResponsiveSelector as Qa } from "./shared/tours/types.js";
126
+ import { useTourPlayer as $a } from "./shared/tours/useTourPlayer.js";
127
+ import { TourSpotlight as eo } from "./shared/tours/TourSpotlight.js";
128
+ import { TourTooltip as to } from "./shared/tours/TourTooltip.js";
129
+ import { TourPlayerProvider as no, useIsTourPlaying as ro, useStartTour as io, useStopTour as ao, useTourPlayerContext as oo } from "./shared/tours/TourPlayerProvider.js";
130
+ import { TourPlayer as so, TourTriggerButton as co, usePlayTour as lo } from "./shared/tours/TourPlayer.js";
131
+ import { getTourContextRank as uo, getTourRouteCatalog as fo, getTourRouteModules as po, getTourRoutePages as mo, isTourVisibleForContext as ho, normalizeTourPath as go, registerTourRouteCatalog as _o, resolveTourTargetPath as vo } from "./shared/tours/routeCatalog.js";
132
+ import { ToursProvider as yo, useAutoStartTour as bo, useSafeToursContext as xo, useTours as So, useToursContext as Co } from "./shared/tours/ToursContext.js";
133
+ import { TourInitializer as wo } from "./shared/tours/TourInitializer.js";
134
+ import { AppShellProvider as To, resolveAppShellObservabilityConfig as Eo } from "./shared/providers/AppShellProvider.js";
135
+ import { MicrofrontendProvider as Do } from "./shared-providers.js";
136
+ import { TourTrigger as Oo } from "./shared/tours/TourTrigger.js";
136
137
  import "./shared-tours.js";
137
- import { acknowledgeNativePurchase as yo, getNativeProducts as bo, getNativePurchases as xo, installNativeIAP as So, isNativeIAPAvailable as Co, purchaseNativeProduct as wo, restoreNativePurchases as To } from "./shared/native/purchases.js";
138
- import { getPushOptInController as Eo, recordPushPermissionPromptDismissed as Do, registerPushOptInController as Oo, shouldPromptForPushPermission as ko } from "./shared/native/push-optin.js";
138
+ import { acknowledgeNativePurchase as ko, getNativeProducts as Ao, getNativePurchases as jo, installNativeIAP as Mo, isNativeIAPAvailable as No, purchaseNativeProduct as Po, restoreNativePurchases as Fo } from "./shared/native/purchases.js";
139
+ import { getPushOptInController as Io, recordPushPermissionPromptDismissed as Lo, registerPushOptInController as Ro, shouldPromptForPushPermission as zo } from "./shared/native/push-optin.js";
139
140
  import "./shared-native.js";
140
141
  import "./shared/actors/index.js";
141
142
  //#region src/shared/index.ts
142
- var Ao = "1.0.0";
143
+ var Bo = "1.0.0";
143
144
  //#endregion
144
- export { ui as ASSISTANT_WIDGET_TOGGLE_EVENT, br as AccessDenied, dr as ActorIdentity, ki as AnalyticsConsentBanner, yt as ApolloClient, bt as ApolloProvider, Ar as AppErrorBoundary, xn as AppInitializer, ho as AppShellProvider, di as AssistantWidget, Ve as BACKEND_ERROR_EVENT, Se as BOTMANOR_PRODUCT_SLUG, Hi as BREAKPOINTS, Oi as BackendAuditSink, Di as BroadcastChannelSink, Oe as COMMON_SHELL_LESS_ROUTES, He as CONNECTION_STATUS_EVENT, Dr as ConditionalShell, On as ConsoleTransport, Lr as ContextConversationWidget, Pe as DEFAULT_PAGE_SIZE, ke as DEFAULT_SHELL_CONFIG, R as DESKTOP_UPDATE_UNSUPPORTED, z as DESKTOP_WINDOW_STATE_DEFAULT, Ti as DesktopUpdateToast, Ei as DevtoolsSink, mr as ErrorBoundary, Sr as ErrorFallback, Fi as EventBusProvider, Ao as FE_SHARED_VERSION, jr as FeatureFlagProvider, Ir as FeatureGate, Fe as GATEWAYS, fa as GLOBAL_SHORTCUT_CATEGORIES, dt as GatewayProvider, Un as INLINE_ENCODE, xt as InMemoryCache, Zr as KeyboardHelpDialogWrapper, ai as LandingGateView, oi as LandingOrDashboardRedirect, Cr as LoadingFallback, wn as LogLevel, En as LogManager, Tn as Logger, sa as MODIFIER_KEYS, fi as Markdown, Ra as MicrofrontendContext, Er as MicrofrontendErrorBoundary, _o as MicrofrontendProvider, Pi as OtelBrowserSink, Oa as PLAN_USAGE_SNAPSHOT_EVENT, ca as PLATFORM_TYPES, Ce as PRODUCTS, ge as PRODUCT_SLUG_EMIT, _e as PRODUCT_SLUG_RENAMES, we as PRODUCT_URLS, or as PULL_TO_REFRESH_THRESHOLD, ba as PUSH_DEVICE_ID_STORAGE_KEY, kr as PWAInstallBanner, wr as PageLoadingFallback, _r as PermissionButton, xr as PermissionDenied, vr as PermissionGate, yr as PermissionLink, Pn as QUOTA_EXHAUSTED_CODE, Ta as QUOTA_EXHAUSTED_EVENT, Qr as QuotaMeter, Fn as RESOURCE_CAP_EXCEEDED_CODE, hr as RequireAuth, gr as RequireGuest, Ai as RybbitSink, at as SSELink, nn as SSORedirectSpinner, ln as SSO_DEPOSITED_PARAM, In as STORAGE_QUOTA_EXCEEDED_CODE, nr as SafeAreaView, Tr as SectionLoadingFallback, mo as TourInitializer, Za as TourPlayer, Ka as TourPlayerProvider, Wa as TourSpotlight, Ga as TourTooltip, vo as TourTrigger, Qa as TourTriggerButton, co as ToursProvider, Na as UNSAVED_CHANGE_LABEL_MAX, Ln as UPGRADE_ERROR_CODES, $r as UPGRADE_PROMPT_EVENT, ni as UpgradeInlineBanner, ei as UpgradePromptModal, _t as WsLink, yo as acknowledgeNativePurchase, r as alertTokens, ja as appendContextToPath, Qt as assignLocationWithAllowlist, Ot as attemptTokenRefresh, un as beginSsoNavigation, B as bootDesktopShell, fr as buildActorFallback, Rn as buildQuotaExhaustedMessage, dn as buildSsoDepositUrl, m as capitalizeFirst, h as capitalizeWords, i as categoryTokens, rn as checkRemoteSLO, an as checkSLO, kt as clearAuthSessionStorage, Xe as clearGraphqlFetchResponseCache, on as clearLocalAuthState, Pt as clearSSoCookie, Ft as clearShellSsoCookies, fn as clearSsoDepositState, pn as clearSsoNavigation, kn as clearUserContext, Kn as cn, sr as computePullOffset, cr as computePullProgress, mn as consumeSsoDepositMarker, n as createApolloClient, Ii as createEventBus, pa as createGlobalShortcuts, ot as createGraphQLClient, Mn as createProfileScopedStorage, V as desktopCheckForUpdates, H as desktopDeepLinkToPath, U as desktopInstallUpdate, W as desktopNotify, G as desktopOpenExternal, K as desktopSetBadgeCount, q as desktopSetLocale, J as desktopSetTheme, Y as desktopSetTrayQuickActions, Va as detectDeviceType, Rr as detectPlatform, Ue as dispatchBackendErrorEvent, Ea as dispatchQuotaExhausted, ti as dispatchUpgradePrompt, Wn as downscaleImage, ve as emitProductSlug, We as extractBackendError, zn as extractQuotaExhaustedExtensions, Bn as extractUpgradeErrorExtensions, Te as findProductConfig, g as formatBytes, _ as formatCompactNumber, v as formatCurrency, y as formatCurrencyCompact, b as formatDate, x as formatDateTime, S as formatDuration, zr as formatKeyCombo, C as formatList, w as formatNumber, T as formatOrdinal, E as formatPercentage, D as formatRelativeTime, O as formatTime, a as getAlertTokens, I as getCapacitorPlatform, o as getCategoryTokens, X as getDesktopAuthBridgeConfig, Z as getDesktopBridge, Q as getDesktopGatewayBases, $ as getDesktopGatewayUrls, ee as getDesktopRuntimeConfig, te as getDesktopUpdateState, ne as getDesktopWindowState, Br as getDisplayKeysForPlatform, Ie as getGatewayConfig, Le as getGatewayUrl, st as getGlobalClient, ma as getGlobalShortcutsByCategory, Re as getGraphQLEndpoint, re as getLegacyDesktopRuntime, Ht as getNativeBridge, ri as getNativeEntryRoutes, bo as getNativeProducts, xo as getNativePurchases, xa as getOrCreatePushDeviceId, Ut as getPlatform, Ee as getProductUrl, De as getProductsWithUrls, Nn as getProfileScopedKey, s as getProgressTokens, Eo as getPushOptInController, Ha as getResponsiveSelector, sn as getSSORedirectUrl, It as getSSoCookie, Ae as getShellConfig, Vr as getShortcutLabel, c as getStatusBadgeTokens, l as getStatusTokens, Ze as getStoredAuthToken, Qe as getStoredLocale, $e as getStoredOrganizationId, et as getStoredProjectId, tt as getStoredWorkspaceId, nt as getStoredWorkspaceToken, eo as getTourContextRank, to as getTourRouteCatalog, no as getTourRouteModules, ro as getTourRoutePages, u as getTrendTokens, ct as getWorkspaceClient, ze as getWorkspaceTokenPayload, St as gql, rt as graphqlFetch, At as hasAuthGraphQLErrors, si as hasStoredValidSession, lt as initializeAppClients, An as initializeLogger, ie as installDesktopDeepLinkHandler, ae as installDesktopNavigateHandler, de as installGatewayFetchRewrite, So as installNativeIAP, Ge as isAbortError, $t as isAllowedRedirectUrl, Wt as isAndroid, jt as isAuthGraphQLError, Mt as isAuthNetworkError, Ke as isBackendErrorDisplay, L as isCapacitorNative, P as isChunkLoadError, oe as isDesktop, Gt as isElectron, Kt as isIOS, qt as isInstalledApp, Hr as isMac, Ur as isMobileDevice, Jt as isNative, Co as isNativeIAPAvailable, Vn as isQuotaExhaustedError, ye as isSameProductSlug, Lt as isSharedSsoCookieDomain, je as isShellLessRoute, hn as isSsoNavigationPending, Yt as isStandalonePWA, Wr as isTabletDevice, io as isTourVisibleForContext, qe as isTransportError, Rt as isTrustedSsoOrigin, Hn as isUpgradeError, Xt as isWeb, Zt as isWebBrowser, Be as isWorkspaceTokenValidForContext, F as lazyWithRetry, be as legacyProductSlug, Pa as listUnsavedChanges, Dn as logManager, Je as markConnectionHealthy, gn as markSsoDepositDone, _n as markSsoDepositPending, Gr as matchesKeyCombo, ha as mergeShortcuts, vn as mintSsoSessionTokens, qn as nativeActionSheet, Jn as nativeConfirm, Yn as nativeCopyText, Xn as nativeImpact, Zn as nativeNotify, Qn as nativeOpenUrl, $n as nativeSelection, er as nativeShare, tr as nativeToast, Kr as normalizeKey, qr as normalizePlatformCombo, xe as normalizeProductSlug, ao as normalizeTourPath, se as onDesktopUpdateState, ce as onDesktopWindowState, en as openUrlInNewTabWithAllowlist, Jr as parseKeyCombo, k as pluralize, vt as prepareWorkspaceRequest, d as progressTokens, ka as publishPlanUsageSnapshot, wo as purchaseNativeProduct, ji as readAnalyticsConsent, Mi as readAnalyticsConsentChoice, rr as readInitialNetworkStatus, zt as readShellSsoCookie, yn as readSsoDepositState, Do as recordPushPermissionPromptDismissed, Nt as redirectToLogin, cn as redirectToSSO, ir as reduceNetworkStatus, le as registerDesktopNavigator, Sa as registerPushDevice, Oo as registerPushOptInController, oo as registerTourRouteCatalog, Fa as registerUnsavedChange, tn as replaceLocationWithAllowlist, ut as resetAppClients, bi as resolveActionSheetOutcome, go as resolveAppShellObservabilityConfig, me as resolveAuthBridgeConfig, fe as resolveGatewayBases, it as resolveGatewayUrl, ue as resolveGatewayUrls, ci as resolveLandingGate, he as resolveShellAuthBridgeConfig, so as resolveTourTargetPath, To as restoreNativePurchases, Gn as selectInlineBase64, Ni as setAnalyticsConsent, Bt as setSSoCookie, Vt as setShellSsoCookies, jn as setUserContext, bn as shouldAttemptSsoDeposit, Yr as shouldEnableKeyboardShortcuts, Xr as shouldIgnoreShortcut, ko as shouldPromptForPushPermission, Me as shouldShowBreadcrumb, ii as shouldShowNativeWelcome, Ne as shouldShowSidebar, Ye as shouldToastBackendError, A as slugify, f as statusTokens, pe as suppressConsole, j as toCamelCase, M as toPascalCase, p as trendTokens, N as truncateText, Ca as unregisterPushDevice, Ia as unsavedChangesBlocking, xi as useActionSheet, pr as useActorProfiles, Ct as useApolloClient, gi as useAppState, aa as useAsync, oa as useAsyncImmediate, lo as useAutoStartTour, Ui as useBreakpoint, ta as useConditionalToggle, e as useCopyToClipboard, Ma as useCurrentContextSearchParams, Bi as useDebounce, Si as useDesktop, Ci as useDesktopUpdateState, wi as useDesktopWindowState, _i as useDeviceInfo, Li as useEvent, Ri as useEventBus, zi as useEventEmitter, Yi as useExclusiveMenu, Nr as useFeatureFlag, Pr as useFeatureFlagDetails, Fr as useFeatureFlagValue, Mr as useFeatureFlags, ft as useGateway, pt as useGatewayClient, vi as useHaptics, _a as useHasAnimated, gt as useHasAuthToken, ua as useHotkeys, qa as useIsTourPlaying, qi as useKeyPress, Ji as useKeyboardShortcut, la as useKeyboardShortcuts, wt as useLazyQuery, Xi as useLocalStorage, ga as useLogger, t as useMediaQuery, za as useMicrofrontendContext, Wi as useMobileBreakpoint, Tt as useMutation, hi as useNativeKeyboard, pi as useNativePlatform, ar as useNetworkStatus, Gi as useOnClickOutside, Ki as useOnClickOutsideWithRef, Or as usePWA, ia as usePagination, $a as usePlayTour, Qi as usePrevious, $i as usePreviousDistinct, ea as usePreviousHistory, lr as usePullToRefresh, wa as usePushDeviceRegistration, Et as useQuery, Da as useQuotaErrorToast, ya as useRecordProductVisit, va as useReferralAttribution, Sn as useRegistryHelpers, ur as useReturnFocus, mi as useSafeArea, mt as useSafeGateway, ht as useSafeGatewayClient, uo as useSafeToursContext, Zi as useSessionStorage, Cn as useShellNavigate, da as useShortcutHelp, Ja as useStartTour, yi as useStatusBar, Ya as useStopTour, Dt as useSubscription, Vi as useThrottle, na as useToggle, ra as useToggleObject, Ua as useTourPlayer, Xa as useTourPlayerContext, fo as useTours, po as useToursContext, La as useUnsavedChanges, Aa as useUpgradePrompt, li as useVoiceInput, Ba as withTourProgressStatus };
145
+ export { bi as ASSISTANT_WIDGET_TOGGLE_EVENT, br as AccessDenied, dr as ActorIdentity, zi as AnalyticsConsentBanner, yt as ApolloClient, bt as ApolloProvider, Ar as AppErrorBoundary, xn as AppInitializer, To as AppShellProvider, xi as AssistantWidget, Ve as BACKEND_ERROR_EVENT, Se as BOTMANOR_PRODUCT_SLUG, Qi as BREAKPOINTS, Ri as BackendAuditSink, Li as BroadcastChannelSink, Oe as COMMON_SHELL_LESS_ROUTES, He as CONNECTION_STATUS_EVENT, Dr as ConditionalShell, On as ConsoleTransport, Lr as ContextConversationWidget, Pe as DEFAULT_PAGE_SIZE, ri as DEFAULT_QUOTA_UPGRADE_COPY, ke as DEFAULT_SHELL_CONFIG, R as DESKTOP_UPDATE_UNSUPPORTED, z as DESKTOP_WINDOW_STATE_DEFAULT, Fi as DesktopUpdateToast, Ii as DevtoolsSink, mr as ErrorBoundary, Sr as ErrorFallback, Gi as EventBusProvider, Bo as FE_SHARED_VERSION, jr as FeatureFlagProvider, Ir as FeatureGate, Fe as GATEWAYS, Sa as GLOBAL_SHORTCUT_CATEGORIES, dt as GatewayProvider, Un as INLINE_ENCODE, xt as InMemoryCache, Zr as KeyboardHelpDialogWrapper, hi as LandingGateView, gi as LandingOrDashboardRedirect, Cr as LoadingFallback, wn as LogLevel, En as LogManager, Tn as Logger, _a as MODIFIER_KEYS, Si as Markdown, Ja as MicrofrontendContext, Er as MicrofrontendErrorBoundary, Do as MicrofrontendProvider, Wi as OtelBrowserSink, Ra as PLAN_USAGE_SNAPSHOT_EVENT, va as PLATFORM_TYPES, Ce as PRODUCTS, ge as PRODUCT_SLUG_EMIT, _e as PRODUCT_SLUG_RENAMES, we as PRODUCT_URLS, or as PULL_TO_REFRESH_THRESHOLD, Aa as PUSH_DEVICE_ID_STORAGE_KEY, kr as PWAInstallBanner, wr as PageLoadingFallback, _r as PermissionButton, xr as PermissionDenied, vr as PermissionGate, yr as PermissionLink, Pn as QUOTA_EXHAUSTED_CODE, Fa as QUOTA_EXHAUSTED_EVENT, Qr as QuotaMeter, ii as QuotaUpgradeBridge, Fn as RESOURCE_CAP_EXCEEDED_CODE, hr as RequireAuth, gr as RequireGuest, Bi as RybbitSink, at as SSELink, nn as SSORedirectSpinner, ln as SSO_DEPOSITED_PARAM, In as STORAGE_QUOTA_EXCEEDED_CODE, nr as SafeAreaView, Tr as SectionLoadingFallback, wo as TourInitializer, so as TourPlayer, no as TourPlayerProvider, eo as TourSpotlight, to as TourTooltip, Oo as TourTrigger, co as TourTriggerButton, yo as ToursProvider, Ua as UNSAVED_CHANGE_LABEL_MAX, Ln as UPGRADE_ERROR_CODES, $r as UPGRADE_PROMPT_EVENT, ni as UpgradeInlineBanner, ei as UpgradePromptModal, _t as WsLink, ko as acknowledgeNativePurchase, r as alertTokens, Va as appendContextToPath, Qt as assignLocationWithAllowlist, Ot as attemptTokenRefresh, un as beginSsoNavigation, B as bootDesktopShell, fr as buildActorFallback, Rn as buildQuotaExhaustedMessage, dn as buildSsoDepositUrl, m as capitalizeFirst, h as capitalizeWords, ai as captureQuotaDialogOwners, i as categoryTokens, rn as checkRemoteSLO, an as checkSLO, oi as claimQuotaDialog, kt as clearAuthSessionStorage, Xe as clearGraphqlFetchResponseCache, on as clearLocalAuthState, Pt as clearSSoCookie, Ft as clearShellSsoCookies, fn as clearSsoDepositState, pn as clearSsoNavigation, kn as clearUserContext, Kn as cn, sr as computePullOffset, cr as computePullProgress, mn as consumeSsoDepositMarker, n as createApolloClient, Ki as createEventBus, Ca as createGlobalShortcuts, ot as createGraphQLClient, Mn as createProfileScopedStorage, V as desktopCheckForUpdates, H as desktopDeepLinkToPath, U as desktopInstallUpdate, W as desktopNotify, G as desktopOpenExternal, K as desktopSetBadgeCount, q as desktopSetLocale, J as desktopSetTheme, Y as desktopSetTrayQuickActions, Za as detectDeviceType, Rr as detectPlatform, Ue as dispatchBackendErrorEvent, si as dispatchProductQuotaExhausted, Ia as dispatchQuotaExhausted, ti as dispatchUpgradePrompt, Wn as downscaleImage, ve as emitProductSlug, We as extractBackendError, zn as extractQuotaExhaustedExtensions, Bn as extractUpgradeErrorExtensions, Te as findProductConfig, g as formatBytes, _ as formatCompactNumber, v as formatCurrency, y as formatCurrencyCompact, b as formatDate, x as formatDateTime, S as formatDuration, zr as formatKeyCombo, C as formatList, w as formatNumber, T as formatOrdinal, E as formatPercentage, D as formatRelativeTime, O as formatTime, a as getAlertTokens, I as getCapacitorPlatform, o as getCategoryTokens, X as getDesktopAuthBridgeConfig, Z as getDesktopBridge, Q as getDesktopGatewayBases, $ as getDesktopGatewayUrls, ee as getDesktopRuntimeConfig, te as getDesktopUpdateState, ne as getDesktopWindowState, Br as getDisplayKeysForPlatform, Ie as getGatewayConfig, Le as getGatewayUrl, st as getGlobalClient, wa as getGlobalShortcutsByCategory, Re as getGraphQLEndpoint, re as getLegacyDesktopRuntime, Ht as getNativeBridge, pi as getNativeEntryRoutes, Ao as getNativeProducts, jo as getNativePurchases, ja as getOrCreatePushDeviceId, Ut as getPlatform, Ee as getProductUrl, De as getProductsWithUrls, Nn as getProfileScopedKey, s as getProgressTokens, Io as getPushOptInController, Qa as getResponsiveSelector, sn as getSSORedirectUrl, It as getSSoCookie, Ae as getShellConfig, Vr as getShortcutLabel, c as getStatusBadgeTokens, l as getStatusTokens, Ze as getStoredAuthToken, Qe as getStoredLocale, $e as getStoredOrganizationId, et as getStoredProjectId, tt as getStoredWorkspaceId, nt as getStoredWorkspaceToken, uo as getTourContextRank, fo as getTourRouteCatalog, po as getTourRouteModules, mo as getTourRoutePages, u as getTrendTokens, ct as getWorkspaceClient, ze as getWorkspaceTokenPayload, St as gql, rt as graphqlFetch, At as hasAuthGraphQLErrors, _i as hasStoredValidSession, lt as initializeAppClients, An as initializeLogger, ie as installDesktopDeepLinkHandler, ae as installDesktopNavigateHandler, de as installGatewayFetchRewrite, Mo as installNativeIAP, Ge as isAbortError, $t as isAllowedRedirectUrl, Wt as isAndroid, jt as isAuthGraphQLError, Mt as isAuthNetworkError, Ke as isBackendErrorDisplay, L as isCapacitorNative, P as isChunkLoadError, oe as isDesktop, Gt as isElectron, Kt as isIOS, qt as isInstalledApp, Hr as isMac, Ur as isMobileDevice, Jt as isNative, No as isNativeIAPAvailable, Vn as isQuotaExhaustedError, ye as isSameProductSlug, Lt as isSharedSsoCookieDomain, je as isShellLessRoute, hn as isSsoNavigationPending, Yt as isStandalonePWA, Wr as isTabletDevice, ho as isTourVisibleForContext, qe as isTransportError, Rt as isTrustedSsoOrigin, Hn as isUpgradeError, Xt as isWeb, Zt as isWebBrowser, Be as isWorkspaceTokenValidForContext, F as lazyWithRetry, be as legacyProductSlug, Wa as listUnsavedChanges, Dn as logManager, Je as markConnectionHealthy, gn as markSsoDepositDone, _n as markSsoDepositPending, Gr as matchesKeyCombo, Ta as mergeShortcuts, vn as mintSsoSessionTokens, qn as nativeActionSheet, Jn as nativeConfirm, Yn as nativeCopyText, Xn as nativeImpact, Zn as nativeNotify, Qn as nativeOpenUrl, $n as nativeSelection, er as nativeShare, tr as nativeToast, Kr as normalizeKey, qr as normalizePlatformCombo, xe as normalizeProductSlug, go as normalizeTourPath, se as onDesktopUpdateState, ce as onDesktopWindowState, en as openUrlInNewTabWithAllowlist, Jr as parseKeyCombo, k as pluralize, vt as prepareWorkspaceRequest, d as progressTokens, za as publishPlanUsageSnapshot, Po as purchaseNativeProduct, ci as quotaEventKind, Vi as readAnalyticsConsent, Hi as readAnalyticsConsentChoice, rr as readInitialNetworkStatus, zt as readShellSsoCookie, yn as readSsoDepositState, Lo as recordPushPermissionPromptDismissed, Nt as redirectToLogin, cn as redirectToSSO, ir as reduceNetworkStatus, le as registerDesktopNavigator, Ma as registerPushDevice, Ro as registerPushOptInController, _o as registerTourRouteCatalog, Ga as registerUnsavedChange, tn as replaceLocationWithAllowlist, ut as resetAppClients, Ai as resolveActionSheetOutcome, Eo as resolveAppShellObservabilityConfig, me as resolveAuthBridgeConfig, fe as resolveGatewayBases, it as resolveGatewayUrl, ue as resolveGatewayUrls, vi as resolveLandingGate, li as resolveQuotaUpgradeCopy, he as resolveShellAuthBridgeConfig, vo as resolveTourTargetPath, Fo as restoreNativePurchases, Gn as selectInlineBase64, Ui as setAnalyticsConsent, Bt as setSSoCookie, Vt as setShellSsoCookies, jn as setUserContext, bn as shouldAttemptSsoDeposit, Yr as shouldEnableKeyboardShortcuts, Xr as shouldIgnoreShortcut, zo as shouldPromptForPushPermission, Me as shouldShowBreadcrumb, mi as shouldShowNativeWelcome, Ne as shouldShowSidebar, Ye as shouldToastBackendError, A as slugify, f as statusTokens, pe as suppressConsole, j as toCamelCase, M as toPascalCase, p as trendTokens, N as truncateText, Na as unregisterPushDevice, Ka as unsavedChangesBlocking, ji as useActionSheet, pr as useActorProfiles, Ct as useApolloClient, Ei as useAppState, ha as useAsync, ga as useAsyncImmediate, bo as useAutoStartTour, $i as useBreakpoint, da as useConditionalToggle, e as useCopyToClipboard, Ha as useCurrentContextSearchParams, Xi as useDebounce, Mi as useDesktop, Ni as useDesktopUpdateState, Pi as useDesktopWindowState, Di as useDeviceInfo, qi as useEvent, Ji as useEventBus, Yi as useEventEmitter, aa as useExclusiveMenu, Nr as useFeatureFlag, Pr as useFeatureFlagDetails, Fr as useFeatureFlagValue, Mr as useFeatureFlags, ft as useGateway, pt as useGatewayClient, Oi as useHaptics, Da as useHasAnimated, gt as useHasAuthToken, ba as useHotkeys, ro as useIsTourPlaying, ra as useKeyPress, ia as useKeyboardShortcut, ya as useKeyboardShortcuts, wt as useLazyQuery, oa as useLocalStorage, Ea as useLogger, t as useMediaQuery, Ya as useMicrofrontendContext, ea as useMobileBreakpoint, Tt as useMutation, Ti as useNativeKeyboard, Ci as useNativePlatform, ar as useNetworkStatus, ta as useOnClickOutside, na as useOnClickOutsideWithRef, Or as usePWA, ma as usePagination, lo as usePlayTour, ca as usePrevious, la as usePreviousDistinct, ua as usePreviousHistory, lr as usePullToRefresh, Pa as usePushDeviceRegistration, Et as useQuery, ui as useQuotaDialogOwnership, La as useQuotaErrorToast, di as useQuotaUpgradeBridge, ka as useRecordProductVisit, Oa as useReferralAttribution, Sn as useRegistryHelpers, ur as useReturnFocus, wi as useSafeArea, mt as useSafeGateway, ht as useSafeGatewayClient, xo as useSafeToursContext, sa as useSessionStorage, Cn as useShellNavigate, xa as useShortcutHelp, io as useStartTour, ki as useStatusBar, ao as useStopTour, Dt as useSubscription, Zi as useThrottle, fa as useToggle, pa as useToggleObject, $a as useTourPlayer, oo as useTourPlayerContext, So as useTours, Co as useToursContext, qa as useUnsavedChanges, Ba as useUpgradePrompt, yi as useVoiceInput, fi as withQuotaDialogOwnership, Xa as withTourProgressStatus };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/fe-libs",
3
- "version": "2026.1021.3",
3
+ "version": "2026.1021.5",
4
4
  "description": "Burdenoff frontend primitives and domain libraries",
5
5
  "type": "module",
6
6
  "bin": {