@burdenoff/fe-libs 2026.914.1 → 2026.914.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/shared/assistant/index.d.ts +1 -0
- package/dist/shared/assistant/index.d.ts.map +1 -1
- package/dist/shared/assistant/turnActivity.d.ts +5 -1
- package/dist/shared/assistant/turnActivity.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantMessageList.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantMessageList.js +28 -27
- package/dist/shared/assistant/ui/AssistantTurnActivity.d.ts +6 -3
- package/dist/shared/assistant/ui/AssistantTurnActivity.d.ts.map +1 -1
- package/dist/shared/assistant/ui/AssistantTurnActivity.js +8 -8
- package/dist/shared/assistant/ui/usePrefersReducedMotion.d.ts +55 -0
- package/dist/shared/assistant/ui/usePrefersReducedMotion.d.ts.map +1 -0
- package/dist/shared/assistant/ui/usePrefersReducedMotion.js +28 -0
- package/dist/shared/assistant/ui/voice/VoiceMiniController.d.ts +4 -2
- package/dist/shared/assistant/ui/voice/VoiceMiniController.d.ts.map +1 -1
- package/dist/shared/assistant/ui/voice/VoiceStage.d.ts +4 -2
- package/dist/shared/assistant/ui/voice/VoiceStage.d.ts.map +1 -1
- package/dist/shared/assistant/ui/voice/VoiceStatusText.d.ts +12 -1
- package/dist/shared/assistant/ui/voice/VoiceStatusText.d.ts.map +1 -1
- package/dist/shared/assistant/ui/voice/VoiceStatusText.js +19 -18
- package/dist/shared/assistant/voice/voiceStatus.d.ts +8 -2
- package/dist/shared/assistant/voice/voiceStatus.d.ts.map +1 -1
- package/dist/shared-assistant.js +40 -39
- package/package.json +1 -1
|
@@ -111,6 +111,7 @@ export * from './preview/entity/AssistantEntityPreview';
|
|
|
111
111
|
export * from './ui/panelOverlays';
|
|
112
112
|
export * from './ui/useDropdownEscape';
|
|
113
113
|
export * from './ui/useOverlayFocus';
|
|
114
|
+
export * from './ui/usePrefersReducedMotion';
|
|
114
115
|
export * from './preview/useAssistantPreviewBridge';
|
|
115
116
|
export * from './preview/AssistantPreviewOverlay';
|
|
116
117
|
export * from './ui/composer/AssistantLanguageSelector';
|
|
@@ -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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"}
|
|
@@ -21,7 +21,11 @@ export interface TurnActivityCopy {
|
|
|
21
21
|
readonly shown: string;
|
|
22
22
|
/** For assistive tech. Changes only when the step does. */
|
|
23
23
|
readonly label: string;
|
|
24
|
-
/**
|
|
24
|
+
/**
|
|
25
|
+
* Whether this step is ELIGIBLE to rotate (thinking). The component holds it
|
|
26
|
+
* still under reduced motion by passing no elapsed time — see
|
|
27
|
+
* `AssistantTurnActivity`.
|
|
28
|
+
*/
|
|
25
29
|
readonly rotating: boolean;
|
|
26
30
|
}
|
|
27
31
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turnActivity.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnActivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAU1C;;;;;;GAMG;AAEH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,+BAA+B,GAAG,IAAI,GAAG,SAAS,GAC7D,kBAAkB,GAAG,IAAI,CAM3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB
|
|
1
|
+
{"version":3,"file":"turnActivity.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnActivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,+BAA+B,EAC/B,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAU1C;;;;;;GAMG;AAEH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,+BAA+B,GAAG,IAAI,GAAG,SAAS,GAC7D,kBAAkB,GAAG,IAAI,CAM3B;AAED,MAAM,WAAW,gBAAgB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAKD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,WAAW,EACf,UAAU,EAAE,+BAA+B,GAAG,IAAI,GAAG,SAAS,EAC9D,SAAS,EAAE,MAAM,GAChB,gBAAgB,GAAG,IAAI,CAczB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAKvE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC7B,KAAK,GAAE,MAAM,MAAiB,GAC7B,MAAM,IAAI,CAoBZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantMessageList.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantMessageList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AssistantMessageList.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantMessageList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAGnD,OAAO,KAAK,EAAE,+BAA+B,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAGhF,UAAU,KAAK;IACb,2EAA2E;IAC3E,qBAAqB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,+BAA+B,GAAG,IAAI,CAAC;IACpD,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,oBAAoB,EAAE,EAAE,CAAC,KAAK,CAkF1C,CAAC"}
|
|
@@ -1,40 +1,41 @@
|
|
|
1
1
|
import { useAssistantTr as e } from "../i18n.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { readReducedMotion as t } from "./usePrefersReducedMotion.js";
|
|
3
|
+
import { AssistantMessageItem as n } from "./AssistantMessageItem.js";
|
|
4
|
+
import { useEffect as r, useRef as i } from "react";
|
|
5
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
6
|
//#region src/shared/assistant/ui/AssistantMessageList.tsx
|
|
6
|
-
var
|
|
7
|
-
let
|
|
8
|
-
for (let e =
|
|
7
|
+
var s = ({ onApprovePendingWrite: s, approvingWriteRef: c = null, messages: l, processing: u, streamingMessageId: d, failedMessageId: f, onRetry: p }) => {
|
|
8
|
+
let m = e(), h = (() => {
|
|
9
|
+
for (let e = l.length - 1; e >= 0; --e) if (l[e].role === "assistant") return l[e].id;
|
|
9
10
|
return null;
|
|
10
|
-
})(),
|
|
11
|
-
return
|
|
12
|
-
let e =
|
|
11
|
+
})(), g = i(null), _ = i(null);
|
|
12
|
+
return r(() => {
|
|
13
|
+
let e = _.current;
|
|
13
14
|
if (e && e.scrollHeight - e.scrollTop - e.clientHeight < 100) {
|
|
14
|
-
let e =
|
|
15
|
-
|
|
15
|
+
let e = t();
|
|
16
|
+
g.current?.scrollIntoView({ behavior: e ? "auto" : "smooth" });
|
|
16
17
|
}
|
|
17
|
-
}, [
|
|
18
|
-
|
|
19
|
-
}, []), /* @__PURE__ */
|
|
20
|
-
ref:
|
|
18
|
+
}, [l, d]), r(() => {
|
|
19
|
+
g.current?.scrollIntoView({ behavior: "instant" });
|
|
20
|
+
}, []), /* @__PURE__ */ o("div", {
|
|
21
|
+
ref: _,
|
|
21
22
|
className: "flex-1 space-y-4 overflow-y-auto p-3",
|
|
22
23
|
role: "log",
|
|
23
24
|
"aria-live": "polite",
|
|
24
25
|
"aria-relevant": "additions",
|
|
25
|
-
"aria-busy":
|
|
26
|
-
"aria-label":
|
|
27
|
-
children: [
|
|
28
|
-
onApprovePendingWrite:
|
|
29
|
-
approvingWriteRef:
|
|
26
|
+
"aria-busy": d !== null,
|
|
27
|
+
"aria-label": m("messageList.ariaLabel", "Conversation messages"),
|
|
28
|
+
children: [l.map((e) => /* @__PURE__ */ a(n, {
|
|
29
|
+
onApprovePendingWrite: s,
|
|
30
|
+
approvingWriteRef: c,
|
|
30
31
|
message: e,
|
|
31
|
-
processing:
|
|
32
|
-
isStreaming: e.id ===
|
|
33
|
-
isFailed: e.id ===
|
|
34
|
-
isLastAssistant: e.id ===
|
|
35
|
-
onRetry:
|
|
36
|
-
}, e.id)), /* @__PURE__ */
|
|
32
|
+
processing: u,
|
|
33
|
+
isStreaming: e.id === d,
|
|
34
|
+
isFailed: e.id === f,
|
|
35
|
+
isLastAssistant: e.id === h,
|
|
36
|
+
onRetry: p
|
|
37
|
+
}, e.id)), /* @__PURE__ */ a("div", { ref: g })]
|
|
37
38
|
});
|
|
38
39
|
};
|
|
39
40
|
//#endregion
|
|
40
|
-
export {
|
|
41
|
+
export { s as AssistantMessageList };
|
|
@@ -27,9 +27,12 @@ export declare const TurnActivityLine: FC<{
|
|
|
27
27
|
* stays free of timers, and nothing is written anywhere — the message's content
|
|
28
28
|
* is untouched while the phrase moves.
|
|
29
29
|
*
|
|
30
|
-
* ★ Under
|
|
31
|
-
*
|
|
32
|
-
*
|
|
30
|
+
* ★ Under reduced motion the line holds the step's label instead of rotating:
|
|
31
|
+
* text that changes every few seconds on its own is what a person asking for
|
|
32
|
+
* less motion wants stopped, as the avatar and caret already are. BOTH routes
|
|
33
|
+
* count — the OS setting and the app's own "Reduce motion" (BOFF-7284); this
|
|
34
|
+
* used to honour only the first. (For auto-updating text the WCAG criterion is
|
|
35
|
+
* 2.2.2 Pause, Stop, Hide.)
|
|
33
36
|
*/
|
|
34
37
|
export declare const AssistantTurnActivity: FC<{
|
|
35
38
|
processing: AssistantConversationProcessing | null | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantTurnActivity.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantTurnActivity.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"AssistantTurnActivity.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantTurnActivity.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAErD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,iBAAiB,CAAC;AAUvE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAkBjE,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB,EAAE,EAAE,CAAC;IACrC,UAAU,EAAE,+BAA+B,GAAG,IAAI,GAAG,SAAS,CAAC;CAChE,CAaA,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { useAssistantTr as e } from "../i18n.js";
|
|
2
|
+
import { elapsedSince as t, startPhraseTicker as n, turnActivityCopy as r, turnActivityStage as i } from "../turnActivity.js";
|
|
3
|
+
import { usePrefersReducedMotion as a } from "./usePrefersReducedMotion.js";
|
|
4
4
|
import { useEffect as o, useState as s } from "react";
|
|
5
5
|
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
6
6
|
//#region src/shared/assistant/ui/AssistantTurnActivity.tsx
|
|
@@ -16,18 +16,18 @@ var u = ({ shown: e, label: t }) => /* @__PURE__ */ l("p", {
|
|
|
16
16
|
"data-testid": "assistant-turn-activity-label",
|
|
17
17
|
children: t
|
|
18
18
|
})]
|
|
19
|
-
}), d = ({ processing:
|
|
20
|
-
let
|
|
19
|
+
}), d = ({ processing: t }) => {
|
|
20
|
+
let n = e(), o = a(), s = r(n, t, f(i(t) === "thinking" && !o && typeof t?.stageStartedAt == "number" ? t.stageStartedAt : null));
|
|
21
21
|
return s ? /* @__PURE__ */ c(u, {
|
|
22
22
|
shown: s.shown,
|
|
23
23
|
label: s.label
|
|
24
24
|
}) : null;
|
|
25
25
|
};
|
|
26
26
|
function f(e) {
|
|
27
|
-
let [
|
|
27
|
+
let [r, i] = s(() => Date.now());
|
|
28
28
|
return o(() => {
|
|
29
|
-
if (e !== null) return
|
|
30
|
-
}, [e]),
|
|
29
|
+
if (e !== null) return n(e, i);
|
|
30
|
+
}, [e]), t(e, r);
|
|
31
31
|
}
|
|
32
32
|
//#endregion
|
|
33
33
|
export { d as AssistantTurnActivity, u as TurnActivityLine };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether the person has asked for less motion — by EITHER route.
|
|
3
|
+
*
|
|
4
|
+
* ★★ TWO SIGNALS, and the assistant's own animated text must obey both:
|
|
5
|
+
*
|
|
6
|
+
* - the operating system's `prefers-reduced-motion: reduce`;
|
|
7
|
+
* - the app's own "Reduce motion" setting (ThemePreferences). `ThemeProvider`
|
|
8
|
+
* writes its EFFECTIVE value — a custom theme's override included — to
|
|
9
|
+
* `<html data-reduce-motion>`, and `tokens.css` clamps every CSS animation
|
|
10
|
+
* under that attribute.
|
|
11
|
+
*
|
|
12
|
+
* CSS covers the avatar, the caret and every `motion-safe:` class. It cannot
|
|
13
|
+
* stop a phrase that JavaScript swaps every few seconds, which is why the chat
|
|
14
|
+
* waiting line honoured only the OS setting and the voice status line honoured
|
|
15
|
+
* neither (BOFF-7284). Reading the attribute rather than theme context keeps the
|
|
16
|
+
* JS in lockstep with the CSS by construction, needs no change to
|
|
17
|
+
* `ThemeProvider` (whose context is not exported, and whose `useTheme` throws
|
|
18
|
+
* without a provider), and in a host with no `ThemeProvider` simply falls back
|
|
19
|
+
* to the OS signal.
|
|
20
|
+
*/
|
|
21
|
+
export declare const REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
|
|
22
|
+
export declare const REDUCED_MOTION_ATTRIBUTE = "data-reduce-motion";
|
|
23
|
+
/**
|
|
24
|
+
* The current answer, read fresh from the environment every time.
|
|
25
|
+
*
|
|
26
|
+
* ★ Guarded piece by piece — `window`, `matchMedia` and `document` are each
|
|
27
|
+
* absent in some test or render environment here — and never cached: a test
|
|
28
|
+
* may swap `window` between two renders, and a cached `MediaQueryList` would
|
|
29
|
+
* keep answering for the old one.
|
|
30
|
+
*/
|
|
31
|
+
export declare function readReducedMotion(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Call `onChange` whenever either signal may have changed. Returns the cleanup.
|
|
34
|
+
*
|
|
35
|
+
* ★ The attribute is written by a passive effect in `ThemeProvider`, one commit
|
|
36
|
+
* after its state changes — the observer is what carries that change here
|
|
37
|
+
* without a reload.
|
|
38
|
+
*/
|
|
39
|
+
export declare function subscribeReducedMotion(onChange: () => void): () => void;
|
|
40
|
+
/**
|
|
41
|
+
* React binding: re-renders the caller when either signal changes.
|
|
42
|
+
*
|
|
43
|
+
* ★★ The server snapshot is the SAME guarded reader, deliberately — not a
|
|
44
|
+
* constant `false`. On a real server there is no `window`, so it answers false
|
|
45
|
+
* anyway; under a test that stubs the environment it answers from the stub, which
|
|
46
|
+
* is what lets a static render prove the reduced-motion path at all. Both host
|
|
47
|
+
* apps mount with `createRoot`, so there is no hydration for this to mismatch.
|
|
48
|
+
*
|
|
49
|
+
* ★ Not for `hydrateRoot`: on hydration React calls the server snapshot on the
|
|
50
|
+
* client, where this reader can answer true while the server's HTML was rendered
|
|
51
|
+
* with false — a recoverable hydration mismatch. A future SSR consumer must pass
|
|
52
|
+
* a constant server snapshot instead.
|
|
53
|
+
*/
|
|
54
|
+
export declare function usePrefersReducedMotion(): boolean;
|
|
55
|
+
//# sourceMappingURL=usePrefersReducedMotion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePrefersReducedMotion.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/usePrefersReducedMotion.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,qCAAqC,CAAC;AACvE,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAE7D;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAW3C;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CA+BvE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAMjD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { useSyncExternalStore as e } from "react";
|
|
2
|
+
//#region src/shared/assistant/ui/usePrefersReducedMotion.ts
|
|
3
|
+
var t = "(prefers-reduced-motion: reduce)", n = "data-reduce-motion";
|
|
4
|
+
function r() {
|
|
5
|
+
return typeof document < "u" && typeof document.documentElement?.hasAttribute == "function" && document.documentElement.hasAttribute("data-reduce-motion") ? !0 : typeof window > "u" || typeof window.matchMedia != "function" ? !1 : window.matchMedia(t)?.matches === !0;
|
|
6
|
+
}
|
|
7
|
+
function i(e) {
|
|
8
|
+
let r = [];
|
|
9
|
+
if (typeof window < "u" && typeof window.matchMedia == "function") {
|
|
10
|
+
let n = window.matchMedia(t);
|
|
11
|
+
typeof n?.addEventListener == "function" ? (n.addEventListener("change", e), r.push(() => n.removeEventListener("change", e))) : typeof n?.addListener == "function" && (n.addListener(e), r.push(() => n.removeListener(e)));
|
|
12
|
+
}
|
|
13
|
+
if (typeof document < "u" && document.documentElement && typeof MutationObserver < "u") {
|
|
14
|
+
let t = new MutationObserver(e);
|
|
15
|
+
t.observe(document.documentElement, {
|
|
16
|
+
attributes: !0,
|
|
17
|
+
attributeFilter: [n]
|
|
18
|
+
}), r.push(() => t.disconnect());
|
|
19
|
+
}
|
|
20
|
+
return () => {
|
|
21
|
+
for (let e of r) e();
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function a() {
|
|
25
|
+
return e(i, r, r);
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { n as REDUCED_MOTION_ATTRIBUTE, t as REDUCED_MOTION_QUERY, r as readReducedMotion, i as subscribeReducedMotion, a as usePrefersReducedMotion };
|
|
@@ -43,8 +43,10 @@ interface Props {
|
|
|
43
43
|
*/
|
|
44
44
|
statusSuffix?: string | null;
|
|
45
45
|
/**
|
|
46
|
-
*
|
|
47
|
-
* thinks
|
|
46
|
+
* Ask for the SHOWN status to rotate through the thinking phrases while the
|
|
47
|
+
* assistant thinks — suppressed under reduced motion (OS or app setting, see
|
|
48
|
+
* `usePrefersReducedMotion`). What is ANNOUNCED is always `statusText` — see
|
|
49
|
+
* `VoiceStatusText`.
|
|
48
50
|
*/
|
|
49
51
|
rotateStatus?: boolean;
|
|
50
52
|
/** Mic / interrupt control — the same orb, in its compact size. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceMiniController.d.ts","sourceRoot":"","sources":["../../../../../src/shared/assistant/ui/voice/VoiceMiniController.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;;;;;;;GAiBG;AAEH,UAAU,KAAK;IACb,KAAK,EAAE,eAAe,CAAC;IACvB,uEAAuE;IACvE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B
|
|
1
|
+
{"version":3,"file":"VoiceMiniController.d.ts","sourceRoot":"","sources":["../../../../../src/shared/assistant/ui/voice/VoiceMiniController.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;;;;;;;GAiBG;AAEH,UAAU,KAAK;IACb,KAAK,EAAE,eAAe,CAAC;IACvB,uEAAuE;IACvE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mEAAmE;IACnE,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,KAAK,CAiHzC,CAAC"}
|
|
@@ -33,8 +33,10 @@ interface Props {
|
|
|
33
33
|
*/
|
|
34
34
|
statusSuffix?: string | null;
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
37
|
-
* thinks
|
|
36
|
+
* Ask for the SHOWN status to rotate through the thinking phrases while the
|
|
37
|
+
* assistant thinks — suppressed under reduced motion (OS or app setting, see
|
|
38
|
+
* `usePrefersReducedMotion`). What is ANNOUNCED is always `statusText` — see
|
|
39
|
+
* `VoiceStatusText`.
|
|
38
40
|
*/
|
|
39
41
|
rotateStatus?: boolean;
|
|
40
42
|
/** The microphone / interrupt control. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceStage.d.ts","sourceRoot":"","sources":["../../../../../src/shared/assistant/ui/voice/VoiceStage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;;;;;;;GAiBG;AAEH,UAAU,KAAK;IACb,KAAK,EAAE,eAAe,CAAC;IACvB,mDAAmD;IACnD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oCAAoC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B
|
|
1
|
+
{"version":3,"file":"VoiceStage.d.ts","sourceRoot":"","sources":["../../../../../src/shared/assistant/ui/voice/VoiceStage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAI3C,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;;;;;;;GAiBG;AAEH,UAAU,KAAK;IACb,KAAK,EAAE,eAAe,CAAC;IACvB,mDAAmD;IACnD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,oCAAoC;IACpC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;;;OAKG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,0CAA0C;IAC1C,OAAO,EAAE,SAAS,CAAC;IACnB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,+EAA+E;IAC/E,YAAY,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAC3D;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,KAAK,CAmIhC,CAAC"}
|
|
@@ -38,13 +38,24 @@ export declare const VoiceStatusLine: FC<{
|
|
|
38
38
|
*
|
|
39
39
|
* ★ The clock lives HERE, not in `AssistantVoiceSession`: a tick re-renders only
|
|
40
40
|
* this line, and the orchestrators stay free of timers.
|
|
41
|
+
*
|
|
42
|
+
* ★★ Under reduced motion — the OS setting OR the app's own (BOFF-7284) — the
|
|
43
|
+
* line does not rotate: no clock runs, and it shows the status itself, e.g.
|
|
44
|
+
* "Thinking…" (with "· Microphone off" when muted). A phrase swapped every
|
|
45
|
+
* 2.5 seconds is exactly the self-starting movement that preference asks to stop.
|
|
46
|
+
* The announced text was never affected, so nothing changes for a screen reader.
|
|
47
|
+
* (The WCAG criterion for auto-updating text is 2.2.2 Pause, Stop, Hide; the
|
|
48
|
+
* reduced-motion preferences are how a person asks for it here.)
|
|
41
49
|
*/
|
|
42
50
|
export declare const VoiceStatusText: FC<{
|
|
43
51
|
/** The meaningful status. This is what is announced. */
|
|
44
52
|
status: string;
|
|
45
53
|
/** Kept visible while the shown phrase rotates, e.g. "Microphone off". */
|
|
46
54
|
suffix?: string | null;
|
|
47
|
-
/**
|
|
55
|
+
/**
|
|
56
|
+
* The stage ASKS to rotate the shown text through the thinking phrases. The
|
|
57
|
+
* line honours it only when motion is allowed — see `usePrefersReducedMotion`.
|
|
58
|
+
*/
|
|
48
59
|
rotating?: boolean;
|
|
49
60
|
className: string;
|
|
50
61
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceStatusText.d.ts","sourceRoot":"","sources":["../../../../../src/shared/assistant/ui/voice/VoiceStatusText.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"VoiceStatusText.d.ts","sourceRoot":"","sources":["../../../../../src/shared/assistant/ui/voice/VoiceStatusText.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAarD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CAiBA,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC;IAC/B,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAqBA,CAAC"}
|
|
@@ -1,42 +1,43 @@
|
|
|
1
1
|
import { useAssistantTr as e } from "../../i18n.js";
|
|
2
2
|
import { voiceStatusParts as t } from "../../voice/voiceStatus.js";
|
|
3
3
|
import { IDLE_ROTATION_CLOCK as n, advanceRotationClock as r, rotationElapsedMs as i, startRotationTicker as a, syncRotationClock as o } from "../../voice/rotationClock.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { usePrefersReducedMotion as s } from "../usePrefersReducedMotion.js";
|
|
5
|
+
import { useEffect as c, useState as l } from "react";
|
|
6
|
+
import { jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
6
7
|
//#region src/shared/assistant/ui/voice/VoiceStatusText.tsx
|
|
7
|
-
var
|
|
8
|
+
var f = ({ announced: e, shown: t, className: n }) => /* @__PURE__ */ d("p", {
|
|
8
9
|
className: `relative ${n}`,
|
|
9
10
|
"data-testid": "assistant-voice-status-line",
|
|
10
|
-
children: [/* @__PURE__ */
|
|
11
|
+
children: [/* @__PURE__ */ u("span", {
|
|
11
12
|
"aria-hidden": "true",
|
|
12
13
|
"data-testid": "assistant-voice-status-shown",
|
|
13
14
|
children: t
|
|
14
|
-
}), /* @__PURE__ */
|
|
15
|
+
}), /* @__PURE__ */ u("span", {
|
|
15
16
|
className: "sr-only left-0 top-0",
|
|
16
17
|
"aria-live": "polite",
|
|
17
18
|
"aria-atomic": "true",
|
|
18
19
|
"data-testid": "assistant-voice-status",
|
|
19
20
|
children: e
|
|
20
21
|
})]
|
|
21
|
-
}),
|
|
22
|
-
let { announced:
|
|
23
|
-
tr:
|
|
22
|
+
}), p = ({ status: n, suffix: r = null, rotating: i = !1, className: a }) => {
|
|
23
|
+
let o = e(), c = s(), l = i && !c, { announced: d, shown: p } = t({
|
|
24
|
+
tr: o,
|
|
24
25
|
status: n,
|
|
25
26
|
suffix: r,
|
|
26
|
-
rotating:
|
|
27
|
-
elapsedMs:
|
|
27
|
+
rotating: l,
|
|
28
|
+
elapsedMs: m(l)
|
|
28
29
|
});
|
|
29
|
-
return /* @__PURE__ */
|
|
30
|
+
return /* @__PURE__ */ u(f, {
|
|
30
31
|
className: a,
|
|
31
|
-
announced:
|
|
32
|
-
shown:
|
|
32
|
+
announced: d,
|
|
33
|
+
shown: p
|
|
33
34
|
});
|
|
34
35
|
};
|
|
35
|
-
function
|
|
36
|
-
let [t,
|
|
37
|
-
return u !== t &&
|
|
38
|
-
if (e) return a(() =>
|
|
36
|
+
function m(e) {
|
|
37
|
+
let [t, s] = l(() => o(n, e)), u = o(t, e);
|
|
38
|
+
return u !== t && s(u), c(() => {
|
|
39
|
+
if (e) return a(() => s((e) => r(e)));
|
|
39
40
|
}, [e]), i(u);
|
|
40
41
|
}
|
|
41
42
|
//#endregion
|
|
42
|
-
export {
|
|
43
|
+
export { f as VoiceStatusLine, p as VoiceStatusText };
|
|
@@ -64,7 +64,10 @@ export declare function composeVoiceStatus(label: string, suffix: string | null)
|
|
|
64
64
|
export interface VoiceStatusParts {
|
|
65
65
|
/** For the live region. Changes only when the status does. */
|
|
66
66
|
readonly announced: string;
|
|
67
|
-
/**
|
|
67
|
+
/**
|
|
68
|
+
* For the eye. Rotates while `rotating` (thinking, with motion allowed);
|
|
69
|
+
* otherwise identical to `announced`.
|
|
70
|
+
*/
|
|
68
71
|
readonly shown: string;
|
|
69
72
|
}
|
|
70
73
|
export declare function voiceStatusParts(args: {
|
|
@@ -73,7 +76,10 @@ export declare function voiceStatusParts(args: {
|
|
|
73
76
|
status: string;
|
|
74
77
|
/** Kept on the shown text while it rotates, e.g. "Microphone off". */
|
|
75
78
|
suffix: string | null;
|
|
76
|
-
/**
|
|
79
|
+
/**
|
|
80
|
+
* Whether the shown text may rotate: the assistant is thinking AND motion is
|
|
81
|
+
* allowed. `VoiceStatusText` passes false under reduced motion (BOFF-7284).
|
|
82
|
+
*/
|
|
77
83
|
rotating: boolean;
|
|
78
84
|
/** Time since rotation began. */
|
|
79
85
|
elapsedMs: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voiceStatus.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/voice/voiceStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,yGAAyG;AACzG,eAAO,MAAM,oBAAoB,EAAE,cAGlC,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,EAAE,cAG/B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,EAAE,EAAE,WAAW,CAAC;IAChB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,GAAG,IAAI,CAKhB;AAED,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAER;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B
|
|
1
|
+
{"version":3,"file":"voiceStatus.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/voice/voiceStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,yGAAyG;AACzG,eAAO,MAAM,oBAAoB,EAAE,cAGlC,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,EAAE,cAG/B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,EAAE,EAAE,WAAW,CAAC;IAChB,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,GAAG,IAAI,CAKhB;AAED,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAER;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAKD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,EAAE,EAAE,WAAW,CAAC;IAChB,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,gBAAgB,CAmBnB"}
|
package/dist/shared-assistant.js
CHANGED
|
@@ -78,42 +78,43 @@ import { IDLE_ACTIVE_TAB as ca, nextActiveTab as la, pinActiveTab as ua, shouldP
|
|
|
78
78
|
import { AssistantStepRail as ha } from "./shared/assistant/preview/entity/AssistantStepRail.js";
|
|
79
79
|
import { AssistantEntityPreview as ga } from "./shared/assistant/preview/entity/AssistantEntityPreview.js";
|
|
80
80
|
import { useOverlayFocus as _a } from "./shared/assistant/ui/useOverlayFocus.js";
|
|
81
|
-
import {
|
|
82
|
-
import {
|
|
83
|
-
import {
|
|
84
|
-
import {
|
|
85
|
-
import {
|
|
86
|
-
import {
|
|
87
|
-
import {
|
|
88
|
-
import {
|
|
89
|
-
import {
|
|
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
|
-
export { po as AIAssistantPanel, L as ASSISTANT_API_AUTH_STRATEGY, kn as ASSISTANT_LANGUAGES, Sa as ASSISTANT_MODE_META, Fi as ASSISTANT_OVERLAY_ATTR, Ii as ASSISTANT_PANEL_ATTR, mr as ATTACHMENT_ACCEPT, yi as ATTACHMENT_SOURCES, Ea as AUTO_VOICE, uo as AssistantApiCallsConsentDialog, Gi as AssistantAttachmentButton, Ki as AssistantAttachmentChips, Ti as AssistantAutoSpeakToggle, fi as AssistantAvatar, fo as AssistantChatArea, oo as AssistantComposer, Pi as AssistantConnectSourceItem, Mi as AssistantConnectSourceProvider, Ua as AssistantConversationList, Wa as AssistantEmptyState, ga as AssistantEntityPreview, Ha as AssistantHeader, s as AssistantI18nProvider, Oi as AssistantLanguageMenu, ba as AssistantLanguageSelector, f as AssistantMarkdownImage, h as AssistantMarkdownRenderer, Ei as AssistantMessageAttachments, qa as AssistantMessageItem, Ja as AssistantMessageList, Ca as AssistantModeSelector, Va as AssistantMoreMenu, g as AssistantNavigateProvider, Di as AssistantPendingWriteCard, ya as AssistantPreviewOverlay, qi as AssistantPreviewProvider, t as AssistantProductProvider, ki as AssistantReplyLanguageSelector, _e as AssistantRuntimeManager, Ai as AssistantSpeakButton, pi as AssistantSpeechProvider, ji as AssistantSpokenTurnsNotice, ha as AssistantStepRail, ci as AssistantToolActivity, Ga as AssistantTurnActivity, Ta as AssistantVoiceButton, Oa as AssistantVoiceOrb, Da as AssistantVoiceSelector, Ya as AssistantVoiceSession, ka as AssistantVoiceSessionButton, hr as AttachmentRejectedError, Jn as BOILERPLATE_PAGE_SHARE, Aa as CAPTION_SCROLL_ATTR, O as CHECK_AI_CREDITS, k as CREATE_SANDBOX, cn as DEFAULT_SPEAKABLE_LABELS, An as DEFAULT_SPEECH_RATE, Ae as DEFAULT_STREAM_BUDGET_MS, Pt as ENDPOINT_GRACE_MS, A as EXTEND_SANDBOX_TTL, xa as FOLLOW_APP_LOCALE, j as GET_ACTIVE_SANDBOXES, M as GET_SANDBOX, qe as HOSTED_TTS_MAX_CHARS, Ue as HOSTED_TTS_TIER, We as HOSTED_VOICES, ca as IDLE_ACTIVE_TAB, Vn as IDLE_PLAYBACK, $i as IDLE_PREVIEW, Yi as IDLE_PREVIEW_STATE, kt as IDLE_ROTATION_CLOCK, Ft as INITIAL_SESSION, gr as INLINE_IMAGE_MAX_DIM, _r as INLINE_IMAGE_QUALITY, It as INTERRUPT_MAX_MS, Lt as INTERRUPT_MIN_MS, vr as MAX_ATTACHMENTS, Yn as MAX_BOILERPLATE_LINE_CHARS, Xn as MAX_EXTRACTED_CHARS, yr as MAX_FILE_BYTES, br as MAX_INLINE_CHARS_PER_FILE, xr as MAX_INLINE_CHARS_TOTAL, Kn as MAX_INLINE_IMAGE_BASE64_BYTES, Sr as MAX_INLINE_IMAGE_BASE64_CHARS, Cr as MAX_INLINE_IMAGE_PARTS, wr as MAX_INLINE_TURN_BODY_BYTES, Zn as MAX_PDF_PAGES_SCANNED, qn as MAX_REQUEST_BODY_BYTES, ln as MAX_SPEAKABLE_CHARS, un as MAX_SPOKEN_TABLE_ROWS, Tr as MAX_TURN_BODY_BYTES, bn as MINI_CAPTION_BUDGET, Qn as MIN_PAGE_TEXT_CHARS, $n as MIN_TEXT_PAGE_SHARE, ea as NO_OWNER, Li as NO_PANEL_OVERLAY, _t as PHRASE_ROTATE_MS, Sn as POLL_FAST_MS, Cn as POLL_FAST_UNTIL_MS, wn as POLL_SLOW_MS, Tn as POLL_STEADY_MS, En as POLL_STEADY_UNTIL_MS, vn as PREVIEW_LANGUAGES, Er as PROMPT_ENVELOPE_RESERVE_BYTES, Dr as PROVIDER_READABLE_FILE_MEDIA_TYPES, N as PROXY_SANDBOX_REQUEST, P as REPORT_AI_TOKEN_USAGE, Si as SANDBOX_READY_TTL_MS, Rt as SILENCE_SUBMIT_MS, Je as SPEAKING_RATE_MAX, Ye as SPEAKING_RATE_MAX_STREAMING, Xe as SPEAKING_RATE_MAX_SYNC, Ze as SPEAKING_RATE_MIN, dn as SPEECH_CHUNK_CHARS, fn as SPEECH_CHUNK_CJK_CHARS, Kt as SPEECH_LANG, Ln as SPOKEN_LABEL_LANGUAGES, vt as STAGE_COPY, F as STOP_ASSISTANT_SANDBOX, je as STREAM_BUDGET_MS, yt as THINKING_PHRASES, Or as TURN_BODY_HEADROOM_BYTES, Ka as TurnActivityLine, qt as VOICE_LIST_TIMEOUT_MS, wt as VOICE_MUTED_LABEL, Tt as VOICE_THINKING_LABEL, ja as VoiceCaption, Ma as VoiceConversationView, Ia as VoiceMiniController, La as VoiceStage, Pa as VoiceStatusLine, Fa as VoiceStatusText, Ra as VoiceTranscriptDrawer, Na as VoiceWaveform, I as WAIT_FOR_SANDBOX_RUNNING, q as abortAssistantTurn, Ri as activePanelOverlay, At as advanceRotationClock, eo as aiCreditsUpdatedEventName, ta as applyPreviewEvent, J as approvePendingWrite, zi as assistantPanelOwnsEscape, _ as assistantRoutePath, c as assistantTranslationKey, v as assistantUrlTransform, bi as availableAttachmentSources, Qe as base64ToBytes, y as browserShouldHandle, He as browserSpeechEngine, si as buildAssistantProgress, Y as buildAssistantSandboxEnv, kr as buildAttachmentPromptBlock, an as buildContinuedFromVoiceNote, ve as buildProgress, Ar as buildPromptParts, X as buildPromptRequestBody, jr as buildPromptWithAttachments, $e as buildRequest, E as buildSandboxContextInput, on as buildVoiceTranscriptMarkdown, Fe as chatTurns, Z as checkAssistantAiCredits, pn as chunkForSpeech, b as classifyAssistantHref, Mr as classifyAttachment, et as classifyHttpFailure, S as classifyQuotaError, er as columnLetterToIndex, Et as composeVoiceStatus, ot as configureSpeechEngine, mn as containsCjk, d as copyToClipboard, Nr as countInlineImageCandidates, Pr as countInlinedImageParts, ui as countSpokenTurns, na as createAssistantPreviewSurface, Q as createAssistantSandbox, $ as createAssistantSession, it as createHostedTtsEngine, Ci as createReadinessTracker, at as createRoutingSpeechEngine, oa as createRunIdentityCache, Oe as createSandboxAssistantTransport, st as createSpeechEngines, ra as currentPreviewOwner, tt as decodeAudioResponse, tr as decodeXmlEntities, C as describeQuotaError, Fr as detectDocumentFormat, zn as detectScriptLocale, xi as deviceHasCamera, to as dispatchAssistantQuotaExhausted, nr as docxXmlToText, ee as downloadAssistantArtifact, za as downloadFile, ni as elapsedSince, Bi as escapeDismisses, Ir as estimateTurnBodyBytes, D as executeSandboxGraphQL, Ba as exportConversation, te as extendAssistantSandboxTTL, io as extractDocumentText, jn as findAssistantLanguage, ne as findExistingSandbox, Fn as findPendingWrite, rr as fitPdfPages, Vi as focusIsInsidePanel, Lr as formatBytes, ir as formatPageRanges, gi as getActorId, re as getAssistantArtifacts, ti as getAssistantDisplayContent, ye as getAssistantMedia, ie as getAssistantMessages, ae as getAssistantSession, oe as getAssistantStreamAccess, be as getAssistantText, Rr as getAttachmentSendBlocker, U as getCapability, zr as getExtension, R as getImageForMode, z as getImageTagForMode, _i as getOrganizationId, xe as getRawMessageCreatedAt, B as getResourcesForMode, V as getSandboxImageRegistry, Br as getSendableAttachments, ct as getSpeechEngine, Se as getToolProgress, vi as getWorkspaceId, Ie as groupBySession, Le as groupConsecutiveBySession, Vr as hasAttachmentWorkInFlight, Ge as hostedLocaleFor, Ke as hostedSupportsLanguage, p as imageHostLabel, Me as incompleteTurnNotice, Xi as isBlankProse, zt as isCapturing, Bt as isEcho, Zr as isLegacyFiller, Qr as isLegacyStopped, ar as isMostlyImagePages, Qa as isMultimodalBodyRejection, so as isProdRuntime, Hr as isProviderReadableFilePart, w as isQuotaExhaustedError, Ce as isReapedSandboxConnectionError, wi as isRecentlyVerified, we as isRecoverable, $a as isRecoverableAssistantError, m as isRemoteImageSrc, Zi as isRunningStatus, Hn as isSpeakingMessage, Jt as isSpeechBlocked, $r as isStageCopy, Vt as isSubmittable, Jr as isTurnInFlight, W as isUnknownFieldError, Re as isVoiceTurn, or as joinSheets, Yt as languageDisplayName, Te as mapSessionToHistory, G as markSupported, K as markUnsupported, Ee as mergeMessagesById, dt as micIsInterrupt, se as modeRequiresConfirmWrites, ri as msUntilNextPhrase, la as nextActiveTab, wa as nextModeIndex, Hi as nextPanelOverlays, Qi as nextPreviewEvents, Xt as normalizeLangTag, no as notifyAiCreditsUpdated, Ht as orbMode, sr as pageMarker, Ui as panelOwnsEscape, In as parseConfirmationRefusal, Ur as parseDataUrl, cr as parseSharedStrings, li as parseToolActivity, lr as parseWorkbookSheets, ur as pdfTextItemsToPage, ua as pinActiveTab, Yr as planAbandonedTurn, Ut as planReplyConsumption, Xr as planTurnAbort, Dn as pollDelayMs, Zt as primaryLanguageSubtag, Un as publishedChunks, T as quotaExhaustedEventName, lt as readSpeechEngineConfig, ce as releaseSupersededAssistantSandboxes, Nn as replyFollowsInput, le as reportAssistantAiTokenUsage, Wn as requiresCancel, ut as resetSpeechEngine, Mn as resolveAssistantLanguage, Pn as resolveLanguagePair, n as resolveModeConfig, H as resolveSandboxAssistantMode, Bn as resolveSpeechLocale, jt as rotationElapsedMs, ia as runBelongsTo, sa as runIdentities, aa as sameOwner, De as sanitize, ue as selectExistingAssistantSandbox, de as selectSupersededAssistantSandboxes, Qt as selectVoiceForLocale, fe as sendAssistantPromptAsync, pe as sendHeartbeat, dr as sheetXmlToRows, nt as shouldDisableEngine, da as shouldPinOnMove, fa as shouldPinOnSelect, xn as showPreviousChunk, ft as showsAssistantCaption, pt as showsUserCaption, hn as speakableEmail, $t as speechGate, Rn as speechLabelsFor, en as speechLangForLocale, Gn as speechPlaybackReducer, rt as splitForVendor, gn as splitTableRow, Wt as spokenSoFar, di as spokenTurnText, bt as stageText, ii as startPhraseTicker, Mt as startRotationTicker, xt as statusStageCopy, pa as stepsFromToolActivity, me as stopReapedAssistantSandbox, Ne as streamBudgetMs, ei as stripLegacyFillerPrefix, fr as summarisePageText, Nt as syncRotationClock, ma as tabForArrowKey, St as thinkingPhrase, Ct as thinkingPhraseEntry, On as toCaptionText, Wr as toMessageAttachment, _n as toSpeakableText, Gr as truncateForInline, pr as truncatePagesForInline, ai as turnActivityCopy, oi as turnActivityStage, Xa as useAssistantApiAccess, ao as useAssistantAttachments, Ni as useAssistantConnectSource, co as useAssistantHeartbeat, l as useAssistantI18nNamespace, lo as useAssistantKeyboardShortcuts, x as useAssistantNavigate, r as useAssistantPageLabel, Ji as useAssistantPreview, va as useAssistantPreviewBridge, i as useAssistantProduct, a as useAssistantProductOrNull, mi as useAssistantSpeech, o as useAssistantStorageFolders, qr as useAssistantStore, u as useAssistantTr, Za as useConversationTurns, Wi as useDropdownEscape, _a as useOverlayFocus, ke as useSandboxAssistantTransport, e as useVoiceInput, hi as useVoiceSession, ro as useWorkspaceWriteAccess, Kr as validateFile, tn as voiceAvailability, ze as voiceMarker, yn as voicePreviewText, nn as voiceQualityRank, Be as voiceSessionIdOf, Gt as voiceSessionReducer, mt as voiceStageState, Dt as voiceStatusParts, Ot as voiceStatusSuffix, sn as voiceTranscriptFilename, Ve as voiceTurnsOnly, rn as voicesForLocale, he as waitForAssistantServiceReady, ge as waitForSandboxRunning, ht as waveformIsActive, gt as waveformIsSettled, Pe as withIncompleteTurnNotice };
|
|
81
|
+
import { REDUCED_MOTION_ATTRIBUTE as va, REDUCED_MOTION_QUERY as ya, readReducedMotion as ba, subscribeReducedMotion as xa, usePrefersReducedMotion as Sa } from "./shared/assistant/ui/usePrefersReducedMotion.js";
|
|
82
|
+
import { useAssistantPreviewBridge as Ca } from "./shared/assistant/preview/useAssistantPreviewBridge.js";
|
|
83
|
+
import { AssistantPreviewOverlay as wa } from "./shared/assistant/preview/AssistantPreviewOverlay.js";
|
|
84
|
+
import { AssistantLanguageSelector as Ta, FOLLOW_APP_LOCALE as Ea } from "./shared/assistant/ui/composer/AssistantLanguageSelector.js";
|
|
85
|
+
import { ASSISTANT_MODE_META as Da, AssistantModeSelector as Oa, nextModeIndex as ka } from "./shared/assistant/ui/composer/AssistantModeSelector.js";
|
|
86
|
+
import { AssistantVoiceButton as Aa } from "./shared/assistant/ui/composer/AssistantVoiceButton.js";
|
|
87
|
+
import { AUTO_VOICE as ja, AssistantVoiceSelector as Ma } from "./shared/assistant/ui/composer/AssistantVoiceSelector.js";
|
|
88
|
+
import { AssistantVoiceOrb as Na } from "./shared/assistant/ui/voice/AssistantVoiceOrb.js";
|
|
89
|
+
import { AssistantVoiceSessionButton as Pa } from "./shared/assistant/ui/voice/AssistantVoiceSessionButton.js";
|
|
90
|
+
import { CAPTION_SCROLL_ATTR as Fa, VoiceCaption as Ia } from "./shared/assistant/ui/voice/VoiceCaption.js";
|
|
91
|
+
import { VoiceConversationView as La } from "./shared/assistant/ui/voice/VoiceConversationView.js";
|
|
92
|
+
import { VoiceWaveform as Ra } from "./shared/assistant/ui/voice/VoiceWaveform.js";
|
|
93
|
+
import { VoiceStatusLine as za, VoiceStatusText as Ba } from "./shared/assistant/ui/voice/VoiceStatusText.js";
|
|
94
|
+
import { VoiceMiniController as Va } from "./shared/assistant/ui/voice/VoiceMiniController.js";
|
|
95
|
+
import { VoiceStage as Ha } from "./shared/assistant/ui/voice/VoiceStage.js";
|
|
96
|
+
import { VoiceTranscriptDrawer as Ua } from "./shared/assistant/ui/voice/VoiceTranscriptDrawer.js";
|
|
97
|
+
import { downloadFile as Wa, exportConversation as Ga } from "./shared/assistant/exportConversation.js";
|
|
98
|
+
import { AssistantMoreMenu as Ka } from "./shared/assistant/ui/AssistantMoreMenu.js";
|
|
99
|
+
import { AssistantHeader as qa } from "./shared/assistant/ui/AssistantHeader.js";
|
|
100
|
+
import { AssistantConversationList as Ja } from "./shared/assistant/ui/AssistantConversationList.js";
|
|
101
|
+
import { AssistantEmptyState as Ya } from "./shared/assistant/ui/AssistantEmptyState.js";
|
|
102
|
+
import { AssistantTurnActivity as Xa, TurnActivityLine as Za } from "./shared/assistant/ui/AssistantTurnActivity.js";
|
|
103
|
+
import { AssistantMessageItem as Qa } from "./shared/assistant/ui/AssistantMessageItem.js";
|
|
104
|
+
import { AssistantMessageList as $a } from "./shared/assistant/ui/AssistantMessageList.js";
|
|
105
|
+
import { AssistantVoiceSession as eo } from "./shared/assistant/ui/voice/AssistantVoiceSession.js";
|
|
106
|
+
import { useAssistantApiAccess as to } from "./shared/assistant/useAssistantApiAccess.js";
|
|
107
|
+
import { useConversationTurns as no } from "./shared/assistant/useConversationTurns.js";
|
|
108
|
+
import { isMultimodalBodyRejection as ro, isRecoverableAssistantError as io } from "./shared/assistant/transportErrors.js";
|
|
109
|
+
import { aiCreditsUpdatedEventName as ao, dispatchAssistantQuotaExhausted as oo, notifyAiCreditsUpdated as so } from "./shared/assistant/aiCredits.js";
|
|
110
|
+
import { useWorkspaceWriteAccess as co } from "./shared/assistant/useWorkspaceWriteAccess.js";
|
|
111
|
+
import { extractDocumentText as lo } from "./shared/assistant/documentExtract.js";
|
|
112
|
+
import { useAssistantAttachments as uo } from "./shared/assistant/useAssistantAttachments.js";
|
|
113
|
+
import { AssistantComposer as fo } from "./shared/assistant/ui/composer/AssistantComposer.js";
|
|
114
|
+
import { isProdRuntime as po } from "./shared/assistant/env.js";
|
|
115
|
+
import { useAssistantHeartbeat as mo } from "./shared/assistant/useAssistantHeartbeat.js";
|
|
116
|
+
import { useAssistantKeyboardShortcuts as ho } from "./shared/assistant/useAssistantKeyboardShortcuts.js";
|
|
117
|
+
import { AssistantApiCallsConsentDialog as go } from "./shared/assistant/ui/AssistantApiCallsConsentDialog.js";
|
|
118
|
+
import { AssistantChatArea as _o } from "./shared/assistant/ui/AssistantChatArea.js";
|
|
119
|
+
import { AIAssistantPanel as vo } from "./shared/assistant/ui/AIAssistantPanel.js";
|
|
120
|
+
export { vo as AIAssistantPanel, L as ASSISTANT_API_AUTH_STRATEGY, kn as ASSISTANT_LANGUAGES, Da as ASSISTANT_MODE_META, Fi as ASSISTANT_OVERLAY_ATTR, Ii as ASSISTANT_PANEL_ATTR, mr as ATTACHMENT_ACCEPT, yi as ATTACHMENT_SOURCES, ja as AUTO_VOICE, go as AssistantApiCallsConsentDialog, Gi as AssistantAttachmentButton, Ki as AssistantAttachmentChips, Ti as AssistantAutoSpeakToggle, fi as AssistantAvatar, _o as AssistantChatArea, fo as AssistantComposer, Pi as AssistantConnectSourceItem, Mi as AssistantConnectSourceProvider, Ja as AssistantConversationList, Ya as AssistantEmptyState, ga as AssistantEntityPreview, qa as AssistantHeader, s as AssistantI18nProvider, Oi as AssistantLanguageMenu, Ta as AssistantLanguageSelector, f as AssistantMarkdownImage, h as AssistantMarkdownRenderer, Ei as AssistantMessageAttachments, Qa as AssistantMessageItem, $a as AssistantMessageList, Oa as AssistantModeSelector, Ka as AssistantMoreMenu, g as AssistantNavigateProvider, Di as AssistantPendingWriteCard, wa as AssistantPreviewOverlay, qi as AssistantPreviewProvider, t as AssistantProductProvider, ki as AssistantReplyLanguageSelector, _e as AssistantRuntimeManager, Ai as AssistantSpeakButton, pi as AssistantSpeechProvider, ji as AssistantSpokenTurnsNotice, ha as AssistantStepRail, ci as AssistantToolActivity, Xa as AssistantTurnActivity, Aa as AssistantVoiceButton, Na as AssistantVoiceOrb, Ma as AssistantVoiceSelector, eo as AssistantVoiceSession, Pa as AssistantVoiceSessionButton, hr as AttachmentRejectedError, Jn as BOILERPLATE_PAGE_SHARE, Fa as CAPTION_SCROLL_ATTR, O as CHECK_AI_CREDITS, k as CREATE_SANDBOX, cn as DEFAULT_SPEAKABLE_LABELS, An as DEFAULT_SPEECH_RATE, Ae as DEFAULT_STREAM_BUDGET_MS, Pt as ENDPOINT_GRACE_MS, A as EXTEND_SANDBOX_TTL, Ea as FOLLOW_APP_LOCALE, j as GET_ACTIVE_SANDBOXES, M as GET_SANDBOX, qe as HOSTED_TTS_MAX_CHARS, Ue as HOSTED_TTS_TIER, We as HOSTED_VOICES, ca as IDLE_ACTIVE_TAB, Vn as IDLE_PLAYBACK, $i as IDLE_PREVIEW, Yi as IDLE_PREVIEW_STATE, kt as IDLE_ROTATION_CLOCK, Ft as INITIAL_SESSION, gr as INLINE_IMAGE_MAX_DIM, _r as INLINE_IMAGE_QUALITY, It as INTERRUPT_MAX_MS, Lt as INTERRUPT_MIN_MS, vr as MAX_ATTACHMENTS, Yn as MAX_BOILERPLATE_LINE_CHARS, Xn as MAX_EXTRACTED_CHARS, yr as MAX_FILE_BYTES, br as MAX_INLINE_CHARS_PER_FILE, xr as MAX_INLINE_CHARS_TOTAL, Kn as MAX_INLINE_IMAGE_BASE64_BYTES, Sr as MAX_INLINE_IMAGE_BASE64_CHARS, Cr as MAX_INLINE_IMAGE_PARTS, wr as MAX_INLINE_TURN_BODY_BYTES, Zn as MAX_PDF_PAGES_SCANNED, qn as MAX_REQUEST_BODY_BYTES, ln as MAX_SPEAKABLE_CHARS, un as MAX_SPOKEN_TABLE_ROWS, Tr as MAX_TURN_BODY_BYTES, bn as MINI_CAPTION_BUDGET, Qn as MIN_PAGE_TEXT_CHARS, $n as MIN_TEXT_PAGE_SHARE, ea as NO_OWNER, Li as NO_PANEL_OVERLAY, _t as PHRASE_ROTATE_MS, Sn as POLL_FAST_MS, Cn as POLL_FAST_UNTIL_MS, wn as POLL_SLOW_MS, Tn as POLL_STEADY_MS, En as POLL_STEADY_UNTIL_MS, vn as PREVIEW_LANGUAGES, Er as PROMPT_ENVELOPE_RESERVE_BYTES, Dr as PROVIDER_READABLE_FILE_MEDIA_TYPES, N as PROXY_SANDBOX_REQUEST, va as REDUCED_MOTION_ATTRIBUTE, ya as REDUCED_MOTION_QUERY, P as REPORT_AI_TOKEN_USAGE, Si as SANDBOX_READY_TTL_MS, Rt as SILENCE_SUBMIT_MS, Je as SPEAKING_RATE_MAX, Ye as SPEAKING_RATE_MAX_STREAMING, Xe as SPEAKING_RATE_MAX_SYNC, Ze as SPEAKING_RATE_MIN, dn as SPEECH_CHUNK_CHARS, fn as SPEECH_CHUNK_CJK_CHARS, Kt as SPEECH_LANG, Ln as SPOKEN_LABEL_LANGUAGES, vt as STAGE_COPY, F as STOP_ASSISTANT_SANDBOX, je as STREAM_BUDGET_MS, yt as THINKING_PHRASES, Or as TURN_BODY_HEADROOM_BYTES, Za as TurnActivityLine, qt as VOICE_LIST_TIMEOUT_MS, wt as VOICE_MUTED_LABEL, Tt as VOICE_THINKING_LABEL, Ia as VoiceCaption, La as VoiceConversationView, Va as VoiceMiniController, Ha as VoiceStage, za as VoiceStatusLine, Ba as VoiceStatusText, Ua as VoiceTranscriptDrawer, Ra as VoiceWaveform, I as WAIT_FOR_SANDBOX_RUNNING, q as abortAssistantTurn, Ri as activePanelOverlay, At as advanceRotationClock, ao as aiCreditsUpdatedEventName, ta as applyPreviewEvent, J as approvePendingWrite, zi as assistantPanelOwnsEscape, _ as assistantRoutePath, c as assistantTranslationKey, v as assistantUrlTransform, bi as availableAttachmentSources, Qe as base64ToBytes, y as browserShouldHandle, He as browserSpeechEngine, si as buildAssistantProgress, Y as buildAssistantSandboxEnv, kr as buildAttachmentPromptBlock, an as buildContinuedFromVoiceNote, ve as buildProgress, Ar as buildPromptParts, X as buildPromptRequestBody, jr as buildPromptWithAttachments, $e as buildRequest, E as buildSandboxContextInput, on as buildVoiceTranscriptMarkdown, Fe as chatTurns, Z as checkAssistantAiCredits, pn as chunkForSpeech, b as classifyAssistantHref, Mr as classifyAttachment, et as classifyHttpFailure, S as classifyQuotaError, er as columnLetterToIndex, Et as composeVoiceStatus, ot as configureSpeechEngine, mn as containsCjk, d as copyToClipboard, Nr as countInlineImageCandidates, Pr as countInlinedImageParts, ui as countSpokenTurns, na as createAssistantPreviewSurface, Q as createAssistantSandbox, $ as createAssistantSession, it as createHostedTtsEngine, Ci as createReadinessTracker, at as createRoutingSpeechEngine, oa as createRunIdentityCache, Oe as createSandboxAssistantTransport, st as createSpeechEngines, ra as currentPreviewOwner, tt as decodeAudioResponse, tr as decodeXmlEntities, C as describeQuotaError, Fr as detectDocumentFormat, zn as detectScriptLocale, xi as deviceHasCamera, oo as dispatchAssistantQuotaExhausted, nr as docxXmlToText, ee as downloadAssistantArtifact, Wa as downloadFile, ni as elapsedSince, Bi as escapeDismisses, Ir as estimateTurnBodyBytes, D as executeSandboxGraphQL, Ga as exportConversation, te as extendAssistantSandboxTTL, lo as extractDocumentText, jn as findAssistantLanguage, ne as findExistingSandbox, Fn as findPendingWrite, rr as fitPdfPages, Vi as focusIsInsidePanel, Lr as formatBytes, ir as formatPageRanges, gi as getActorId, re as getAssistantArtifacts, ti as getAssistantDisplayContent, ye as getAssistantMedia, ie as getAssistantMessages, ae as getAssistantSession, oe as getAssistantStreamAccess, be as getAssistantText, Rr as getAttachmentSendBlocker, U as getCapability, zr as getExtension, R as getImageForMode, z as getImageTagForMode, _i as getOrganizationId, xe as getRawMessageCreatedAt, B as getResourcesForMode, V as getSandboxImageRegistry, Br as getSendableAttachments, ct as getSpeechEngine, Se as getToolProgress, vi as getWorkspaceId, Ie as groupBySession, Le as groupConsecutiveBySession, Vr as hasAttachmentWorkInFlight, Ge as hostedLocaleFor, Ke as hostedSupportsLanguage, p as imageHostLabel, Me as incompleteTurnNotice, Xi as isBlankProse, zt as isCapturing, Bt as isEcho, Zr as isLegacyFiller, Qr as isLegacyStopped, ar as isMostlyImagePages, ro as isMultimodalBodyRejection, po as isProdRuntime, Hr as isProviderReadableFilePart, w as isQuotaExhaustedError, Ce as isReapedSandboxConnectionError, wi as isRecentlyVerified, we as isRecoverable, io as isRecoverableAssistantError, m as isRemoteImageSrc, Zi as isRunningStatus, Hn as isSpeakingMessage, Jt as isSpeechBlocked, $r as isStageCopy, Vt as isSubmittable, Jr as isTurnInFlight, W as isUnknownFieldError, Re as isVoiceTurn, or as joinSheets, Yt as languageDisplayName, Te as mapSessionToHistory, G as markSupported, K as markUnsupported, Ee as mergeMessagesById, dt as micIsInterrupt, se as modeRequiresConfirmWrites, ri as msUntilNextPhrase, la as nextActiveTab, ka as nextModeIndex, Hi as nextPanelOverlays, Qi as nextPreviewEvents, Xt as normalizeLangTag, so as notifyAiCreditsUpdated, Ht as orbMode, sr as pageMarker, Ui as panelOwnsEscape, In as parseConfirmationRefusal, Ur as parseDataUrl, cr as parseSharedStrings, li as parseToolActivity, lr as parseWorkbookSheets, ur as pdfTextItemsToPage, ua as pinActiveTab, Yr as planAbandonedTurn, Ut as planReplyConsumption, Xr as planTurnAbort, Dn as pollDelayMs, Zt as primaryLanguageSubtag, Un as publishedChunks, T as quotaExhaustedEventName, ba as readReducedMotion, lt as readSpeechEngineConfig, ce as releaseSupersededAssistantSandboxes, Nn as replyFollowsInput, le as reportAssistantAiTokenUsage, Wn as requiresCancel, ut as resetSpeechEngine, Mn as resolveAssistantLanguage, Pn as resolveLanguagePair, n as resolveModeConfig, H as resolveSandboxAssistantMode, Bn as resolveSpeechLocale, jt as rotationElapsedMs, ia as runBelongsTo, sa as runIdentities, aa as sameOwner, De as sanitize, ue as selectExistingAssistantSandbox, de as selectSupersededAssistantSandboxes, Qt as selectVoiceForLocale, fe as sendAssistantPromptAsync, pe as sendHeartbeat, dr as sheetXmlToRows, nt as shouldDisableEngine, da as shouldPinOnMove, fa as shouldPinOnSelect, xn as showPreviousChunk, ft as showsAssistantCaption, pt as showsUserCaption, hn as speakableEmail, $t as speechGate, Rn as speechLabelsFor, en as speechLangForLocale, Gn as speechPlaybackReducer, rt as splitForVendor, gn as splitTableRow, Wt as spokenSoFar, di as spokenTurnText, bt as stageText, ii as startPhraseTicker, Mt as startRotationTicker, xt as statusStageCopy, pa as stepsFromToolActivity, me as stopReapedAssistantSandbox, Ne as streamBudgetMs, ei as stripLegacyFillerPrefix, xa as subscribeReducedMotion, fr as summarisePageText, Nt as syncRotationClock, ma as tabForArrowKey, St as thinkingPhrase, Ct as thinkingPhraseEntry, On as toCaptionText, Wr as toMessageAttachment, _n as toSpeakableText, Gr as truncateForInline, pr as truncatePagesForInline, ai as turnActivityCopy, oi as turnActivityStage, to as useAssistantApiAccess, uo as useAssistantAttachments, Ni as useAssistantConnectSource, mo as useAssistantHeartbeat, l as useAssistantI18nNamespace, ho as useAssistantKeyboardShortcuts, x as useAssistantNavigate, r as useAssistantPageLabel, Ji as useAssistantPreview, Ca as useAssistantPreviewBridge, i as useAssistantProduct, a as useAssistantProductOrNull, mi as useAssistantSpeech, o as useAssistantStorageFolders, qr as useAssistantStore, u as useAssistantTr, no as useConversationTurns, Wi as useDropdownEscape, _a as useOverlayFocus, Sa as usePrefersReducedMotion, ke as useSandboxAssistantTransport, e as useVoiceInput, hi as useVoiceSession, co as useWorkspaceWriteAccess, Kr as validateFile, tn as voiceAvailability, ze as voiceMarker, yn as voicePreviewText, nn as voiceQualityRank, Be as voiceSessionIdOf, Gt as voiceSessionReducer, mt as voiceStageState, Dt as voiceStatusParts, Ot as voiceStatusSuffix, sn as voiceTranscriptFilename, Ve as voiceTurnsOnly, rn as voicesForLocale, he as waitForAssistantServiceReady, ge as waitForSandboxRunning, ht as waveformIsActive, gt as waveformIsSettled, Pe as withIncompleteTurnNotice };
|