@burdenoff/fe-libs 2026.1001.5 → 2026.1001.6

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.
@@ -118,6 +118,7 @@ export * from './ui/composer/AssistantAttachmentChips';
118
118
  export * from './ui/composer/AssistantConnectSourceItem';
119
119
  export * from './ui/composer/connectSource';
120
120
  export * from './preview/types';
121
+ export * from './preview/writeActionResults';
121
122
  export * from './preview/context';
122
123
  export * from './preview/previewTransitions';
123
124
  export * from './preview/surfaceState';
@@ -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":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAGH,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AAGxB,cAAc,wBAAwB,CAAC;AAKvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAG9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,aAAa,CAAC;AAK5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAG3C,cAAc,QAAQ,CAAC;AAIvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AAGrC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAIhD,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AAGnC,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qCAAqC,CAAC;AACpD,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,qCAAqC,CAAC;AACpD,cAAc,oCAAoC,CAAC;AACnD,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAG9C,cAAc,WAAW,CAAC;AAE1B,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AAGrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,iCAAiC,CAAC;AAEhD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAE3C,cAAc,kCAAkC,CAAC;AAEjD,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAElC,cAAc,SAAS,CAAC;AAExB,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAE5B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,OAAO,CAAC;AACtB,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { useAssistantTr as e } from "../i18n.js";
2
2
  import { useAssistantStore as t } from "../store.js";
3
- import { hasAssistantPreviewSurface as n } from "./types.js";
4
- import { useAssistantPreview as r } from "./context.js";
3
+ import { useAssistantPreview as n } from "./context.js";
4
+ import { hasAssistantPreviewSurface as r } from "./types.js";
5
5
  import { useOverlayFocus as i } from "../ui/useOverlayFocus.js";
6
6
  import { Component as a } from "react";
7
7
  import { Fragment as o, jsx as s, jsxs as c } from "react/jsx-runtime";
@@ -27,11 +27,11 @@ var l = class extends a {
27
27
  return this.state.failed ? this.props.fallback : this.props.children;
28
28
  }
29
29
  }, u = ({ controller: e }) => /* @__PURE__ */ s(o, { children: e.render() }), d = ({ onClose: a }) => {
30
- let o = r(), d = e(), f = t((e) => {
30
+ let o = n(), d = e(), f = t((e) => {
31
31
  let t = e.activeConversationId, n = t ? e.processingByConversationId[t]?.messageId : null;
32
32
  return !t || !n ? "idle" : `${t}:${n}#${e.conversations.find((e) => e.id === t)?.updatedAt ?? ""}`;
33
33
  }), p = i("assistant-toggle-preview");
34
- return n(o) ? /* @__PURE__ */ c("div", {
34
+ return r(o) ? /* @__PURE__ */ c("div", {
35
35
  ref: p,
36
36
  tabIndex: -1,
37
37
  className: "absolute inset-0 z-10 flex flex-col bg-bg-surface outline-none animate-in slide-in-from-right-2 fade-in duration-200",
@@ -62,6 +62,19 @@ export interface AssistantPreviewRun {
62
62
  export type AssistantPreviewEvent = {
63
63
  kind: "start";
64
64
  run: AssistantPreviewRun;
65
+ } | {
66
+ /** An approved write finished, independently of the model's turn. */
67
+ kind: "action-result";
68
+ run: AssistantPreviewRun;
69
+ action: {
70
+ id: string;
71
+ operation: string;
72
+ responseKey: string;
73
+ /** Approved inputs, with sensitive arguments omitted. */
74
+ arguments: Readonly<Record<string, unknown>>;
75
+ /** The sandbox's redacted GraphQL response, never model narration. */
76
+ result: unknown;
77
+ };
65
78
  } | {
66
79
  kind: "snapshot";
67
80
  run: AssistantPreviewRun;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;GAcG;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,mBAAmB,CAAA;CAAE,GAC3C;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,mBAAmB,CAAC;IACzB;;;;;;;;OAQG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACrC,GACD;IACE,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,mBAAmB,CAAC;IACzB;;;;;;;;OAQG;IACH,OAAO,EAAE,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;IAC5C;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEN;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,EAAE,MAAM,SAAS,CAAC;IAEzB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAEjD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,6EAA6E;AAC7E,MAAM,MAAM,iCAAiC,GAAG,0BAA0B,GAAG;IAC3E,MAAM,EAAE,MAAM,SAAS,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,0BAA0B,GAAG,IAAI,GAAG,SAAS,GACxD,UAAU,IAAI,iCAAiC,CAEjD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;GAcG;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,mBAAmB,CAAA;CAAE,GAC3C;IACE,qEAAqE;IACrE,IAAI,EAAE,eAAe,CAAC;IACtB,GAAG,EAAE,mBAAmB,CAAC;IACzB,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,yDAAyD;QACzD,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7C,sEAAsE;QACtE,MAAM,EAAE,OAAO,CAAC;KACjB,CAAC;CACH,GACD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,mBAAmB,CAAC;IACzB;;;;;;;;OAQG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACrC,GACD;IACE,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,mBAAmB,CAAC;IACzB;;;;;;;;OAQG;IACH,OAAO,EAAE,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;IAC5C;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEN;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,EAAE,MAAM,SAAS,CAAC;IAEzB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAEjD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,6EAA6E;AAC7E,MAAM,MAAM,iCAAiC,GAAG,0BAA0B,GAAG;IAC3E,MAAM,EAAE,MAAM,SAAS,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,0BAA0B,GAAG,IAAI,GAAG,SAAS,GACxD,UAAU,IAAI,iCAAiC,CAEjD"}
@@ -1,3 +1,23 @@
1
- import { AssistantPreviewController } from './types';
1
+ import { AssistantPreviewController, AssistantPreviewEvent } from './types';
2
+ /**
3
+ * Shared delivery for turn events and approved action results. The main effect
4
+ * and the unmount cleanup had already drifted: the
5
+ * receiver fix and the async-rejection guard were applied to one and not the
6
+ * other, so closing the assistant mid-run delivered the run's only terminal
7
+ * event through the broken path. One function is the fix for the class of bug,
8
+ * not just for the instance.
9
+ *
10
+ * ★ Called ON the controller, not as a detached function: a product may supply
11
+ * a class instance or an object method whose `onEvent` uses `this`, and a bare
12
+ * call loses the receiver — the resulting throw is caught here, so the product
13
+ * would silently receive nothing at all.
14
+ *
15
+ * ★ A promise-like return has its rejection handled without awaiting. `onEvent`
16
+ * is typed as returning void, which TypeScript lets an `async` function
17
+ * satisfy, so a throw after an `await` escapes the `try` entirely and surfaces
18
+ * as an unhandled rejection in the HOST app — breaking the containment this
19
+ * wrapper exists to provide.
20
+ */
21
+ export declare function deliverPreviewEvent(controller: AssistantPreviewController | null | undefined, event: AssistantPreviewEvent): void;
2
22
  export declare function useAssistantPreviewBridge(controller: AssistantPreviewController | null): void;
3
23
  //# sourceMappingURL=useAssistantPreviewBridge.d.ts.map
@@ -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,CA+MN"}
1
+ {"version":3,"file":"useAssistantPreviewBridge.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/useAssistantPreviewBridge.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAIjF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,0BAA0B,GAAG,IAAI,GAAG,SAAS,EACzD,KAAK,EAAE,qBAAqB,GAC3B,IAAI,CAeN;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,0BAA0B,GAAG,IAAI,GAC5C,IAAI,CA+MN"}
@@ -75,4 +75,4 @@ function d(d) {
75
75
  ]);
76
76
  }
77
77
  //#endregion
78
- export { d as useAssistantPreviewBridge };
78
+ export { u as deliverPreviewEvent, d as useAssistantPreviewBridge };
@@ -0,0 +1,10 @@
1
+ import { WriteProposalView } from '../writeProposals';
2
+ import { PreviewOwner } from './surfaceState';
3
+ import { AssistantPreviewEvent } from './types';
4
+ /** Only a recorded successful execution supplies data to a live preview. */
5
+ export declare function writeActionResultEvents(view: Pick<WriteProposalView, 'proposalId' | 'status' | 'result'> & {
6
+ description: Pick<WriteProposalView['description'], 'rootFields'>;
7
+ }, conversationId: string, messageId: string, owner: PreviewOwner): Extract<AssistantPreviewEvent, {
8
+ kind: "action-result";
9
+ }>[];
10
+ //# sourceMappingURL=writeActionResults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writeActionResults.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/preview/writeActionResults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAuB,MAAM,SAAS,CAAC;AAE1E,4EAA4E;AAC5E,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC,GAAG;IAClE,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;CACnE,EACD,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,YAAY,GAClB,OAAO,CAAC,qBAAqB,EAAE;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC,EAAE,CA+B7D"}
@@ -0,0 +1,26 @@
1
+ //#region src/shared/assistant/preview/writeActionResults.ts
2
+ function e(e, t, n, r) {
3
+ if (e.status !== "succeeded" || !e.result || e.result.errors?.length || e.result.dataPreview === void 0) return [];
4
+ let i = {
5
+ runId: `${t}:${n}`,
6
+ conversationId: t,
7
+ messageId: n,
8
+ ...r
9
+ };
10
+ return e.description.rootFields.map((t) => {
11
+ let n = t.alias ?? t.field;
12
+ return {
13
+ kind: "action-result",
14
+ run: i,
15
+ action: {
16
+ id: `${e.proposalId}:${n}`,
17
+ operation: t.field,
18
+ responseKey: n,
19
+ arguments: Object.fromEntries(t.args.filter((e) => !e.sensitive).map((e) => [e.name, e.value])),
20
+ result: e.result?.dataPreview
21
+ }
22
+ };
23
+ });
24
+ }
25
+ //#endregion
26
+ export { e as writeActionResultEvents };
@@ -4,11 +4,11 @@ import { useAssistantTr as n } from "../i18n.js";
4
4
  import { AssistantNavigateProvider as r } from "./AssistantMarkdownRenderer.js";
5
5
  import { useAssistantStore as i } from "../store.js";
6
6
  import { AssistantSpeechProvider as a } from "./AssistantSpeechProvider.js";
7
- import { AssistantConnectSourceProvider as o } from "./composer/connectSource.js";
8
- import { ASSISTANT_OVERLAY_ATTR as s, ASSISTANT_PANEL_ATTR as c, activePanelOverlay as l, escapeDismisses as u, nextPanelOverlays as d } from "./panelOverlays.js";
9
- import { hasAssistantPreviewSurface as f } from "../preview/types.js";
10
- import { AssistantPreviewProvider as p } from "../preview/context.js";
11
- import { useAssistantPreviewBridge as m } from "../preview/useAssistantPreviewBridge.js";
7
+ import { AssistantPreviewProvider as o } from "../preview/context.js";
8
+ import { useAssistantPreviewBridge as s } from "../preview/useAssistantPreviewBridge.js";
9
+ import { AssistantConnectSourceProvider as c } from "./composer/connectSource.js";
10
+ import { ASSISTANT_OVERLAY_ATTR as l, ASSISTANT_PANEL_ATTR as u, activePanelOverlay as d, escapeDismisses as f, nextPanelOverlays as p } from "./panelOverlays.js";
11
+ import { hasAssistantPreviewSurface as m } from "../preview/types.js";
12
12
  import { panelOwnedPreviewBridge as h, useHostedAssistantPreviewBridge as g } from "../preview/bridgeHostContext.js";
13
13
  import { AssistantPreviewOverlay as _ } from "../preview/AssistantPreviewOverlay.js";
14
14
  import { AssistantHeader as v } from "./AssistantHeader.js";
@@ -25,17 +25,17 @@ import { jsx as O, jsxs as k } from "react/jsx-runtime";
25
25
  var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: ee, onNavigate: P, connectSourceHref: F, onConnectSource: I, preview: L, serverHistory: R = !1 }) => {
26
26
  let z = n();
27
27
  x(R);
28
- let [B, V] = D(!1), H = f(L);
28
+ let [B, V] = D(!1), H = m(L);
29
29
  B && !H && V(!1);
30
30
  let U = B && H;
31
- m(h(L, g()));
31
+ s(h(L, g()));
32
32
  let W = E(null);
33
33
  e(W);
34
- let { conversations: G, activeConversationId: K, conversationListOpen: q, setConversationListOpen: J, createConversation: Y } = i(), X = q || U, Z = l({
34
+ let { conversations: G, activeConversationId: K, conversationListOpen: q, setConversationListOpen: J, createConversation: Y } = i(), X = q || U, Z = d({
35
35
  historyOpen: q,
36
36
  previewOpen: U
37
37
  }), Q = (e) => {
38
- let t = d({
38
+ let t = p({
39
39
  historyOpen: q,
40
40
  previewOpen: U
41
41
  }, e);
@@ -46,7 +46,7 @@ var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: ee,
46
46
  return w({
47
47
  panelRef: W,
48
48
  onClose: () => {
49
- if (u({
49
+ if (f({
50
50
  historyOpen: q,
51
51
  previewOpen: U
52
52
  }) === "overlay") {
@@ -57,11 +57,11 @@ var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: ee,
57
57
  }
58
58
  }), /* @__PURE__ */ O(a, {
59
59
  visible: j ?? !0,
60
- children: /* @__PURE__ */ O(p, {
60
+ children: /* @__PURE__ */ O(o, {
61
61
  value: L,
62
62
  children: /* @__PURE__ */ O(r, {
63
63
  value: P,
64
- children: /* @__PURE__ */ O(o, {
64
+ children: /* @__PURE__ */ O(c, {
65
65
  value: F,
66
66
  onOpen: I,
67
67
  children: /* @__PURE__ */ O(b, { children: /* @__PURE__ */ k("div", {
@@ -70,8 +70,8 @@ var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: ee,
70
70
  role: "complementary",
71
71
  "aria-label": z("panel.ariaLabel", "AI Assistant"),
72
72
  "data-testid": "ai-assistant-panel",
73
- [c]: "",
74
- ...Z ? { [s]: Z } : {},
73
+ [u]: "",
74
+ ...Z ? { [l]: Z } : {},
75
75
  tabIndex: -1,
76
76
  children: [
77
77
  /* @__PURE__ */ O("div", {
@@ -1,12 +1,12 @@
1
1
  import { useAssistantTr as e } from "../i18n.js";
2
- import { hasAssistantPreviewSurface as t } from "../preview/types.js";
3
- import { useAssistantPreview as n } from "../preview/context.js";
2
+ import { useAssistantPreview as t } from "../preview/context.js";
3
+ import { hasAssistantPreviewSurface as n } from "../preview/types.js";
4
4
  import { AssistantMoreMenu as r } from "./AssistantMoreMenu.js";
5
5
  import { Eye as i, History as a, PanelBottom as o, PanelRight as s, Plus as c, Sparkles as l, X as u } from "lucide-react";
6
6
  import { Fragment as d, jsx as f, jsxs as p } from "react/jsx-runtime";
7
7
  //#region src/shared/assistant/ui/AssistantHeader.tsx
8
8
  var m = ({ contextLabel: m, onNewConversation: h, onOpenHistory: g, historyOpen: _, onTogglePreview: v, previewOpen: y, onClose: b, docked: x, onToggleDock: S }) => {
9
- let C = e(), w = n();
9
+ let C = e(), w = t();
10
10
  return /* @__PURE__ */ p("div", {
11
11
  className: "flex items-center gap-2 border-b border-border-default bg-bg-elevated px-3 py-2.5",
12
12
  children: [/* @__PURE__ */ p("div", {
@@ -47,7 +47,7 @@ var m = ({ contextLabel: m, onNewConversation: h, onOpenHistory: g, historyOpen:
47
47
  "data-testid": "assistant-open-history",
48
48
  children: /* @__PURE__ */ f(a, { className: "size-4" })
49
49
  }),
50
- t(w) && v && /* @__PURE__ */ f("button", {
50
+ n(w) && v && /* @__PURE__ */ f("button", {
51
51
  type: "button",
52
52
  onClick: v,
53
53
  className: `rounded-lg p-1.5 transition-colors ${y ? "bg-action-primary-bg/15 text-action-primary-bg" : "text-text-secondary hover:bg-bg-sunken hover:text-text-primary"}`,
@@ -1 +1 @@
1
- {"version":3,"file":"useWriteProposals.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/useWriteProposals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useWriteProposals.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/useWriteProposals.ts"],"names":[],"mappings":"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"}
@@ -4,21 +4,25 @@ import { useAssistantStore as t } from "../store.js";
4
4
  import { readSandboxWriteCapabilitiesOnce as n } from "../api.js";
5
5
  import { writeProposalErrorLine as r } from "../writeProposalErrorCopy.js";
6
6
  import { getOrganizationId as i, getWorkspaceId as a } from "../context.js";
7
- import { writeProposalConfirmState as o } from "./writeProposalPresentation.js";
8
- import { WRITE_PROPOSAL_SANDBOX_MODE as s, createSandboxWriteProposalClient as c } from "../writeProposals.js";
9
- import { createWriteProposalDiscovery as l, readWriteProposalRefs as u, writeProposalSessionsToReopen as d, writeProposalsEnabledFor as f } from "../writeProposalDiscovery.js";
10
- import { WRITE_REPLY_DECLINE_WAIT_MS as p, settleWithin as m, writeReplyLiveState as h } from "../writeReplySend.js";
11
- import { useEffect as g, useMemo as _, useRef as v, useState as y } from "react";
7
+ import { redactWriteProposalText as o, writeProposalConfirmState as s, writeProposalSensitiveTexts as c } from "./writeProposalPresentation.js";
8
+ import { useAssistantPreview as l } from "../preview/context.js";
9
+ import { currentPreviewOwner as u, sameOwner as d } from "../preview/surfaceState.js";
10
+ import { deliverPreviewEvent as f } from "../preview/useAssistantPreviewBridge.js";
11
+ import { writeActionResultEvents as p } from "../preview/writeActionResults.js";
12
+ import { WRITE_PROPOSAL_SANDBOX_MODE as m, createSandboxWriteProposalClient as h } from "../writeProposals.js";
13
+ import { createWriteProposalDiscovery as g, readWriteProposalRefs as _, writeProposalSessionsToReopen as v, writeProposalsEnabledFor as y } from "../writeProposalDiscovery.js";
14
+ import { WRITE_REPLY_DECLINE_WAIT_MS as b, settleWithin as x, writeReplyLiveState as S } from "../writeReplySend.js";
15
+ import { useEffect as C, useMemo as w, useRef as T, useState as E } from "react";
12
16
  //#region src/shared/assistant/ui/useWriteProposals.ts
13
- var b = new Set([
17
+ var D = new Set([
14
18
  "succeeded",
15
19
  "failed",
16
20
  "outcome_unknown",
17
21
  "declined",
18
22
  "superseded",
19
23
  "expired"
20
- ]), x = (e) => `${e.sandboxId}\u0000${e.sessionId}`;
21
- function S(e) {
24
+ ]), O = (e) => `${e.sandboxId}\u0000${e.sessionId}`;
25
+ function k(e) {
22
26
  return {
23
27
  accessToken: e.getAccessToken(),
24
28
  workspaceToken: e.getWorkspaceToken(),
@@ -26,15 +30,15 @@ function S(e) {
26
30
  organizationId: i()
27
31
  };
28
32
  }
29
- function C() {
33
+ function A() {
30
34
  return `${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
31
35
  }
32
- function w(e) {
36
+ function j(e) {
33
37
  let t = /* @__PURE__ */ new Set();
34
- for (let n of e.messages) for (let e of u(n.metadata)) t.add(e.proposalId);
38
+ for (let n of e.messages) for (let e of _(n.metadata)) t.add(e.proposalId);
35
39
  return t;
36
40
  }
37
- function T(e, t, n) {
41
+ function M(e, t, n) {
38
42
  if (n) {
39
43
  let t = e.messages.find((e) => e.id === n);
40
44
  if (t?.role === "assistant") return t;
@@ -45,11 +49,11 @@ function T(e, t, n) {
45
49
  }
46
50
  return null;
47
51
  }
48
- function E(e) {
52
+ function N(e) {
49
53
  let t = /* @__PURE__ */ new Map();
50
54
  for (let n of e) {
51
55
  if (n.view.status !== "pending") continue;
52
- let e = `${x(n.session)}\u0000${n.session.conversationId}`, r = t.get(e) ?? {
56
+ let e = `${O(n.session)}\u0000${n.session.conversationId}`, r = t.get(e) ?? {
53
57
  session: n.session,
54
58
  proposalIds: []
55
59
  };
@@ -57,192 +61,215 @@ function E(e) {
57
61
  }
58
62
  return t;
59
63
  }
60
- function D(i) {
61
- let { getAccessToken: D, getWorkspaceToken: O, userId: k } = e(), A = v({
64
+ function P(i) {
65
+ let { getAccessToken: P, getWorkspaceToken: F, userId: I } = e(), L = l(), R = T({
62
66
  tr: i.tr,
63
67
  productWriteApproval: i.productWriteApproval ?? "legacy",
64
- getAccessToken: D,
65
- getWorkspaceToken: O,
66
- userId: k
68
+ getAccessToken: P,
69
+ getWorkspaceToken: F,
70
+ userId: I,
71
+ preview: L
67
72
  });
68
- g(() => {
69
- A.current = {
73
+ C(() => {
74
+ R.current = {
70
75
  tr: i.tr,
71
76
  productWriteApproval: i.productWriteApproval ?? "legacy",
72
- getAccessToken: D,
73
- getWorkspaceToken: O,
74
- userId: k
77
+ getAccessToken: P,
78
+ getWorkspaceToken: F,
79
+ userId: I,
80
+ preview: L
75
81
  };
76
82
  });
77
- let [j, M] = y({}), N = v({}), P = v(/* @__PURE__ */ new Map()), F = v(/* @__PURE__ */ new Set()), I = v(null), L = v(/* @__PURE__ */ new Set()), R = v(/* @__PURE__ */ new Map()), z = v(/* @__PURE__ */ new Set()), [B, V] = y(() => /* @__PURE__ */ new Set());
78
- g(() => {
79
- let e = F.current, n = (e) => {
83
+ let [z, B] = E({}), V = T({}), H = T(/* @__PURE__ */ new Map()), U = T(/* @__PURE__ */ new Map()), W = T(/* @__PURE__ */ new Set()), G = T(/* @__PURE__ */ new Map()), K = T(/* @__PURE__ */ new Set()), q = T(null), J = T(/* @__PURE__ */ new Set()), Y = T(/* @__PURE__ */ new Map()), X = T(/* @__PURE__ */ new Set()), [Z, ee] = E(() => /* @__PURE__ */ new Set());
84
+ C(() => {
85
+ let e = K.current, n = t.subscribe((e, t) => {
86
+ e.activeConversationId !== t.activeConversationId && W.current.clear();
87
+ }), i = (e) => {
80
88
  if (e.length === 0) return;
81
- let t = { ...N.current };
82
- for (let n of e) {
83
- let e = t[n.view.proposalId];
84
- e && b.has(e.view.status) && !b.has(n.view.status) || (t[n.view.proposalId] = n);
89
+ let n = { ...V.current };
90
+ for (let r of [...e].sort((e, t) => e.view.createdAt - t.view.createdAt)) {
91
+ let e = n[r.view.proposalId];
92
+ if (!(e && D.has(e.view.status) && !D.has(r.view.status)) && (n[r.view.proposalId] = r, H.current.has(r.view.proposalId) || H.current.set(r.view.proposalId, U.current.get(`${O(r.session)}\u0000${r.session.conversationId}`) ?? u()), r.view.status === "succeeded" && !r.view.result?.errors?.length)) {
93
+ let n = H.current.get(r.view.proposalId);
94
+ if (!n || !d(n, u())) continue;
95
+ let i = t.getState(), a = i.conversations.find((e) => e.id === r.session.conversationId), s = a && (a.messages.find((e) => _(e.metadata).some((e) => e.proposalId === r.view.proposalId)) ?? M(a, r.session, null));
96
+ if (!s) continue;
97
+ if (i.activeConversationId === r.session.conversationId && R.current.preview?.onEvent) for (let e of p(r.view, r.session.conversationId, s.id, n)) W.current.has(e.action.id) || (W.current.add(e.action.id), f(R.current.preview, e));
98
+ if (!e || D.has(e.view.status)) continue;
99
+ i.addMessage(r.session.conversationId, {
100
+ id: A(),
101
+ role: "system",
102
+ content: R.current.tr("writeProposal.status.succeeded", "Done — {{summary}}", { summary: o(r.view.result?.summary || r.view.description.readbackPast, c(r.view)) }),
103
+ timestamp: (/* @__PURE__ */ new Date()).toISOString()
104
+ });
105
+ }
85
106
  }
86
- N.current = t, M(t);
87
- }, i = (e, n, r) => {
107
+ V.current = n, B(n);
108
+ }, s = (e, n, r) => {
88
109
  let i = t.getState(), a = i.conversations.find((t) => t.id === e.conversationId);
89
110
  if (!a) return;
90
- let o = w(a), s = n.filter((e) => !o.has(e.proposalId) && (e.status === "pending" || e.status === "executing"));
111
+ let o = j(a), s = n.filter((e) => !o.has(e.proposalId) && (e.status === "pending" || e.status === "executing"));
91
112
  if (s.length === 0) return;
92
- let c = T(a, e, r);
93
- c && i.mergeMessageMetadata(a.id, c.id, { writeProposalRefs: [...u(c.metadata), ...s.map((t) => ({
113
+ let c = M(a, e, r);
114
+ c && i.mergeMessageMetadata(a.id, c.id, { writeProposalRefs: [..._(c.metadata), ...s.map((t) => ({
94
115
  proposalId: t.proposalId,
95
116
  sandboxId: e.sandboxId,
96
117
  sessionId: e.sessionId
97
118
  }))] });
98
- }, o = l({
99
- client: c({
100
- getWorkspaceId: a,
101
- getAuthContext: () => S(A.current)
102
- }),
119
+ }, l = h({
120
+ getWorkspaceId: a,
121
+ getAuthContext: () => k(R.current)
122
+ }), m = g({
123
+ client: {
124
+ ...l,
125
+ list: (e, t) => {
126
+ let n = `${O(e)}\u0000${e.conversationId}`;
127
+ return U.current.has(n) || U.current.set(n, u()), l.list(e, t);
128
+ }
129
+ },
103
130
  capabilitiesOf: (e) => t.getState().sandboxWriteCapabilities[e],
104
- actorOf: () => A.current.userId,
105
- onList: (e, t, r) => {
106
- let a = {
131
+ actorOf: () => R.current.userId,
132
+ onList: (e, t, n) => {
133
+ let r = {
107
134
  serverNow: t.serverNow,
108
135
  arrivedAt: Date.now()
109
136
  };
110
- P.current.set(x(e), a), n(t.proposals.map((t) => ({
137
+ G.current.set(O(e), r), i(t.proposals.map((t) => ({
111
138
  view: t,
112
- ...a,
139
+ ...r,
113
140
  session: e
114
- }))), i(e, t.proposals, r.turnMessageId);
141
+ }))), s(e, t.proposals, n.turnMessageId);
115
142
  },
116
143
  onView: (e, t) => {
117
- let r = N.current[t.proposalId];
118
- n([{
144
+ let n = V.current[t.proposalId];
145
+ i([{
119
146
  view: t,
120
- ...P.current.get(x(e)) ?? {
121
- serverNow: r?.serverNow ?? NaN,
122
- arrivedAt: r?.arrivedAt ?? NaN
147
+ ...G.current.get(O(e)) ?? {
148
+ serverNow: n?.serverNow ?? NaN,
149
+ arrivedAt: n?.arrivedAt ?? NaN
123
150
  },
124
151
  session: e
125
152
  }]);
126
153
  },
127
154
  onError: (e, n, i) => {
128
- let a = r(n, i), { tr: o } = A.current;
155
+ let a = r(n, i), { tr: o } = R.current;
129
156
  t.getState().addMessage(e.conversationId, {
130
- id: C(),
157
+ id: A(),
131
158
  role: "system",
132
159
  content: o(a.key, a.fallback),
133
160
  timestamp: (/* @__PURE__ */ new Date()).toISOString()
134
161
  });
135
162
  }
136
163
  });
137
- I.current = o;
138
- let s = R.current;
164
+ q.current = m;
165
+ let v = Y.current;
139
166
  return () => {
140
- o.dispose(), I.current === o && (I.current = null), e.clear(), s.clear();
167
+ m.dispose(), n(), q.current === m && (q.current = null), e.clear(), v.clear();
141
168
  };
142
- }, []), g(() => t.subscribe((e, t) => {
169
+ }, []), C(() => t.subscribe((e, t) => {
143
170
  if (e.sandboxWriteCapabilities === t.sandboxWriteCapabilities) return;
144
- let n = R.current;
171
+ let n = Y.current;
145
172
  for (let [t, r] of [...n]) {
146
173
  let i = e.sandboxWriteCapabilities[r.sandboxId];
147
- i && (n.delete(t), f(i) && (F.current.add(x(r)), I.current?.discover(r, "open")));
174
+ i && (n.delete(t), y(i) && (K.current.add(O(r)), q.current?.discover(r, "open")));
148
175
  }
149
176
  }), []);
150
- let H = (e, t) => {
151
- let n = I.current;
177
+ let Q = (e, t) => {
178
+ let n = q.current;
152
179
  if (!n) return;
153
- let r = L.current, i = e.filter((e) => !r.has(e.view.proposalId));
154
- for (let { session: e, proposalIds: a } of E(i).values()) {
180
+ let r = J.current, i = e.filter((e) => !r.has(e.view.proposalId));
181
+ for (let { session: e, proposalIds: a } of N(i).values()) {
155
182
  for (let e of a) r.add(e);
156
183
  n.declineAll(e, t, "system");
157
184
  }
158
- }, U = v(H);
159
- return g(() => {
160
- U.current = H;
161
- }), g(() => t.subscribe((e, t) => {
185
+ }, $ = T(Q);
186
+ return C(() => {
187
+ $.current = Q;
188
+ }), C(() => t.subscribe((e, t) => {
162
189
  if (e.conversations === t.conversations) return;
163
- let n = new Set(e.conversations.map((e) => e.id)), r = Object.values(N.current).filter((e) => !n.has(e.session.conversationId));
164
- r.length > 0 && U.current(r, "conversation_closed");
190
+ let n = new Set(e.conversations.map((e) => e.id)), r = Object.values(V.current).filter((e) => !n.has(e.session.conversationId));
191
+ r.length > 0 && $.current(r, "conversation_closed");
165
192
  }), []), {
166
- panel: _(() => {
193
+ panel: w(() => {
167
194
  let e = (e) => t.getState().sandboxWriteCapabilities[e], r = (e) => {
168
- let t = A.current;
195
+ let t = R.current;
169
196
  if (t.productWriteApproval !== "proposal-v1") return;
170
- let r = z.current;
197
+ let r = X.current;
171
198
  if (r.has(e)) return;
172
199
  let i = a();
173
- i && (r.add(e), n(e, i, s, S(t)).finally(() => r.delete(e)));
200
+ i && (r.add(e), n(e, i, m, k(t)).finally(() => r.delete(e)));
174
201
  };
175
202
  return {
176
203
  afterTurn: (e, t) => {
177
- I.current?.discover(e, "turn", { turnMessageId: t });
204
+ q.current?.discover(e, "turn", { turnMessageId: t });
178
205
  },
179
206
  openConversation: (n) => {
180
- let i = I.current;
207
+ let i = q.current;
181
208
  if (!i) return;
182
- let a = R.current;
209
+ let a = Y.current;
183
210
  for (let [e, t] of [...a]) t.conversationId !== n && a.delete(e);
184
211
  let o = t.getState().conversations.find((e) => e.id === n);
185
- if (o) for (let { session: t, issuing: n } of d(o)) {
212
+ if (o) for (let { session: t, issuing: n } of v(o)) {
186
213
  let o = e(t.sandboxId);
187
- if (f(o)) {
214
+ if (y(o)) {
188
215
  i.discover(t, "open");
189
216
  continue;
190
217
  }
191
- o || (a.set(`${x(t)}\u0000${t.conversationId}`, t), n && r(t.sandboxId));
218
+ o || (a.set(`${O(t)}\u0000${t.conversationId}`, t), n && r(t.sandboxId));
192
219
  }
193
220
  },
194
221
  ensureKnown: (t, n) => {
195
- let r = I.current;
196
- if (!r || N.current[t.proposalId] || !f(e(t.sandboxId))) return;
197
- let i = x(t);
198
- F.current.has(i) || (F.current.add(i), r.discover({
222
+ let r = q.current;
223
+ if (!r || V.current[t.proposalId] || !y(e(t.sandboxId))) return;
224
+ let i = O(t);
225
+ K.current.has(i) || (K.current.add(i), r.discover({
199
226
  sandboxId: t.sandboxId,
200
227
  sessionId: t.sessionId,
201
228
  conversationId: n
202
229
  }, "mount"));
203
230
  },
204
231
  approve: async (e, t) => {
205
- let n = N.current[e.proposalId], r = I.current;
232
+ let n = V.current[e.proposalId], r = q.current;
206
233
  !n || !r || await r.approve(n.session, e, t);
207
234
  },
208
235
  decline: async (e, t, n) => {
209
- let r = N.current[e.proposalId], i = I.current;
236
+ let r = V.current[e.proposalId], i = q.current;
210
237
  !r || !i || await i.decline(r.session, e, t, "button", n);
211
238
  },
212
239
  presented: async (e, t) => {
213
- let n = N.current[e.proposalId], r = I.current;
240
+ let n = V.current[e.proposalId], r = q.current;
214
241
  !n || !r || await r.presented(n.session, e, t);
215
242
  },
216
- entry: (e) => N.current[e],
243
+ entry: (e) => V.current[e],
217
244
  liveFor: (t) => {
218
- let n = I.current;
219
- return h(t ? Object.values(N.current).filter((e) => e.session.conversationId === t && !n?.isRetired(e.session.sandboxId)).map((t) => ({
245
+ let n = q.current;
246
+ return S(t ? Object.values(V.current).filter((e) => e.session.conversationId === t && !n?.isRetired(e.session.sandboxId)).map((t) => ({
220
247
  status: t.view.status,
221
248
  sandboxId: t.session.sandboxId,
222
- offersConfirm: o(t.view, e(t.session.sandboxId)).offerConfirm
249
+ offersConfirm: s(t.view, e(t.session.sandboxId)).offerConfirm
223
250
  })) : []);
224
251
  },
225
252
  declineForReply: async (e, t, n) => {
226
- let r = I.current;
253
+ let r = q.current;
227
254
  if (!r) return;
228
255
  let i = n;
229
- await m([...E(Object.values(N.current).filter((t) => t.session.conversationId === e && !r.isRetired(t.session.sandboxId))).values()].map(({ session: e }) => r.declineAll(e, t, i, { report: !0 })), p);
256
+ await x([...N(Object.values(V.current).filter((t) => t.session.conversationId === e && !r.isRetired(t.session.sandboxId))).values()].map(({ session: e }) => r.declineAll(e, t, i, { report: !0 })), b);
230
257
  },
231
258
  withdraw: (e, t) => {
232
- U.current(Object.values(N.current).filter((t) => t.session.conversationId === e), t);
259
+ $.current(Object.values(V.current).filter((t) => t.session.conversationId === e), t);
233
260
  },
234
261
  retireSandbox: (e) => {
235
- let t = I.current;
236
- !t || t.isRetired(e) || (U.current(Object.values(N.current).filter((t) => t.session.sandboxId === e), "sandbox_replaced"), t.retire(e), V((t) => {
262
+ let t = q.current;
263
+ !t || t.isRetired(e) || ($.current(Object.values(V.current).filter((t) => t.session.sandboxId === e), "sandbox_replaced"), t.retire(e), ee((t) => {
237
264
  let n = new Set(t);
238
265
  return n.add(e), n;
239
266
  }));
240
267
  }
241
268
  };
242
269
  }, []),
243
- entries: j,
244
- retiredSandboxes: B
270
+ entries: z,
271
+ retiredSandboxes: Z
245
272
  };
246
273
  }
247
274
  //#endregion
248
- export { D as useWriteProposals };
275
+ export { P as useWriteProposals };
@@ -90,97 +90,98 @@ import { AssistantWriteConfirmDialog as nl, WRITE_CONFIRM_ARM_MS as rl } from ".
90
90
  import { askProductToConfirmWrite as il } from "./shared/assistant/writeConfirmSeam.js";
91
91
  import { useWriteProposalConfirm as al } from "./shared/assistant/ui/useWriteProposalConfirm.js";
92
92
  import { AssistantWriteProposalSlot as ol } from "./shared/assistant/ui/AssistantWriteProposalSlot.js";
93
- import { WRITE_PROPOSAL_ERROR_CODES as sl, WRITE_PROPOSAL_SANDBOX_MODE as cl, WriteProposalError as ll, createSandboxWriteProposalClient as ul, isWriteProposalError as dl, parseWriteProposalView as fl } from "./shared/assistant/writeProposals.js";
94
- import { WRITE_PROPOSAL_MAX_POLL_FAILURES as pl, WRITE_PROPOSAL_POLL_MS as ml, asWriteProposalError as hl, createWriteProposalDiscovery as gl, newWriteProposalRequestId as _l, readWriteProposalRefs as vl, writeProposalBelongsTo as yl, writeProposalSessionsToReopen as bl, writeProposalsEnabledFor as xl } from "./shared/assistant/writeProposalDiscovery.js";
95
- import { WRITE_REPLY_DECLINE_WAIT_MS as Sl, planWriteReply as Cl, promptWriteApproval as wl, settleWithin as Tl, writeReplyLiveState as El } from "./shared/assistant/writeReplySend.js";
96
- import { useWriteProposals as Dl } from "./shared/assistant/ui/useWriteProposals.js";
97
- import { AssistantLanguageMenu as Ol } from "./shared/assistant/ui/AssistantLanguageMenu.js";
98
- import { AssistantReplyLanguageSelector as kl } from "./shared/assistant/ui/AssistantReplyLanguageSelector.js";
99
- import { AssistantSpeakButton as Al } from "./shared/assistant/ui/AssistantSpeakButton.js";
100
- import { AssistantSpokenTurnsNotice as jl } from "./shared/assistant/ui/AssistantSpokenTurnsNotice.js";
101
- import { AssistantConnectSourceProvider as Ml, connectSourceHrefRenders as Nl, hasConnectSource as Pl, useAssistantConnectSource as Fl } from "./shared/assistant/ui/composer/connectSource.js";
102
- import { AssistantConnectSourceItem as Il, connectSourceActivation as Ll } from "./shared/assistant/ui/composer/AssistantConnectSourceItem.js";
103
- import { ASSISTANT_OVERLAY_ATTR as Rl, ASSISTANT_PANEL_ATTR as zl, ASSISTANT_VOICE_SESSION_ATTR as Bl, NO_PANEL_OVERLAY as Vl, activePanelOverlay as Hl, assistantPanelOwnsEscape as Ul, escapeDismisses as Wl, focusIsInsidePanel as Gl, nextPanelOverlays as Kl, panelOwnsEscape as ql, voiceSessionOwnsEscape as Jl } from "./shared/assistant/ui/panelOverlays.js";
104
- import { useDropdownEscape as Yl } from "./shared/assistant/ui/useDropdownEscape.js";
105
- import { AssistantAttachmentButton as Xl } from "./shared/assistant/ui/composer/AssistantAttachmentButton.js";
106
- import { AssistantAttachmentChips as Zl } from "./shared/assistant/ui/composer/AssistantAttachmentChips.js";
107
- import { hasAssistantPreviewSurface as Ql } from "./shared/assistant/preview/types.js";
108
- import { AssistantPreviewProvider as $l, useAssistantPreview as eu } from "./shared/assistant/preview/context.js";
109
- import { IDLE_PREVIEW_STATE as tu, isBlankProse as nu, isRunningStatus as ru, nextPreviewEvents as iu } from "./shared/assistant/preview/previewTransitions.js";
110
- import { IDLE_PREVIEW as au, NO_OWNER as ou, applyPreviewEvent as su, createAssistantPreviewSurface as cu, currentPreviewOwner as lu, runBelongsTo as uu, sameOwner as du } from "./shared/assistant/preview/surfaceState.js";
111
- import { createRunIdentityCache as fu, runIdentities as pu } from "./shared/assistant/preview/runIdentity.js";
112
- import { IDLE_ACTIVE_TAB as mu, nextActiveTab as hu, pinActiveTab as gu, shouldPinOnMove as _u, shouldPinOnSelect as vu, stepsFromToolActivity as yu, tabForArrowKey as bu } from "./shared/assistant/preview/entity/entityPreviewState.js";
113
- import { AssistantStepRail as xu } from "./shared/assistant/preview/entity/AssistantStepRail.js";
114
- import { AssistantEntityPreview as Su } from "./shared/assistant/preview/entity/AssistantEntityPreview.js";
115
- import { useOverlayFocus as Cu } from "./shared/assistant/ui/useOverlayFocus.js";
116
- import { useAssistantPreviewBridge as wu } from "./shared/assistant/preview/useAssistantPreviewBridge.js";
117
- import { HostedPreviewBridgeContext as Tu, panelOwnedPreviewBridge as Eu, useHostedAssistantPreviewBridge as Du } from "./shared/assistant/preview/bridgeHostContext.js";
118
- import { AssistantPreviewBridgeHost as Ou } from "./shared/assistant/preview/bridgeHost.js";
119
- import { AssistantPreviewOverlay as ku } from "./shared/assistant/preview/AssistantPreviewOverlay.js";
120
- import { AssistantLanguageSelector as Au, FOLLOW_APP_LOCALE as ju } from "./shared/assistant/ui/composer/AssistantLanguageSelector.js";
121
- import { ASSISTANT_MODE_META as Mu, AUTO_MODE_OPTION_ID as Nu, AssistantModeSelector as Pu, assistantModeMeta as Fu, nextModeIndex as Iu } from "./shared/assistant/ui/composer/AssistantModeSelector.js";
122
- import { AssistantVoiceButton as Lu } from "./shared/assistant/ui/composer/AssistantVoiceButton.js";
123
- import { AUTO_VOICE as Ru, AssistantVoiceSelector as zu } from "./shared/assistant/ui/composer/AssistantVoiceSelector.js";
124
- import { AssistantVoiceOrb as Bu } from "./shared/assistant/ui/voice/AssistantVoiceOrb.js";
125
- import { AssistantVoiceSessionButton as Vu } from "./shared/assistant/ui/voice/AssistantVoiceSessionButton.js";
126
- import { CAPTION_SCROLL_ATTR as Hu, VoiceCaption as Uu } from "./shared/assistant/ui/voice/VoiceCaption.js";
127
- import { VoiceConversationView as Wu } from "./shared/assistant/ui/voice/VoiceConversationView.js";
128
- import { VoiceWaveform as Gu } from "./shared/assistant/ui/voice/VoiceWaveform.js";
129
- import { VoiceStatusLine as Ku, VoiceStatusText as qu } from "./shared/assistant/ui/voice/VoiceStatusText.js";
130
- import { VoiceMiniController as Ju } from "./shared/assistant/ui/voice/VoiceMiniController.js";
131
- import { VoiceStage as Yu } from "./shared/assistant/ui/voice/VoiceStage.js";
132
- import { AssistantHistoryArchivedNotice as Xu, AssistantHistoryDeletedNotice as Zu, AssistantHistoryLoadState as Qu, AssistantHistoryPinLimitBanner as $u, AssistantHistoryReadOnlyBanner as ed, AssistantHistoryShowEarlier as td, AssistantHistoryUnsavedDeleteNotice as nd } from "./shared/assistant/ui/AssistantHistoryNotices.js";
133
- import { VoiceTranscriptDrawer as rd } from "./shared/assistant/ui/voice/VoiceTranscriptDrawer.js";
134
- import { ASSISTANT_BOTTOM_CHROME_CLEARANCE as id, ASSISTANT_DIALOG_SELECTOR as ad, ASSISTANT_DOCKED_DESKTOP_CLASS as od, ASSISTANT_DOCK_WIDTH_PX as sd, ASSISTANT_DOCK_WIDTH_VAR as cd, ASSISTANT_FLOATING_DESKTOP_CLASS as ld, ASSISTANT_FLOATING_RIGHT_PX as ud, ASSISTANT_FLOATING_WIDTH_PX as dd, ASSISTANT_OVERLAY_DEFAULT_TOP_PX as fd, ASSISTANT_OVERLAY_DESKTOP_QUERY as pd, ASSISTANT_OVERLAY_TOP_VAR as md, ASSISTANT_PANEL_INSET_VAR as hd, ASSISTANT_SHEET_BASE_CLASS as gd, ASSISTANT_SHEET_COMPACT_CLASS as _d, ASSISTANT_SHEET_EXPANDED_CLASS as vd, ASSISTANT_TOGGLE_SHORTCUT_LABEL as yd, aboveAssistantBottomChrome as bd, assistantOverlayClassName as xd, assistantOverlayEscapeAction as Sd, assistantOverlayKeys as Cd, assistantQuotaKindOf as wd, closestAround as Td, createAssistantNavigate as Ed, isAssistantToggleShortcut as Dd, nextAssistantOpenState as Od, publishedAssistantDockWidth as kd, publishedAssistantPanelInset as Ad, readAssistantOverlayFlag as jd, requestedAssistantOpenState as Md, writeAssistantOverlayFlag as Nd } from "./shared/assistant/ui/assistantOverlayState.js";
135
- import { VOICE_ESCAPE_LAYER_SELECTOR as Pd, VOICE_ESCAPE_MODAL_SELECTOR as Fd, escapeBelongsToLayerAbove as Id, voiceSessionEscapeAction as Ld } from "./shared/assistant/ui/voice/voiceSessionEscape.js";
136
- import { downloadFile as Rd, exportConversation as zd } from "./shared/assistant/exportConversation.js";
137
- import { AssistantMoreMenu as Bd } from "./shared/assistant/ui/AssistantMoreMenu.js";
138
- import { AssistantHeader as Vd } from "./shared/assistant/ui/AssistantHeader.js";
139
- import { AssistantHistoryControlsUnavailableError as Hd, AssistantHistoryResponseError as Ud, AssistantHistoryScopeInactiveError as Wd } from "./shared/assistant/history/historyTransportErrors.js";
140
- import { ASSISTANT_HISTORY_BACKOFF_BASE_MS as Gd, ASSISTANT_HISTORY_BACKOFF_MAX_MS as Kd, ASSISTANT_HISTORY_QUOTA_RETRY_MS as qd, ASSISTANT_HISTORY_REJECTION_KEYS as Jd, ASSISTANT_HISTORY_SCHEMA_PAUSE_MS as Yd, assistantHistoryBackoffMs as Xd, classifyAssistantHistoryError as Zd, isAssistantHistoryControlsDrift as Qd, planAssistantHistoryRetry as $d } from "./shared/assistant/history/historyErrors.js";
141
- import { ASSISTANT_HISTORY_CHANGES_OPERATION as ef, ASSISTANT_HISTORY_CHANGES_QUERY as tf, ASSISTANT_HISTORY_CHANGES_QUERY_BASE as nf, ASSISTANT_HISTORY_CONVERSATIONS_OPERATION as rf, ASSISTANT_HISTORY_CONVERSATIONS_QUERY as af, ASSISTANT_HISTORY_CONVERSATIONS_QUERY_BASE as of, ASSISTANT_HISTORY_DELETE_MUTATION as sf, ASSISTANT_HISTORY_DELETE_MUTATION_BASE as cf, ASSISTANT_HISTORY_DELETE_OPERATION as lf, ASSISTANT_HISTORY_ENTRIES_OPERATION as uf, ASSISTANT_HISTORY_ENTRIES_QUERY as df, ASSISTANT_HISTORY_ENTRIES_QUERY_BASE as ff, ASSISTANT_HISTORY_OPERATIONS as pf, ASSISTANT_HISTORY_SAVE_MUTATION as mf, ASSISTANT_HISTORY_SAVE_MUTATION_BASE as hf, ASSISTANT_HISTORY_SAVE_OPERATION as gf, ASSISTANT_HISTORY_UPDATE_MUTATION as _f, ASSISTANT_HISTORY_UPDATE_OPERATION as vf, buildHistoryDeleteVariables as yf, buildHistoryEntriesVariables as bf, buildHistoryListVariables as xf, buildHistoryPageVariables as Sf, buildHistorySaveVariables as Cf, buildHistoryUpdateVariables as wf } from "./shared/assistant/history/historyOperations.js";
142
- import { historyTimestampToIso as Tf } from "./shared/assistant/history/historyTimestamps.js";
143
- import { ASSISTANT_HISTORY_CONTROLS_RECHECK_MS as Ef, ASSISTANT_HISTORY_MASKED_DRIFT_STREAK as Df, createGatewayHistoryTransport as Of } from "./shared/assistant/history/historyApi.js";
144
- import { LEGACY_HISTORY_KEY_PREFIX as kf, assistantHistoryScopeKey as Af, completeAssistantHistoryScope as jf, isLegacyHistoryConvKey as Mf, legacyHistoryConvKey as Nf } from "./shared/assistant/history/historyTypes.js";
145
- import { ASSISTANT_HISTORY_MAX_CACHED_CONVERSATIONS as Pf, conversationHasHistory as Ff, historyConvKeyOf as If, historyHeaderOf as Lf, historyRowAcceptsControls as Rf, historyScopeKeyOfStamp as zf, isOtherScopeHistoryConversation as Bf, isReadOnlyHistoryConversation as Vf, isReusableHistoryDraft as Hf, materializeHistoryHeader as Uf, resolveHistoryReopenMode as Wf, selectAssistantHistoryList as Gf, selectHistoryEvictions as Kf } from "./shared/assistant/history/historyList.js";
146
- import { HISTORY_CLIENT_ID_PATTERN as qf, HISTORY_ENTRY_CONTENT_CAP_BYTES as Jf, HISTORY_MAX_CONTENT_BYTES as Yf, HISTORY_METADATA_ENVELOPE_MAX_BYTES as Xf, HISTORY_METADATA_KEYS as Zf, HISTORY_REQUEST_HEADROOM_BYTES as Qf, HISTORY_SAVE_REQUEST_BUDGET_BYTES as $f, HISTORY_TRUNCATION_MARKER as ep, filterHistoryMetadata as tp, fitHistoryMetadataEnvelope as np, fromHistoryEntry as rp, historyEntriesMatchKind as ip, isHistoryClientId as ap, measureHistorySaveRequest as op, toHistoryEntries as sp, toStorableHistoryText as cp, truncateUtf8 as lp, utf8ByteLength as up } from "./shared/assistant/history/historyMapping.js";
147
- import { HISTORY_CATCH_UP_MAX_GAP as dp, HISTORY_CATCH_UP_PAGE as fp, HISTORY_LOAD_PAGE as pp, applyHistoryPage as mp, highestContiguousHistorySeq as hp, mergeHistoryMessages as gp, planHistoryEarlierLoad as _p, planHistoryOpenLoad as vp } from "./shared/assistant/history/historyMerge.js";
148
- import { assistantHistoryGenerationOf as yp, createAssistantHistoryStatusStore as bp, isCurrentAssistantHistoryGeneration as xp, useAssistantHistoryStatus as Sp } from "./shared/assistant/history/historyStatus.js";
149
- import { createProfileBoundStorage as Cp } from "./shared/assistant/history/profileBoundStorage.js";
150
- import { ASSISTANT_HISTORY_DONE_TTL_MS as wp, ASSISTANT_HISTORY_MAX_HEADERS as Tp, ASSISTANT_HISTORY_MAX_TOMBSTONES as Ep, ASSISTANT_HISTORY_STORAGE_NAME as Dp, ASSISTANT_HISTORY_TOMBSTONE_TTL_MS as Op, assistantHistoryStore as kp, boundAssistantHistoryHeaders as Ap, createAssistantHistoryStore as jp, emptyAssistantHistoryPersisted as Mp, emptyAssistantHistoryScopeState as Np, headerHasControls as Pp, isNewerAssistantHistoryFormat as Fp, mergeAssistantHistoryPersisted as Ip, mergeAssistantHistoryWithStored as Lp, pruneAssistantHistoryPersisted as Rp, readAssistantHistoryPersisted as zp, settleAssistantHistory as Bp, useAssistantHistoryStore as Vp } from "./shared/assistant/history/historyStore.js";
151
- import { ASSISTANT_HISTORY_RESET_TRUST_MS as Hp, assistantHistory as Up, createAssistantHistoryEngine as Wp, createSystemHistoryClock as Gp } from "./shared/assistant/history/historyEngine.js";
152
- import { AssistantConversationFilters as Kp } from "./shared/assistant/ui/AssistantConversationFilters.js";
153
- import { AssistantConversationList as qp } from "./shared/assistant/ui/AssistantConversationList.js";
154
- import { AssistantEmptyState as Jp } from "./shared/assistant/ui/AssistantEmptyState.js";
155
- import { AssistantDeleteConversationDialog as Yp, AssistantNothingToDeleteNotice as Xp, DELETE_CONFIRM_ARM_MS as Zp } from "./shared/assistant/ui/AssistantDeleteConversationDialog.js";
156
- import { assistantHistoryIsOn as Qp, deleteAssistantConversation as $p } from "./shared/assistant/ui/conversationDelete.js";
157
- import { AssistantConversationDeleteDialogProvider as em, useConversationDeleteDialog as tm } from "./shared/assistant/ui/conversationDeleteDialog.js";
158
- import { resolveConversationDeleteTarget as nm } from "./shared/assistant/conversationDeleteCommand.js";
159
- import { HISTORY_RESUME_CLOSE as rm, HISTORY_RESUME_MAX_ANSWER_CHARS as im, HISTORY_RESUME_MAX_CHARS as am, HISTORY_RESUME_MAX_EXCHANGES as om, HISTORY_RESUME_MAX_PROMPT_CHARS as sm, HISTORY_RESUME_OPEN as cm, buildHistoryResumePreamble as lm, isKnownReadOnlyMode as um, resumeContextFor as dm } from "./shared/assistant/history/historyResume.js";
160
- import { useAssistantServerHistory as fm } from "./shared/assistant/history/useAssistantServerHistory.js";
161
- import { useHistoryRowControlsFor as pm } from "./shared/assistant/history/useHistoryRowControls.js";
162
- import { AssistantTurnActivity as mm, TurnActivityLine as hm } from "./shared/assistant/ui/AssistantTurnActivity.js";
163
- import { AssistantMessageItem as gm } from "./shared/assistant/ui/AssistantMessageItem.js";
164
- import { AssistantMessageList as _m } from "./shared/assistant/ui/AssistantMessageList.js";
165
- import { AssistantVoiceSession as vm } from "./shared/assistant/ui/voice/AssistantVoiceSession.js";
166
- import { ASSISTANT_ADMIN_ACTION as ym, ASSISTANT_ADMIN_RESOURCE_TYPE as bm, WORKSPACE_ASSISTANT_ADMIN_QUERY as xm, probeWorkspaceAssistantAdmin as Sm, useAssistantApiAccess as Cm } from "./shared/assistant/useAssistantApiAccess.js";
167
- import { useConversationTurns as wm } from "./shared/assistant/useConversationTurns.js";
168
- import { ABANDONED_TURN_OUTCOME as Tm, MAX_REPORTED_TURN_MS as Em, TURN_TIMING_REPORT_FIELDS as Dm, TURN_TIMING_STAGES as Om, buildAbandonedTurnReport as km, buildTurnTimingReport as Am, isFinishedTurn as jm } from "./shared/assistant/turnTimingReport.js";
169
- import { TURN_TIMING_REPORTING as Mm, createTurnTimingNonce as Nm, createTurnTimingReporter as Pm, resetTurnTimingReporting as Fm, sendAssistantTurnTimings as Im, startTurnTimingReporting as Lm } from "./shared/assistant/turnTimingReporter.js";
170
- import { PREWARM_COOLDOWN_MS as Rm, WarmCancelled as zm, consumeWarm as Bm, prewarmTarget as Vm, resetWarmsForTest as Hm, settleWarmBeforeSend as Um, startWarm as Wm, warmState as Gm } from "./shared/assistant/prewarm.js";
171
- import { isAlreadyThere as Km, isCurrentPath as qm, matchLocalUiCommand as Jm, navDestinations as Ym, normaliseUtterance as Xm, planThemeChange as Zm } from "./shared/assistant/localUiCommands.js";
172
- import { chooseDestinationCopy as Qm, navigationCommandCopy as $m, themeCommandCopy as eh } from "./shared/assistant/localUiCommandCopy.js";
173
- import { aiCreditsUpdatedEventName as th, dispatchAssistantQuotaExhausted as nh, notifyAiCreditsUpdated as rh } from "./shared/assistant/aiCredits.js";
174
- import { PROPOSAL_WRITE_RULES as ih } from "./shared/assistant/proposalWriteRules.js";
175
- import { useWorkspaceWriteAccess as ah } from "./shared/assistant/useWorkspaceWriteAccess.js";
176
- import { extractDocumentText as oh } from "./shared/assistant/documentExtract.js";
177
- import { useAssistantAttachments as sh } from "./shared/assistant/useAssistantAttachments.js";
178
- import { AssistantComposer as ch } from "./shared/assistant/ui/composer/AssistantComposer.js";
179
- import { isProdRuntime as lh } from "./shared/assistant/env.js";
180
- import { useAssistantHeartbeat as uh } from "./shared/assistant/useAssistantHeartbeat.js";
181
- import { useAssistantKeyboardShortcuts as dh } from "./shared/assistant/useAssistantKeyboardShortcuts.js";
182
- import { AssistantApiCallsConsentDialog as fh } from "./shared/assistant/ui/AssistantApiCallsConsentDialog.js";
183
- import { AssistantChatArea as ph } from "./shared/assistant/ui/AssistantChatArea.js";
184
- import { AIAssistantPanel as mh } from "./shared/assistant/ui/AIAssistantPanel.js";
185
- import { AssistantOverlay as hh, AssistantOverlayProvider as gh, useAssistantDockWidth as _h, useAssistantOverlayOrNull as vh, useAssistantPanelInset as yh, useAssistantQuotaExhausted as bh } from "./shared/assistant/ui/AssistantOverlay.js";
186
- export { Tm as ABANDONED_TURN_OUTCOME, ms as ADMIN_MODE_ACCESS_WAIT_MS, mh as AIAssistantPanel, ym as ASSISTANT_ADMIN_ACTION, bm as ASSISTANT_ADMIN_RESOURCE_TYPE, ce as ASSISTANT_API_AUTH_STRATEGY, id as ASSISTANT_BOTTOM_CHROME_CLEARANCE, ad as ASSISTANT_DIALOG_SELECTOR, od as ASSISTANT_DOCKED_DESKTOP_CLASS, sd as ASSISTANT_DOCK_WIDTH_PX, cd as ASSISTANT_DOCK_WIDTH_VAR, ld as ASSISTANT_FLOATING_DESKTOP_CLASS, ud as ASSISTANT_FLOATING_RIGHT_PX, dd as ASSISTANT_FLOATING_WIDTH_PX, Gd as ASSISTANT_HISTORY_BACKOFF_BASE_MS, Kd as ASSISTANT_HISTORY_BACKOFF_MAX_MS, ef as ASSISTANT_HISTORY_CHANGES_OPERATION, tf as ASSISTANT_HISTORY_CHANGES_QUERY, nf as ASSISTANT_HISTORY_CHANGES_QUERY_BASE, Ef as ASSISTANT_HISTORY_CONTROLS_RECHECK_MS, rf as ASSISTANT_HISTORY_CONVERSATIONS_OPERATION, af as ASSISTANT_HISTORY_CONVERSATIONS_QUERY, of as ASSISTANT_HISTORY_CONVERSATIONS_QUERY_BASE, sf as ASSISTANT_HISTORY_DELETE_MUTATION, cf as ASSISTANT_HISTORY_DELETE_MUTATION_BASE, lf as ASSISTANT_HISTORY_DELETE_OPERATION, wp as ASSISTANT_HISTORY_DONE_TTL_MS, uf as ASSISTANT_HISTORY_ENTRIES_OPERATION, df as ASSISTANT_HISTORY_ENTRIES_QUERY, ff as ASSISTANT_HISTORY_ENTRIES_QUERY_BASE, Df as ASSISTANT_HISTORY_MASKED_DRIFT_STREAK, Pf as ASSISTANT_HISTORY_MAX_CACHED_CONVERSATIONS, Tp as ASSISTANT_HISTORY_MAX_HEADERS, Ep as ASSISTANT_HISTORY_MAX_TOMBSTONES, pf as ASSISTANT_HISTORY_OPERATIONS, qd as ASSISTANT_HISTORY_QUOTA_RETRY_MS, Jd as ASSISTANT_HISTORY_REJECTION_KEYS, Hp as ASSISTANT_HISTORY_RESET_TRUST_MS, mf as ASSISTANT_HISTORY_SAVE_MUTATION, hf as ASSISTANT_HISTORY_SAVE_MUTATION_BASE, gf as ASSISTANT_HISTORY_SAVE_OPERATION, Yd as ASSISTANT_HISTORY_SCHEMA_PAUSE_MS, Dp as ASSISTANT_HISTORY_STORAGE_NAME, Op as ASSISTANT_HISTORY_TOMBSTONE_TTL_MS, _f as ASSISTANT_HISTORY_UPDATE_MUTATION, vf as ASSISTANT_HISTORY_UPDATE_OPERATION, ls as ASSISTANT_I18N_COMPUTED_COPY, us as ASSISTANT_I18N_LITERAL_COPY, ds as ASSISTANT_I18N_MANIFEST, ba as ASSISTANT_LANGUAGES, w as ASSISTANT_LLM_TERMINAL_CODES, Q as ASSISTANT_MODE_FALLBACK_LABELS, $ as ASSISTANT_MODE_IDS, Mu as ASSISTANT_MODE_META, Rl as ASSISTANT_OVERLAY_ATTR, fd as ASSISTANT_OVERLAY_DEFAULT_TOP_PX, pd as ASSISTANT_OVERLAY_DESKTOP_QUERY, md as ASSISTANT_OVERLAY_TOP_VAR, zl as ASSISTANT_PANEL_ATTR, hd as ASSISTANT_PANEL_INSET_VAR, gd as ASSISTANT_SHEET_BASE_CLASS, _d as ASSISTANT_SHEET_COMPACT_CLASS, vd as ASSISTANT_SHEET_EXPANDED_CLASS, yd as ASSISTANT_TOGGLE_SHORTCUT_LABEL, Bl as ASSISTANT_VOICE_SESSION_ATTR, ro as ATTACHMENT_ACCEPT, Vo as ATTACHMENT_SOURCES, be as AUTO_CARRY_OVER_MAX_CHARS, xe as AUTO_CARRY_OVER_MAX_CHARS_PER_MESSAGE, Se as AUTO_CARRY_OVER_MAX_MESSAGES, Nu as AUTO_MODE_OPTION_ID, Ce as AUTO_READ_MODE, Ru as AUTO_VOICE, we as AUTO_WRITE_MODE, fh as AssistantApiCallsConsentDialog, Xl as AssistantAttachmentButton, Zl as AssistantAttachmentChips, jc as AssistantAutoSpeakToggle, $s as AssistantAvatar, ph as AssistantChatArea, ch as AssistantComposer, Il as AssistantConnectSourceItem, Ml as AssistantConnectSourceProvider, em as AssistantConversationDeleteDialogProvider, Kp as AssistantConversationFilters, qp as AssistantConversationList, Yp as AssistantDeleteConversationDialog, Jp as AssistantEmptyState, Su as AssistantEntityPreview, Vd as AssistantHeader, Xu as AssistantHistoryArchivedNotice, Hd as AssistantHistoryControlsUnavailableError, Zu as AssistantHistoryDeletedNotice, Qu as AssistantHistoryLoadState, $u as AssistantHistoryPinLimitBanner, ed as AssistantHistoryReadOnlyBanner, Ud as AssistantHistoryResponseError, Wd as AssistantHistoryScopeInactiveError, td as AssistantHistoryShowEarlier, nd as AssistantHistoryUnsavedDeleteNotice, l as AssistantI18nProvider, Ol as AssistantLanguageMenu, Au as AssistantLanguageSelector, m as AssistantMarkdownImage, _ as AssistantMarkdownRenderer, Mc as AssistantMessageAttachments, gm as AssistantMessageItem, _m as AssistantMessageList, Pu as AssistantModeSelector, Bd as AssistantMoreMenu, v as AssistantNavigateProvider, Xp as AssistantNothingToDeleteNotice, hh as AssistantOverlay, gh as AssistantOverlayProvider, Nc as AssistantPendingWriteCard, Ou as AssistantPreviewBridgeHost, ku as AssistantPreviewOverlay, $l as AssistantPreviewProvider, r as AssistantProductProvider, kl as AssistantReplyLanguageSelector, Cn as AssistantRuntimeManager, Rn as AssistantSendRefusal, Al as AssistantSpeakButton, _c as AssistantSpeechProvider, jl as AssistantSpokenTurnsNotice, xu as AssistantStepRail, Js as AssistantToolActivity, mm as AssistantTurnActivity, Lu as AssistantVoiceButton, Bu as AssistantVoiceOrb, zu as AssistantVoiceSelector, vm as AssistantVoiceSession, Vu as AssistantVoiceSessionButton, nl as AssistantWriteConfirmDialog, Qc as AssistantWriteProposalCard, ol as AssistantWriteProposalSlot, io as AttachmentRejectedError, La as BOILERPLATE_PAGE_SHARE, nr as BUILT_IN_MODE_CAPABILITIES, Hu as CAPTION_SCROLL_ATTR, z as CHECK_AI_CREDITS, B as CREATE_SANDBOX, Pe as DEFAULT_HISTORY_LIST_FILTER, ao as DEFAULT_INLINE_LIMITS, $i as DEFAULT_SPEAKABLE_LABELS, xa as DEFAULT_SPEECH_RATE, ur as DEFAULT_STREAM_BUDGET_MS, Zp as DELETE_CONFIRM_ARM_MS, Pi as ENDPOINT_GRACE_MS, V as EXTEND_MY_ASSISTANT_SANDBOX_TTL, H as EXTEND_SANDBOX_TTL, ju as FOLLOW_APP_LOCALE, U as GET_ACTIVE_SANDBOXES, W as GET_SANDBOX, dp as HISTORY_CATCH_UP_MAX_GAP, fp as HISTORY_CATCH_UP_PAGE, qf as HISTORY_CLIENT_ID_PATTERN, Jf as HISTORY_ENTRY_CONTENT_CAP_BYTES, pp as HISTORY_LOAD_PAGE, Yf as HISTORY_MAX_CONTENT_BYTES, Xf as HISTORY_METADATA_ENVELOPE_MAX_BYTES, Zf as HISTORY_METADATA_KEYS, Qf as HISTORY_REQUEST_HEADROOM_BYTES, rm as HISTORY_RESUME_CLOSE, im as HISTORY_RESUME_MAX_ANSWER_CHARS, am as HISTORY_RESUME_MAX_CHARS, om as HISTORY_RESUME_MAX_EXCHANGES, sm as HISTORY_RESUME_MAX_PROMPT_CHARS, cm as HISTORY_RESUME_OPEN, $f as HISTORY_SAVE_REQUEST_BUDGET_BYTES, Fe as HISTORY_TITLE_MAX_CODE_POINTS, ep as HISTORY_TRUNCATION_MARKER, Or as HOSTED_DISABLE_MS, kr as HOSTED_TTS_MAX_CHARS, wr as HOSTED_TTS_TIER, Tr as HOSTED_VOICES, Wr as HOSTED_VOICE_RANK, Tu as HostedPreviewBridgeContext, mu as IDLE_ACTIVE_TAB, ws as IDLE_PLAYBACK, au as IDLE_PREVIEW, tu as IDLE_PREVIEW_STATE, ki as IDLE_ROTATION_CLOCK, dr as INCOMPLETE_TURN_NOTICES, Fi as INITIAL_SESSION, Ea as INITIAL_TRANSCRIPT_AUTO_OPEN, oo as INLINE_IMAGE_MAX_DIM, so as INLINE_IMAGE_QUALITY, Ii as INTERRUPT_MAX_MS, Li as INTERRUPT_MIN_MS, kf as LEGACY_HISTORY_KEY_PREFIX, bt as LEGACY_WRITE_CONSENT_KEY, rr as MAX_ASSISTANT_STREAM_BUDGET_MS, co as MAX_ATTACHMENTS, Ra as MAX_BOILERPLATE_LINE_CHARS, lo as MAX_CONFIGURABLE_INLINE_CHARS, za as MAX_EXTRACTED_CHARS, uo as MAX_FILE_BYTES, fo as MAX_INLINE_CHARS_PER_FILE, po as MAX_INLINE_CHARS_TOTAL, jt as MAX_INLINE_IMAGE_BASE64_BYTES, mo as MAX_INLINE_IMAGE_BASE64_CHARS, ho as MAX_INLINE_IMAGE_PARTS, go as MAX_INLINE_TURN_BODY_BYTES, Ba as MAX_PDF_PAGES_SCANNED, Ie as MAX_PINNED, Em as MAX_REPORTED_TURN_MS, Mt as MAX_REQUEST_BODY_BYTES, ea as MAX_SPEAKABLE_CHARS, ta as MAX_SPOKEN_TABLE_ROWS, _o as MAX_TURN_BODY_BYTES, da as MINI_CAPTION_BUDGET, Va as MIN_PAGE_TEXT_CHARS, Ha as MIN_TEXT_PAGE_SHARE, Ri as NOTHING_HEARD, Hs as NO_FIRST_TEXT, ou as NO_OWNER, Vl as NO_PANEL_OVERLAY, at as PENDING_WRITE_APPROVAL_WINDOW_MS, _i as PHRASE_ROTATE_MS, pa as POLL_FAST_MS, ma as POLL_FAST_UNTIL_MS, ha as POLL_SLOW_MS, ga as POLL_STEADY_MS, _a as POLL_STEADY_UNTIL_MS, la as PREVIEW_LANGUAGES, Rm as PREWARM_COOLDOWN_MS, ne as PRODUCT_ASSISTANT_MODE_ID_MAX_LENGTH, re as PRODUCT_ASSISTANT_MODE_ID_PATTERN, Pt as PROMPT_CONVERSATION_ID_PATTERN, vo as PROMPT_ENVELOPE_RESERVE_BYTES, ih as PROPOSAL_WRITE_RULES, yo as PROVIDER_READABLE_FILE_MEDIA_TYPES, Pn as PROVISIONING_NOT_PERMITTED_I18N_KEY, G as PROVISION_ASSISTANT_SANDBOX, K as PROXY_SANDBOX_REQUEST, Pc as REDUCED_MOTION_ATTRIBUTE, Fc as REDUCED_MOTION_QUERY, q as REPORT_AI_TOKEN_USAGE, J as REPORT_MY_ASSISTANT_TURN_TIMINGS, Nt as REQUEST_TOO_LARGE_REFUSAL, Ec as SANDBOX_READY_TTL_MS, zi as SILENCE_SUBMIT_MS, Ar as SPEAKING_RATE_MAX, jr as SPEAKING_RATE_MAX_STREAMING, Mr as SPEAKING_RATE_MAX_SYNC, Nr as SPEAKING_RATE_MIN, na as SPEECH_CHUNK_CHARS, ra as SPEECH_CHUNK_CJK_CHARS, Gr as SPEECH_LANG, bs as SPOKEN_LABEL_LANGUAGES, vi as STAGE_COPY, e as START_RETRY_COOLDOWN_MS, Y as STOP_ASSISTANT_SANDBOX, X as STOP_MY_ASSISTANT_SANDBOX, fr as STREAM_BUDGET_MS, T as SandboxProxyError, xt as TAKE_ACTION_ENGLISH, yi as THINKING_PHRASES, bo as TURN_BODY_HEADROOM_BYTES, ec as TURN_MILESTONES, yt as TURN_OUTCOME_COPY, tc as TURN_SEGMENTS, nc as TURN_TIMELINE_EVENT, Mm as TURN_TIMING_REPORTING, Dm as TURN_TIMING_REPORT_FIELDS, Om as TURN_TIMING_STAGES, hm as TurnActivityLine, ir as UNAVAILABLE_MODE_REFUSAL, ar as UNDECLARED_MODE_CAPABILITIES, Un as USAGE_REPORT_FAILED_EVENT, Wn as USAGE_REPORT_RETRY_DELAYS_MS, Pd as VOICE_ESCAPE_LAYER_SELECTOR, Fd as VOICE_ESCAPE_MODAL_SELECTOR, Kr as VOICE_LIST_TIMEOUT_MS, wi as VOICE_MUTED_LABEL, Qo as VOICE_PROPOSAL_MODE, Ti as VOICE_THINKING_LABEL, Uu as VoiceCaption, Wu as VoiceConversationView, Ju as VoiceMiniController, Yu as VoiceStage, Ku as VoiceStatusLine, qu as VoiceStatusText, rd as VoiceTranscriptDrawer, Gu as VoiceWaveform, Z as WAIT_FOR_SANDBOX_RUNNING, xm as WORKSPACE_ASSISTANT_ADMIN_QUERY, rl as WRITE_CONFIRM_ARM_MS, $c as WRITE_PROPOSAL_DIALOG_KINDS, sl as WRITE_PROPOSAL_ERROR_CODES, Xo as WRITE_PROPOSAL_ERROR_COPY, zc as WRITE_PROPOSAL_MASK, pl as WRITE_PROPOSAL_MAX_POLL_FAILURES, ml as WRITE_PROPOSAL_POLL_MS, el as WRITE_PROPOSAL_PRESENTED_AFTER_MS, $o as WRITE_PROPOSAL_READBACK_HIDDEN, cl as WRITE_PROPOSAL_SANDBOX_MODE, es as WRITE_PROPOSAL_VOICE_COPY, Wo as WRITE_REPLY_COPY, Sl as WRITE_REPLY_DECLINE_WAIT_MS, Go as WRITE_REPLY_LEXICON, zm as WarmCancelled, ll as WriteProposalError, Ft as abortAssistantTurn, bd as aboveAssistantBottomChrome, Hl as activePanelOverlay, or as adminOnlyModeSendRefusal, hs as adminOnlyModeSendRefusalAfterAccess, Bi as advanceHeardClock, Ai as advanceRotationClock, th as aiCreditsUpdatedEventName, Ko as analyseWriteReply, mp as applyHistoryPage, su as applyPreviewEvent, ot as approvalFollowUpReplyIds, It as approvePendingWrite, st as approvedPendingWriteIds, hl as asWriteProposalError, il as askProductToConfirmWrite, Lt as askReuseMatchesProvisioning, Up as assistantHistory, Xd as assistantHistoryBackoffMs, yp as assistantHistoryGenerationOf, Qp as assistantHistoryIsOn, Af as assistantHistoryScopeKey, kp as assistantHistoryStore, fs as assistantI18nSeedCopy, E as assistantLlmTerminalCodeOf, ee as assistantModeFallbackLabel, ps as assistantModeI18nCopy, Fu as assistantModeMeta, xd as assistantOverlayClassName, Sd as assistantOverlayEscapeAction, Cd as assistantOverlayKeys, Ul as assistantPanelOwnsEscape, wd as assistantQuotaKindOf, y as assistantRoutePath, u as assistantTranslationKey, b as assistantUrlTransform, Gn as assistantUsageLedger, Te as autoCarryOverFor, Ee as autoSuggestions, Ho as availableAttachmentSources, Pr as base64ToBytes, ct as beginApprovalInFlight, rc as beginTurn, Ap as boundAssistantHistoryHeaders, x as browserShouldHandle, Cr as browserSpeechEngine, km as buildAbandonedTurnReport, Us as buildAssistantProgress, Rt as buildAssistantSandboxEnv, xo as buildAttachmentPromptBlock, De as buildAutoCarryOver, ys as buildBoundedAttachmentTurn, Xi as buildContinuedFromVoiceNote, yf as buildHistoryDeleteVariables, bf as buildHistoryEntriesVariables, xf as buildHistoryListVariables, Sf as buildHistoryPageVariables, lm as buildHistoryResumePreamble, Cf as buildHistorySaveVariables, wf as buildHistoryUpdateVariables, wn as buildProgress, zt as buildPromptGatewayRequest, So as buildPromptParts, Bt as buildPromptRequestBody, Co as buildPromptWithAttachments, Vt as buildProvisionAssistantSandboxInput, Fr as buildRequest, I as buildSandboxContextInput, Am as buildTurnTimingReport, Zi as buildVoiceTranscriptMarkdown, ie as builtInModeExtendedBy, gr as chatTurns, Ht as checkAssistantAiCredits, Qm as chooseDestinationCopy, ia as chunkForSpeech, Le as clampToCodePoints, Zd as classifyAssistantHistoryError, S as classifyAssistantHref, Oe as classifyAssistantIntent, wo as classifyAttachment, Ir as classifyHttpFailure, j as classifyQuotaError, zn as classifyTurnFailure, Kn as classifyUsageReportFailure, qo as classifyWriteReply, Td as closestAround, Re as coalesceUpdatePatch, ze as codePointLength, Ua as columnLetterToIndex, jf as completeAssistantHistoryScope, Ei as composeVoiceStatus, ai as configureSpeechEngine, Ll as connectSourceActivation, Nl as connectSourceHrefRenders, Bm as consumeWarm, aa as containsCjk, Ff as conversationHasHistory, p as copyToClipboard, To as countInlineImageCandidates, Eo as countInlinedImageParts, Xs as countSpokenTurns, gs as createAdminModeAccessGate, Wp as createAssistantHistoryEngine, bp as createAssistantHistoryStatusStore, jp as createAssistantHistoryStore, Ed as createAssistantNavigate, cu as createAssistantPreviewSurface, Ut as createAssistantSandbox, Wt as createAssistantSession, Of as createGatewayHistoryTransport, Ne as createGuardedAssistantStorage, Hr as createHostedTtsEngine, Cp as createProfileBoundStorage, Dc as createReadinessTracker, ii as createRoutingSpeechEngine, fu as createRunIdentityCache, er as createSandboxAssistantTransport, ul as createSandboxWriteProposalClient, oi as createSpeechEngines, Gp as createSystemHistoryClock, Nm as createTurnTimingNonce, Pm as createTurnTimingReporter, gl as createWriteProposalDiscovery, lu as currentPreviewOwner, Jo as decideWriteReply, ae as declareAssistantMode, Lr as decodeAudioResponse, Wa as decodeXmlEntities, $p as deleteAssistantConversation, Fn as describePermissionError, M as describeQuotaError, ic as describeTurn, Do as detectDocumentFormat, Ss as detectScriptLocale, ac as detectTurnDevice, Uo as deviceHasCamera, Rr as disableDurationMs, nh as dispatchAssistantQuotaExhausted, Ga as docxXmlToText, Gt as downloadAssistantArtifact, Rd as downloadFile, Ls as elapsedSince, Mp as emptyAssistantHistoryPersisted, Np as emptyAssistantHistoryScopeState, lt as endApprovalInFlight, ke as escalationToUndo, Id as escapeBelongsToLayerAbove, Wl as escapeDismisses, Oo as estimateTurnBodyBytes, L as executeAssistantGraphQLOnce, R as executeSandboxGraphQL, zd as exportConversation, Kt as extendAssistantSandboxTTL, N as extensionObjectsIn, oh as extractDocumentText, tp as filterHistoryMetadata, Sa as findAssistantLanguage, sr as findAssistantModeConfig, qt as findExistingSandbox, Jt as findExistingSandboxWithStatus, Fa as findPendingWrite, np as fitHistoryMetadataEnvelope, Ka as fitPdfPages, Gl as focusIsInsidePanel, ut as forgetLiveTurns, ko as formatBytes, Bn as formatDailyLimitResetTime, qa as formatPageRanges, Bc as formatWriteProposalValue, Yt as forwardsUserTokensToSandbox, rp as fromHistoryEntry, bc as getActorId, dt as getApprovalInFlight, Xt as getAssistantArtifacts, Is as getAssistantDisplayContent, Tn as getAssistantMedia, Zt as getAssistantMessages, Qt as getAssistantSession, $t as getAssistantStreamAccess, En as getAssistantText, Ao as getAttachmentSendBlocker, he as getCapability, jo as getExtension, Ye as getHistoryStamp, le as getImageForMode, ue as getImageTagForMode, xc as getOrganizationId, Dn as getRawMessageCreatedAt, de as getResourcesForMode, fe as getSandboxImageRegistry, Mo as getSendableAttachments, si as getSpeechEngine, On as getToolProgress, qn as getUsageBlock, Sc as getWorkspaceId, ft as goAheadSentReplyIds, _r as groupBySession, vr as groupConsecutiveBySession, Ql as hasAssistantPreviewSurface, No as hasAttachmentWorkInFlight, Pl as hasConnectSource, Jn as hasPendingUsageReports, Pp as headerHasControls, hp as highestContiguousHistorySeq, If as historyConvKeyOf, ip as historyEntriesMatchKind, Be as historyFilterEmptyKind, Ve as historyFilterKey, Lf as historyHeaderOf, Xe as historyOpenFilter, Rf as historyRowAcceptsControls, zf as historyScopeKeyOfStamp, Tf as historyTimestampToIso, Er as hostedLocaleFor, Dr as hostedSupportsLanguage, h as imageHostLabel, pr as incompleteTurnNotice, Km as isAlreadyThere, Qd as isAssistantHistoryControlsDrift, D as isAssistantLlmTerminalCode, oe as isAssistantModeId, en as isAssistantProvisioningUnavailable, Dd as isAssistantToggleShortcut, Ae as isAutoRoutingOffered, Da as isAwaitingOwnConversation, nu as isBlankProse, te as isBuiltInAssistantMode, Vi as isCapturing, oc as isComparableTurn, xp as isCurrentAssistantHistoryGeneration, qm as isCurrentPath, tn as isDedicatedAssistantSandbox, nn as isDedicatedAssistantSandboxRow, He as isDefaultHistoryFilter, Hi as isEcho, jm as isFinishedTurn, ap as isHistoryClientId, Ze as isHistoryConversationBusy, qr as isHostedVoice, um as isKnownReadOnlyMode, Ms as isLegacyFiller, Mf as isLegacyHistoryConvKey, Ns as isLegacyStopped, pt as isLiveTurn, ge as isMissingGatewayFieldError, Ja as isMostlyImagePages, Cc as isMultimodalBodyRejection, wc as isNeverRecoverableAssistantError, Fp as isNewerAssistantHistoryFormat, Bf as isOtherScopeHistoryConversation, lh as isProdRuntime, se as isProductAssistantModeId, Po as isProviderReadableFilePart, P as isQuotaExhaustedError, Vf as isReadOnlyHistoryConversation, kn as isReapedSandboxConnectionError, Oc as isRecentlyVerified, An as isRecoverable, Tc as isRecoverableAssistantError, g as isRemoteImageSrc, Hf as isReusableHistoryDraft, ru as isRunningStatus, Ts as isSpeakingMessage, Jr as isSpeechBlocked, Ps as isStageCopy, Ui as isSubmittable, ks as isTurnInFlight, _e as isUnknownFieldError, Yo as isUserOriginatedWriteReply, Ue as isValidUpdatePatch, ts as isVoiceProposalBound, yr as isVoiceTurn, St as isWriteModeAcknowledged, dl as isWriteProposalError, Ya as joinSheets, Yr as languageDisplayName, Fo as largestInlineCharsPerFile, Nf as legacyHistoryConvKey, We as localChannelOf, jn as mapSessionToHistory, mt as markLiveTurn, ve as markSupported, sc as markTurn, ye as markUnsupported, Jm as matchLocalUiCommand, Ge as matchesHistoryFilter, Uf as materializeHistoryHeader, Oa as maySendSpokenTurn, op as measureHistorySaveRequest, Ip as mergeAssistantHistoryPersisted, Lp as mergeAssistantHistoryWithStored, gp as mergeHistoryMessages, Mn as mergeMessagesById, Ot as mergePersistedAssistantState, di as micIsInterrupt, rn as modeRequiresConfirmWrites, Rs as msUntilNextPhrase, Ym as navDestinations, $m as navigationCommandCopy, _l as newWriteProposalRequestId, ht as newestModelReplyId, hu as nextActiveTab, Od as nextAssistantOpenState, Iu as nextModeIndex, Kl as nextPanelOverlays, iu as nextPreviewEvents, Ke as normaliseHistoryTitle, Xm as normaliseUtterance, Xr as normalizeLangTag, rh as notifyAiCreditsUpdated, Qe as notifyAssistantStorageFull, $e as offerHistoryRename, Wi as orbMode, Xa as pageMarker, Eu as panelOwnedPreviewBridge, ql as panelOwnsEscape, Ia as parseConfirmationRefusal, Io as parseDataUrl, Za as parseSharedStrings, Ys as parseToolActivity, Qa as parseWorkbookSheets, fl as parseWriteProposalView, $a as pdfTextItemsToPage, qe as pendingUpdatesByConversation, In as permissionRefusalCopyId, Ln as permissionRefusalMessage, gu as pinActiveTab, As as planAbandonedTurn, kc as planAfterTransportFailure, $d as planAssistantHistoryRetry, _p as planHistoryEarlierLoad, vp as planHistoryOpenLoad, Gi as planListeningHold, Ki as planReplyConsumption, Zm as planThemeChange, ka as planTranscriptAutoOpen, Ac as planTrustedSandboxFailure, js as planTurnAbort, qi as planVoiceAnnouncement, Aa as planVoiceSessionBinding, ja as planVoiceSessionStart, Ma as planVoiceSpokenEntry, Cl as planWriteReply, va as pollDelayMs, Vm as prewarmTarget, Zr as primaryLanguageSubtag, Sm as probeWorkspaceAssistantAdmin, an as promptGatewayRequestBytes, wl as promptWriteApproval, on as proxySandboxRaw, Rp as pruneAssistantHistoryPersisted, kd as publishedAssistantDockWidth, Ad as publishedAssistantPanelInset, Es as publishedChunks, F as quotaExhaustedEventName, Ws as readAheadFor, zp as readAssistantHistoryPersisted, jd as readAssistantOverlayFlag, Ic as readReducedMotion, sn as readSandboxWriteCapabilities, cn as readSandboxWriteCapabilitiesOnce, ci as readSpeechEngineConfig, vl as readWriteProposalRefs, cc as recentTurnTimelines, Vc as redactWriteProposalText, ln as releaseSupersededAssistantSandboxes, ns as renderWriteProposalReadback, wa as replyFollowsInput, un as reportAssistantAiTokenUsage, Yn as reportUsageWithRetry, Md as requestedAssistantOpenState, Ds as requiresCancel, li as resetSpeechEngine, lc as resetTurnTimelines, Fm as resetTurnTimingReporting, Hm as resetWarmsForTest, kt as resolveActiveModeSandbox, gt as resolveApprovablePendingWrite, Lo as resolveAssistantInlineLimits, Ca as resolveAssistantLanguage, cr as resolveAssistantModeCapabilities, _s as resolveAssistantSendModeAfterAccess, je as resolveAutoRoute, nm as resolveConversationDeleteTarget, Wf as resolveHistoryReopenMode, Ta as resolveLanguagePair, i as resolveModeConfig, _t as resolveRetryableMessageId, Je as resolveRowControls, pe as resolveSandboxAssistantMode, Cs as resolveSpeechLocale, uc as restartAttempt, Ct as restoreAcknowledgedWriteModes, Me as restoreAutoRouting, dm as resumeContextFor, Ur as retryDelayMs, Xn as retryPendingUsageReports, ji as rotationElapsedMs, uu as runBelongsTo, pu as runIdentities, du as sameOwner, me as sandboxBaseModeFor, O as sandboxProxyErrorFromBody, k as sandboxProxyErrorFromTurnTerminal, dn as sandboxStatusOf, Nn as sanitize, dc as segmentStats, Gf as selectAssistantHistoryList, fn as selectExistingAssistantSandbox, Kf as selectHistoryEvictions, pn as selectSupersededAssistantSandboxes, Qr as selectVoiceForLocale, mn as sendAssistantPromptAsync, Im as sendAssistantTurnTimings, hn as sendHeartbeat, et as setAssistantStorageFullHandler, tt as setHistoryBusyProbe, nt as setHistoryOpenFilterSource, rt as setHistoryRenameSink, it as setHistoryStampSource, Bp as settleAssistantHistory, Um as settleWarmBeforeSend, Tl as settleWithin, eo as sheetXmlToRows, zr as shouldDisableEngine, _u as shouldPinOnMove, vu as shouldPinOnSelect, fa as showPreviousChunk, fi as showsAssistantCaption, pi as showsUserCaption, Gs as snapshotReplyFloor, Br as speakableChunks, oa as speakableEmail, $r as speechGate, xs as speechLabelsFor, ei as speechLangForLocale, Os as speechPlaybackReducer, Vr as splitForVendor, sa as splitTableRow, Zs as spokenMessagesSinceContinueNote, Ji as spokenSoFar, Qs as spokenTurnText, bi as stageText, t as startIsCoolingDown, zs as startPhraseTicker, Mi as startRotationTicker, Ks as startSessionReadAhead, Lm as startTurnTimingReporting, Wm as startWarm, xi as statusStageCopy, yu as stepsFromToolActivity, gn as stopReapedAssistantSandbox, mr as streamBudgetMs, Fs as stripLegacyFillerPrefix, vt as subscribeApprovalInFlight, Lc as subscribeReducedMotion, ui as subscribeSpeechEngine, fc as subscribeTurnTimelines, to as summarisePageText, pc as summariseTurnTimelines, Ni as syncRotationClock, bu as tabForArrowKey, A as terminalCodeRecoverability, eh as themeCommandCopy, Si as thinkingPhrase, Ci as thinkingPhraseEntry, ya as toCaptionText, sp as toHistoryEntries, Ro as toMessageAttachment, ca as toSpeakableText, cp as toStorableHistoryText, qs as trackFirstText, zo as truncateForInline, no as truncatePagesForInline, lp as truncateUtf8, Bs as turnActivityCopy, Vs as turnActivityStage, mc as turnClockMs, Vn as turnConfirmsNoAction, Hn as turnOutcomeCopy, hc as turnSegments, gc as turnTimeline, lr as unofferedModeSendRefusal, vs as unofferedModeSendRefusalAfterAccess, Zn as usagePendingStorageKey, Qn as usageReportClock, $n as usageSendRefusal, Cm as useAssistantApiAccess, sh as useAssistantAttachments, Fl as useAssistantConnectSource, _h as useAssistantDockWidth, uh as useAssistantHeartbeat, Sp as useAssistantHistoryStatus, Vp as useAssistantHistoryStore, d as useAssistantI18nNamespace, dh as useAssistantKeyboardShortcuts, C as useAssistantNavigate, vh as useAssistantOverlayOrNull, a as useAssistantPageLabel, yh as useAssistantPanelInset, eu as useAssistantPreview, wu as useAssistantPreviewBridge, o as useAssistantProduct, s as useAssistantProductOrNull, bh as useAssistantQuotaExhausted, fm as useAssistantServerHistory, vc as useAssistantSpeech, c as useAssistantStorageFolders, At as useAssistantStore, f as useAssistantTr, tm as useConversationDeleteDialog, wm as useConversationTurns, Yl as useDropdownEscape, pm as useHistoryRowControlsFor, Du as useHostedAssistantPreviewBridge, Cu as useOverlayFocus, Rc as usePrefersReducedMotion, tr as useSandboxAssistantTransport, n as useVoiceInput, yc as useVoiceSession, ah as useWorkspaceWriteAccess, al as useWriteProposalConfirm, Hc as useWriteProposalRemainingMs, Dl as useWriteProposals, _n as usesDedicatedAssistantProvisioning, up as utf8ByteLength, Bo as validateFile, ti as voiceAvailability, Na as voiceBindingAtStart, Pa as voiceBindingConversationId, br as voiceMarker, ua as voicePreviewText, rs as voiceProposalChip, is as voiceProposalChipText, ni as voiceQualityRank, as as voiceReadbacksDue, Ld as voiceSessionEscapeAction, xr as voiceSessionIdOf, Jl as voiceSessionOwnsEscape, Yi as voiceSessionReducer, mi as voiceStageState, Di as voiceStatusParts, Oi as voiceStatusSuffix, Qi as voiceTranscriptFilename, Sr as voiceTurnsOnly, os as voiceWaitingProposals, ri as voicesForLocale, vn as waitForAssistantServiceReady, yn as waitForSandboxRunning, Gm as warmState, hi as waveformIsActive, gi as waveformIsSettled, hr as withIncompleteTurnNotice, wt as withWriteModeAcknowledged, bn as writeApprovalModeOf, xn as writeApprovalReuseMatches, Nd as writeAssistantOverlayFlag, Sn as writeExecutionOf, Tt as writeModeConsentCopy, Et as writeModeSendRefusal, Dt as writeModeSendRefusalReason, Uc as writeProposalArgumentValues, yl as writeProposalBelongsTo, Wc as writeProposalConfirmState, Gc as writeProposalCountdownText, Zo as writeProposalErrorLine, Kc as writeProposalGatewayText, qc as writeProposalKindText, Jc as writeProposalRemainingMs, Yc as writeProposalRootFieldName, Xc as writeProposalSensitiveTexts, bl as writeProposalSessionsToReopen, tl as writeProposalUsesDialog, Zc as writeProposalVariableValues, ss as writeProposalVoiceLine, cs as writeProposalVoiceReadback, xl as writeProposalsEnabledFor, El as writeReplyLiveState };
93
+ import { AssistantPreviewProvider as sl, useAssistantPreview as cl } from "./shared/assistant/preview/context.js";
94
+ import { IDLE_PREVIEW_STATE as ll, isBlankProse as ul, isRunningStatus as dl, nextPreviewEvents as fl } from "./shared/assistant/preview/previewTransitions.js";
95
+ import { IDLE_PREVIEW as pl, NO_OWNER as ml, applyPreviewEvent as hl, createAssistantPreviewSurface as gl, currentPreviewOwner as _l, runBelongsTo as vl, sameOwner as yl } from "./shared/assistant/preview/surfaceState.js";
96
+ import { createRunIdentityCache as bl, runIdentities as xl } from "./shared/assistant/preview/runIdentity.js";
97
+ import { deliverPreviewEvent as Sl, useAssistantPreviewBridge as Cl } from "./shared/assistant/preview/useAssistantPreviewBridge.js";
98
+ import { writeActionResultEvents as wl } from "./shared/assistant/preview/writeActionResults.js";
99
+ import { WRITE_PROPOSAL_ERROR_CODES as Tl, WRITE_PROPOSAL_SANDBOX_MODE as El, WriteProposalError as Dl, createSandboxWriteProposalClient as Ol, isWriteProposalError as kl, parseWriteProposalView as Al } from "./shared/assistant/writeProposals.js";
100
+ import { WRITE_PROPOSAL_MAX_POLL_FAILURES as jl, WRITE_PROPOSAL_POLL_MS as Ml, asWriteProposalError as Nl, createWriteProposalDiscovery as Pl, newWriteProposalRequestId as Fl, readWriteProposalRefs as Il, writeProposalBelongsTo as Ll, writeProposalSessionsToReopen as Rl, writeProposalsEnabledFor as zl } from "./shared/assistant/writeProposalDiscovery.js";
101
+ import { WRITE_REPLY_DECLINE_WAIT_MS as Bl, planWriteReply as Vl, promptWriteApproval as Hl, settleWithin as Ul, writeReplyLiveState as Wl } from "./shared/assistant/writeReplySend.js";
102
+ import { useWriteProposals as Gl } from "./shared/assistant/ui/useWriteProposals.js";
103
+ import { AssistantLanguageMenu as Kl } from "./shared/assistant/ui/AssistantLanguageMenu.js";
104
+ import { AssistantReplyLanguageSelector as ql } from "./shared/assistant/ui/AssistantReplyLanguageSelector.js";
105
+ import { AssistantSpeakButton as Jl } from "./shared/assistant/ui/AssistantSpeakButton.js";
106
+ import { AssistantSpokenTurnsNotice as Yl } from "./shared/assistant/ui/AssistantSpokenTurnsNotice.js";
107
+ import { AssistantConnectSourceProvider as Xl, connectSourceHrefRenders as Zl, hasConnectSource as Ql, useAssistantConnectSource as $l } from "./shared/assistant/ui/composer/connectSource.js";
108
+ import { AssistantConnectSourceItem as eu, connectSourceActivation as tu } from "./shared/assistant/ui/composer/AssistantConnectSourceItem.js";
109
+ import { ASSISTANT_OVERLAY_ATTR as nu, ASSISTANT_PANEL_ATTR as ru, ASSISTANT_VOICE_SESSION_ATTR as iu, NO_PANEL_OVERLAY as au, activePanelOverlay as ou, assistantPanelOwnsEscape as su, escapeDismisses as cu, focusIsInsidePanel as lu, nextPanelOverlays as uu, panelOwnsEscape as du, voiceSessionOwnsEscape as fu } from "./shared/assistant/ui/panelOverlays.js";
110
+ import { useDropdownEscape as pu } from "./shared/assistant/ui/useDropdownEscape.js";
111
+ import { AssistantAttachmentButton as mu } from "./shared/assistant/ui/composer/AssistantAttachmentButton.js";
112
+ import { AssistantAttachmentChips as hu } from "./shared/assistant/ui/composer/AssistantAttachmentChips.js";
113
+ import { hasAssistantPreviewSurface as gu } from "./shared/assistant/preview/types.js";
114
+ import { IDLE_ACTIVE_TAB as _u, nextActiveTab as vu, pinActiveTab as yu, shouldPinOnMove as bu, shouldPinOnSelect as xu, stepsFromToolActivity as Su, tabForArrowKey as Cu } from "./shared/assistant/preview/entity/entityPreviewState.js";
115
+ import { AssistantStepRail as wu } from "./shared/assistant/preview/entity/AssistantStepRail.js";
116
+ import { AssistantEntityPreview as Tu } from "./shared/assistant/preview/entity/AssistantEntityPreview.js";
117
+ import { useOverlayFocus as Eu } from "./shared/assistant/ui/useOverlayFocus.js";
118
+ import { HostedPreviewBridgeContext as Du, panelOwnedPreviewBridge as Ou, useHostedAssistantPreviewBridge as ku } from "./shared/assistant/preview/bridgeHostContext.js";
119
+ import { AssistantPreviewBridgeHost as Au } from "./shared/assistant/preview/bridgeHost.js";
120
+ import { AssistantPreviewOverlay as ju } from "./shared/assistant/preview/AssistantPreviewOverlay.js";
121
+ import { AssistantLanguageSelector as Mu, FOLLOW_APP_LOCALE as Nu } from "./shared/assistant/ui/composer/AssistantLanguageSelector.js";
122
+ import { ASSISTANT_MODE_META as Pu, AUTO_MODE_OPTION_ID as Fu, AssistantModeSelector as Iu, assistantModeMeta as Lu, nextModeIndex as Ru } from "./shared/assistant/ui/composer/AssistantModeSelector.js";
123
+ import { AssistantVoiceButton as zu } from "./shared/assistant/ui/composer/AssistantVoiceButton.js";
124
+ import { AUTO_VOICE as Bu, AssistantVoiceSelector as Vu } from "./shared/assistant/ui/composer/AssistantVoiceSelector.js";
125
+ import { AssistantVoiceOrb as Hu } from "./shared/assistant/ui/voice/AssistantVoiceOrb.js";
126
+ import { AssistantVoiceSessionButton as Uu } from "./shared/assistant/ui/voice/AssistantVoiceSessionButton.js";
127
+ import { CAPTION_SCROLL_ATTR as Wu, VoiceCaption as Gu } from "./shared/assistant/ui/voice/VoiceCaption.js";
128
+ import { VoiceConversationView as Ku } from "./shared/assistant/ui/voice/VoiceConversationView.js";
129
+ import { VoiceWaveform as qu } from "./shared/assistant/ui/voice/VoiceWaveform.js";
130
+ import { VoiceStatusLine as Ju, VoiceStatusText as Yu } from "./shared/assistant/ui/voice/VoiceStatusText.js";
131
+ import { VoiceMiniController as Xu } from "./shared/assistant/ui/voice/VoiceMiniController.js";
132
+ import { VoiceStage as Zu } from "./shared/assistant/ui/voice/VoiceStage.js";
133
+ import { AssistantHistoryArchivedNotice as Qu, AssistantHistoryDeletedNotice as $u, AssistantHistoryLoadState as ed, AssistantHistoryPinLimitBanner as td, AssistantHistoryReadOnlyBanner as nd, AssistantHistoryShowEarlier as rd, AssistantHistoryUnsavedDeleteNotice as id } from "./shared/assistant/ui/AssistantHistoryNotices.js";
134
+ import { VoiceTranscriptDrawer as ad } from "./shared/assistant/ui/voice/VoiceTranscriptDrawer.js";
135
+ import { ASSISTANT_BOTTOM_CHROME_CLEARANCE as od, ASSISTANT_DIALOG_SELECTOR as sd, ASSISTANT_DOCKED_DESKTOP_CLASS as cd, ASSISTANT_DOCK_WIDTH_PX as ld, ASSISTANT_DOCK_WIDTH_VAR as ud, ASSISTANT_FLOATING_DESKTOP_CLASS as dd, ASSISTANT_FLOATING_RIGHT_PX as fd, ASSISTANT_FLOATING_WIDTH_PX as pd, ASSISTANT_OVERLAY_DEFAULT_TOP_PX as md, ASSISTANT_OVERLAY_DESKTOP_QUERY as hd, ASSISTANT_OVERLAY_TOP_VAR as gd, ASSISTANT_PANEL_INSET_VAR as _d, ASSISTANT_SHEET_BASE_CLASS as vd, ASSISTANT_SHEET_COMPACT_CLASS as yd, ASSISTANT_SHEET_EXPANDED_CLASS as bd, ASSISTANT_TOGGLE_SHORTCUT_LABEL as xd, aboveAssistantBottomChrome as Sd, assistantOverlayClassName as Cd, assistantOverlayEscapeAction as wd, assistantOverlayKeys as Td, assistantQuotaKindOf as Ed, closestAround as Dd, createAssistantNavigate as Od, isAssistantToggleShortcut as kd, nextAssistantOpenState as Ad, publishedAssistantDockWidth as jd, publishedAssistantPanelInset as Md, readAssistantOverlayFlag as Nd, requestedAssistantOpenState as Pd, writeAssistantOverlayFlag as Fd } from "./shared/assistant/ui/assistantOverlayState.js";
136
+ import { VOICE_ESCAPE_LAYER_SELECTOR as Id, VOICE_ESCAPE_MODAL_SELECTOR as Ld, escapeBelongsToLayerAbove as Rd, voiceSessionEscapeAction as zd } from "./shared/assistant/ui/voice/voiceSessionEscape.js";
137
+ import { downloadFile as Bd, exportConversation as Vd } from "./shared/assistant/exportConversation.js";
138
+ import { AssistantMoreMenu as Hd } from "./shared/assistant/ui/AssistantMoreMenu.js";
139
+ import { AssistantHeader as Ud } from "./shared/assistant/ui/AssistantHeader.js";
140
+ import { AssistantHistoryControlsUnavailableError as Wd, AssistantHistoryResponseError as Gd, AssistantHistoryScopeInactiveError as Kd } from "./shared/assistant/history/historyTransportErrors.js";
141
+ import { ASSISTANT_HISTORY_BACKOFF_BASE_MS as qd, ASSISTANT_HISTORY_BACKOFF_MAX_MS as Jd, ASSISTANT_HISTORY_QUOTA_RETRY_MS as Yd, ASSISTANT_HISTORY_REJECTION_KEYS as Xd, ASSISTANT_HISTORY_SCHEMA_PAUSE_MS as Zd, assistantHistoryBackoffMs as Qd, classifyAssistantHistoryError as $d, isAssistantHistoryControlsDrift as ef, planAssistantHistoryRetry as tf } from "./shared/assistant/history/historyErrors.js";
142
+ import { ASSISTANT_HISTORY_CHANGES_OPERATION as nf, ASSISTANT_HISTORY_CHANGES_QUERY as rf, ASSISTANT_HISTORY_CHANGES_QUERY_BASE as af, ASSISTANT_HISTORY_CONVERSATIONS_OPERATION as of, ASSISTANT_HISTORY_CONVERSATIONS_QUERY as sf, ASSISTANT_HISTORY_CONVERSATIONS_QUERY_BASE as cf, ASSISTANT_HISTORY_DELETE_MUTATION as lf, ASSISTANT_HISTORY_DELETE_MUTATION_BASE as uf, ASSISTANT_HISTORY_DELETE_OPERATION as df, ASSISTANT_HISTORY_ENTRIES_OPERATION as ff, ASSISTANT_HISTORY_ENTRIES_QUERY as pf, ASSISTANT_HISTORY_ENTRIES_QUERY_BASE as mf, ASSISTANT_HISTORY_OPERATIONS as hf, ASSISTANT_HISTORY_SAVE_MUTATION as gf, ASSISTANT_HISTORY_SAVE_MUTATION_BASE as _f, ASSISTANT_HISTORY_SAVE_OPERATION as vf, ASSISTANT_HISTORY_UPDATE_MUTATION as yf, ASSISTANT_HISTORY_UPDATE_OPERATION as bf, buildHistoryDeleteVariables as xf, buildHistoryEntriesVariables as Sf, buildHistoryListVariables as Cf, buildHistoryPageVariables as wf, buildHistorySaveVariables as Tf, buildHistoryUpdateVariables as Ef } from "./shared/assistant/history/historyOperations.js";
143
+ import { historyTimestampToIso as Df } from "./shared/assistant/history/historyTimestamps.js";
144
+ import { ASSISTANT_HISTORY_CONTROLS_RECHECK_MS as Of, ASSISTANT_HISTORY_MASKED_DRIFT_STREAK as kf, createGatewayHistoryTransport as Af } from "./shared/assistant/history/historyApi.js";
145
+ import { LEGACY_HISTORY_KEY_PREFIX as jf, assistantHistoryScopeKey as Mf, completeAssistantHistoryScope as Nf, isLegacyHistoryConvKey as Pf, legacyHistoryConvKey as Ff } from "./shared/assistant/history/historyTypes.js";
146
+ import { ASSISTANT_HISTORY_MAX_CACHED_CONVERSATIONS as If, conversationHasHistory as Lf, historyConvKeyOf as Rf, historyHeaderOf as zf, historyRowAcceptsControls as Bf, historyScopeKeyOfStamp as Vf, isOtherScopeHistoryConversation as Hf, isReadOnlyHistoryConversation as Uf, isReusableHistoryDraft as Wf, materializeHistoryHeader as Gf, resolveHistoryReopenMode as Kf, selectAssistantHistoryList as qf, selectHistoryEvictions as Jf } from "./shared/assistant/history/historyList.js";
147
+ import { HISTORY_CLIENT_ID_PATTERN as Yf, HISTORY_ENTRY_CONTENT_CAP_BYTES as Xf, HISTORY_MAX_CONTENT_BYTES as Zf, HISTORY_METADATA_ENVELOPE_MAX_BYTES as Qf, HISTORY_METADATA_KEYS as $f, HISTORY_REQUEST_HEADROOM_BYTES as ep, HISTORY_SAVE_REQUEST_BUDGET_BYTES as tp, HISTORY_TRUNCATION_MARKER as np, filterHistoryMetadata as rp, fitHistoryMetadataEnvelope as ip, fromHistoryEntry as ap, historyEntriesMatchKind as op, isHistoryClientId as sp, measureHistorySaveRequest as cp, toHistoryEntries as lp, toStorableHistoryText as up, truncateUtf8 as dp, utf8ByteLength as fp } from "./shared/assistant/history/historyMapping.js";
148
+ import { HISTORY_CATCH_UP_MAX_GAP as pp, HISTORY_CATCH_UP_PAGE as mp, HISTORY_LOAD_PAGE as hp, applyHistoryPage as gp, highestContiguousHistorySeq as _p, mergeHistoryMessages as vp, planHistoryEarlierLoad as yp, planHistoryOpenLoad as bp } from "./shared/assistant/history/historyMerge.js";
149
+ import { assistantHistoryGenerationOf as xp, createAssistantHistoryStatusStore as Sp, isCurrentAssistantHistoryGeneration as Cp, useAssistantHistoryStatus as wp } from "./shared/assistant/history/historyStatus.js";
150
+ import { createProfileBoundStorage as Tp } from "./shared/assistant/history/profileBoundStorage.js";
151
+ import { ASSISTANT_HISTORY_DONE_TTL_MS as Ep, ASSISTANT_HISTORY_MAX_HEADERS as Dp, ASSISTANT_HISTORY_MAX_TOMBSTONES as Op, ASSISTANT_HISTORY_STORAGE_NAME as kp, ASSISTANT_HISTORY_TOMBSTONE_TTL_MS as Ap, assistantHistoryStore as jp, boundAssistantHistoryHeaders as Mp, createAssistantHistoryStore as Np, emptyAssistantHistoryPersisted as Pp, emptyAssistantHistoryScopeState as Fp, headerHasControls as Ip, isNewerAssistantHistoryFormat as Lp, mergeAssistantHistoryPersisted as Rp, mergeAssistantHistoryWithStored as zp, pruneAssistantHistoryPersisted as Bp, readAssistantHistoryPersisted as Vp, settleAssistantHistory as Hp, useAssistantHistoryStore as Up } from "./shared/assistant/history/historyStore.js";
152
+ import { ASSISTANT_HISTORY_RESET_TRUST_MS as Wp, assistantHistory as Gp, createAssistantHistoryEngine as Kp, createSystemHistoryClock as qp } from "./shared/assistant/history/historyEngine.js";
153
+ import { AssistantConversationFilters as Jp } from "./shared/assistant/ui/AssistantConversationFilters.js";
154
+ import { AssistantConversationList as Yp } from "./shared/assistant/ui/AssistantConversationList.js";
155
+ import { AssistantEmptyState as Xp } from "./shared/assistant/ui/AssistantEmptyState.js";
156
+ import { AssistantDeleteConversationDialog as Zp, AssistantNothingToDeleteNotice as Qp, DELETE_CONFIRM_ARM_MS as $p } from "./shared/assistant/ui/AssistantDeleteConversationDialog.js";
157
+ import { assistantHistoryIsOn as em, deleteAssistantConversation as tm } from "./shared/assistant/ui/conversationDelete.js";
158
+ import { AssistantConversationDeleteDialogProvider as nm, useConversationDeleteDialog as rm } from "./shared/assistant/ui/conversationDeleteDialog.js";
159
+ import { resolveConversationDeleteTarget as im } from "./shared/assistant/conversationDeleteCommand.js";
160
+ import { HISTORY_RESUME_CLOSE as am, HISTORY_RESUME_MAX_ANSWER_CHARS as om, HISTORY_RESUME_MAX_CHARS as sm, HISTORY_RESUME_MAX_EXCHANGES as cm, HISTORY_RESUME_MAX_PROMPT_CHARS as lm, HISTORY_RESUME_OPEN as um, buildHistoryResumePreamble as dm, isKnownReadOnlyMode as fm, resumeContextFor as pm } from "./shared/assistant/history/historyResume.js";
161
+ import { useAssistantServerHistory as mm } from "./shared/assistant/history/useAssistantServerHistory.js";
162
+ import { useHistoryRowControlsFor as hm } from "./shared/assistant/history/useHistoryRowControls.js";
163
+ import { AssistantTurnActivity as gm, TurnActivityLine as _m } from "./shared/assistant/ui/AssistantTurnActivity.js";
164
+ import { AssistantMessageItem as vm } from "./shared/assistant/ui/AssistantMessageItem.js";
165
+ import { AssistantMessageList as ym } from "./shared/assistant/ui/AssistantMessageList.js";
166
+ import { AssistantVoiceSession as bm } from "./shared/assistant/ui/voice/AssistantVoiceSession.js";
167
+ import { ASSISTANT_ADMIN_ACTION as xm, ASSISTANT_ADMIN_RESOURCE_TYPE as Sm, WORKSPACE_ASSISTANT_ADMIN_QUERY as Cm, probeWorkspaceAssistantAdmin as wm, useAssistantApiAccess as Tm } from "./shared/assistant/useAssistantApiAccess.js";
168
+ import { useConversationTurns as Em } from "./shared/assistant/useConversationTurns.js";
169
+ import { ABANDONED_TURN_OUTCOME as Dm, MAX_REPORTED_TURN_MS as Om, TURN_TIMING_REPORT_FIELDS as km, TURN_TIMING_STAGES as Am, buildAbandonedTurnReport as jm, buildTurnTimingReport as Mm, isFinishedTurn as Nm } from "./shared/assistant/turnTimingReport.js";
170
+ import { TURN_TIMING_REPORTING as Pm, createTurnTimingNonce as Fm, createTurnTimingReporter as Im, resetTurnTimingReporting as Lm, sendAssistantTurnTimings as Rm, startTurnTimingReporting as zm } from "./shared/assistant/turnTimingReporter.js";
171
+ import { PREWARM_COOLDOWN_MS as Bm, WarmCancelled as Vm, consumeWarm as Hm, prewarmTarget as Um, resetWarmsForTest as Wm, settleWarmBeforeSend as Gm, startWarm as Km, warmState as qm } from "./shared/assistant/prewarm.js";
172
+ import { isAlreadyThere as Jm, isCurrentPath as Ym, matchLocalUiCommand as Xm, navDestinations as Zm, normaliseUtterance as Qm, planThemeChange as $m } from "./shared/assistant/localUiCommands.js";
173
+ import { chooseDestinationCopy as eh, navigationCommandCopy as th, themeCommandCopy as nh } from "./shared/assistant/localUiCommandCopy.js";
174
+ import { aiCreditsUpdatedEventName as rh, dispatchAssistantQuotaExhausted as ih, notifyAiCreditsUpdated as ah } from "./shared/assistant/aiCredits.js";
175
+ import { PROPOSAL_WRITE_RULES as oh } from "./shared/assistant/proposalWriteRules.js";
176
+ import { useWorkspaceWriteAccess as sh } from "./shared/assistant/useWorkspaceWriteAccess.js";
177
+ import { extractDocumentText as ch } from "./shared/assistant/documentExtract.js";
178
+ import { useAssistantAttachments as lh } from "./shared/assistant/useAssistantAttachments.js";
179
+ import { AssistantComposer as uh } from "./shared/assistant/ui/composer/AssistantComposer.js";
180
+ import { isProdRuntime as dh } from "./shared/assistant/env.js";
181
+ import { useAssistantHeartbeat as fh } from "./shared/assistant/useAssistantHeartbeat.js";
182
+ import { useAssistantKeyboardShortcuts as ph } from "./shared/assistant/useAssistantKeyboardShortcuts.js";
183
+ import { AssistantApiCallsConsentDialog as mh } from "./shared/assistant/ui/AssistantApiCallsConsentDialog.js";
184
+ import { AssistantChatArea as hh } from "./shared/assistant/ui/AssistantChatArea.js";
185
+ import { AIAssistantPanel as gh } from "./shared/assistant/ui/AIAssistantPanel.js";
186
+ import { AssistantOverlay as _h, AssistantOverlayProvider as vh, useAssistantDockWidth as yh, useAssistantOverlayOrNull as bh, useAssistantPanelInset as xh, useAssistantQuotaExhausted as Sh } from "./shared/assistant/ui/AssistantOverlay.js";
187
+ export { Dm as ABANDONED_TURN_OUTCOME, ms as ADMIN_MODE_ACCESS_WAIT_MS, gh as AIAssistantPanel, xm as ASSISTANT_ADMIN_ACTION, Sm as ASSISTANT_ADMIN_RESOURCE_TYPE, ce as ASSISTANT_API_AUTH_STRATEGY, od as ASSISTANT_BOTTOM_CHROME_CLEARANCE, sd as ASSISTANT_DIALOG_SELECTOR, cd as ASSISTANT_DOCKED_DESKTOP_CLASS, ld as ASSISTANT_DOCK_WIDTH_PX, ud as ASSISTANT_DOCK_WIDTH_VAR, dd as ASSISTANT_FLOATING_DESKTOP_CLASS, fd as ASSISTANT_FLOATING_RIGHT_PX, pd as ASSISTANT_FLOATING_WIDTH_PX, qd as ASSISTANT_HISTORY_BACKOFF_BASE_MS, Jd as ASSISTANT_HISTORY_BACKOFF_MAX_MS, nf as ASSISTANT_HISTORY_CHANGES_OPERATION, rf as ASSISTANT_HISTORY_CHANGES_QUERY, af as ASSISTANT_HISTORY_CHANGES_QUERY_BASE, Of as ASSISTANT_HISTORY_CONTROLS_RECHECK_MS, of as ASSISTANT_HISTORY_CONVERSATIONS_OPERATION, sf as ASSISTANT_HISTORY_CONVERSATIONS_QUERY, cf as ASSISTANT_HISTORY_CONVERSATIONS_QUERY_BASE, lf as ASSISTANT_HISTORY_DELETE_MUTATION, uf as ASSISTANT_HISTORY_DELETE_MUTATION_BASE, df as ASSISTANT_HISTORY_DELETE_OPERATION, Ep as ASSISTANT_HISTORY_DONE_TTL_MS, ff as ASSISTANT_HISTORY_ENTRIES_OPERATION, pf as ASSISTANT_HISTORY_ENTRIES_QUERY, mf as ASSISTANT_HISTORY_ENTRIES_QUERY_BASE, kf as ASSISTANT_HISTORY_MASKED_DRIFT_STREAK, If as ASSISTANT_HISTORY_MAX_CACHED_CONVERSATIONS, Dp as ASSISTANT_HISTORY_MAX_HEADERS, Op as ASSISTANT_HISTORY_MAX_TOMBSTONES, hf as ASSISTANT_HISTORY_OPERATIONS, Yd as ASSISTANT_HISTORY_QUOTA_RETRY_MS, Xd as ASSISTANT_HISTORY_REJECTION_KEYS, Wp as ASSISTANT_HISTORY_RESET_TRUST_MS, gf as ASSISTANT_HISTORY_SAVE_MUTATION, _f as ASSISTANT_HISTORY_SAVE_MUTATION_BASE, vf as ASSISTANT_HISTORY_SAVE_OPERATION, Zd as ASSISTANT_HISTORY_SCHEMA_PAUSE_MS, kp as ASSISTANT_HISTORY_STORAGE_NAME, Ap as ASSISTANT_HISTORY_TOMBSTONE_TTL_MS, yf as ASSISTANT_HISTORY_UPDATE_MUTATION, bf as ASSISTANT_HISTORY_UPDATE_OPERATION, ls as ASSISTANT_I18N_COMPUTED_COPY, us as ASSISTANT_I18N_LITERAL_COPY, ds as ASSISTANT_I18N_MANIFEST, ba as ASSISTANT_LANGUAGES, w as ASSISTANT_LLM_TERMINAL_CODES, Q as ASSISTANT_MODE_FALLBACK_LABELS, $ as ASSISTANT_MODE_IDS, Pu as ASSISTANT_MODE_META, nu as ASSISTANT_OVERLAY_ATTR, md as ASSISTANT_OVERLAY_DEFAULT_TOP_PX, hd as ASSISTANT_OVERLAY_DESKTOP_QUERY, gd as ASSISTANT_OVERLAY_TOP_VAR, ru as ASSISTANT_PANEL_ATTR, _d as ASSISTANT_PANEL_INSET_VAR, vd as ASSISTANT_SHEET_BASE_CLASS, yd as ASSISTANT_SHEET_COMPACT_CLASS, bd as ASSISTANT_SHEET_EXPANDED_CLASS, xd as ASSISTANT_TOGGLE_SHORTCUT_LABEL, iu as ASSISTANT_VOICE_SESSION_ATTR, ro as ATTACHMENT_ACCEPT, Vo as ATTACHMENT_SOURCES, be as AUTO_CARRY_OVER_MAX_CHARS, xe as AUTO_CARRY_OVER_MAX_CHARS_PER_MESSAGE, Se as AUTO_CARRY_OVER_MAX_MESSAGES, Fu as AUTO_MODE_OPTION_ID, Ce as AUTO_READ_MODE, Bu as AUTO_VOICE, we as AUTO_WRITE_MODE, mh as AssistantApiCallsConsentDialog, mu as AssistantAttachmentButton, hu as AssistantAttachmentChips, jc as AssistantAutoSpeakToggle, $s as AssistantAvatar, hh as AssistantChatArea, uh as AssistantComposer, eu as AssistantConnectSourceItem, Xl as AssistantConnectSourceProvider, nm as AssistantConversationDeleteDialogProvider, Jp as AssistantConversationFilters, Yp as AssistantConversationList, Zp as AssistantDeleteConversationDialog, Xp as AssistantEmptyState, Tu as AssistantEntityPreview, Ud as AssistantHeader, Qu as AssistantHistoryArchivedNotice, Wd as AssistantHistoryControlsUnavailableError, $u as AssistantHistoryDeletedNotice, ed as AssistantHistoryLoadState, td as AssistantHistoryPinLimitBanner, nd as AssistantHistoryReadOnlyBanner, Gd as AssistantHistoryResponseError, Kd as AssistantHistoryScopeInactiveError, rd as AssistantHistoryShowEarlier, id as AssistantHistoryUnsavedDeleteNotice, l as AssistantI18nProvider, Kl as AssistantLanguageMenu, Mu as AssistantLanguageSelector, m as AssistantMarkdownImage, _ as AssistantMarkdownRenderer, Mc as AssistantMessageAttachments, vm as AssistantMessageItem, ym as AssistantMessageList, Iu as AssistantModeSelector, Hd as AssistantMoreMenu, v as AssistantNavigateProvider, Qp as AssistantNothingToDeleteNotice, _h as AssistantOverlay, vh as AssistantOverlayProvider, Nc as AssistantPendingWriteCard, Au as AssistantPreviewBridgeHost, ju as AssistantPreviewOverlay, sl as AssistantPreviewProvider, r as AssistantProductProvider, ql as AssistantReplyLanguageSelector, Cn as AssistantRuntimeManager, Rn as AssistantSendRefusal, Jl as AssistantSpeakButton, _c as AssistantSpeechProvider, Yl as AssistantSpokenTurnsNotice, wu as AssistantStepRail, Js as AssistantToolActivity, gm as AssistantTurnActivity, zu as AssistantVoiceButton, Hu as AssistantVoiceOrb, Vu as AssistantVoiceSelector, bm as AssistantVoiceSession, Uu as AssistantVoiceSessionButton, nl as AssistantWriteConfirmDialog, Qc as AssistantWriteProposalCard, ol as AssistantWriteProposalSlot, io as AttachmentRejectedError, La as BOILERPLATE_PAGE_SHARE, nr as BUILT_IN_MODE_CAPABILITIES, Wu as CAPTION_SCROLL_ATTR, z as CHECK_AI_CREDITS, B as CREATE_SANDBOX, Pe as DEFAULT_HISTORY_LIST_FILTER, ao as DEFAULT_INLINE_LIMITS, $i as DEFAULT_SPEAKABLE_LABELS, xa as DEFAULT_SPEECH_RATE, ur as DEFAULT_STREAM_BUDGET_MS, $p as DELETE_CONFIRM_ARM_MS, Pi as ENDPOINT_GRACE_MS, V as EXTEND_MY_ASSISTANT_SANDBOX_TTL, H as EXTEND_SANDBOX_TTL, Nu as FOLLOW_APP_LOCALE, U as GET_ACTIVE_SANDBOXES, W as GET_SANDBOX, pp as HISTORY_CATCH_UP_MAX_GAP, mp as HISTORY_CATCH_UP_PAGE, Yf as HISTORY_CLIENT_ID_PATTERN, Xf as HISTORY_ENTRY_CONTENT_CAP_BYTES, hp as HISTORY_LOAD_PAGE, Zf as HISTORY_MAX_CONTENT_BYTES, Qf as HISTORY_METADATA_ENVELOPE_MAX_BYTES, $f as HISTORY_METADATA_KEYS, ep as HISTORY_REQUEST_HEADROOM_BYTES, am as HISTORY_RESUME_CLOSE, om as HISTORY_RESUME_MAX_ANSWER_CHARS, sm as HISTORY_RESUME_MAX_CHARS, cm as HISTORY_RESUME_MAX_EXCHANGES, lm as HISTORY_RESUME_MAX_PROMPT_CHARS, um as HISTORY_RESUME_OPEN, tp as HISTORY_SAVE_REQUEST_BUDGET_BYTES, Fe as HISTORY_TITLE_MAX_CODE_POINTS, np as HISTORY_TRUNCATION_MARKER, Or as HOSTED_DISABLE_MS, kr as HOSTED_TTS_MAX_CHARS, wr as HOSTED_TTS_TIER, Tr as HOSTED_VOICES, Wr as HOSTED_VOICE_RANK, Du as HostedPreviewBridgeContext, _u as IDLE_ACTIVE_TAB, ws as IDLE_PLAYBACK, pl as IDLE_PREVIEW, ll as IDLE_PREVIEW_STATE, ki as IDLE_ROTATION_CLOCK, dr as INCOMPLETE_TURN_NOTICES, Fi as INITIAL_SESSION, Ea as INITIAL_TRANSCRIPT_AUTO_OPEN, oo as INLINE_IMAGE_MAX_DIM, so as INLINE_IMAGE_QUALITY, Ii as INTERRUPT_MAX_MS, Li as INTERRUPT_MIN_MS, jf as LEGACY_HISTORY_KEY_PREFIX, bt as LEGACY_WRITE_CONSENT_KEY, rr as MAX_ASSISTANT_STREAM_BUDGET_MS, co as MAX_ATTACHMENTS, Ra as MAX_BOILERPLATE_LINE_CHARS, lo as MAX_CONFIGURABLE_INLINE_CHARS, za as MAX_EXTRACTED_CHARS, uo as MAX_FILE_BYTES, fo as MAX_INLINE_CHARS_PER_FILE, po as MAX_INLINE_CHARS_TOTAL, jt as MAX_INLINE_IMAGE_BASE64_BYTES, mo as MAX_INLINE_IMAGE_BASE64_CHARS, ho as MAX_INLINE_IMAGE_PARTS, go as MAX_INLINE_TURN_BODY_BYTES, Ba as MAX_PDF_PAGES_SCANNED, Ie as MAX_PINNED, Om as MAX_REPORTED_TURN_MS, Mt as MAX_REQUEST_BODY_BYTES, ea as MAX_SPEAKABLE_CHARS, ta as MAX_SPOKEN_TABLE_ROWS, _o as MAX_TURN_BODY_BYTES, da as MINI_CAPTION_BUDGET, Va as MIN_PAGE_TEXT_CHARS, Ha as MIN_TEXT_PAGE_SHARE, Ri as NOTHING_HEARD, Hs as NO_FIRST_TEXT, ml as NO_OWNER, au as NO_PANEL_OVERLAY, at as PENDING_WRITE_APPROVAL_WINDOW_MS, _i as PHRASE_ROTATE_MS, pa as POLL_FAST_MS, ma as POLL_FAST_UNTIL_MS, ha as POLL_SLOW_MS, ga as POLL_STEADY_MS, _a as POLL_STEADY_UNTIL_MS, la as PREVIEW_LANGUAGES, Bm as PREWARM_COOLDOWN_MS, ne as PRODUCT_ASSISTANT_MODE_ID_MAX_LENGTH, re as PRODUCT_ASSISTANT_MODE_ID_PATTERN, Pt as PROMPT_CONVERSATION_ID_PATTERN, vo as PROMPT_ENVELOPE_RESERVE_BYTES, oh as PROPOSAL_WRITE_RULES, yo as PROVIDER_READABLE_FILE_MEDIA_TYPES, Pn as PROVISIONING_NOT_PERMITTED_I18N_KEY, G as PROVISION_ASSISTANT_SANDBOX, K as PROXY_SANDBOX_REQUEST, Pc as REDUCED_MOTION_ATTRIBUTE, Fc as REDUCED_MOTION_QUERY, q as REPORT_AI_TOKEN_USAGE, J as REPORT_MY_ASSISTANT_TURN_TIMINGS, Nt as REQUEST_TOO_LARGE_REFUSAL, Ec as SANDBOX_READY_TTL_MS, zi as SILENCE_SUBMIT_MS, Ar as SPEAKING_RATE_MAX, jr as SPEAKING_RATE_MAX_STREAMING, Mr as SPEAKING_RATE_MAX_SYNC, Nr as SPEAKING_RATE_MIN, na as SPEECH_CHUNK_CHARS, ra as SPEECH_CHUNK_CJK_CHARS, Gr as SPEECH_LANG, bs as SPOKEN_LABEL_LANGUAGES, vi as STAGE_COPY, e as START_RETRY_COOLDOWN_MS, Y as STOP_ASSISTANT_SANDBOX, X as STOP_MY_ASSISTANT_SANDBOX, fr as STREAM_BUDGET_MS, T as SandboxProxyError, xt as TAKE_ACTION_ENGLISH, yi as THINKING_PHRASES, bo as TURN_BODY_HEADROOM_BYTES, ec as TURN_MILESTONES, yt as TURN_OUTCOME_COPY, tc as TURN_SEGMENTS, nc as TURN_TIMELINE_EVENT, Pm as TURN_TIMING_REPORTING, km as TURN_TIMING_REPORT_FIELDS, Am as TURN_TIMING_STAGES, _m as TurnActivityLine, ir as UNAVAILABLE_MODE_REFUSAL, ar as UNDECLARED_MODE_CAPABILITIES, Un as USAGE_REPORT_FAILED_EVENT, Wn as USAGE_REPORT_RETRY_DELAYS_MS, Id as VOICE_ESCAPE_LAYER_SELECTOR, Ld as VOICE_ESCAPE_MODAL_SELECTOR, Kr as VOICE_LIST_TIMEOUT_MS, wi as VOICE_MUTED_LABEL, Qo as VOICE_PROPOSAL_MODE, Ti as VOICE_THINKING_LABEL, Gu as VoiceCaption, Ku as VoiceConversationView, Xu as VoiceMiniController, Zu as VoiceStage, Ju as VoiceStatusLine, Yu as VoiceStatusText, ad as VoiceTranscriptDrawer, qu as VoiceWaveform, Z as WAIT_FOR_SANDBOX_RUNNING, Cm as WORKSPACE_ASSISTANT_ADMIN_QUERY, rl as WRITE_CONFIRM_ARM_MS, $c as WRITE_PROPOSAL_DIALOG_KINDS, Tl as WRITE_PROPOSAL_ERROR_CODES, Xo as WRITE_PROPOSAL_ERROR_COPY, zc as WRITE_PROPOSAL_MASK, jl as WRITE_PROPOSAL_MAX_POLL_FAILURES, Ml as WRITE_PROPOSAL_POLL_MS, el as WRITE_PROPOSAL_PRESENTED_AFTER_MS, $o as WRITE_PROPOSAL_READBACK_HIDDEN, El as WRITE_PROPOSAL_SANDBOX_MODE, es as WRITE_PROPOSAL_VOICE_COPY, Wo as WRITE_REPLY_COPY, Bl as WRITE_REPLY_DECLINE_WAIT_MS, Go as WRITE_REPLY_LEXICON, Vm as WarmCancelled, Dl as WriteProposalError, Ft as abortAssistantTurn, Sd as aboveAssistantBottomChrome, ou as activePanelOverlay, or as adminOnlyModeSendRefusal, hs as adminOnlyModeSendRefusalAfterAccess, Bi as advanceHeardClock, Ai as advanceRotationClock, rh as aiCreditsUpdatedEventName, Ko as analyseWriteReply, gp as applyHistoryPage, hl as applyPreviewEvent, ot as approvalFollowUpReplyIds, It as approvePendingWrite, st as approvedPendingWriteIds, Nl as asWriteProposalError, il as askProductToConfirmWrite, Lt as askReuseMatchesProvisioning, Gp as assistantHistory, Qd as assistantHistoryBackoffMs, xp as assistantHistoryGenerationOf, em as assistantHistoryIsOn, Mf as assistantHistoryScopeKey, jp as assistantHistoryStore, fs as assistantI18nSeedCopy, E as assistantLlmTerminalCodeOf, ee as assistantModeFallbackLabel, ps as assistantModeI18nCopy, Lu as assistantModeMeta, Cd as assistantOverlayClassName, wd as assistantOverlayEscapeAction, Td as assistantOverlayKeys, su as assistantPanelOwnsEscape, Ed as assistantQuotaKindOf, y as assistantRoutePath, u as assistantTranslationKey, b as assistantUrlTransform, Gn as assistantUsageLedger, Te as autoCarryOverFor, Ee as autoSuggestions, Ho as availableAttachmentSources, Pr as base64ToBytes, ct as beginApprovalInFlight, rc as beginTurn, Mp as boundAssistantHistoryHeaders, x as browserShouldHandle, Cr as browserSpeechEngine, jm as buildAbandonedTurnReport, Us as buildAssistantProgress, Rt as buildAssistantSandboxEnv, xo as buildAttachmentPromptBlock, De as buildAutoCarryOver, ys as buildBoundedAttachmentTurn, Xi as buildContinuedFromVoiceNote, xf as buildHistoryDeleteVariables, Sf as buildHistoryEntriesVariables, Cf as buildHistoryListVariables, wf as buildHistoryPageVariables, dm as buildHistoryResumePreamble, Tf as buildHistorySaveVariables, Ef as buildHistoryUpdateVariables, wn as buildProgress, zt as buildPromptGatewayRequest, So as buildPromptParts, Bt as buildPromptRequestBody, Co as buildPromptWithAttachments, Vt as buildProvisionAssistantSandboxInput, Fr as buildRequest, I as buildSandboxContextInput, Mm as buildTurnTimingReport, Zi as buildVoiceTranscriptMarkdown, ie as builtInModeExtendedBy, gr as chatTurns, Ht as checkAssistantAiCredits, eh as chooseDestinationCopy, ia as chunkForSpeech, Le as clampToCodePoints, $d as classifyAssistantHistoryError, S as classifyAssistantHref, Oe as classifyAssistantIntent, wo as classifyAttachment, Ir as classifyHttpFailure, j as classifyQuotaError, zn as classifyTurnFailure, Kn as classifyUsageReportFailure, qo as classifyWriteReply, Dd as closestAround, Re as coalesceUpdatePatch, ze as codePointLength, Ua as columnLetterToIndex, Nf as completeAssistantHistoryScope, Ei as composeVoiceStatus, ai as configureSpeechEngine, tu as connectSourceActivation, Zl as connectSourceHrefRenders, Hm as consumeWarm, aa as containsCjk, Lf as conversationHasHistory, p as copyToClipboard, To as countInlineImageCandidates, Eo as countInlinedImageParts, Xs as countSpokenTurns, gs as createAdminModeAccessGate, Kp as createAssistantHistoryEngine, Sp as createAssistantHistoryStatusStore, Np as createAssistantHistoryStore, Od as createAssistantNavigate, gl as createAssistantPreviewSurface, Ut as createAssistantSandbox, Wt as createAssistantSession, Af as createGatewayHistoryTransport, Ne as createGuardedAssistantStorage, Hr as createHostedTtsEngine, Tp as createProfileBoundStorage, Dc as createReadinessTracker, ii as createRoutingSpeechEngine, bl as createRunIdentityCache, er as createSandboxAssistantTransport, Ol as createSandboxWriteProposalClient, oi as createSpeechEngines, qp as createSystemHistoryClock, Fm as createTurnTimingNonce, Im as createTurnTimingReporter, Pl as createWriteProposalDiscovery, _l as currentPreviewOwner, Jo as decideWriteReply, ae as declareAssistantMode, Lr as decodeAudioResponse, Wa as decodeXmlEntities, tm as deleteAssistantConversation, Sl as deliverPreviewEvent, Fn as describePermissionError, M as describeQuotaError, ic as describeTurn, Do as detectDocumentFormat, Ss as detectScriptLocale, ac as detectTurnDevice, Uo as deviceHasCamera, Rr as disableDurationMs, ih as dispatchAssistantQuotaExhausted, Ga as docxXmlToText, Gt as downloadAssistantArtifact, Bd as downloadFile, Ls as elapsedSince, Pp as emptyAssistantHistoryPersisted, Fp as emptyAssistantHistoryScopeState, lt as endApprovalInFlight, ke as escalationToUndo, Rd as escapeBelongsToLayerAbove, cu as escapeDismisses, Oo as estimateTurnBodyBytes, L as executeAssistantGraphQLOnce, R as executeSandboxGraphQL, Vd as exportConversation, Kt as extendAssistantSandboxTTL, N as extensionObjectsIn, ch as extractDocumentText, rp as filterHistoryMetadata, Sa as findAssistantLanguage, sr as findAssistantModeConfig, qt as findExistingSandbox, Jt as findExistingSandboxWithStatus, Fa as findPendingWrite, ip as fitHistoryMetadataEnvelope, Ka as fitPdfPages, lu as focusIsInsidePanel, ut as forgetLiveTurns, ko as formatBytes, Bn as formatDailyLimitResetTime, qa as formatPageRanges, Bc as formatWriteProposalValue, Yt as forwardsUserTokensToSandbox, ap as fromHistoryEntry, bc as getActorId, dt as getApprovalInFlight, Xt as getAssistantArtifacts, Is as getAssistantDisplayContent, Tn as getAssistantMedia, Zt as getAssistantMessages, Qt as getAssistantSession, $t as getAssistantStreamAccess, En as getAssistantText, Ao as getAttachmentSendBlocker, he as getCapability, jo as getExtension, Ye as getHistoryStamp, le as getImageForMode, ue as getImageTagForMode, xc as getOrganizationId, Dn as getRawMessageCreatedAt, de as getResourcesForMode, fe as getSandboxImageRegistry, Mo as getSendableAttachments, si as getSpeechEngine, On as getToolProgress, qn as getUsageBlock, Sc as getWorkspaceId, ft as goAheadSentReplyIds, _r as groupBySession, vr as groupConsecutiveBySession, gu as hasAssistantPreviewSurface, No as hasAttachmentWorkInFlight, Ql as hasConnectSource, Jn as hasPendingUsageReports, Ip as headerHasControls, _p as highestContiguousHistorySeq, Rf as historyConvKeyOf, op as historyEntriesMatchKind, Be as historyFilterEmptyKind, Ve as historyFilterKey, zf as historyHeaderOf, Xe as historyOpenFilter, Bf as historyRowAcceptsControls, Vf as historyScopeKeyOfStamp, Df as historyTimestampToIso, Er as hostedLocaleFor, Dr as hostedSupportsLanguage, h as imageHostLabel, pr as incompleteTurnNotice, Jm as isAlreadyThere, ef as isAssistantHistoryControlsDrift, D as isAssistantLlmTerminalCode, oe as isAssistantModeId, en as isAssistantProvisioningUnavailable, kd as isAssistantToggleShortcut, Ae as isAutoRoutingOffered, Da as isAwaitingOwnConversation, ul as isBlankProse, te as isBuiltInAssistantMode, Vi as isCapturing, oc as isComparableTurn, Cp as isCurrentAssistantHistoryGeneration, Ym as isCurrentPath, tn as isDedicatedAssistantSandbox, nn as isDedicatedAssistantSandboxRow, He as isDefaultHistoryFilter, Hi as isEcho, Nm as isFinishedTurn, sp as isHistoryClientId, Ze as isHistoryConversationBusy, qr as isHostedVoice, fm as isKnownReadOnlyMode, Ms as isLegacyFiller, Pf as isLegacyHistoryConvKey, Ns as isLegacyStopped, pt as isLiveTurn, ge as isMissingGatewayFieldError, Ja as isMostlyImagePages, Cc as isMultimodalBodyRejection, wc as isNeverRecoverableAssistantError, Lp as isNewerAssistantHistoryFormat, Hf as isOtherScopeHistoryConversation, dh as isProdRuntime, se as isProductAssistantModeId, Po as isProviderReadableFilePart, P as isQuotaExhaustedError, Uf as isReadOnlyHistoryConversation, kn as isReapedSandboxConnectionError, Oc as isRecentlyVerified, An as isRecoverable, Tc as isRecoverableAssistantError, g as isRemoteImageSrc, Wf as isReusableHistoryDraft, dl as isRunningStatus, Ts as isSpeakingMessage, Jr as isSpeechBlocked, Ps as isStageCopy, Ui as isSubmittable, ks as isTurnInFlight, _e as isUnknownFieldError, Yo as isUserOriginatedWriteReply, Ue as isValidUpdatePatch, ts as isVoiceProposalBound, yr as isVoiceTurn, St as isWriteModeAcknowledged, kl as isWriteProposalError, Ya as joinSheets, Yr as languageDisplayName, Fo as largestInlineCharsPerFile, Ff as legacyHistoryConvKey, We as localChannelOf, jn as mapSessionToHistory, mt as markLiveTurn, ve as markSupported, sc as markTurn, ye as markUnsupported, Xm as matchLocalUiCommand, Ge as matchesHistoryFilter, Gf as materializeHistoryHeader, Oa as maySendSpokenTurn, cp as measureHistorySaveRequest, Rp as mergeAssistantHistoryPersisted, zp as mergeAssistantHistoryWithStored, vp as mergeHistoryMessages, Mn as mergeMessagesById, Ot as mergePersistedAssistantState, di as micIsInterrupt, rn as modeRequiresConfirmWrites, Rs as msUntilNextPhrase, Zm as navDestinations, th as navigationCommandCopy, Fl as newWriteProposalRequestId, ht as newestModelReplyId, vu as nextActiveTab, Ad as nextAssistantOpenState, Ru as nextModeIndex, uu as nextPanelOverlays, fl as nextPreviewEvents, Ke as normaliseHistoryTitle, Qm as normaliseUtterance, Xr as normalizeLangTag, ah as notifyAiCreditsUpdated, Qe as notifyAssistantStorageFull, $e as offerHistoryRename, Wi as orbMode, Xa as pageMarker, Ou as panelOwnedPreviewBridge, du as panelOwnsEscape, Ia as parseConfirmationRefusal, Io as parseDataUrl, Za as parseSharedStrings, Ys as parseToolActivity, Qa as parseWorkbookSheets, Al as parseWriteProposalView, $a as pdfTextItemsToPage, qe as pendingUpdatesByConversation, In as permissionRefusalCopyId, Ln as permissionRefusalMessage, yu as pinActiveTab, As as planAbandonedTurn, kc as planAfterTransportFailure, tf as planAssistantHistoryRetry, yp as planHistoryEarlierLoad, bp as planHistoryOpenLoad, Gi as planListeningHold, Ki as planReplyConsumption, $m as planThemeChange, ka as planTranscriptAutoOpen, Ac as planTrustedSandboxFailure, js as planTurnAbort, qi as planVoiceAnnouncement, Aa as planVoiceSessionBinding, ja as planVoiceSessionStart, Ma as planVoiceSpokenEntry, Vl as planWriteReply, va as pollDelayMs, Um as prewarmTarget, Zr as primaryLanguageSubtag, wm as probeWorkspaceAssistantAdmin, an as promptGatewayRequestBytes, Hl as promptWriteApproval, on as proxySandboxRaw, Bp as pruneAssistantHistoryPersisted, jd as publishedAssistantDockWidth, Md as publishedAssistantPanelInset, Es as publishedChunks, F as quotaExhaustedEventName, Ws as readAheadFor, Vp as readAssistantHistoryPersisted, Nd as readAssistantOverlayFlag, Ic as readReducedMotion, sn as readSandboxWriteCapabilities, cn as readSandboxWriteCapabilitiesOnce, ci as readSpeechEngineConfig, Il as readWriteProposalRefs, cc as recentTurnTimelines, Vc as redactWriteProposalText, ln as releaseSupersededAssistantSandboxes, ns as renderWriteProposalReadback, wa as replyFollowsInput, un as reportAssistantAiTokenUsage, Yn as reportUsageWithRetry, Pd as requestedAssistantOpenState, Ds as requiresCancel, li as resetSpeechEngine, lc as resetTurnTimelines, Lm as resetTurnTimingReporting, Wm as resetWarmsForTest, kt as resolveActiveModeSandbox, gt as resolveApprovablePendingWrite, Lo as resolveAssistantInlineLimits, Ca as resolveAssistantLanguage, cr as resolveAssistantModeCapabilities, _s as resolveAssistantSendModeAfterAccess, je as resolveAutoRoute, im as resolveConversationDeleteTarget, Kf as resolveHistoryReopenMode, Ta as resolveLanguagePair, i as resolveModeConfig, _t as resolveRetryableMessageId, Je as resolveRowControls, pe as resolveSandboxAssistantMode, Cs as resolveSpeechLocale, uc as restartAttempt, Ct as restoreAcknowledgedWriteModes, Me as restoreAutoRouting, pm as resumeContextFor, Ur as retryDelayMs, Xn as retryPendingUsageReports, ji as rotationElapsedMs, vl as runBelongsTo, xl as runIdentities, yl as sameOwner, me as sandboxBaseModeFor, O as sandboxProxyErrorFromBody, k as sandboxProxyErrorFromTurnTerminal, dn as sandboxStatusOf, Nn as sanitize, dc as segmentStats, qf as selectAssistantHistoryList, fn as selectExistingAssistantSandbox, Jf as selectHistoryEvictions, pn as selectSupersededAssistantSandboxes, Qr as selectVoiceForLocale, mn as sendAssistantPromptAsync, Rm as sendAssistantTurnTimings, hn as sendHeartbeat, et as setAssistantStorageFullHandler, tt as setHistoryBusyProbe, nt as setHistoryOpenFilterSource, rt as setHistoryRenameSink, it as setHistoryStampSource, Hp as settleAssistantHistory, Gm as settleWarmBeforeSend, Ul as settleWithin, eo as sheetXmlToRows, zr as shouldDisableEngine, bu as shouldPinOnMove, xu as shouldPinOnSelect, fa as showPreviousChunk, fi as showsAssistantCaption, pi as showsUserCaption, Gs as snapshotReplyFloor, Br as speakableChunks, oa as speakableEmail, $r as speechGate, xs as speechLabelsFor, ei as speechLangForLocale, Os as speechPlaybackReducer, Vr as splitForVendor, sa as splitTableRow, Zs as spokenMessagesSinceContinueNote, Ji as spokenSoFar, Qs as spokenTurnText, bi as stageText, t as startIsCoolingDown, zs as startPhraseTicker, Mi as startRotationTicker, Ks as startSessionReadAhead, zm as startTurnTimingReporting, Km as startWarm, xi as statusStageCopy, Su as stepsFromToolActivity, gn as stopReapedAssistantSandbox, mr as streamBudgetMs, Fs as stripLegacyFillerPrefix, vt as subscribeApprovalInFlight, Lc as subscribeReducedMotion, ui as subscribeSpeechEngine, fc as subscribeTurnTimelines, to as summarisePageText, pc as summariseTurnTimelines, Ni as syncRotationClock, Cu as tabForArrowKey, A as terminalCodeRecoverability, nh as themeCommandCopy, Si as thinkingPhrase, Ci as thinkingPhraseEntry, ya as toCaptionText, lp as toHistoryEntries, Ro as toMessageAttachment, ca as toSpeakableText, up as toStorableHistoryText, qs as trackFirstText, zo as truncateForInline, no as truncatePagesForInline, dp as truncateUtf8, Bs as turnActivityCopy, Vs as turnActivityStage, mc as turnClockMs, Vn as turnConfirmsNoAction, Hn as turnOutcomeCopy, hc as turnSegments, gc as turnTimeline, lr as unofferedModeSendRefusal, vs as unofferedModeSendRefusalAfterAccess, Zn as usagePendingStorageKey, Qn as usageReportClock, $n as usageSendRefusal, Tm as useAssistantApiAccess, lh as useAssistantAttachments, $l as useAssistantConnectSource, yh as useAssistantDockWidth, fh as useAssistantHeartbeat, wp as useAssistantHistoryStatus, Up as useAssistantHistoryStore, d as useAssistantI18nNamespace, ph as useAssistantKeyboardShortcuts, C as useAssistantNavigate, bh as useAssistantOverlayOrNull, a as useAssistantPageLabel, xh as useAssistantPanelInset, cl as useAssistantPreview, Cl as useAssistantPreviewBridge, o as useAssistantProduct, s as useAssistantProductOrNull, Sh as useAssistantQuotaExhausted, mm as useAssistantServerHistory, vc as useAssistantSpeech, c as useAssistantStorageFolders, At as useAssistantStore, f as useAssistantTr, rm as useConversationDeleteDialog, Em as useConversationTurns, pu as useDropdownEscape, hm as useHistoryRowControlsFor, ku as useHostedAssistantPreviewBridge, Eu as useOverlayFocus, Rc as usePrefersReducedMotion, tr as useSandboxAssistantTransport, n as useVoiceInput, yc as useVoiceSession, sh as useWorkspaceWriteAccess, al as useWriteProposalConfirm, Hc as useWriteProposalRemainingMs, Gl as useWriteProposals, _n as usesDedicatedAssistantProvisioning, fp as utf8ByteLength, Bo as validateFile, ti as voiceAvailability, Na as voiceBindingAtStart, Pa as voiceBindingConversationId, br as voiceMarker, ua as voicePreviewText, rs as voiceProposalChip, is as voiceProposalChipText, ni as voiceQualityRank, as as voiceReadbacksDue, zd as voiceSessionEscapeAction, xr as voiceSessionIdOf, fu as voiceSessionOwnsEscape, Yi as voiceSessionReducer, mi as voiceStageState, Di as voiceStatusParts, Oi as voiceStatusSuffix, Qi as voiceTranscriptFilename, Sr as voiceTurnsOnly, os as voiceWaitingProposals, ri as voicesForLocale, vn as waitForAssistantServiceReady, yn as waitForSandboxRunning, qm as warmState, hi as waveformIsActive, gi as waveformIsSettled, hr as withIncompleteTurnNotice, wt as withWriteModeAcknowledged, wl as writeActionResultEvents, bn as writeApprovalModeOf, xn as writeApprovalReuseMatches, Fd as writeAssistantOverlayFlag, Sn as writeExecutionOf, Tt as writeModeConsentCopy, Et as writeModeSendRefusal, Dt as writeModeSendRefusalReason, Uc as writeProposalArgumentValues, Ll as writeProposalBelongsTo, Wc as writeProposalConfirmState, Gc as writeProposalCountdownText, Zo as writeProposalErrorLine, Kc as writeProposalGatewayText, qc as writeProposalKindText, Jc as writeProposalRemainingMs, Yc as writeProposalRootFieldName, Xc as writeProposalSensitiveTexts, Rl as writeProposalSessionsToReopen, tl as writeProposalUsesDialog, Zc as writeProposalVariableValues, ss as writeProposalVoiceLine, cs as writeProposalVoiceReadback, zl as writeProposalsEnabledFor, Wl as writeReplyLiveState };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/fe-libs",
3
- "version": "2026.1001.5",
3
+ "version": "2026.1001.6",
4
4
  "description": "Burdenoff frontend primitives and domain libraries",
5
5
  "type": "module",
6
6
  "bin": {