@burdenoff/fe-libs 2026.1004.4 → 2026.1004.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.
Files changed (105) hide show
  1. package/dist/chrome/ContextSwitcher.d.ts.map +1 -1
  2. package/dist/chrome/ContextSwitcher.js +73 -50
  3. package/dist/chrome/GlobalSearch.d.ts.map +1 -1
  4. package/dist/chrome/GlobalSearch.js +76 -72
  5. package/dist/chrome/LanguageSwitcher.d.ts.map +1 -1
  6. package/dist/chrome/LanguageSwitcher.js +61 -40
  7. package/dist/chrome/NotificationCenter.d.ts.map +1 -1
  8. package/dist/chrome/NotificationCenter.js +71 -68
  9. package/dist/chrome/ProfileSwitcher.d.ts.map +1 -1
  10. package/dist/chrome/ProfileSwitcher.js +87 -81
  11. package/dist/chrome/SideNavigation.d.ts.map +1 -1
  12. package/dist/chrome/SideNavigation.js +120 -76
  13. package/dist/shared/assistant/appControls/copy.d.ts +12 -0
  14. package/dist/shared/assistant/appControls/copy.d.ts.map +1 -0
  15. package/dist/shared/assistant/appControls/copy.js +98 -0
  16. package/dist/shared/assistant/appControls/grammar.d.ts +102 -0
  17. package/dist/shared/assistant/appControls/grammar.d.ts.map +1 -0
  18. package/dist/shared/assistant/appControls/grammar.js +236 -0
  19. package/dist/shared/assistant/appControls/languages.d.ts +6 -0
  20. package/dist/shared/assistant/appControls/languages.d.ts.map +1 -0
  21. package/dist/shared/assistant/appControls/languages.js +52 -0
  22. package/dist/shared/assistant/appControls/names.d.ts +22 -0
  23. package/dist/shared/assistant/appControls/names.d.ts.map +1 -0
  24. package/dist/shared/assistant/appControls/names.js +29 -0
  25. package/dist/shared/assistant/appControls/pageAdapters.d.ts +59 -0
  26. package/dist/shared/assistant/appControls/pageAdapters.d.ts.map +1 -0
  27. package/dist/shared/assistant/appControls/pageAdapters.js +87 -0
  28. package/dist/shared/assistant/appControls/plan.d.ts +148 -0
  29. package/dist/shared/assistant/appControls/plan.d.ts.map +1 -0
  30. package/dist/shared/assistant/appControls/plan.js +511 -0
  31. package/dist/shared/assistant/appControls/registry.d.ts +9 -0
  32. package/dist/shared/assistant/appControls/registry.d.ts.map +1 -0
  33. package/dist/shared/assistant/appControls/registry.js +38 -0
  34. package/dist/shared/assistant/appControls/snapshot.d.ts +42 -0
  35. package/dist/shared/assistant/appControls/snapshot.d.ts.map +1 -0
  36. package/dist/shared/assistant/appControls/snapshot.js +40 -0
  37. package/dist/shared/assistant/appControls/text.d.ts +7 -0
  38. package/dist/shared/assistant/appControls/text.d.ts.map +1 -0
  39. package/dist/shared/assistant/appControls/text.js +6 -0
  40. package/dist/shared/assistant/appControls/types.d.ts +183 -0
  41. package/dist/shared/assistant/appControls/types.d.ts.map +1 -0
  42. package/dist/shared/assistant/appControls/types.js +25 -0
  43. package/dist/shared/assistant/appControls/useAssistantControl.d.ts +24 -0
  44. package/dist/shared/assistant/appControls/useAssistantControl.d.ts.map +1 -0
  45. package/dist/shared/assistant/appControls/useAssistantControl.js +13 -0
  46. package/dist/shared/assistant/conversation.d.ts +12 -1
  47. package/dist/shared/assistant/conversation.d.ts.map +1 -1
  48. package/dist/shared/assistant/history/historyMapping.d.ts.map +1 -1
  49. package/dist/shared/assistant/history/historyMapping.js +130 -114
  50. package/dist/shared/assistant/i18nManifest.d.ts +74 -0
  51. package/dist/shared/assistant/i18nManifest.d.ts.map +1 -1
  52. package/dist/shared/assistant/i18nManifest.js +86 -12
  53. package/dist/shared/assistant/index.d.ts +16 -0
  54. package/dist/shared/assistant/index.d.ts.map +1 -1
  55. package/dist/shared/assistant/localUiCommandCopy.d.ts +7 -0
  56. package/dist/shared/assistant/localUiCommandCopy.d.ts.map +1 -1
  57. package/dist/shared/assistant/localUiCommandCopy.js +1 -1
  58. package/dist/shared/assistant/localUiCommands.d.ts +16 -0
  59. package/dist/shared/assistant/localUiCommands.d.ts.map +1 -1
  60. package/dist/shared/assistant/localUiCommands.js +92 -84
  61. package/dist/shared/assistant/store.d.ts +10 -0
  62. package/dist/shared/assistant/store.d.ts.map +1 -1
  63. package/dist/shared/assistant/store.js +52 -44
  64. package/dist/shared/assistant/ui/AIAssistantPanel.d.ts.map +1 -1
  65. package/dist/shared/assistant/ui/AIAssistantPanel.js +57 -49
  66. package/dist/shared/assistant/ui/AssistantChatArea.d.ts.map +1 -1
  67. package/dist/shared/assistant/ui/AssistantChatArea.js +1085 -1016
  68. package/dist/shared/assistant/ui/AssistantControlConfirmDialog.d.ts +38 -0
  69. package/dist/shared/assistant/ui/AssistantControlConfirmDialog.d.ts.map +1 -0
  70. package/dist/shared/assistant/ui/AssistantControlConfirmDialog.js +65 -0
  71. package/dist/shared/assistant/ui/AssistantMoreMenu.d.ts.map +1 -1
  72. package/dist/shared/assistant/ui/AssistantMoreMenu.js +58 -56
  73. package/dist/shared/assistant/ui/AssistantSpeechProvider.d.ts.map +1 -1
  74. package/dist/shared/assistant/ui/AssistantSpeechProvider.js +106 -105
  75. package/dist/shared/assistant/ui/composer/AssistantVoiceGraceSelector.d.ts +20 -0
  76. package/dist/shared/assistant/ui/composer/AssistantVoiceGraceSelector.d.ts.map +1 -0
  77. package/dist/shared/assistant/ui/composer/AssistantVoiceGraceSelector.js +39 -0
  78. package/dist/shared/assistant/ui/controlConfirmDialog.d.ts +30 -0
  79. package/dist/shared/assistant/ui/controlConfirmDialog.d.ts.map +1 -0
  80. package/dist/shared/assistant/ui/controlConfirmDialog.js +46 -0
  81. package/dist/shared/assistant/ui/useVoiceSession.d.ts +35 -2
  82. package/dist/shared/assistant/ui/useVoiceSession.d.ts.map +1 -1
  83. package/dist/shared/assistant/ui/useVoiceSession.js +232 -171
  84. package/dist/shared/assistant/ui/voice/AssistantVoiceSession.d.ts +15 -1
  85. package/dist/shared/assistant/ui/voice/AssistantVoiceSession.d.ts.map +1 -1
  86. package/dist/shared/assistant/ui/voice/AssistantVoiceSession.js +173 -150
  87. package/dist/shared/assistant/voice/handsFree.d.ts +160 -0
  88. package/dist/shared/assistant/voice/handsFree.d.ts.map +1 -0
  89. package/dist/shared/assistant/voice/handsFree.js +104 -0
  90. package/dist/shared/assistant/voice/supersededTurns.d.ts +29 -0
  91. package/dist/shared/assistant/voice/supersededTurns.d.ts.map +1 -0
  92. package/dist/shared/assistant/voice/supersededTurns.js +17 -0
  93. package/dist/shared/assistant/voice/useVoiceInput.d.ts +7 -0
  94. package/dist/shared/assistant/voice/useVoiceInput.d.ts.map +1 -1
  95. package/dist/shared/assistant/voice/useVoiceInput.js +13 -10
  96. package/dist/shared/assistant/voice/voiceSession.d.ts +64 -20
  97. package/dist/shared/assistant/voice/voiceSession.d.ts.map +1 -1
  98. package/dist/shared/assistant/voice/voiceSession.js +120 -67
  99. package/dist/shared/components/KeyboardHelpDialogWrapper.d.ts.map +1 -1
  100. package/dist/shared/components/KeyboardHelpDialogWrapper.js +11 -9
  101. package/dist/shared/providers/shell/GlobalUiProvider.d.ts +2 -0
  102. package/dist/shared/providers/shell/GlobalUiProvider.d.ts.map +1 -1
  103. package/dist/shared/providers/shell/GlobalUiProvider.js +4 -1
  104. package/dist/shared-assistant.js +219 -203
  105. package/package.json +1 -1
@@ -1,4 +1,5 @@
1
1
  import { AssistantConversationProcessing, AssistantConversationStatus, AssistantMessageMetadata, AssistantSandboxRuntime, AssistantSandboxStatus, AssistantTurnStage, Conversation, ConversationRouting, ConversationSyncStamp, Message, MessageHistoryState } from './conversation';
2
+ import { VoiceGraceMs } from './voice/handsFree';
2
3
  import { AssistantMode } from './types';
3
4
  import { SandboxWriteCapabilities } from './writeProposals';
4
5
  interface AssistantState {
@@ -87,6 +88,13 @@ interface AssistantState {
87
88
  * falling back to the ranking rather than by trying to sync it.
88
89
  */
89
90
  preferredVoices: Record<string, string>;
91
+ /**
92
+ * H1: how long, in silence, a hands-free voice session waits before it sends
93
+ * what was said — 2 s (the default), 3 s or 5 s. Per profile, persisted. The
94
+ * ONE value the submit timer uses (`planSubmitTimer`); anything else found
95
+ * in storage reads back as the default (`resolveVoiceGraceMs`).
96
+ */
97
+ voiceGraceMs: VoiceGraceMs;
90
98
  /**
91
99
  * With no `mode`, a new conversation in whatever is SELECTED: Auto's while
92
100
  * Auto is (BOFF-7800), otherwise the mode the person picked — never
@@ -165,6 +173,8 @@ interface AssistantState {
165
173
  setReplyLanguage: (code: string | null) => void;
166
174
  /** `null` clears the pick for that language, restoring the ranked default. */
167
175
  setPreferredVoice: (languageCode: string, voiceName: string | null) => void;
176
+ /** Choose the voice session's end-of-speech grace (H1); other values are ignored. */
177
+ setVoiceGraceMs: (ms: number) => void;
168
178
  /**
169
179
  * Add a conversation read from the server (a header being opened). A
170
180
  * conversation already here is left exactly as it is: its local messages
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/store.ts"],"names":[],"mappings":"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"}
@@ -2,57 +2,59 @@ import { createProfileScopedStorage as e } from "../utils/profileScopedStorage.j
2
2
  import "../../shared-utils.js";
3
3
  import { restoreAutoRouting as t } from "./autoRouting.js";
4
4
  import { createGuardedAssistantStorage as n } from "./guardedStorage.js";
5
- import { normaliseHistoryTitle as r } from "./history/historyControls.js";
6
- import { getHistoryStamp as i, historyOpenFilter as a, notifyAssistantStorageFull as o, offerHistoryRename as s } from "./history/stampRegistry.js";
7
- import { forgetLiveTurns as c } from "./liveTurns.js";
8
- import { LEGACY_WRITE_CONSENT_KEY as l, restoreAcknowledgedWriteModes as u, withWriteModeAcknowledged as d } from "./writeModeConsent.js";
9
- import { create as f } from "zustand";
10
- import { persist as p } from "zustand/middleware";
5
+ import { DEFAULT_VOICE_GRACE_MS as r, resolveVoiceGraceMs as i } from "./voice/handsFree.js";
6
+ import { normaliseHistoryTitle as a } from "./history/historyControls.js";
7
+ import { getHistoryStamp as o, historyOpenFilter as s, notifyAssistantStorageFull as c, offerHistoryRename as l } from "./history/stampRegistry.js";
8
+ import { forgetLiveTurns as u } from "./liveTurns.js";
9
+ import { LEGACY_WRITE_CONSENT_KEY as d, restoreAcknowledgedWriteModes as f, withWriteModeAcknowledged as p } from "./writeModeConsent.js";
10
+ import { create as m } from "zustand";
11
+ import { persist as h } from "zustand/middleware";
11
12
  //#region src/shared/assistant/store.ts
12
- function m() {
13
+ function g() {
13
14
  return `${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
14
15
  }
15
- function h(e) {
16
+ function _(e) {
16
17
  let t = e.sandboxesByMode[e.mode]?.sandboxId;
17
18
  return t ? {
18
19
  sandboxId: t,
19
20
  mode: e.mode
20
21
  } : null;
21
22
  }
22
- var g = new Set([l, "sandboxWriteCapabilities"]);
23
- function _(e, n) {
24
- let r = typeof e == "object" && e ? Object.fromEntries(Object.entries(e).filter(([e]) => !g.has(e))) : {};
23
+ var v = new Set([d, "sandboxWriteCapabilities"]);
24
+ function y(e, n) {
25
+ let r = typeof e == "object" && e ? Object.fromEntries(Object.entries(e).filter(([e]) => !v.has(e))) : {};
25
26
  return {
26
27
  ...n,
27
28
  ...r,
28
- acknowledgedWriteModes: u(e),
29
- autoRouting: t(e)
29
+ acknowledgedWriteModes: f(e),
30
+ autoRouting: t(e),
31
+ voiceGraceMs: i(r.voiceGraceMs)
30
32
  };
31
33
  }
32
- function v(e, t, n) {
34
+ function b(e, t, n) {
33
35
  let r = new Set(t);
34
36
  n && e.activeConversationId !== null && r.delete(e.activeConversationId);
35
37
  let i = e.conversations.filter((e) => r.has(e.id));
36
38
  if (i.length === 0) return {};
37
- c(i.flatMap((e) => e.messages.map((e) => e.id)));
38
- let o = e.conversations.filter((e) => !r.has(e.id)), s = { ...e.processingByConversationId };
39
- for (let e of r) delete s[e];
39
+ u(i.flatMap((e) => e.messages.map((e) => e.id)));
40
+ let a = e.conversations.filter((e) => !r.has(e.id)), o = { ...e.processingByConversationId };
41
+ for (let e of r) delete o[e];
40
42
  if (e.activeConversationId === null || !r.has(e.activeConversationId)) return {
41
- conversations: o,
42
- processingByConversationId: s
43
+ conversations: a,
44
+ processingByConversationId: o
43
45
  };
44
- let l = o.find(a());
46
+ let c = a.find(s());
45
47
  return {
46
- conversations: o,
47
- processingByConversationId: s,
48
- activeConversationId: l?.id ?? null,
49
- ...l ? {
50
- mode: l.mode,
51
- autoRouting: l.routedBy === "auto"
48
+ conversations: a,
49
+ processingByConversationId: o,
50
+ activeConversationId: c?.id ?? null,
51
+ ...c ? {
52
+ mode: c.mode,
53
+ autoRouting: c.routedBy === "auto"
52
54
  } : {}
53
55
  };
54
56
  }
55
- var y = f()(p((e, t) => ({
57
+ var x = m()(h((e, t) => ({
56
58
  conversations: [],
57
59
  activeConversationId: null,
58
60
  mode: "assistant",
@@ -67,9 +69,10 @@ var y = f()(p((e, t) => ({
67
69
  assistantLanguage: null,
68
70
  replyLanguage: null,
69
71
  preferredVoices: {},
70
- createConversation: (n, r, a) => {
71
- let o = m(), s = (/* @__PURE__ */ new Date()).toISOString(), c = r === void 0 && t().autoRouting, l = a?.routedBy ?? (c ? "auto" : void 0), u = r ?? (c ? "assistant" : t().mode), d = i(), f = {
72
- id: o,
72
+ voiceGraceMs: r,
73
+ createConversation: (n, r, i) => {
74
+ let a = g(), s = (/* @__PURE__ */ new Date()).toISOString(), c = r === void 0 && t().autoRouting, l = i?.routedBy ?? (c ? "auto" : void 0), u = r ?? (c ? "assistant" : t().mode), d = o(), f = {
75
+ id: a,
73
76
  title: n || "New conversation",
74
77
  mode: u,
75
78
  messages: [],
@@ -85,11 +88,11 @@ var y = f()(p((e, t) => ({
85
88
  };
86
89
  return e((e) => ({
87
90
  conversations: [f, ...e.conversations],
88
- activeConversationId: o,
91
+ activeConversationId: a,
89
92
  conversationListOpen: !1,
90
93
  mode: u,
91
94
  autoRouting: l === "auto"
92
- })), o;
95
+ })), a;
93
96
  },
94
97
  deleteConversation: (t) => e((e) => {
95
98
  let n = e.conversations.filter((e) => e.id !== t), r = { ...e.processingByConversationId };
@@ -97,7 +100,7 @@ var y = f()(p((e, t) => ({
97
100
  conversations: n,
98
101
  processingByConversationId: r
99
102
  };
100
- let i = n.find(a());
103
+ let i = n.find(s());
101
104
  return {
102
105
  conversations: n,
103
106
  processingByConversationId: r,
@@ -109,10 +112,10 @@ var y = f()(p((e, t) => ({
109
112
  };
110
113
  }),
111
114
  renameConversation: (t, n) => {
112
- let i = r(n);
113
- i && (s(t, i) || e((e) => ({ conversations: e.conversations.map((e) => e.id === t ? {
115
+ let r = a(n);
116
+ r && (l(t, r) || e((e) => ({ conversations: e.conversations.map((e) => e.id === t ? {
114
117
  ...e,
115
- title: i,
118
+ title: r,
116
119
  updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
117
120
  ...e.sync ? { sync: {
118
121
  ...e.sync,
@@ -272,17 +275,21 @@ var y = f()(p((e, t) => ({
272
275
  autoSpeakEnabled: !1,
273
276
  assistantLanguage: null,
274
277
  replyLanguage: null,
275
- preferredVoices: {}
278
+ preferredVoices: {},
279
+ voiceGraceMs: r
276
280
  }),
277
281
  submitPrompt: (t) => e({ pendingPrompt: t }),
278
282
  consumePendingPrompt: () => {
279
283
  let n = t().pendingPrompt;
280
284
  return n !== null && e({ pendingPrompt: null }), n;
281
285
  },
282
- acknowledgeWriteMode: (t) => e((e) => ({ acknowledgedWriteModes: d(e.acknowledgedWriteModes, t) })),
286
+ acknowledgeWriteMode: (t) => e((e) => ({ acknowledgedWriteModes: p(e.acknowledgedWriteModes, t) })),
283
287
  setAutoSpeak: (t) => e({ autoSpeakEnabled: t }),
284
288
  setAssistantLanguage: (t) => e({ assistantLanguage: t }),
285
289
  setReplyLanguage: (t) => e({ replyLanguage: t }),
290
+ setVoiceGraceMs: (t) => {
291
+ i(t) === t && e({ voiceGraceMs: i(t) });
292
+ },
286
293
  setPreferredVoice: (t, n) => e((e) => {
287
294
  let r = { ...e.preferredVoices };
288
295
  return n === null ? delete r[t] : r[t] = n, { preferredVoices: r };
@@ -320,11 +327,11 @@ var y = f()(p((e, t) => ({
320
327
  ...a && !i.titleLocked ? { title: a } : {}
321
328
  };
322
329
  }) })),
323
- removeConversationsSilently: (t) => e((e) => v(e, t, !1)),
324
- evictConversations: (t) => e((e) => v(e, t, !0))
330
+ removeConversationsSilently: (t) => e((e) => b(e, t, !1)),
331
+ evictConversations: (t) => e((e) => b(e, t, !0))
325
332
  }), {
326
333
  name: "hb-ai-assistant",
327
- storage: n(e(), (e, t, n) => o(n)),
334
+ storage: n(e(), (e, t, n) => c(n)),
328
335
  partialize: (e) => ({
329
336
  conversations: e.conversations.map(({ ...e }) => e),
330
337
  activeConversationId: e.activeConversationId,
@@ -335,9 +342,10 @@ var y = f()(p((e, t) => ({
335
342
  autoSpeakEnabled: e.autoSpeakEnabled,
336
343
  assistantLanguage: e.assistantLanguage,
337
344
  replyLanguage: e.replyLanguage,
338
- preferredVoices: e.preferredVoices
345
+ preferredVoices: e.preferredVoices,
346
+ voiceGraceMs: e.voiceGraceMs
339
347
  }),
340
- merge: _
348
+ merge: y
341
349
  }));
342
350
  //#endregion
343
- export { _ as mergePersistedAssistantState, h as resolveActiveModeSandbox, y as useAssistantStore };
351
+ export { y as mergePersistedAssistantState, _ as resolveActiveModeSandbox, x as useAssistantStore };
@@ -1 +1 @@
1
- {"version":3,"file":"AIAssistantPanel.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AIAssistantPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAU,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIvE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,6BAA6B,CAAC;AAmBrC,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,kBAAkB,CAAC;AAK1B,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG;IAC/C,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAgQtD,CAAC"}
1
+ {"version":3,"file":"AIAssistantPanel.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AIAssistantPanel.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAmB,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIvE,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,6BAA6B,CAAC;AAsBrC,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,kBAAkB,CAAC;AAK1B,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG;IAC/C,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;IACnC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B;;;;;;;;;OASG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAoStD,CAAC"}
@@ -1,52 +1,60 @@
1
1
  import { useReturnFocus as e } from "../../hooks/useReturnFocus.js";
2
- import { useAssistantPageLabel as t } from "../product.js";
3
- import { useAssistantTr as n } from "../i18n.js";
4
- import { AssistantNavigateProvider as r } from "./AssistantMarkdownRenderer.js";
5
- import { useAssistantStore as i } from "../store.js";
6
- import { AssistantSpeechProvider as a } from "./AssistantSpeechProvider.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
- import { panelOwnedPreviewBridge as h, useHostedAssistantPreviewBridge as g } from "../preview/bridgeHostContext.js";
13
- import { AssistantPreviewOverlay as _ } from "../preview/AssistantPreviewOverlay.js";
14
- import { AssistantHeader as v } from "./AssistantHeader.js";
15
- import { AssistantConversationList as y } from "./AssistantConversationList.js";
16
- import { AssistantConversationDeleteDialogProvider as b } from "./conversationDeleteDialog.js";
17
- import { useAssistantServerHistory as x } from "../history/useAssistantServerHistory.js";
18
- import { useFilesServiceWarmup as S } from "../../../storage/warmFilesService.js";
19
- import { useAssistantHeartbeat as C } from "../useAssistantHeartbeat.js";
20
- import { useAssistantKeyboardShortcuts as w } from "../useAssistantKeyboardShortcuts.js";
21
- import { AssistantChatArea as T } from "./AssistantChatArea.js";
22
- import { useRef as E, useState as D } from "react";
2
+ import { useAssistantControl as t } from "../appControls/useAssistantControl.js";
3
+ import { useAssistantPageLabel as n } from "../product.js";
4
+ import { useAssistantTr as r } from "../i18n.js";
5
+ import { AssistantNavigateProvider as i } from "./AssistantMarkdownRenderer.js";
6
+ import { useAssistantStore as a } from "../store.js";
7
+ import { AssistantSpeechProvider as o } from "./AssistantSpeechProvider.js";
8
+ import { AssistantPreviewProvider as s } from "../preview/context.js";
9
+ import { useAssistantPreviewBridge as c } from "../preview/useAssistantPreviewBridge.js";
10
+ import { AssistantConnectSourceProvider as l } from "./composer/connectSource.js";
11
+ import { ASSISTANT_OVERLAY_ATTR as u, ASSISTANT_PANEL_ATTR as d, activePanelOverlay as f, escapeDismisses as p, nextPanelOverlays as m } from "./panelOverlays.js";
12
+ import { hasAssistantPreviewSurface as h } from "../preview/types.js";
13
+ import { panelOwnedPreviewBridge as g, useHostedAssistantPreviewBridge as ee } from "../preview/bridgeHostContext.js";
14
+ import { AssistantPreviewOverlay as te } from "../preview/AssistantPreviewOverlay.js";
15
+ import { AssistantHeader as ne } from "./AssistantHeader.js";
16
+ import { AssistantConversationList as _ } from "./AssistantConversationList.js";
17
+ import { AssistantConversationDeleteDialogProvider as v } from "./conversationDeleteDialog.js";
18
+ import { AssistantControlConfirmProvider as y } from "./controlConfirmDialog.js";
19
+ import { useAssistantServerHistory as b } from "../history/useAssistantServerHistory.js";
20
+ import { useFilesServiceWarmup as x } from "../../../storage/warmFilesService.js";
21
+ import { useAssistantHeartbeat as S } from "../useAssistantHeartbeat.js";
22
+ import { useAssistantKeyboardShortcuts as C } from "../useAssistantKeyboardShortcuts.js";
23
+ import { AssistantChatArea as w } from "./AssistantChatArea.js";
24
+ import { useMemo as T, useRef as E, useState as D } from "react";
23
25
  import { jsx as O, jsxs as k } from "react/jsx-runtime";
24
26
  //#region src/shared/assistant/ui/AIAssistantPanel.tsx
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
- let z = n();
27
- x(R);
28
- let [B, V] = D(!1), H = m(L);
27
+ var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: P, onNavigate: F, connectSourceHref: re, onConnectSource: I, preview: L, serverHistory: R = !1 }) => {
28
+ let z = r();
29
+ b(R);
30
+ let [B, V] = D(!1), H = h(L);
29
31
  B && !H && V(!1);
30
32
  let U = B && H;
31
- s(h(L, g()));
33
+ c(g(L, ee()));
32
34
  let W = E(null);
33
35
  e(W);
34
- let { conversations: G, activeConversationId: K, conversationListOpen: q, setConversationListOpen: J, createConversation: Y } = i(), X = q || U, Z = d({
36
+ let { conversations: G, activeConversationId: K, conversationListOpen: q, setConversationListOpen: J, createConversation: Y } = a(), X = q || U, Z = f({
35
37
  historyOpen: q,
36
38
  previewOpen: U
37
39
  }), Q = (e) => {
38
- let t = p({
40
+ let t = m({
39
41
  historyOpen: q,
40
42
  previewOpen: U
41
43
  }, e);
42
44
  J(t.historyOpen), V(t.previewOpen);
43
- }, $ = G.find((e) => e.id === K);
44
- C($?.backendSessionId ?? null, $?.mode ?? null, j ?? !0), S(j ?? !0);
45
- let te = t(j !== !1);
46
- return w({
45
+ };
46
+ t("assistant.history", T(() => ({ run: () => q ? { status: "already" } : (J(!0), V(!1), { status: "done" }) }), [q, J])), t("assistant.preview", T(() => H ? { run: () => U ? { status: "already" } : (J(!1), V(!0), { status: "done" }) } : null, [
47
+ H,
48
+ U,
49
+ J
50
+ ]));
51
+ let $ = G.find((e) => e.id === K);
52
+ S($?.backendSessionId ?? null, $?.mode ?? null, j ?? !0), x(j ?? !0);
53
+ let ie = n(j !== !1);
54
+ return C({
47
55
  panelRef: W,
48
56
  onClose: () => {
49
- if (f({
57
+ if (p({
50
58
  historyOpen: q,
51
59
  previewOpen: U
52
60
  }) === "overlay") {
@@ -55,30 +63,30 @@ var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: ee,
55
63
  }
56
64
  A();
57
65
  }
58
- }), /* @__PURE__ */ O(a, {
66
+ }), /* @__PURE__ */ O(o, {
59
67
  visible: j ?? !0,
60
- children: /* @__PURE__ */ O(o, {
68
+ children: /* @__PURE__ */ O(s, {
61
69
  value: L,
62
- children: /* @__PURE__ */ O(r, {
63
- value: P,
64
- children: /* @__PURE__ */ O(c, {
65
- value: F,
70
+ children: /* @__PURE__ */ O(i, {
71
+ value: F,
72
+ children: /* @__PURE__ */ O(l, {
73
+ value: re,
66
74
  onOpen: I,
67
- children: /* @__PURE__ */ O(b, { children: /* @__PURE__ */ k("div", {
75
+ children: /* @__PURE__ */ O(v, { children: /* @__PURE__ */ O(y, { children: /* @__PURE__ */ k("div", {
68
76
  ref: W,
69
77
  className: "relative flex h-full w-full flex-col bg-bg-surface",
70
78
  role: "complementary",
71
79
  "aria-label": z("panel.ariaLabel", "AI Assistant"),
72
80
  "data-testid": "ai-assistant-panel",
73
- [u]: "",
74
- ...Z ? { [l]: Z } : {},
81
+ [d]: "",
82
+ ...Z ? { [u]: Z } : {},
75
83
  tabIndex: -1,
76
84
  children: [
77
85
  /* @__PURE__ */ O("div", {
78
86
  className: "contents",
79
87
  inert: X || void 0,
80
- children: /* @__PURE__ */ O(v, {
81
- contextLabel: te,
88
+ children: /* @__PURE__ */ O(ne, {
89
+ contextLabel: ie,
82
90
  onNewConversation: () => Y(),
83
91
  onOpenHistory: () => Q("history"),
84
92
  historyOpen: q,
@@ -89,18 +97,18 @@ var A = ({ onClose: A, visible: j, docked: M, onToggleDock: N, writeAccess: ee,
89
97
  onToggleDock: N
90
98
  })
91
99
  }),
92
- q && /* @__PURE__ */ O(y, {}),
93
- U && /* @__PURE__ */ O(_, { onClose: () => V(!1) }),
100
+ q && /* @__PURE__ */ O(_, {}),
101
+ U && /* @__PURE__ */ O(te, { onClose: () => V(!1) }),
94
102
  /* @__PURE__ */ O("div", {
95
103
  className: "contents",
96
104
  inert: X || void 0,
97
- children: /* @__PURE__ */ O(T, {
105
+ children: /* @__PURE__ */ O(w, {
98
106
  visible: j ?? !0,
99
- writeAccess: ee
107
+ writeAccess: P
100
108
  })
101
109
  })
102
110
  ]
103
- }) })
111
+ }) }) })
104
112
  })
105
113
  })
106
114
  })
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantChatArea.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AAgPf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AA+JvE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAyiLxD,CAAC"}
1
+ {"version":3,"file":"AssistantChatArea.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantChatArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AAiQf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAqKvE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;OAYG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAC;CACpC;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAmvLxD,CAAC"}