@burdenoff/fe-libs 2026.920.2 → 2026.920.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/shared/assistant/aiCredits.d.ts +9 -4
- package/dist/shared/assistant/aiCredits.d.ts.map +1 -1
- package/dist/shared/assistant/images.d.ts +15 -4
- package/dist/shared/assistant/images.d.ts.map +1 -1
- package/dist/shared/assistant/index.d.ts +2 -0
- package/dist/shared/assistant/index.d.ts.map +1 -1
- package/dist/shared/assistant/preview/bridgeHost.d.ts +26 -0
- package/dist/shared/assistant/preview/bridgeHost.d.ts.map +1 -0
- package/dist/shared/assistant/preview/bridgeHost.js +16 -0
- package/dist/shared/assistant/preview/bridgeHostContext.d.ts +17 -0
- package/dist/shared/assistant/preview/bridgeHostContext.d.ts.map +1 -0
- package/dist/shared/assistant/preview/bridgeHostContext.js +11 -0
- package/dist/shared/assistant/preview/useAssistantPreviewBridge.d.ts.map +1 -1
- package/dist/shared/assistant/store.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AIAssistantPanel.d.ts +4 -0
- package/dist/shared/assistant/ui/AIAssistantPanel.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AIAssistantPanel.js +63 -62
- package/dist/shared/assistant/ui/AssistantChatArea.d.ts +2 -2
- package/dist/shared/assistant/ui/AssistantChatArea.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantOverlay.d.ts +6 -0
- package/dist/shared/assistant/ui/AssistantOverlay.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantOverlay.js +93 -89
- package/dist/shared/assistant/useWorkspaceWriteAccess.d.ts +12 -9
- package/dist/shared/assistant/useWorkspaceWriteAccess.d.ts.map +1 -1
- package/dist/shared-assistant.js +42 -40
- package/package.json +1 -1
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import { QuotaKind } from './quota';
|
|
2
2
|
/**
|
|
3
|
-
* Fired after a successful AI-token charge so a live credits meter
|
|
3
|
+
* Fired after a successful AI-token charge so a live credits meter can refetch
|
|
4
4
|
* its balance.
|
|
5
5
|
*
|
|
6
|
-
* ★ Namespaced by product, like the quota event
|
|
7
|
-
* product
|
|
8
|
-
*
|
|
6
|
+
* ★ Namespaced by product, like the quota event: `<product>:ai-credits-updated`.
|
|
7
|
+
* A product that shows a credits meter subscribes to its own name; a product
|
|
8
|
+
* that shows none simply has no listener, and the dispatch costs nothing.
|
|
9
|
+
*
|
|
10
|
+
* ★ No census of listeners is kept here. The last one ("nothing listens in any
|
|
11
|
+
* product") was false by the time it was read — a product's meter hook had
|
|
12
|
+
* already subscribed — and a list in shared code cannot see into the products
|
|
13
|
+
* that consume it.
|
|
9
14
|
*/
|
|
10
15
|
export declare function aiCreditsUpdatedEventName(product: string): string;
|
|
11
16
|
export declare function notifyAiCreditsUpdated(product: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiCredits.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/aiCredits.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,SAAS,CAAC;AAEjB
|
|
1
|
+
{"version":3,"file":"aiCredits.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/aiCredits.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,GACd,IAAI,CASN"}
|
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
import { AssistantMode, BuiltInAssistantMode } from './types';
|
|
2
2
|
declare const ASSISTANT_API_AUTH_STRATEGY = "sandbox-app-client-headers-v1";
|
|
3
3
|
/**
|
|
4
|
-
* Resolve the sandbox-image registry:
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* Resolve the sandbox-image registry: `DEFAULT_SANDBOX_IMAGE_REGISTRY` (ECR),
|
|
5
|
+
* unless `VITE_SANDBOX_IMAGE_REGISTRY` is set in the environment of the build
|
|
6
|
+
* that compiles THIS SOURCE FILE.
|
|
7
|
+
*
|
|
8
|
+
* ★ In the published package that build is fe-libs' own, and its Vite config
|
|
9
|
+
* installs a guard that FAILS a CI build whose environment, env file or Vite
|
|
10
|
+
* `define` names any other registry (`scripts/published-registry-guard.ts`,
|
|
11
|
+
* pinned end to end by `publishedRegistryBuild.test.ts`). So every shell gets
|
|
12
|
+
* the default. The override still takes effect where a local Vite build
|
|
13
|
+
* compiles fe-libs from source — a shell aliasing a sibling checkout in
|
|
14
|
+
* development — and the variable is then that shell's.
|
|
15
|
+
*
|
|
16
|
+
* `import.meta.env` is only available in code paths Vite transforms; non-Vite
|
|
17
|
+
* test runners and SSR contexts may not see it, so the read is guarded (same
|
|
18
|
+
* pattern as config/gatewayUrls.ts).
|
|
8
19
|
*/
|
|
9
20
|
export declare function getSandboxImageRegistry(): string;
|
|
10
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/images.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/images.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAgBnE,QAAA,MAAM,2BAA2B,kCAAkC,CAAC;AAEpE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAShD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAM5E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,CAS/E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM,CAK5E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAeA;AAED,OAAO,EAAE,2BAA2B,EAAE,CAAC;AAEvC;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE;IACP,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,EACD,aAAa,GAAE,SAAS,aAAa,EAAO,GAC3C,aAAa,GAAG,IAAI,CAiBtB"}
|
|
@@ -120,6 +120,8 @@ export * from './ui/useDropdownEscape';
|
|
|
120
120
|
export * from './ui/useOverlayFocus';
|
|
121
121
|
export * from './ui/usePrefersReducedMotion';
|
|
122
122
|
export * from './preview/useAssistantPreviewBridge';
|
|
123
|
+
export * from './preview/bridgeHost';
|
|
124
|
+
export * from './preview/bridgeHostContext';
|
|
123
125
|
export * from './preview/AssistantPreviewOverlay';
|
|
124
126
|
export * from './ui/composer/AssistantLanguageSelector';
|
|
125
127
|
export * from './ui/composer/AssistantModeSelector';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { FC, ReactNode } from 'react';
|
|
2
|
+
import { AssistantPreviewController } from './types';
|
|
3
|
+
export interface AssistantPreviewBridgeHostProps {
|
|
4
|
+
/**
|
|
5
|
+
* The product's preview controller — the SAME object passed to the panel as
|
|
6
|
+
* `preview`, or the panel runs a second bridge. Keep it stable across renders
|
|
7
|
+
* (see `AssistantPreviewController`). Absent: nothing is bridged here.
|
|
8
|
+
*/
|
|
9
|
+
preview?: AssistantPreviewController | null;
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Run the preview bridge for `preview` for as long as THIS is mounted, and tell
|
|
14
|
+
* any panel below that it need not run one.
|
|
15
|
+
*
|
|
16
|
+
* `AssistantOverlay` mounts one for `panelProps.preview`, so a product that
|
|
17
|
+
* passes its controller that way gets a preview that keeps following a run
|
|
18
|
+
* after the assistant is closed. A host that mounts the panel itself can do the
|
|
19
|
+
* same by wrapping the place the panel comes and goes in this.
|
|
20
|
+
*
|
|
21
|
+
* ★ Unmounting THIS is still an ending: a run in flight gets `end(abandoned)`,
|
|
22
|
+
* as it did when the panel unmounted — the host has gone, and with it the only
|
|
23
|
+
* thing following the run.
|
|
24
|
+
*/
|
|
25
|
+
export declare const AssistantPreviewBridgeHost: FC<AssistantPreviewBridgeHostProps>;
|
|
26
|
+
//# sourceMappingURL=bridgeHost.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeHost.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/bridgeHost.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAiB1D,MAAM,WAAW,+BAA+B;IAC9C;;;;OAIG;IACH,OAAO,CAAC,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAC5C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,EAAE,EAAE,CAAC,+BAA+B,CAW1E,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { useAssistantPreviewBridge as e } from "./useAssistantPreviewBridge.js";
|
|
2
|
+
import { HostedPreviewBridgeContext as t } from "./bridgeHostContext.js";
|
|
3
|
+
import { jsx as n, jsxs as r } from "react/jsx-runtime";
|
|
4
|
+
//#region src/shared/assistant/preview/bridgeHost.tsx
|
|
5
|
+
function i({ controller: t }) {
|
|
6
|
+
return e(t), null;
|
|
7
|
+
}
|
|
8
|
+
var a = ({ preview: e, children: a }) => {
|
|
9
|
+
let o = e ?? null;
|
|
10
|
+
return /* @__PURE__ */ r(t.Provider, {
|
|
11
|
+
value: o,
|
|
12
|
+
children: [/* @__PURE__ */ n(i, { controller: o }), a]
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
//#endregion
|
|
16
|
+
export { a as AssistantPreviewBridgeHost };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { AssistantPreviewController } from './types';
|
|
2
|
+
/** The controller an `AssistantPreviewBridgeHost` above bridges, or null. */
|
|
3
|
+
export declare const HostedPreviewBridgeContext: import('react').Context<AssistantPreviewController | null>;
|
|
4
|
+
/**
|
|
5
|
+
* The controller an ancestor already runs the bridge for, or null when none
|
|
6
|
+
* does.
|
|
7
|
+
*/
|
|
8
|
+
export declare function useHostedAssistantPreviewBridge(): AssistantPreviewController | null;
|
|
9
|
+
/**
|
|
10
|
+
* The controller the PANEL should run its own bridge for: its `preview`, unless
|
|
11
|
+
* a host above it already runs the bridge for that very controller.
|
|
12
|
+
*
|
|
13
|
+
* ★ Identity, not presence. A host bridging controller A says nothing about a
|
|
14
|
+
* panel handed controller B; B still needs a bridge, and only the panel has it.
|
|
15
|
+
*/
|
|
16
|
+
export declare function panelOwnedPreviewBridge(preview: AssistantPreviewController | null | undefined, hosted: AssistantPreviewController | null): AssistantPreviewController | null;
|
|
17
|
+
//# sourceMappingURL=bridgeHostContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bridgeHostContext.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/bridgeHostContext.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAE1D,6EAA6E;AAC7E,eAAO,MAAM,0BAA0B,4DACiB,CAAC;AAEzD;;;GAGG;AACH,wBAAgB,+BAA+B,IAAI,0BAA0B,GAAG,IAAI,CAEnF;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,0BAA0B,GAAG,IAAI,GAAG,SAAS,EACtD,MAAM,EAAE,0BAA0B,GAAG,IAAI,GACxC,0BAA0B,GAAG,IAAI,CAGnC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createContext as e, useContext as t } from "react";
|
|
2
|
+
//#region src/shared/assistant/preview/bridgeHostContext.ts
|
|
3
|
+
var n = e(null);
|
|
4
|
+
function r() {
|
|
5
|
+
return t(n);
|
|
6
|
+
}
|
|
7
|
+
function i(e, t) {
|
|
8
|
+
return e ? e === t ? null : e : null;
|
|
9
|
+
}
|
|
10
|
+
//#endregion
|
|
11
|
+
export { n as HostedPreviewBridgeContext, i as panelOwnedPreviewBridge, r as useHostedAssistantPreviewBridge };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAssistantPreviewBridge.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/useAssistantPreviewBridge.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,0BAA0B,EAAyB,MAAM,SAAS,CAAC;AA2CjF,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,0BAA0B,GAAG,IAAI,GAC5C,IAAI,
|
|
1
|
+
{"version":3,"file":"useAssistantPreviewBridge.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/useAssistantPreviewBridge.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,0BAA0B,EAAyB,MAAM,SAAS,CAAC;AA2CjF,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,0BAA0B,GAAG,IAAI,GAC5C,IAAI,CA+MN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/store.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,10 @@ export type AIAssistantPanelProps = PanelProps & {
|
|
|
41
41
|
*
|
|
42
42
|
* ★ Absence is the off-switch — no controller, no toggle, no overlay and no
|
|
43
43
|
* events. There is deliberately no second flag that could disagree with it.
|
|
44
|
+
*
|
|
45
|
+
* ★★ Passed through `AssistantOverlay`'s `panelProps`, its events keep flowing
|
|
46
|
+
* after the panel closes: the overlay runs the bridge, and this panel then
|
|
47
|
+
* runs none for the same controller (BOFF-7367, see `bridgeHost.tsx`).
|
|
44
48
|
*/
|
|
45
49
|
preview?: AssistantPreviewController;
|
|
46
50
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AIAssistantPanel.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AIAssistantPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAU,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIvE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"AIAssistantPanel.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AIAssistantPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAU,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIvE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,6BAA6B,CAAC;AAkBrC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAGnE,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG;IAC/C,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,0BAA0B,CAAC;CACtC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAiOtD,CAAC"}
|
|
@@ -7,86 +7,87 @@ import { AssistantConnectSourceProvider as a } from "./composer/connectSource.js
|
|
|
7
7
|
import { ASSISTANT_OVERLAY_ATTR as o, ASSISTANT_PANEL_ATTR as s, activePanelOverlay as c, escapeDismisses as l, nextPanelOverlays as u } from "./panelOverlays.js";
|
|
8
8
|
import { AssistantPreviewProvider as d } from "../preview/context.js";
|
|
9
9
|
import { useAssistantPreviewBridge as f } from "../preview/useAssistantPreviewBridge.js";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
10
|
+
import { panelOwnedPreviewBridge as p, useHostedAssistantPreviewBridge as m } from "../preview/bridgeHostContext.js";
|
|
11
|
+
import { AssistantPreviewOverlay as h } from "../preview/AssistantPreviewOverlay.js";
|
|
12
|
+
import { AssistantHeader as g } from "./AssistantHeader.js";
|
|
13
|
+
import { AssistantConversationList as _ } from "./AssistantConversationList.js";
|
|
14
|
+
import { useFilesServiceWarmup as v } from "../../../storage/warmFilesService.js";
|
|
15
|
+
import { useAssistantHeartbeat as y } from "../useAssistantHeartbeat.js";
|
|
16
|
+
import { useAssistantKeyboardShortcuts as b } from "../useAssistantKeyboardShortcuts.js";
|
|
17
|
+
import { AssistantChatArea as x } from "./AssistantChatArea.js";
|
|
18
|
+
import { useRef as S, useState as C } from "react";
|
|
19
|
+
import { jsx as w, jsxs as T } from "react/jsx-runtime";
|
|
19
20
|
//#region src/shared/assistant/ui/AIAssistantPanel.tsx
|
|
20
|
-
var
|
|
21
|
-
let
|
|
22
|
-
|
|
23
|
-
let
|
|
24
|
-
f(
|
|
25
|
-
let
|
|
26
|
-
historyOpen:
|
|
27
|
-
previewOpen:
|
|
28
|
-
}),
|
|
21
|
+
var E = ({ onClose: E, visible: D, docked: O, onToggleDock: k, writeAccess: A, onNavigate: j, connectSourceHref: M, preview: N }) => {
|
|
22
|
+
let P = t(), [F, I] = C(!1);
|
|
23
|
+
F && !N && I(!1);
|
|
24
|
+
let L = F && !!N;
|
|
25
|
+
f(p(N, m()));
|
|
26
|
+
let R = S(null), { conversations: z, activeConversationId: B, conversationListOpen: V, setConversationListOpen: H, createConversation: U } = r(), W = V || L, G = c({
|
|
27
|
+
historyOpen: V,
|
|
28
|
+
previewOpen: L
|
|
29
|
+
}), K = (e) => {
|
|
29
30
|
let t = u({
|
|
30
|
-
historyOpen:
|
|
31
|
-
previewOpen:
|
|
31
|
+
historyOpen: V,
|
|
32
|
+
previewOpen: L
|
|
32
33
|
}, e);
|
|
33
|
-
|
|
34
|
-
},
|
|
35
|
-
|
|
36
|
-
let
|
|
37
|
-
return
|
|
38
|
-
panelRef:
|
|
34
|
+
H(t.historyOpen), I(t.previewOpen);
|
|
35
|
+
}, q = z.find((e) => e.id === B);
|
|
36
|
+
y(q?.backendSessionId ?? null, q?.mode ?? null, D ?? !0), v(D ?? !0);
|
|
37
|
+
let J = e(D !== !1);
|
|
38
|
+
return b({
|
|
39
|
+
panelRef: R,
|
|
39
40
|
onClose: () => {
|
|
40
41
|
if (l({
|
|
41
|
-
historyOpen:
|
|
42
|
-
previewOpen:
|
|
42
|
+
historyOpen: V,
|
|
43
|
+
previewOpen: L
|
|
43
44
|
}) === "overlay") {
|
|
44
|
-
|
|
45
|
+
H(!1), I(!1);
|
|
45
46
|
return;
|
|
46
47
|
}
|
|
47
|
-
|
|
48
|
+
E();
|
|
48
49
|
}
|
|
49
|
-
}), /* @__PURE__ */
|
|
50
|
-
visible:
|
|
51
|
-
children: /* @__PURE__ */
|
|
52
|
-
value:
|
|
53
|
-
children: /* @__PURE__ */
|
|
54
|
-
value:
|
|
55
|
-
children: /* @__PURE__ */
|
|
56
|
-
value:
|
|
57
|
-
children: /* @__PURE__ */
|
|
58
|
-
ref:
|
|
50
|
+
}), /* @__PURE__ */ w(i, {
|
|
51
|
+
visible: D ?? !0,
|
|
52
|
+
children: /* @__PURE__ */ w(d, {
|
|
53
|
+
value: N,
|
|
54
|
+
children: /* @__PURE__ */ w(n, {
|
|
55
|
+
value: j,
|
|
56
|
+
children: /* @__PURE__ */ w(a, {
|
|
57
|
+
value: M,
|
|
58
|
+
children: /* @__PURE__ */ T("div", {
|
|
59
|
+
ref: R,
|
|
59
60
|
className: "relative flex h-full w-full flex-col bg-bg-surface",
|
|
60
61
|
role: "complementary",
|
|
61
|
-
"aria-label":
|
|
62
|
+
"aria-label": P("panel.ariaLabel", "AI Assistant"),
|
|
62
63
|
"data-testid": "ai-assistant-panel",
|
|
63
64
|
[s]: "",
|
|
64
|
-
...
|
|
65
|
+
...G ? { [o]: G } : {},
|
|
65
66
|
tabIndex: -1,
|
|
66
67
|
children: [
|
|
67
|
-
/* @__PURE__ */
|
|
68
|
+
/* @__PURE__ */ w("div", {
|
|
68
69
|
className: "contents",
|
|
69
|
-
inert:
|
|
70
|
-
children: /* @__PURE__ */
|
|
71
|
-
contextLabel:
|
|
72
|
-
onNewConversation: () =>
|
|
73
|
-
onOpenHistory: () =>
|
|
74
|
-
historyOpen:
|
|
75
|
-
onTogglePreview: () =>
|
|
76
|
-
previewOpen:
|
|
77
|
-
onClose:
|
|
78
|
-
docked:
|
|
79
|
-
onToggleDock:
|
|
70
|
+
inert: W || void 0,
|
|
71
|
+
children: /* @__PURE__ */ w(g, {
|
|
72
|
+
contextLabel: J,
|
|
73
|
+
onNewConversation: () => U(),
|
|
74
|
+
onOpenHistory: () => K("history"),
|
|
75
|
+
historyOpen: V,
|
|
76
|
+
onTogglePreview: () => K("preview"),
|
|
77
|
+
previewOpen: L,
|
|
78
|
+
onClose: E,
|
|
79
|
+
docked: O,
|
|
80
|
+
onToggleDock: k
|
|
80
81
|
})
|
|
81
82
|
}),
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
/* @__PURE__ */
|
|
83
|
+
V && /* @__PURE__ */ w(_, {}),
|
|
84
|
+
L && /* @__PURE__ */ w(h, { onClose: () => I(!1) }),
|
|
85
|
+
/* @__PURE__ */ w("div", {
|
|
85
86
|
className: "contents",
|
|
86
|
-
inert:
|
|
87
|
-
children: /* @__PURE__ */
|
|
88
|
-
visible:
|
|
89
|
-
writeAccess:
|
|
87
|
+
inert: W || void 0,
|
|
88
|
+
children: /* @__PURE__ */ w(x, {
|
|
89
|
+
visible: D ?? !0,
|
|
90
|
+
writeAccess: A
|
|
90
91
|
})
|
|
91
92
|
})
|
|
92
93
|
]
|
|
@@ -97,4 +98,4 @@ var w = ({ onClose: w, visible: T, docked: E, onToggleDock: D, writeAccess: O, o
|
|
|
97
98
|
});
|
|
98
99
|
};
|
|
99
100
|
//#endregion
|
|
100
|
-
export {
|
|
101
|
+
export { E as AIAssistantPanel };
|
|
@@ -18,8 +18,8 @@ export interface AssistantChatAreaProps {
|
|
|
18
18
|
* does not earn a place in an interface every product must satisfy.
|
|
19
19
|
*
|
|
20
20
|
* Defaults to `'unknown'`, which is exactly the "say nothing" branch: a
|
|
21
|
-
* product that does not pass it
|
|
22
|
-
*
|
|
21
|
+
* product that does not pass it never shows the warning, and never makes a
|
|
22
|
+
* false claim in either direction.
|
|
23
23
|
*/
|
|
24
24
|
writeAccess?: WorkspaceWriteAccess;
|
|
25
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantChatArea.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AA2Ef,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAyDvE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"AssistantChatArea.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AA2Ef,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAyDvE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CA8uExD,CAAC"}
|
|
@@ -80,6 +80,12 @@ export interface AssistantOverlayProps {
|
|
|
80
80
|
/**
|
|
81
81
|
* Extra props for the default `AIAssistantPanel` — `writeAccess`,
|
|
82
82
|
* `connectSourceHref`, `preview`. The overlay's own props always win.
|
|
83
|
+
*
|
|
84
|
+
* ★★ `preview` is bridged HERE, by the overlay, not by the panel — so a
|
|
85
|
+
* product surface outside the panel keeps following a run after the assistant
|
|
86
|
+
* is closed (BOFF-7367). A `renderPanel` wrapper that hands its panel the
|
|
87
|
+
* same controller should pass it here too; one it passes only to its panel is
|
|
88
|
+
* bridged by that panel, for that panel's lifetime.
|
|
83
89
|
*/
|
|
84
90
|
panelProps?: Omit<AIAssistantPanelProps, keyof AssistantOverlayPanelProps>;
|
|
85
91
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantOverlay.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantOverlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAUL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"AssistantOverlay.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantOverlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAUL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI1C,OAAO,EAAoB,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAmBL,KAAK,oBAAoB,EAC1B,MAAM,yBAAyB,CAAC;AAEjC,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,+EAA+E;IAC/E,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAID,uEAAuE;AACvE,wBAAgB,yBAAyB,IAAI,4BAA4B,GAAG,IAAI,CAE/E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AA6BD;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,WAAW,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,GACnD,IAAI,CAaN;AAID,MAAM,WAAW,6BAA6B;IAC5C;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,KAAK,CAAC,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KACtD,CAAC;IACF,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,KAAK,EACL,QAAQ,GACT,EAAE,6BAA6B,2CAkE/B;AAED,mDAAmD;AACnD,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,0BAA0B,CAAC,CAAC;IAC3E;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,SAAS,CAAC;IAC/D;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9C,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gDAAgD;IAChD,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kFAAkF;IAClF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAOD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,kDAI5D"}
|
|
@@ -1,99 +1,100 @@
|
|
|
1
1
|
import { useAssistantTr as e } from "../i18n.js";
|
|
2
2
|
import { quotaExhaustedEventName as t } from "../quota.js";
|
|
3
3
|
import { assistantPanelOwnsEscape as n } from "./panelOverlays.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
4
|
+
import { AssistantPreviewBridgeHost as r } from "../preview/bridgeHost.js";
|
|
5
|
+
import { AIAssistantPanel as i } from "./AIAssistantPanel.js";
|
|
6
|
+
import { ASSISTANT_DOCK_WIDTH_VAR as a, ASSISTANT_OVERLAY_DESKTOP_QUERY as o, ASSISTANT_OVERLAY_TOP_VAR as s, aboveAssistantBottomChrome as c, assistantOverlayClassName as l, assistantOverlayEscapeAction as u, assistantOverlayKeys as d, assistantQuotaKindOf as f, createAssistantNavigate as p, isAssistantToggleShortcut as m, nextAssistantOpenState as h, publishedAssistantDockWidth as g, readAssistantOverlayFlag as _, requestedAssistantOpenState as v, writeAssistantOverlayFlag as y } from "./assistantOverlayState.js";
|
|
7
|
+
import { createContext as b, useCallback as x, useContext as S, useEffect as C, useMemo as w, useRef as T, useState as E, useSyncExternalStore as D } from "react";
|
|
8
|
+
import { Sparkles as O } from "lucide-react";
|
|
9
|
+
import { jsx as k, jsxs as A } from "react/jsx-runtime";
|
|
9
10
|
//#region src/shared/assistant/ui/AssistantOverlay.tsx
|
|
10
|
-
var j =
|
|
11
|
+
var j = b(null);
|
|
11
12
|
function M() {
|
|
12
|
-
return
|
|
13
|
+
return S(j);
|
|
13
14
|
}
|
|
14
15
|
function N() {
|
|
15
|
-
return
|
|
16
|
+
return S(j)?.dockWidthPx ?? 0;
|
|
16
17
|
}
|
|
17
18
|
var P = () => typeof window > "u" ? void 0 : window.sessionStorage, F = () => typeof window > "u" ? void 0 : window.localStorage;
|
|
18
19
|
function I(e) {
|
|
19
20
|
if (typeof window > "u" || typeof window.matchMedia != "function") return () => {};
|
|
20
|
-
let t = window.matchMedia(
|
|
21
|
+
let t = window.matchMedia(o);
|
|
21
22
|
return t.addEventListener("change", e), () => t.removeEventListener("change", e);
|
|
22
23
|
}
|
|
23
24
|
function L() {
|
|
24
25
|
return typeof window < "u" && typeof window.matchMedia == "function" && window.matchMedia("(min-width: 640px)").matches;
|
|
25
26
|
}
|
|
26
27
|
function R() {
|
|
27
|
-
return
|
|
28
|
+
return D(I, L, () => !1);
|
|
28
29
|
}
|
|
29
30
|
function z(e, n) {
|
|
30
|
-
let r =
|
|
31
|
-
|
|
31
|
+
let r = T(n);
|
|
32
|
+
C(() => {
|
|
32
33
|
r.current = n;
|
|
33
|
-
}, [n]),
|
|
34
|
+
}, [n]), C(() => {
|
|
34
35
|
if (!e || typeof window > "u") return;
|
|
35
|
-
let n = t(e), i = (e) => r.current(
|
|
36
|
+
let n = t(e), i = (e) => r.current(f(e), e);
|
|
36
37
|
return window.addEventListener(n, i), () => window.removeEventListener(n, i);
|
|
37
38
|
}, [e]);
|
|
38
39
|
}
|
|
39
40
|
var B = () => {};
|
|
40
41
|
function V({ keyPrefix: e, quota: t, children: n }) {
|
|
41
|
-
let r =
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
}, [r.openStorageKey,
|
|
45
|
-
|
|
46
|
-
}, [r.dockStorageKey, s]),
|
|
42
|
+
let r = w(() => d(e), [e]), [i, o] = E(() => _(P, r.openStorageKey)), [s, c] = E(() => _(F, r.dockStorageKey)), l = x(() => o(!0), []), u = x(() => o(!1), []), f = x(() => o((e) => !e), []), p = x(() => c((e) => !e), []);
|
|
43
|
+
C(() => {
|
|
44
|
+
y(P, r.openStorageKey, i);
|
|
45
|
+
}, [r.openStorageKey, i]), C(() => {
|
|
46
|
+
y(F, r.dockStorageKey, s);
|
|
47
|
+
}, [r.dockStorageKey, s]), C(() => {
|
|
47
48
|
if (typeof window > "u") return;
|
|
48
49
|
let e = (e) => {
|
|
49
|
-
let t =
|
|
50
|
-
o((e) =>
|
|
50
|
+
let t = v(e);
|
|
51
|
+
o((e) => h(e, t));
|
|
51
52
|
};
|
|
52
53
|
return window.addEventListener(r.toggleEvent, e), () => window.removeEventListener(r.toggleEvent, e);
|
|
53
|
-
}, [r.toggleEvent]),
|
|
54
|
+
}, [r.toggleEvent]), C(() => {
|
|
54
55
|
if (typeof document > "u") return;
|
|
55
56
|
let e = (e) => {
|
|
56
|
-
|
|
57
|
+
m(e) && (e.preventDefault(), o((e) => !e));
|
|
57
58
|
};
|
|
58
59
|
return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
|
|
59
60
|
}, []), z(t?.product ?? null, t?.onExhausted ?? B);
|
|
60
|
-
let
|
|
61
|
-
isOpen:
|
|
61
|
+
let b = g({
|
|
62
|
+
isOpen: i,
|
|
62
63
|
docked: s,
|
|
63
64
|
isDesktop: R()
|
|
64
65
|
});
|
|
65
|
-
|
|
66
|
+
C(() => {
|
|
66
67
|
if (typeof document > "u") return;
|
|
67
68
|
let e = document.documentElement.style;
|
|
68
|
-
return e.setProperty(
|
|
69
|
-
e.removeProperty(
|
|
69
|
+
return e.setProperty(a, `${b}px`), () => {
|
|
70
|
+
e.removeProperty(a);
|
|
70
71
|
};
|
|
71
|
-
}, [
|
|
72
|
-
let
|
|
73
|
-
isOpen:
|
|
72
|
+
}, [b]);
|
|
73
|
+
let S = w(() => ({
|
|
74
|
+
isOpen: i,
|
|
74
75
|
open: l,
|
|
75
|
-
close:
|
|
76
|
+
close: u,
|
|
76
77
|
toggle: f,
|
|
77
78
|
docked: s,
|
|
78
|
-
toggleDock:
|
|
79
|
-
dockWidthPx:
|
|
79
|
+
toggleDock: p,
|
|
80
|
+
dockWidthPx: b,
|
|
80
81
|
keys: r
|
|
81
82
|
}), [
|
|
82
|
-
|
|
83
|
+
i,
|
|
83
84
|
l,
|
|
84
|
-
|
|
85
|
+
u,
|
|
85
86
|
f,
|
|
86
87
|
s,
|
|
87
|
-
|
|
88
|
-
|
|
88
|
+
p,
|
|
89
|
+
b,
|
|
89
90
|
r
|
|
90
91
|
]);
|
|
91
92
|
return /* @__PURE__ */ k(j.Provider, {
|
|
92
|
-
value:
|
|
93
|
+
value: S,
|
|
93
94
|
children: n
|
|
94
95
|
});
|
|
95
96
|
}
|
|
96
|
-
var H = (e, t) => /* @__PURE__ */ k(
|
|
97
|
+
var H = (e, t) => /* @__PURE__ */ k(i, {
|
|
97
98
|
...e,
|
|
98
99
|
...t
|
|
99
100
|
});
|
|
@@ -104,68 +105,71 @@ function U(e) {
|
|
|
104
105
|
...e
|
|
105
106
|
}) : null;
|
|
106
107
|
}
|
|
107
|
-
function W({ state: t, panelId:
|
|
108
|
-
let { isOpen:
|
|
109
|
-
navigate:
|
|
110
|
-
isShellLessTarget:
|
|
108
|
+
function W({ state: t, panelId: i = "ai-assistant", panelProps: a, renderPanel: o, navigate: d, isShellLessTarget: f, topOffsetPx: m = 56, launcherIcon: h, launcherBottomInset: g = "1.5rem", showLauncher: _ = !0 }) {
|
|
109
|
+
let { isOpen: v, close: y, toggle: b, docked: x, toggleDock: S } = t, T = e(), [D, j] = E(!1), M = w(() => d ? p({
|
|
110
|
+
navigate: d,
|
|
111
|
+
isShellLessTarget: f,
|
|
111
112
|
isDesktop: L,
|
|
112
113
|
collapseSheet: () => j(!1),
|
|
113
114
|
openInNewTab: (e) => window.open(e, "_blank", "noopener,noreferrer")
|
|
114
|
-
}) : void 0, [
|
|
115
|
-
|
|
116
|
-
if (!
|
|
115
|
+
}) : void 0, [d, f]);
|
|
116
|
+
C(() => {
|
|
117
|
+
if (!v) return;
|
|
117
118
|
let e = (e) => {
|
|
118
|
-
|
|
119
|
+
u({
|
|
119
120
|
key: e.key,
|
|
120
|
-
isOpen:
|
|
121
|
+
isOpen: v,
|
|
121
122
|
dialogOpen: document.querySelector("[role=\"dialog\"],[role=\"alertdialog\"],dialog[open]") !== null,
|
|
122
123
|
panelOwnsEscape: n()
|
|
123
|
-
}) === "close" && (e.preventDefault(),
|
|
124
|
+
}) === "close" && (e.preventDefault(), y());
|
|
124
125
|
};
|
|
125
126
|
return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
|
|
126
|
-
}, [
|
|
127
|
+
}, [v, y]);
|
|
127
128
|
let N = {
|
|
128
|
-
panelId:
|
|
129
|
+
panelId: i,
|
|
129
130
|
visible: !0,
|
|
130
|
-
onClose:
|
|
131
|
-
docked:
|
|
132
|
-
onToggleDock:
|
|
131
|
+
onClose: y,
|
|
132
|
+
docked: x,
|
|
133
|
+
onToggleDock: S,
|
|
133
134
|
onNavigate: M
|
|
134
|
-
}, P =
|
|
135
|
-
return /* @__PURE__ */ A(
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
135
|
+
}, P = T("overlay.launcher", "AI Assistant"), F = { [s]: `${m}px` };
|
|
136
|
+
return /* @__PURE__ */ A(r, {
|
|
137
|
+
preview: a?.preview,
|
|
138
|
+
children: [v && /* @__PURE__ */ A("div", {
|
|
139
|
+
className: l({
|
|
140
|
+
expanded: D,
|
|
141
|
+
docked: x
|
|
142
|
+
}),
|
|
143
|
+
style: F,
|
|
144
|
+
"data-testid": "assistant-overlay",
|
|
145
|
+
children: [/* @__PURE__ */ k("button", {
|
|
146
|
+
type: "button",
|
|
147
|
+
onClick: () => j((e) => !e),
|
|
148
|
+
className: "flex w-full shrink-0 justify-center pt-2 pb-1 sm:hidden",
|
|
149
|
+
"aria-label": D ? T("sheet.collapse", "Shrink the assistant") : T("sheet.expand", "Expand the assistant"),
|
|
150
|
+
"aria-expanded": D,
|
|
151
|
+
"data-testid": "assistant-sheet-handle",
|
|
152
|
+
children: /* @__PURE__ */ k("span", { className: "h-1.5 w-10 rounded-full bg-border-strong" })
|
|
153
|
+
}), /* @__PURE__ */ k("div", {
|
|
154
|
+
className: "flex min-h-0 flex-1 flex-col",
|
|
155
|
+
children: o ? o(N) : H(a, N)
|
|
156
|
+
})]
|
|
157
|
+
}), _ && /* @__PURE__ */ k("button", {
|
|
143
158
|
type: "button",
|
|
144
|
-
onClick:
|
|
145
|
-
|
|
146
|
-
"aria-label":
|
|
147
|
-
"aria-
|
|
148
|
-
"
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
className: "
|
|
152
|
-
children:
|
|
159
|
+
onClick: b,
|
|
160
|
+
title: T("overlay.launcherTitle", "AI Assistant ({{shortcut}})", { shortcut: "Ctrl+Shift+A" }),
|
|
161
|
+
"aria-label": P,
|
|
162
|
+
"aria-haspopup": "dialog",
|
|
163
|
+
"aria-expanded": v,
|
|
164
|
+
"data-testid": "assistant-fab",
|
|
165
|
+
style: { bottom: c(g) },
|
|
166
|
+
className: "fixed right-6 z-30 size-14 items-center justify-center rounded-full border border-border-strong bg-[var(--color-accent-soft)] text-action-primary-bg shadow-float transition-colors duration-200 hover:border-action-primary-bg focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)] cursor-pointer " + (v ? "hidden sm:inline-flex" : "inline-flex"),
|
|
167
|
+
children: h ?? /* @__PURE__ */ k(O, {
|
|
168
|
+
className: "size-6",
|
|
169
|
+
"aria-hidden": "true"
|
|
170
|
+
})
|
|
153
171
|
})]
|
|
154
|
-
})
|
|
155
|
-
type: "button",
|
|
156
|
-
onClick: y,
|
|
157
|
-
title: w("overlay.launcherTitle", "AI Assistant ({{shortcut}})", { shortcut: "Ctrl+Shift+A" }),
|
|
158
|
-
"aria-label": P,
|
|
159
|
-
"aria-haspopup": "dialog",
|
|
160
|
-
"aria-expanded": _,
|
|
161
|
-
"data-testid": "assistant-fab",
|
|
162
|
-
style: { bottom: s(h) },
|
|
163
|
-
className: "fixed right-6 z-30 size-14 items-center justify-center rounded-full border border-border-strong bg-[var(--color-accent-soft)] text-action-primary-bg shadow-float transition-colors duration-200 hover:border-action-primary-bg focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)] cursor-pointer " + (_ ? "hidden sm:inline-flex" : "inline-flex"),
|
|
164
|
-
children: m ?? /* @__PURE__ */ k(D, {
|
|
165
|
-
className: "size-6",
|
|
166
|
-
"aria-hidden": "true"
|
|
167
|
-
})
|
|
168
|
-
})] });
|
|
172
|
+
});
|
|
169
173
|
}
|
|
170
174
|
//#endregion
|
|
171
175
|
export { U as AssistantOverlay, V as AssistantOverlayProvider, N as useAssistantDockWidth, M as useAssistantOverlayOrNull, z as useAssistantQuotaExhausted };
|
|
@@ -9,16 +9,19 @@
|
|
|
9
9
|
* a permission error. The two questions have different answers and both are
|
|
10
10
|
* legitimate; this hook asks the second one.
|
|
11
11
|
*
|
|
12
|
-
* ★
|
|
13
|
-
* (HTTP 200, no errors) with `allowed: false`,
|
|
14
|
-
* and a null role — for an org OWNER.
|
|
15
|
-
*
|
|
12
|
+
* ★ What it can look like: measured 2026-09-02 against prod, `checkPermissions`
|
|
13
|
+
* answered cleanly (HTTP 200, no errors) with `allowed: false`,
|
|
14
|
+
* `decisionPath: "default:deny"` and a null role — for an org OWNER. That was
|
|
15
|
+
* ONE workspace whose roles had never been initialised (fixed 2026-09-07 by
|
|
16
|
+
* `initializeWorkspaceRoles`), not the platform: workspaces are seeded with
|
|
17
|
+
* their role templates, and for a member whose role grants the probed actions
|
|
18
|
+
* this returns `granted`.
|
|
16
19
|
*
|
|
17
|
-
* ★ Which is exactly why this hook only WARNS.
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
20
|
+
* ★ Which is exactly why this hook only WARNS. The `@rbac` check on each
|
|
21
|
+
* mutation is the authority; a client-side read like this one can be wrong —
|
|
22
|
+
* an uninitialised workspace, a stale role — and a GATE built on it would hide
|
|
23
|
+
* Take-action from a person who is allowed to use it. A warning that turns out
|
|
24
|
+
* to be unnecessary costs a sentence; a wrong gate costs the mode.
|
|
22
25
|
*
|
|
23
26
|
* Fails OPEN on error or while loading: a network blip must not accuse someone
|
|
24
27
|
* of lacking a permission they may well have.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWorkspaceWriteAccess.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/useWorkspaceWriteAccess.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"useWorkspaceWriteAccess.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/useWorkspaceWriteAccess.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAwBH,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEpE,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,cAAc,EAAE,SAAS,MAAM,EAAE,GAChC,oBAAoB,CAkDtB"}
|
package/dist/shared-assistant.js
CHANGED
|
@@ -87,43 +87,45 @@ import { AssistantEntityPreview as go } from "./shared/assistant/preview/entity/
|
|
|
87
87
|
import { useOverlayFocus as _o } from "./shared/assistant/ui/useOverlayFocus.js";
|
|
88
88
|
import { REDUCED_MOTION_ATTRIBUTE as vo, REDUCED_MOTION_QUERY as yo, readReducedMotion as bo, subscribeReducedMotion as xo, usePrefersReducedMotion as So } from "./shared/assistant/ui/usePrefersReducedMotion.js";
|
|
89
89
|
import { useAssistantPreviewBridge as Co } from "./shared/assistant/preview/useAssistantPreviewBridge.js";
|
|
90
|
-
import {
|
|
91
|
-
import {
|
|
92
|
-
import {
|
|
93
|
-
import {
|
|
94
|
-
import {
|
|
95
|
-
import {
|
|
96
|
-
import {
|
|
97
|
-
import {
|
|
98
|
-
import {
|
|
99
|
-
import {
|
|
100
|
-
import {
|
|
101
|
-
import {
|
|
102
|
-
import {
|
|
103
|
-
import {
|
|
104
|
-
import {
|
|
105
|
-
import {
|
|
106
|
-
import {
|
|
107
|
-
import {
|
|
108
|
-
import {
|
|
109
|
-
import {
|
|
110
|
-
import {
|
|
111
|
-
import {
|
|
112
|
-
import {
|
|
113
|
-
import {
|
|
114
|
-
import {
|
|
115
|
-
import {
|
|
116
|
-
import {
|
|
117
|
-
import {
|
|
118
|
-
import {
|
|
119
|
-
import {
|
|
120
|
-
import {
|
|
121
|
-
import {
|
|
122
|
-
import {
|
|
123
|
-
import {
|
|
124
|
-
import {
|
|
125
|
-
import {
|
|
126
|
-
import {
|
|
127
|
-
import {
|
|
128
|
-
import {
|
|
129
|
-
export { Ti as ADMIN_MODE_ACCESS_WAIT_MS, vs as AIAssistantPanel, q as ASSISTANT_API_AUTH_STRATEGY, ys as ASSISTANT_BOTTOM_CHROME_CLEARANCE, bs as ASSISTANT_DIALOG_SELECTOR, xs as ASSISTANT_DOCKED_DESKTOP_CLASS, Ss as ASSISTANT_DOCK_WIDTH_PX, Cs as ASSISTANT_DOCK_WIDTH_VAR, ws as ASSISTANT_FLOATING_DESKTOP_CLASS, bi as ASSISTANT_I18N_COMPUTED_COPY, xi as ASSISTANT_I18N_LITERAL_COPY, Si as ASSISTANT_I18N_MANIFEST, or as ASSISTANT_LANGUAGES, L as ASSISTANT_MODE_FALLBACK_LABELS, R as ASSISTANT_MODE_IDS, Do as ASSISTANT_MODE_META, Pa as ASSISTANT_OVERLAY_ATTR, Ts as ASSISTANT_OVERLAY_DEFAULT_TOP_PX, Es as ASSISTANT_OVERLAY_DESKTOP_QUERY, Ds as ASSISTANT_OVERLAY_TOP_VAR, Fa as ASSISTANT_PANEL_ATTR, Os as ASSISTANT_SHEET_BASE_CLASS, ks as ASSISTANT_SHEET_COMPACT_CLASS, As as ASSISTANT_SHEET_EXPANDED_CLASS, js as ASSISTANT_TOGGLE_SHORTCUT_LABEL, Pr as ATTACHMENT_ACCEPT, _i as ATTACHMENT_SOURCES, Mo as AUTO_VOICE, gs as AssistantApiCallsConsentDialog, Wa as AssistantAttachmentButton, Ga as AssistantAttachmentChips, wa as AssistantAutoSpeakToggle, ma as AssistantAvatar, _s as AssistantChatArea, fs as AssistantComposer, Na as AssistantConnectSourceItem, ja as AssistantConnectSourceProvider, Yo as AssistantConversationList, Xo as AssistantEmptyState, go as AssistantEntityPreview, Jo as AssistantHeader, s as AssistantI18nProvider, Da as AssistantLanguageMenu, To as AssistantLanguageSelector, f as AssistantMarkdownImage, h as AssistantMarkdownRenderer, Ta as AssistantMessageAttachments, $o as AssistantMessageItem, es as AssistantMessageList, Oo as AssistantModeSelector, qo as AssistantMoreMenu, g as AssistantNavigateProvider, Ws as AssistantOverlay, Gs as AssistantOverlayProvider, Ea as AssistantPendingWriteCard, wo as AssistantPreviewOverlay, Ka as AssistantPreviewProvider, t as AssistantProductProvider, Oa as AssistantReplyLanguageSelector, Pe as AssistantRuntimeManager, ka as AssistantSpeakButton, ha as AssistantSpeechProvider, Aa as AssistantSpokenTurnsNotice, ho as AssistantStepRail, ua as AssistantToolActivity, Zo as AssistantTurnActivity, jo as AssistantVoiceButton, Po as AssistantVoiceOrb, No as AssistantVoiceSelector, ts as AssistantVoiceSession, Fo as AssistantVoiceSessionButton, Fr as AttachmentRejectedError, mr as BOILERPLATE_PAGE_SHARE, qe as BUILT_IN_MODE_CAPABILITIES, Io as CAPTION_SCROLL_ATTR, O as CHECK_AI_CREDITS, k as CREATE_SANDBOX, Ir as DEFAULT_INLINE_LIMITS, zn as DEFAULT_SPEAKABLE_LABELS, sr as DEFAULT_SPEECH_RATE, tt as DEFAULT_STREAM_BUDGET_MS, wn as ENDPOINT_GRACE_MS, A as EXTEND_SANDBOX_TTL, Eo as FOLLOW_APP_LOCALE, j as GET_ACTIVE_SANDBOXES, M as GET_SANDBOX, yt as HOSTED_DISABLE_MS, bt as HOSTED_TTS_MAX_CHARS, ht as HOSTED_TTS_TIER, gt as HOSTED_VOICES, Nt as HOSTED_VOICE_RANK, so as IDLE_ACTIVE_TAB, Hi as IDLE_PLAYBACK, Qa as IDLE_PREVIEW, Ja as IDLE_PREVIEW_STATE, yn as IDLE_ROTATION_CLOCK, nt as INCOMPLETE_TURN_NOTICES, Tn as INITIAL_SESSION, Lr as INLINE_IMAGE_MAX_DIM, Rr as INLINE_IMAGE_QUALITY, En as INTERRUPT_MAX_MS, Dn as INTERRUPT_MIN_MS, ji as LEGACY_WRITE_CONSENT_KEY, Je as MAX_ASSISTANT_STREAM_BUDGET_MS, zr as MAX_ATTACHMENTS, hr as MAX_BOILERPLATE_LINE_CHARS, Br as MAX_CONFIGURABLE_INLINE_CHARS, gr as MAX_EXTRACTED_CHARS, Vr as MAX_FILE_BYTES, Hr as MAX_INLINE_CHARS_PER_FILE, Ur as MAX_INLINE_CHARS_TOTAL, ie as MAX_INLINE_IMAGE_BASE64_BYTES, Wr as MAX_INLINE_IMAGE_BASE64_CHARS, Gr as MAX_INLINE_IMAGE_PARTS, Kr as MAX_INLINE_TURN_BODY_BYTES, _r as MAX_PDF_PAGES_SCANNED, ae as MAX_REQUEST_BODY_BYTES, Bn as MAX_SPEAKABLE_CHARS, Vn as MAX_SPOKEN_TABLE_ROWS, qr as MAX_TURN_BODY_BYTES, Zn as MINI_CAPTION_BUDGET, vr as MIN_PAGE_TEXT_CHARS, yr as MIN_TEXT_PAGE_SHARE, $a as NO_OWNER, Ia as NO_PANEL_OVERLAY, sn as PHRASE_ROTATE_MS, $n as POLL_FAST_MS, er as POLL_FAST_UNTIL_MS, tr as POLL_SLOW_MS, nr as POLL_STEADY_MS, rr as POLL_STEADY_UNTIL_MS, Yn as PREVIEW_LANGUAGES, V as PRODUCT_ASSISTANT_MODE_ID_MAX_LENGTH, H as PRODUCT_ASSISTANT_MODE_ID_PATTERN, Jr as PROMPT_ENVELOPE_RESERVE_BYTES, Yr as PROVIDER_READABLE_FILE_MEDIA_TYPES, N as PROXY_SANDBOX_REQUEST, vo as REDUCED_MOTION_ATTRIBUTE, yo as REDUCED_MOTION_QUERY, P as REPORT_AI_TOKEN_USAGE, oe as REQUEST_TOO_LARGE_REFUSAL, xa as SANDBOX_READY_TTL_MS, On as SILENCE_SUBMIT_MS, xt as SPEAKING_RATE_MAX, St as SPEAKING_RATE_MAX_STREAMING, Ct as SPEAKING_RATE_MAX_SYNC, wt as SPEAKING_RATE_MIN, Hn as SPEECH_CHUNK_CHARS, Un as SPEECH_CHUNK_CJK_CHARS, Pt as SPEECH_LANG, Ri as SPOKEN_LABEL_LANGUAGES, cn as STAGE_COPY, F as STOP_ASSISTANT_SANDBOX, rt as STREAM_BUDGET_MS, Mi as TAKE_ACTION_ENGLISH, ln as THINKING_PHRASES, Xr as TURN_BODY_HEADROOM_BYTES, Qo as TurnActivityLine, Ye as UNAVAILABLE_MODE_REFUSAL, Xe as UNDECLARED_MODE_CAPABILITIES, Ft as VOICE_LIST_TIMEOUT_MS, mn as VOICE_MUTED_LABEL, hn as VOICE_THINKING_LABEL, Lo as VoiceCaption, Ro as VoiceConversationView, Ho as VoiceMiniController, Uo as VoiceStage, Bo as VoiceStatusLine, Vo as VoiceStatusText, Wo as VoiceTranscriptDrawer, zo as VoiceWaveform, I as WAIT_FOR_SANDBOX_RUNNING, se as abortAssistantTurn, Ms as aboveAssistantBottomChrome, La as activePanelOverlay, Ze as adminOnlyModeSendRefusal, Ei as adminOnlyModeSendRefusalAfterAccess, bn as advanceRotationClock, os as aiCreditsUpdatedEventName, eo as applyPreviewEvent, ce as approvePendingWrite, Ci as assistantI18nSeedCopy, z as assistantModeFallbackLabel, wi as assistantModeI18nCopy, ko as assistantModeMeta, Ns as assistantOverlayClassName, Ps as assistantOverlayEscapeAction, Fs as assistantOverlayKeys, Ra as assistantPanelOwnsEscape, Is as assistantQuotaKindOf, _ as assistantRoutePath, c as assistantTranslationKey, v as assistantUrlTransform, vi as availableAttachmentSources, Tt as base64ToBytes, y as browserShouldHandle, mt as browserSpeechEngine, la as buildAssistantProgress, le as buildAssistantSandboxEnv, Zr as buildAttachmentPromptBlock, Ai as buildBoundedAttachmentTurn, In as buildContinuedFromVoiceNote, Fe as buildProgress, ue as buildPromptGatewayRequest, Qr as buildPromptParts, de as buildPromptRequestBody, $r as buildPromptWithAttachments, Et as buildRequest, E as buildSandboxContextInput, Ln as buildVoiceTranscriptMarkdown, U as builtInModeExtendedBy, st as chatTurns, fe as checkAssistantAiCredits, Wn as chunkForSpeech, b as classifyAssistantHref, ei as classifyAttachment, Dt as classifyHttpFailure, S as classifyQuotaError, br as columnLetterToIndex, gn as composeVoiceStatus, Jt as configureSpeechEngine, Gn as containsCjk, d as copyToClipboard, ti as countInlineImageCandidates, ni as countInlinedImageParts, fa as countSpokenTurns, Di as createAdminModeAccessGate, Ls as createAssistantNavigate, to as createAssistantPreviewSurface, pe as createAssistantSandbox, me as createAssistantSession, Mt as createHostedTtsEngine, Sa as createReadinessTracker, qt as createRoutingSpeechEngine, ao as createRunIdentityCache, Ge as createSandboxAssistantTransport, Yt as createSpeechEngines, no as currentPreviewOwner, W as declareAssistantMode, Ot as decodeAudioResponse, xr as decodeXmlEntities, C as describeQuotaError, ri as detectDocumentFormat, Bi as detectScriptLocale, yi as deviceHasCamera, kt as disableDurationMs, ss as dispatchAssistantQuotaExhausted, Sr as docxXmlToText, he as downloadAssistantArtifact, Go as downloadFile, ia as elapsedSince, za as escapeDismisses, ii as estimateTurnBodyBytes, D as executeSandboxGraphQL, Ko as exportConversation, ge as extendAssistantSandboxTTL, us as extractDocumentText, cr as findAssistantLanguage, Qe as findAssistantModeConfig, _e as findExistingSandbox, fr as findPendingWrite, Cr as fitPdfPages, Ba as focusIsInsidePanel, ai as formatBytes, wr as formatPageRanges, ve as forwardsUserTokensToSandbox, va as getActorId, ye as getAssistantArtifacts, ra as getAssistantDisplayContent, Ie as getAssistantMedia, be as getAssistantMessages, xe as getAssistantSession, Se as getAssistantStreamAccess, Le as getAssistantText, oi as getAttachmentSendBlocker, ee as getCapability, si as getExtension, J as getImageForMode, Y as getImageTagForMode, ya as getOrganizationId, Re as getRawMessageCreatedAt, X as getResourcesForMode, Z as getSandboxImageRegistry, ci as getSendableAttachments, Xt as getSpeechEngine, ze as getToolProgress, ba as getWorkspaceId, ct as groupBySession, lt as groupConsecutiveBySession, li as hasAttachmentWorkInFlight, _t as hostedLocaleFor, vt as hostedSupportsLanguage, p as imageHostLabel, it as incompleteTurnNotice, G as isAssistantModeId, Rs as isAssistantToggleShortcut, Ya as isBlankProse, B as isBuiltInAssistantMode, kn as isCapturing, An as isEcho, It as isHostedVoice, $i as isLegacyFiller, ea as isLegacyStopped, Tr as isMostlyImagePages, is as isMultimodalBodyRejection, ps as isProdRuntime, K as isProductAssistantModeId, ui as isProviderReadableFilePart, w as isQuotaExhaustedError, Be as isReapedSandboxConnectionError, Ca as isRecentlyVerified, Ve as isRecoverable, as as isRecoverableAssistantError, m as isRemoteImageSrc, Xa as isRunningStatus, Ui as isSpeakingMessage, Lt as isSpeechBlocked, ta as isStageCopy, jn as isSubmittable, Xi as isTurnInFlight, te as isUnknownFieldError, ut as isVoiceTurn, Ni as isWriteModeAcknowledged, Er as joinSheets, Rt as languageDisplayName, di as largestInlineCharsPerFile, He as mapSessionToHistory, ne as markSupported, re as markUnsupported, Ue as mergeMessagesById, qi as mergePersistedAssistantState, en as micIsInterrupt, Ce as modeRequiresConfirmWrites, aa as msUntilNextPhrase, co as nextActiveTab, zs as nextAssistantOpenState, Ao as nextModeIndex, Va as nextPanelOverlays, Za as nextPreviewEvents, zt as normalizeLangTag, cs as notifyAiCreditsUpdated, Mn as orbMode, Dr as pageMarker, Ha as panelOwnsEscape, pr as parseConfirmationRefusal, fi as parseDataUrl, Or as parseSharedStrings, da as parseToolActivity, kr as parseWorkbookSheets, Ar as pdfTextItemsToPage, lo as pinActiveTab, Zi as planAbandonedTurn, Nn as planReplyConsumption, Qi as planTurnAbort, ir as pollDelayMs, Bt as primaryLanguageSubtag, we as promptGatewayRequestBytes, Bs as publishedAssistantDockWidth, Wi as publishedChunks, T as quotaExhaustedEventName, Vs as readAssistantOverlayFlag, bo as readReducedMotion, Zt as readSpeechEngineConfig, Te as releaseSupersededAssistantSandboxes, ur as replyFollowsInput, Ee as reportAssistantAiTokenUsage, Hs as requestedAssistantOpenState, Gi as requiresCancel, Qt as resetSpeechEngine, Ji as resolveActiveModeSandbox, pi as resolveAssistantInlineLimits, lr as resolveAssistantLanguage, $e as resolveAssistantModeCapabilities, Oi as resolveAssistantSendModeAfterAccess, dr as resolveLanguagePair, n as resolveModeConfig, Q as resolveSandboxAssistantMode, Vi as resolveSpeechLocale, Pi as restoreAcknowledgedWriteModes, xn as rotationElapsedMs, ro as runBelongsTo, oo as runIdentities, io as sameOwner, $ as sandboxBaseModeFor, We as sanitize, De as selectExistingAssistantSandbox, Oe as selectSupersededAssistantSandboxes, Vt as selectVoiceForLocale, ke as sendAssistantPromptAsync, Ae as sendHeartbeat, jr as sheetXmlToRows, At as shouldDisableEngine, uo as shouldPinOnMove, fo as shouldPinOnSelect, Qn as showPreviousChunk, tn as showsAssistantCaption, nn as showsUserCaption, Kn as speakableEmail, Ht as speechGate, zi as speechLabelsFor, Ut as speechLangForLocale, Ki as speechPlaybackReducer, jt as splitForVendor, qn as splitTableRow, Pn as spokenSoFar, pa as spokenTurnText, un as stageText, oa as startPhraseTicker, Sn as startRotationTicker, dn as statusStageCopy, po as stepsFromToolActivity, je as stopReapedAssistantSandbox, at as streamBudgetMs, na as stripLegacyFillerPrefix, xo as subscribeReducedMotion, $t as subscribeSpeechEngine, Mr as summarisePageText, Cn as syncRotationClock, mo as tabForArrowKey, fn as thinkingPhrase, pn as thinkingPhraseEntry, ar as toCaptionText, mi as toMessageAttachment, Jn as toSpeakableText, hi as truncateForInline, Nr as truncatePagesForInline, sa as turnActivityCopy, ca as turnActivityStage, et as unofferedModeSendRefusal, ki as unofferedModeSendRefusalAfterAccess, ns as useAssistantApiAccess, ds as useAssistantAttachments, Ma as useAssistantConnectSource, Ks as useAssistantDockWidth, ms as useAssistantHeartbeat, l as useAssistantI18nNamespace, hs as useAssistantKeyboardShortcuts, x as useAssistantNavigate, qs as useAssistantOverlayOrNull, r as useAssistantPageLabel, qa as useAssistantPreview, Co as useAssistantPreviewBridge, i as useAssistantProduct, a as useAssistantProductOrNull, Js as useAssistantQuotaExhausted, ga as useAssistantSpeech, o as useAssistantStorageFolders, Yi as useAssistantStore, u as useAssistantTr, rs as useConversationTurns, Ua as useDropdownEscape, _o as useOverlayFocus, So as usePrefersReducedMotion, Ke as useSandboxAssistantTransport, e as useVoiceInput, _a as useVoiceSession, ls as useWorkspaceWriteAccess, gi as validateFile, Wt as voiceAvailability, dt as voiceMarker, Xn as voicePreviewText, Gt as voiceQualityRank, ft as voiceSessionIdOf, Fn as voiceSessionReducer, rn as voiceStageState, _n as voiceStatusParts, vn as voiceStatusSuffix, Rn as voiceTranscriptFilename, pt as voiceTurnsOnly, Kt as voicesForLocale, Me as waitForAssistantServiceReady, Ne as waitForSandboxRunning, an as waveformIsActive, on as waveformIsSettled, ot as withIncompleteTurnNotice, Fi as withWriteModeAcknowledged, Us as writeAssistantOverlayFlag, Ii as writeModeConsentCopy, Li as writeModeSendRefusal };
|
|
90
|
+
import { HostedPreviewBridgeContext as wo, panelOwnedPreviewBridge as To, useHostedAssistantPreviewBridge as Eo } from "./shared/assistant/preview/bridgeHostContext.js";
|
|
91
|
+
import { AssistantPreviewBridgeHost as Do } from "./shared/assistant/preview/bridgeHost.js";
|
|
92
|
+
import { AssistantPreviewOverlay as Oo } from "./shared/assistant/preview/AssistantPreviewOverlay.js";
|
|
93
|
+
import { AssistantLanguageSelector as ko, FOLLOW_APP_LOCALE as Ao } from "./shared/assistant/ui/composer/AssistantLanguageSelector.js";
|
|
94
|
+
import { ASSISTANT_MODE_META as jo, AssistantModeSelector as Mo, assistantModeMeta as No, nextModeIndex as Po } from "./shared/assistant/ui/composer/AssistantModeSelector.js";
|
|
95
|
+
import { AssistantVoiceButton as Fo } from "./shared/assistant/ui/composer/AssistantVoiceButton.js";
|
|
96
|
+
import { AUTO_VOICE as Io, AssistantVoiceSelector as Lo } from "./shared/assistant/ui/composer/AssistantVoiceSelector.js";
|
|
97
|
+
import { AssistantVoiceOrb as Ro } from "./shared/assistant/ui/voice/AssistantVoiceOrb.js";
|
|
98
|
+
import { AssistantVoiceSessionButton as zo } from "./shared/assistant/ui/voice/AssistantVoiceSessionButton.js";
|
|
99
|
+
import { CAPTION_SCROLL_ATTR as Bo, VoiceCaption as Vo } from "./shared/assistant/ui/voice/VoiceCaption.js";
|
|
100
|
+
import { VoiceConversationView as Ho } from "./shared/assistant/ui/voice/VoiceConversationView.js";
|
|
101
|
+
import { VoiceWaveform as Uo } from "./shared/assistant/ui/voice/VoiceWaveform.js";
|
|
102
|
+
import { VoiceStatusLine as Wo, VoiceStatusText as Go } from "./shared/assistant/ui/voice/VoiceStatusText.js";
|
|
103
|
+
import { VoiceMiniController as Ko } from "./shared/assistant/ui/voice/VoiceMiniController.js";
|
|
104
|
+
import { VoiceStage as qo } from "./shared/assistant/ui/voice/VoiceStage.js";
|
|
105
|
+
import { VoiceTranscriptDrawer as Jo } from "./shared/assistant/ui/voice/VoiceTranscriptDrawer.js";
|
|
106
|
+
import { downloadFile as Yo, exportConversation as Xo } from "./shared/assistant/exportConversation.js";
|
|
107
|
+
import { AssistantMoreMenu as Zo } from "./shared/assistant/ui/AssistantMoreMenu.js";
|
|
108
|
+
import { AssistantHeader as Qo } from "./shared/assistant/ui/AssistantHeader.js";
|
|
109
|
+
import { AssistantConversationList as $o } from "./shared/assistant/ui/AssistantConversationList.js";
|
|
110
|
+
import { AssistantEmptyState as es } from "./shared/assistant/ui/AssistantEmptyState.js";
|
|
111
|
+
import { AssistantTurnActivity as ts, TurnActivityLine as ns } from "./shared/assistant/ui/AssistantTurnActivity.js";
|
|
112
|
+
import { AssistantMessageItem as rs } from "./shared/assistant/ui/AssistantMessageItem.js";
|
|
113
|
+
import { AssistantMessageList as is } from "./shared/assistant/ui/AssistantMessageList.js";
|
|
114
|
+
import { AssistantVoiceSession as as } from "./shared/assistant/ui/voice/AssistantVoiceSession.js";
|
|
115
|
+
import { useAssistantApiAccess as os } from "./shared/assistant/useAssistantApiAccess.js";
|
|
116
|
+
import { useConversationTurns as ss } from "./shared/assistant/useConversationTurns.js";
|
|
117
|
+
import { isMultimodalBodyRejection as cs, isRecoverableAssistantError as ls } from "./shared/assistant/transportErrors.js";
|
|
118
|
+
import { aiCreditsUpdatedEventName as us, dispatchAssistantQuotaExhausted as ds, notifyAiCreditsUpdated as fs } from "./shared/assistant/aiCredits.js";
|
|
119
|
+
import { useWorkspaceWriteAccess as ps } from "./shared/assistant/useWorkspaceWriteAccess.js";
|
|
120
|
+
import { extractDocumentText as ms } from "./shared/assistant/documentExtract.js";
|
|
121
|
+
import { useAssistantAttachments as hs } from "./shared/assistant/useAssistantAttachments.js";
|
|
122
|
+
import { AssistantComposer as gs } from "./shared/assistant/ui/composer/AssistantComposer.js";
|
|
123
|
+
import { isProdRuntime as _s } from "./shared/assistant/env.js";
|
|
124
|
+
import { useAssistantHeartbeat as vs } from "./shared/assistant/useAssistantHeartbeat.js";
|
|
125
|
+
import { useAssistantKeyboardShortcuts as ys } from "./shared/assistant/useAssistantKeyboardShortcuts.js";
|
|
126
|
+
import { AssistantApiCallsConsentDialog as bs } from "./shared/assistant/ui/AssistantApiCallsConsentDialog.js";
|
|
127
|
+
import { AssistantChatArea as xs } from "./shared/assistant/ui/AssistantChatArea.js";
|
|
128
|
+
import { AIAssistantPanel as Ss } from "./shared/assistant/ui/AIAssistantPanel.js";
|
|
129
|
+
import { ASSISTANT_BOTTOM_CHROME_CLEARANCE as Cs, ASSISTANT_DIALOG_SELECTOR as ws, ASSISTANT_DOCKED_DESKTOP_CLASS as Ts, ASSISTANT_DOCK_WIDTH_PX as Es, ASSISTANT_DOCK_WIDTH_VAR as Ds, ASSISTANT_FLOATING_DESKTOP_CLASS as Os, ASSISTANT_OVERLAY_DEFAULT_TOP_PX as ks, ASSISTANT_OVERLAY_DESKTOP_QUERY as As, ASSISTANT_OVERLAY_TOP_VAR as js, ASSISTANT_SHEET_BASE_CLASS as Ms, ASSISTANT_SHEET_COMPACT_CLASS as Ns, ASSISTANT_SHEET_EXPANDED_CLASS as Ps, ASSISTANT_TOGGLE_SHORTCUT_LABEL as Fs, aboveAssistantBottomChrome as Is, assistantOverlayClassName as Ls, assistantOverlayEscapeAction as Rs, assistantOverlayKeys as zs, assistantQuotaKindOf as Bs, createAssistantNavigate as Vs, isAssistantToggleShortcut as Hs, nextAssistantOpenState as Us, publishedAssistantDockWidth as Ws, readAssistantOverlayFlag as Gs, requestedAssistantOpenState as Ks, writeAssistantOverlayFlag as qs } from "./shared/assistant/ui/assistantOverlayState.js";
|
|
130
|
+
import { AssistantOverlay as Js, AssistantOverlayProvider as Ys, useAssistantDockWidth as Xs, useAssistantOverlayOrNull as Zs, useAssistantQuotaExhausted as Qs } from "./shared/assistant/ui/AssistantOverlay.js";
|
|
131
|
+
export { Ti as ADMIN_MODE_ACCESS_WAIT_MS, Ss as AIAssistantPanel, q as ASSISTANT_API_AUTH_STRATEGY, Cs as ASSISTANT_BOTTOM_CHROME_CLEARANCE, ws as ASSISTANT_DIALOG_SELECTOR, Ts as ASSISTANT_DOCKED_DESKTOP_CLASS, Es as ASSISTANT_DOCK_WIDTH_PX, Ds as ASSISTANT_DOCK_WIDTH_VAR, Os as ASSISTANT_FLOATING_DESKTOP_CLASS, bi as ASSISTANT_I18N_COMPUTED_COPY, xi as ASSISTANT_I18N_LITERAL_COPY, Si as ASSISTANT_I18N_MANIFEST, or as ASSISTANT_LANGUAGES, L as ASSISTANT_MODE_FALLBACK_LABELS, R as ASSISTANT_MODE_IDS, jo as ASSISTANT_MODE_META, Pa as ASSISTANT_OVERLAY_ATTR, ks as ASSISTANT_OVERLAY_DEFAULT_TOP_PX, As as ASSISTANT_OVERLAY_DESKTOP_QUERY, js as ASSISTANT_OVERLAY_TOP_VAR, Fa as ASSISTANT_PANEL_ATTR, Ms as ASSISTANT_SHEET_BASE_CLASS, Ns as ASSISTANT_SHEET_COMPACT_CLASS, Ps as ASSISTANT_SHEET_EXPANDED_CLASS, Fs as ASSISTANT_TOGGLE_SHORTCUT_LABEL, Pr as ATTACHMENT_ACCEPT, _i as ATTACHMENT_SOURCES, Io as AUTO_VOICE, bs as AssistantApiCallsConsentDialog, Wa as AssistantAttachmentButton, Ga as AssistantAttachmentChips, wa as AssistantAutoSpeakToggle, ma as AssistantAvatar, xs as AssistantChatArea, gs as AssistantComposer, Na as AssistantConnectSourceItem, ja as AssistantConnectSourceProvider, $o as AssistantConversationList, es as AssistantEmptyState, go as AssistantEntityPreview, Qo as AssistantHeader, s as AssistantI18nProvider, Da as AssistantLanguageMenu, ko as AssistantLanguageSelector, f as AssistantMarkdownImage, h as AssistantMarkdownRenderer, Ta as AssistantMessageAttachments, rs as AssistantMessageItem, is as AssistantMessageList, Mo as AssistantModeSelector, Zo as AssistantMoreMenu, g as AssistantNavigateProvider, Js as AssistantOverlay, Ys as AssistantOverlayProvider, Ea as AssistantPendingWriteCard, Do as AssistantPreviewBridgeHost, Oo as AssistantPreviewOverlay, Ka as AssistantPreviewProvider, t as AssistantProductProvider, Oa as AssistantReplyLanguageSelector, Pe as AssistantRuntimeManager, ka as AssistantSpeakButton, ha as AssistantSpeechProvider, Aa as AssistantSpokenTurnsNotice, ho as AssistantStepRail, ua as AssistantToolActivity, ts as AssistantTurnActivity, Fo as AssistantVoiceButton, Ro as AssistantVoiceOrb, Lo as AssistantVoiceSelector, as as AssistantVoiceSession, zo as AssistantVoiceSessionButton, Fr as AttachmentRejectedError, mr as BOILERPLATE_PAGE_SHARE, qe as BUILT_IN_MODE_CAPABILITIES, Bo as CAPTION_SCROLL_ATTR, O as CHECK_AI_CREDITS, k as CREATE_SANDBOX, Ir as DEFAULT_INLINE_LIMITS, zn as DEFAULT_SPEAKABLE_LABELS, sr as DEFAULT_SPEECH_RATE, tt as DEFAULT_STREAM_BUDGET_MS, wn as ENDPOINT_GRACE_MS, A as EXTEND_SANDBOX_TTL, Ao as FOLLOW_APP_LOCALE, j as GET_ACTIVE_SANDBOXES, M as GET_SANDBOX, yt as HOSTED_DISABLE_MS, bt as HOSTED_TTS_MAX_CHARS, ht as HOSTED_TTS_TIER, gt as HOSTED_VOICES, Nt as HOSTED_VOICE_RANK, wo as HostedPreviewBridgeContext, so as IDLE_ACTIVE_TAB, Hi as IDLE_PLAYBACK, Qa as IDLE_PREVIEW, Ja as IDLE_PREVIEW_STATE, yn as IDLE_ROTATION_CLOCK, nt as INCOMPLETE_TURN_NOTICES, Tn as INITIAL_SESSION, Lr as INLINE_IMAGE_MAX_DIM, Rr as INLINE_IMAGE_QUALITY, En as INTERRUPT_MAX_MS, Dn as INTERRUPT_MIN_MS, ji as LEGACY_WRITE_CONSENT_KEY, Je as MAX_ASSISTANT_STREAM_BUDGET_MS, zr as MAX_ATTACHMENTS, hr as MAX_BOILERPLATE_LINE_CHARS, Br as MAX_CONFIGURABLE_INLINE_CHARS, gr as MAX_EXTRACTED_CHARS, Vr as MAX_FILE_BYTES, Hr as MAX_INLINE_CHARS_PER_FILE, Ur as MAX_INLINE_CHARS_TOTAL, ie as MAX_INLINE_IMAGE_BASE64_BYTES, Wr as MAX_INLINE_IMAGE_BASE64_CHARS, Gr as MAX_INLINE_IMAGE_PARTS, Kr as MAX_INLINE_TURN_BODY_BYTES, _r as MAX_PDF_PAGES_SCANNED, ae as MAX_REQUEST_BODY_BYTES, Bn as MAX_SPEAKABLE_CHARS, Vn as MAX_SPOKEN_TABLE_ROWS, qr as MAX_TURN_BODY_BYTES, Zn as MINI_CAPTION_BUDGET, vr as MIN_PAGE_TEXT_CHARS, yr as MIN_TEXT_PAGE_SHARE, $a as NO_OWNER, Ia as NO_PANEL_OVERLAY, sn as PHRASE_ROTATE_MS, $n as POLL_FAST_MS, er as POLL_FAST_UNTIL_MS, tr as POLL_SLOW_MS, nr as POLL_STEADY_MS, rr as POLL_STEADY_UNTIL_MS, Yn as PREVIEW_LANGUAGES, V as PRODUCT_ASSISTANT_MODE_ID_MAX_LENGTH, H as PRODUCT_ASSISTANT_MODE_ID_PATTERN, Jr as PROMPT_ENVELOPE_RESERVE_BYTES, Yr as PROVIDER_READABLE_FILE_MEDIA_TYPES, N as PROXY_SANDBOX_REQUEST, vo as REDUCED_MOTION_ATTRIBUTE, yo as REDUCED_MOTION_QUERY, P as REPORT_AI_TOKEN_USAGE, oe as REQUEST_TOO_LARGE_REFUSAL, xa as SANDBOX_READY_TTL_MS, On as SILENCE_SUBMIT_MS, xt as SPEAKING_RATE_MAX, St as SPEAKING_RATE_MAX_STREAMING, Ct as SPEAKING_RATE_MAX_SYNC, wt as SPEAKING_RATE_MIN, Hn as SPEECH_CHUNK_CHARS, Un as SPEECH_CHUNK_CJK_CHARS, Pt as SPEECH_LANG, Ri as SPOKEN_LABEL_LANGUAGES, cn as STAGE_COPY, F as STOP_ASSISTANT_SANDBOX, rt as STREAM_BUDGET_MS, Mi as TAKE_ACTION_ENGLISH, ln as THINKING_PHRASES, Xr as TURN_BODY_HEADROOM_BYTES, ns as TurnActivityLine, Ye as UNAVAILABLE_MODE_REFUSAL, Xe as UNDECLARED_MODE_CAPABILITIES, Ft as VOICE_LIST_TIMEOUT_MS, mn as VOICE_MUTED_LABEL, hn as VOICE_THINKING_LABEL, Vo as VoiceCaption, Ho as VoiceConversationView, Ko as VoiceMiniController, qo as VoiceStage, Wo as VoiceStatusLine, Go as VoiceStatusText, Jo as VoiceTranscriptDrawer, Uo as VoiceWaveform, I as WAIT_FOR_SANDBOX_RUNNING, se as abortAssistantTurn, Is as aboveAssistantBottomChrome, La as activePanelOverlay, Ze as adminOnlyModeSendRefusal, Ei as adminOnlyModeSendRefusalAfterAccess, bn as advanceRotationClock, us as aiCreditsUpdatedEventName, eo as applyPreviewEvent, ce as approvePendingWrite, Ci as assistantI18nSeedCopy, z as assistantModeFallbackLabel, wi as assistantModeI18nCopy, No as assistantModeMeta, Ls as assistantOverlayClassName, Rs as assistantOverlayEscapeAction, zs as assistantOverlayKeys, Ra as assistantPanelOwnsEscape, Bs as assistantQuotaKindOf, _ as assistantRoutePath, c as assistantTranslationKey, v as assistantUrlTransform, vi as availableAttachmentSources, Tt as base64ToBytes, y as browserShouldHandle, mt as browserSpeechEngine, la as buildAssistantProgress, le as buildAssistantSandboxEnv, Zr as buildAttachmentPromptBlock, Ai as buildBoundedAttachmentTurn, In as buildContinuedFromVoiceNote, Fe as buildProgress, ue as buildPromptGatewayRequest, Qr as buildPromptParts, de as buildPromptRequestBody, $r as buildPromptWithAttachments, Et as buildRequest, E as buildSandboxContextInput, Ln as buildVoiceTranscriptMarkdown, U as builtInModeExtendedBy, st as chatTurns, fe as checkAssistantAiCredits, Wn as chunkForSpeech, b as classifyAssistantHref, ei as classifyAttachment, Dt as classifyHttpFailure, S as classifyQuotaError, br as columnLetterToIndex, gn as composeVoiceStatus, Jt as configureSpeechEngine, Gn as containsCjk, d as copyToClipboard, ti as countInlineImageCandidates, ni as countInlinedImageParts, fa as countSpokenTurns, Di as createAdminModeAccessGate, Vs as createAssistantNavigate, to as createAssistantPreviewSurface, pe as createAssistantSandbox, me as createAssistantSession, Mt as createHostedTtsEngine, Sa as createReadinessTracker, qt as createRoutingSpeechEngine, ao as createRunIdentityCache, Ge as createSandboxAssistantTransport, Yt as createSpeechEngines, no as currentPreviewOwner, W as declareAssistantMode, Ot as decodeAudioResponse, xr as decodeXmlEntities, C as describeQuotaError, ri as detectDocumentFormat, Bi as detectScriptLocale, yi as deviceHasCamera, kt as disableDurationMs, ds as dispatchAssistantQuotaExhausted, Sr as docxXmlToText, he as downloadAssistantArtifact, Yo as downloadFile, ia as elapsedSince, za as escapeDismisses, ii as estimateTurnBodyBytes, D as executeSandboxGraphQL, Xo as exportConversation, ge as extendAssistantSandboxTTL, ms as extractDocumentText, cr as findAssistantLanguage, Qe as findAssistantModeConfig, _e as findExistingSandbox, fr as findPendingWrite, Cr as fitPdfPages, Ba as focusIsInsidePanel, ai as formatBytes, wr as formatPageRanges, ve as forwardsUserTokensToSandbox, va as getActorId, ye as getAssistantArtifacts, ra as getAssistantDisplayContent, Ie as getAssistantMedia, be as getAssistantMessages, xe as getAssistantSession, Se as getAssistantStreamAccess, Le as getAssistantText, oi as getAttachmentSendBlocker, ee as getCapability, si as getExtension, J as getImageForMode, Y as getImageTagForMode, ya as getOrganizationId, Re as getRawMessageCreatedAt, X as getResourcesForMode, Z as getSandboxImageRegistry, ci as getSendableAttachments, Xt as getSpeechEngine, ze as getToolProgress, ba as getWorkspaceId, ct as groupBySession, lt as groupConsecutiveBySession, li as hasAttachmentWorkInFlight, _t as hostedLocaleFor, vt as hostedSupportsLanguage, p as imageHostLabel, it as incompleteTurnNotice, G as isAssistantModeId, Hs as isAssistantToggleShortcut, Ya as isBlankProse, B as isBuiltInAssistantMode, kn as isCapturing, An as isEcho, It as isHostedVoice, $i as isLegacyFiller, ea as isLegacyStopped, Tr as isMostlyImagePages, cs as isMultimodalBodyRejection, _s as isProdRuntime, K as isProductAssistantModeId, ui as isProviderReadableFilePart, w as isQuotaExhaustedError, Be as isReapedSandboxConnectionError, Ca as isRecentlyVerified, Ve as isRecoverable, ls as isRecoverableAssistantError, m as isRemoteImageSrc, Xa as isRunningStatus, Ui as isSpeakingMessage, Lt as isSpeechBlocked, ta as isStageCopy, jn as isSubmittable, Xi as isTurnInFlight, te as isUnknownFieldError, ut as isVoiceTurn, Ni as isWriteModeAcknowledged, Er as joinSheets, Rt as languageDisplayName, di as largestInlineCharsPerFile, He as mapSessionToHistory, ne as markSupported, re as markUnsupported, Ue as mergeMessagesById, qi as mergePersistedAssistantState, en as micIsInterrupt, Ce as modeRequiresConfirmWrites, aa as msUntilNextPhrase, co as nextActiveTab, Us as nextAssistantOpenState, Po as nextModeIndex, Va as nextPanelOverlays, Za as nextPreviewEvents, zt as normalizeLangTag, fs as notifyAiCreditsUpdated, Mn as orbMode, Dr as pageMarker, To as panelOwnedPreviewBridge, Ha as panelOwnsEscape, pr as parseConfirmationRefusal, fi as parseDataUrl, Or as parseSharedStrings, da as parseToolActivity, kr as parseWorkbookSheets, Ar as pdfTextItemsToPage, lo as pinActiveTab, Zi as planAbandonedTurn, Nn as planReplyConsumption, Qi as planTurnAbort, ir as pollDelayMs, Bt as primaryLanguageSubtag, we as promptGatewayRequestBytes, Ws as publishedAssistantDockWidth, Wi as publishedChunks, T as quotaExhaustedEventName, Gs as readAssistantOverlayFlag, bo as readReducedMotion, Zt as readSpeechEngineConfig, Te as releaseSupersededAssistantSandboxes, ur as replyFollowsInput, Ee as reportAssistantAiTokenUsage, Ks as requestedAssistantOpenState, Gi as requiresCancel, Qt as resetSpeechEngine, Ji as resolveActiveModeSandbox, pi as resolveAssistantInlineLimits, lr as resolveAssistantLanguage, $e as resolveAssistantModeCapabilities, Oi as resolveAssistantSendModeAfterAccess, dr as resolveLanguagePair, n as resolveModeConfig, Q as resolveSandboxAssistantMode, Vi as resolveSpeechLocale, Pi as restoreAcknowledgedWriteModes, xn as rotationElapsedMs, ro as runBelongsTo, oo as runIdentities, io as sameOwner, $ as sandboxBaseModeFor, We as sanitize, De as selectExistingAssistantSandbox, Oe as selectSupersededAssistantSandboxes, Vt as selectVoiceForLocale, ke as sendAssistantPromptAsync, Ae as sendHeartbeat, jr as sheetXmlToRows, At as shouldDisableEngine, uo as shouldPinOnMove, fo as shouldPinOnSelect, Qn as showPreviousChunk, tn as showsAssistantCaption, nn as showsUserCaption, Kn as speakableEmail, Ht as speechGate, zi as speechLabelsFor, Ut as speechLangForLocale, Ki as speechPlaybackReducer, jt as splitForVendor, qn as splitTableRow, Pn as spokenSoFar, pa as spokenTurnText, un as stageText, oa as startPhraseTicker, Sn as startRotationTicker, dn as statusStageCopy, po as stepsFromToolActivity, je as stopReapedAssistantSandbox, at as streamBudgetMs, na as stripLegacyFillerPrefix, xo as subscribeReducedMotion, $t as subscribeSpeechEngine, Mr as summarisePageText, Cn as syncRotationClock, mo as tabForArrowKey, fn as thinkingPhrase, pn as thinkingPhraseEntry, ar as toCaptionText, mi as toMessageAttachment, Jn as toSpeakableText, hi as truncateForInline, Nr as truncatePagesForInline, sa as turnActivityCopy, ca as turnActivityStage, et as unofferedModeSendRefusal, ki as unofferedModeSendRefusalAfterAccess, os as useAssistantApiAccess, hs as useAssistantAttachments, Ma as useAssistantConnectSource, Xs as useAssistantDockWidth, vs as useAssistantHeartbeat, l as useAssistantI18nNamespace, ys as useAssistantKeyboardShortcuts, x as useAssistantNavigate, Zs as useAssistantOverlayOrNull, r as useAssistantPageLabel, qa as useAssistantPreview, Co as useAssistantPreviewBridge, i as useAssistantProduct, a as useAssistantProductOrNull, Qs as useAssistantQuotaExhausted, ga as useAssistantSpeech, o as useAssistantStorageFolders, Yi as useAssistantStore, u as useAssistantTr, ss as useConversationTurns, Ua as useDropdownEscape, Eo as useHostedAssistantPreviewBridge, _o as useOverlayFocus, So as usePrefersReducedMotion, Ke as useSandboxAssistantTransport, e as useVoiceInput, _a as useVoiceSession, ps as useWorkspaceWriteAccess, gi as validateFile, Wt as voiceAvailability, dt as voiceMarker, Xn as voicePreviewText, Gt as voiceQualityRank, ft as voiceSessionIdOf, Fn as voiceSessionReducer, rn as voiceStageState, _n as voiceStatusParts, vn as voiceStatusSuffix, Rn as voiceTranscriptFilename, pt as voiceTurnsOnly, Kt as voicesForLocale, Me as waitForAssistantServiceReady, Ne as waitForSandboxRunning, an as waveformIsActive, on as waveformIsSettled, ot as withIncompleteTurnNotice, Fi as withWriteModeAcknowledged, qs as writeAssistantOverlayFlag, Ii as writeModeConsentCopy, Li as writeModeSendRefusal };
|