@burdenoff/fe-libs 2026.1001.6 → 2026.1002.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/shared/assistant/createSandboxAssistantTransport.d.ts.map +1 -1
  2. package/dist/shared/assistant/createSandboxAssistantTransport.js +79 -74
  3. package/dist/shared/assistant/gatewayClient.d.ts +6 -0
  4. package/dist/shared/assistant/gatewayClient.d.ts.map +1 -1
  5. package/dist/shared/assistant/gatewayClient.js +1 -0
  6. package/dist/shared/assistant/history/historyApi.d.ts +12 -0
  7. package/dist/shared/assistant/history/historyApi.d.ts.map +1 -1
  8. package/dist/shared/assistant/history/historyApi.js +62 -46
  9. package/dist/shared/assistant/history/historyControls.d.ts +7 -0
  10. package/dist/shared/assistant/history/historyControls.d.ts.map +1 -1
  11. package/dist/shared/assistant/history/historyControls.js +19 -16
  12. package/dist/shared/assistant/history/historyEngine.d.ts +17 -1
  13. package/dist/shared/assistant/history/historyEngine.d.ts.map +1 -1
  14. package/dist/shared/assistant/history/historyEngine.js +507 -467
  15. package/dist/shared/assistant/history/historyList.d.ts +15 -0
  16. package/dist/shared/assistant/history/historyList.d.ts.map +1 -1
  17. package/dist/shared/assistant/history/historyList.js +37 -38
  18. package/dist/shared/assistant/history/historyOperations.d.ts +35 -3
  19. package/dist/shared/assistant/history/historyOperations.d.ts.map +1 -1
  20. package/dist/shared/assistant/history/historyOperations.js +64 -27
  21. package/dist/shared/assistant/history/historySearch.d.ts +110 -0
  22. package/dist/shared/assistant/history/historySearch.d.ts.map +1 -0
  23. package/dist/shared/assistant/history/historySearch.js +226 -0
  24. package/dist/shared/assistant/history/historySearchQuery.d.ts +50 -0
  25. package/dist/shared/assistant/history/historySearchQuery.d.ts.map +1 -0
  26. package/dist/shared/assistant/history/historySearchQuery.js +23 -0
  27. package/dist/shared/assistant/history/historyTransportErrors.d.ts +17 -0
  28. package/dist/shared/assistant/history/historyTransportErrors.d.ts.map +1 -1
  29. package/dist/shared/assistant/history/historyTransportErrors.js +9 -1
  30. package/dist/shared/assistant/history/historyTypes.d.ts +32 -0
  31. package/dist/shared/assistant/history/historyTypes.d.ts.map +1 -1
  32. package/dist/shared/assistant/history/useAssistantHistorySearch.d.ts +32 -0
  33. package/dist/shared/assistant/history/useAssistantHistorySearch.d.ts.map +1 -0
  34. package/dist/shared/assistant/history/useAssistantHistorySearch.js +34 -0
  35. package/dist/shared/assistant/i18nManifest.d.ts +21 -5
  36. package/dist/shared/assistant/i18nManifest.d.ts.map +1 -1
  37. package/dist/shared/assistant/i18nManifest.js +16 -7
  38. package/dist/shared/assistant/index.d.ts +4 -0
  39. package/dist/shared/assistant/index.d.ts.map +1 -1
  40. package/dist/shared/assistant/turnOutcome.d.ts.map +1 -1
  41. package/dist/shared/assistant/turnOutcome.js +3 -3
  42. package/dist/shared/assistant/turnOutcomeCopy.d.ts +3 -3
  43. package/dist/shared/assistant/turnOutcomeCopy.d.ts.map +1 -1
  44. package/dist/shared/assistant/turnOutcomeCopy.js +3 -3
  45. package/dist/shared/assistant/ui/AssistantConversationFilters.d.ts +5 -1
  46. package/dist/shared/assistant/ui/AssistantConversationFilters.d.ts.map +1 -1
  47. package/dist/shared/assistant/ui/AssistantConversationFilters.js +81 -74
  48. package/dist/shared/assistant/ui/AssistantConversationList.d.ts +9 -0
  49. package/dist/shared/assistant/ui/AssistantConversationList.d.ts.map +1 -1
  50. package/dist/shared/assistant/ui/AssistantConversationList.js +316 -242
  51. package/dist/shared/assistant/ui/AssistantHistorySearchBox.d.ts +12 -0
  52. package/dist/shared/assistant/ui/AssistantHistorySearchBox.d.ts.map +1 -0
  53. package/dist/shared/assistant/ui/AssistantHistorySearchBox.js +74 -0
  54. package/dist/shared-assistant.js +175 -171
  55. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"turnOutcome.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnOutcome.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAO1C,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,4DAA4D;AAC5D,MAAM,MAAM,iBAAiB,GACzB,oBAAoB,GACpB,qBAAqB,GACrB,kBAAkB,GAClB,iBAAiB,GACjB,qBAAqB,GAErB,qBAAqB,GACrB,oBAAoB,CAAC;AAEzB;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;gBAEvB,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM;CAKvD;AAED,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,CAAC;AAEhB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,6BAA6B;IAC7B,IAAI,EAAE,iBAAiB,CAAC;IACxB,oFAAoF;IACpF,aAAa,EAAE,OAAO,CAAC;IACvB,sDAAsD;IACtD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uFAAuF;IACvF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA0DD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,EACJ,YAAY,GACb,EAAE;IACD,qCAAqC;IACrC,IAAI,EAAE,aAAa,CAAC;IACpB,sEAAsE;IACtE,YAAY,EAAE,wBAAwB,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3D,GAAG,OAAO,CAMV;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO;AACd;;;;GAIG;AACH,OAAO,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3C,WAAW,CAkEb;AAQD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,MAAM,GAAG,IAAI,CAQf;AAmBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,EACpB,EAAE,EAAE,WAAW;AACf;;;;GAIG;AACH,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CA8CzD"}
1
+ {"version":3,"file":"turnOutcome.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnOutcome.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAO1C,OAAO,EAAqB,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAEjE,4DAA4D;AAC5D,MAAM,MAAM,iBAAiB,GACzB,oBAAoB,GACpB,qBAAqB,GACrB,kBAAkB,GAClB,iBAAiB,GACjB,qBAAqB,GAErB,qBAAqB,GACrB,oBAAoB,CAAC;AAEzB;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;gBAEvB,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM;CAKvD;AAED,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,YAAY,GACZ,cAAc,GACd,WAAW,CAAC;AAEhB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,6BAA6B;IAC7B,IAAI,EAAE,iBAAiB,CAAC;IACxB,oFAAoF;IACpF,aAAa,EAAE,OAAO,CAAC;IACvB,sDAAsD;IACtD,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,uFAAuF;IACvF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA0DD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,EACJ,YAAY,GACb,EAAE;IACD,qCAAqC;IACrC,IAAI,EAAE,aAAa,CAAC;IACpB,sEAAsE;IACtE,YAAY,EAAE,wBAAwB,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3D,GAAG,OAAO,CAMV;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO;AACd;;;;GAIG;AACH,OAAO,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,GAC3C,WAAW,CAqEb;AAQD;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,MAAM,GAAG,IAAI,CAQf;AAmBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,EACpB,EAAE,EAAE,WAAW;AACf;;;;GAIG;AACH,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAChC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CA4CzD"}
@@ -42,7 +42,7 @@ function c(e) {
42
42
  return e === null ? null : Number.isFinite(Date.parse(e)) ? e : null;
43
43
  }
44
44
  function l(e, t) {
45
- if (!t) return "usageDailyLimitReachedNoTime";
45
+ if (!t) return "usageDailyLimitReachedUnknownTime";
46
46
  switch (e) {
47
47
  case "assistant.llm.actor_daily": return "usageDailyLimitReached";
48
48
  case "assistant.llm.workspace_daily": return "usageDailyLimitReachedWorkspace";
@@ -130,9 +130,9 @@ function g(e, t) {
130
130
  return t ? e.replace(/\{\{(\w+)\}\}/g, (e, n) => t[n] ?? e) : e;
131
131
  }
132
132
  function _(e, t, n = {}) {
133
- let i = e.resetsAt ? m(e.resetsAt, n.locale) : null, a = e.resetsAt ? m(e.resetsAt, h(n.locale)) : null, o = r[i === null && r[e.copy].fallback.includes("{{time}}") ? "usageDailyLimitReachedNoTime" : e.copy], s = i === null ? void 0 : { time: i }, c = t(o.key, o.fallback, s), l = g(o.fallback, a === null ? void 0 : { time: a }), u = r.reference, d = e.traceId ? u.fallback.replace("{{id}}", e.traceId) : null, f = e.traceId ? t(u.key, u.fallback, { id: e.traceId }) : null, p = c !== g(o.fallback, s) && (f === null || f !== d), _ = p ? c : l, v = p ? f : d, y = [e.quotaName, v].filter((e) => !!e);
133
+ let i = e.resetsAt ? m(e.resetsAt, n.locale) : null, a = e.resetsAt ? m(e.resetsAt, h(n.locale)) : null, o = r[i === null && r[e.copy].fallback.includes("{{time}}") ? "usageDailyLimitReachedUnknownTime" : e.copy], s = i === null ? void 0 : { time: i }, c = t(o.key, o.fallback, s), l = g(o.fallback, a === null ? void 0 : { time: a }), u = r.reference, d = e.traceId ? u.fallback.replace("{{id}}", e.traceId) : null, f = e.traceId ? t(u.key, u.fallback, { id: e.traceId }) : null, p = c !== g(o.fallback, s) && (f === null || f !== d), _ = p ? c : l, v = p ? f : d;
134
134
  return {
135
- text: y.length ? `${_}\n\n${y.join(" · ")}` : _,
135
+ text: v ? `${_}\n\n${v}` : _,
136
136
  headline: _,
137
137
  translated: p
138
138
  };
@@ -51,9 +51,9 @@ export declare const TURN_OUTCOME_COPY: {
51
51
  readonly key: "outcome.usageDailyLimitReachedPlatform";
52
52
  readonly fallback: "The AI assistant has reached today's usage limit. It resets at {{time}}.";
53
53
  };
54
- readonly usageDailyLimitReachedNoTime: {
55
- readonly key: "outcome.usageDailyLimitReachedNoTime";
56
- readonly fallback: "You've reached today's AI assistant limit. Try again tomorrow.";
54
+ readonly usageDailyLimitReachedUnknownTime: {
55
+ readonly key: "outcome.usageDailyLimitReachedUnknownTime";
56
+ readonly fallback: "The AI assistant has reached a daily usage limit. Try again later.";
57
57
  };
58
58
  readonly permissionDenied: {
59
59
  readonly key: "outcome.permissionDenied";
@@ -1 +1 @@
1
- {"version":3,"file":"turnOutcomeCopy.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnOutcomeCopy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkIwC,CAAC;AAEvE,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,iBAAiB,CAAC"}
1
+ {"version":3,"file":"turnOutcomeCopy.d.ts","sourceRoot":"","sources":["../../../src/shared/assistant/turnOutcomeCopy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoIwC,CAAC;AAEvE,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,iBAAiB,CAAC"}
@@ -28,9 +28,9 @@ var e = {
28
28
  key: "outcome.usageDailyLimitReachedPlatform",
29
29
  fallback: "The AI assistant has reached today's usage limit. It resets at {{time}}."
30
30
  },
31
- usageDailyLimitReachedNoTime: {
32
- key: "outcome.usageDailyLimitReachedNoTime",
33
- fallback: "You've reached today's AI assistant limit. Try again tomorrow."
31
+ usageDailyLimitReachedUnknownTime: {
32
+ key: "outcome.usageDailyLimitReachedUnknownTime",
33
+ fallback: "The AI assistant has reached a daily usage limit. Try again later."
34
34
  },
35
35
  permissionDenied: {
36
36
  key: "outcome.permissionDenied",
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
1
+ import { FC, ReactNode } from 'react';
2
2
  import { AssistantHistoryConversationFilter } from '../history/historyTypes';
3
3
  export interface AssistantConversationFiltersProps {
4
4
  filter: Readonly<AssistantHistoryConversationFilter>;
@@ -7,6 +7,10 @@ export interface AssistantConversationFiltersProps {
7
7
  count: number;
8
8
  /** A filter was changed since History opened: the status line speaks. */
9
9
  announce: boolean;
10
+ /** The search box (BOFF-8159 S9), shown above the chips. */
11
+ search?: ReactNode;
12
+ /** While a search runs: what the status line says instead of the filter's count. */
13
+ statusText?: string;
10
14
  }
11
15
  export declare const AssistantConversationFilters: FC<AssistantConversationFiltersProps>;
12
16
  //# sourceMappingURL=AssistantConversationFilters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantConversationFilters.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantConversationFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAEV,kCAAkC,EACnC,MAAM,yBAAyB,CAAC;AA+BjC,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,kCAAkC,KAAK,IAAI,CAAC;IAC7D,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,4BAA4B,EAAE,EAAE,CAAC,iCAAiC,CAwG9E,CAAC"}
1
+ {"version":3,"file":"AssistantConversationFilters.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantConversationFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvD,OAAO,KAAK,EAEV,kCAAkC,EACnC,MAAM,yBAAyB,CAAC;AAoCjC,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,QAAQ,CAAC,kCAAkC,CAAC,CAAC;IACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,kCAAkC,KAAK,IAAI,CAAC;IAC7D,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,QAAQ,EAAE,OAAO,CAAC;IAClB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,4BAA4B,EAAE,EAAE,CAAC,iCAAiC,CA8G9E,CAAC"}
@@ -7,85 +7,92 @@ var o = [
7
7
  "ANY",
8
8
  "CHAT",
9
9
  "VOICE"
10
- ], s = "bg-action-primary-bg text-action-primary-text shadow-sm", c = "text-text-secondary hover:bg-bg-surface hover:text-text-primary", l = "focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-1 focus-visible:outline-[var(--color-focus-ring)]", u = ({ filter: u, onChange: d, count: f, announce: p }) => {
11
- let m = e(), h = t(), g = u.channel ?? "ANY", _ = u.pinned === !0, v = u.archived === "ONLY", y = (e) => e === "CHAT" ? m("conversationFilters.chat", "Chat") : e === "VOICE" ? m("conversationFilters.voice", "Voice") : m("conversationFilters.all", "All"), b = p ? f === 0 ? m("conversationFilters.none", "No conversations match") : f === 1 ? m("conversationFilters.countOne", "1 conversation") : m("conversationFilters.count", "{{count}} conversations", { count: f }) : "";
10
+ ], s = "bg-action-primary-bg text-action-primary-text shadow-sm", c = "text-text-secondary hover:bg-bg-surface hover:text-text-primary", l = "focus-visible:outline-2 focus-visible:outline-solid focus-visible:outline-offset-1 focus-visible:outline-[var(--color-focus-ring)]", u = ({ filter: u, onChange: d, count: f, announce: p, search: m, statusText: h }) => {
11
+ let g = e(), _ = t(), v = u.channel ?? "ANY", y = u.pinned === !0, b = u.archived === "ONLY", x = (e) => e === "CHAT" ? g("conversationFilters.chat", "Chat") : e === "VOICE" ? g("conversationFilters.voice", "Voice") : g("conversationFilters.all", "All"), S = h === void 0 ? p ? f === 0 ? g("conversationFilters.none", "No conversations match") : f === 1 ? g("conversationFilters.countOne", "1 conversation") : g("conversationFilters.count", "{{count}} conversations", { count: f }) : "" : h;
12
12
  return /* @__PURE__ */ a("div", {
13
13
  className: "border-b border-border-default px-3 pt-2",
14
14
  "data-testid": "history-filters",
15
- children: [/* @__PURE__ */ a("div", {
16
- className: "flex flex-wrap items-center gap-1.5",
17
- children: [
18
- /* @__PURE__ */ a("fieldset", {
19
- className: "m-0 min-w-0 border-0 p-0",
20
- children: [/* @__PURE__ */ i("legend", {
21
- className: "sr-only",
22
- children: m("conversationFilters.legend", "Show")
23
- }), /* @__PURE__ */ i("div", {
24
- className: "inline-flex flex-wrap items-center gap-0.5 rounded-full border border-border-default bg-bg-elevated p-0.5",
25
- children: o.map((e) => {
26
- let t = g === e;
27
- return /* @__PURE__ */ a("label", {
28
- className: `flex min-h-7 cursor-pointer items-center rounded-full px-2.5 text-[11px] font-medium transition-colors has-[:focus-visible]:outline-2 has-[:focus-visible]:outline-solid has-[:focus-visible]:outline-offset-1 has-[:focus-visible]:outline-[var(--color-focus-ring)] ${t ? s : c}`,
29
- "data-testid": `history-filter-channel-${e.toLowerCase()}`,
30
- children: [/* @__PURE__ */ i("input", {
31
- type: "radio",
32
- name: h,
33
- value: e,
34
- checked: t,
35
- onChange: () => d({
36
- ...u,
37
- channel: e
38
- }),
39
- className: "sr-only"
40
- }), y(e)]
41
- }, e);
42
- })
43
- })]
44
- }),
45
- /* @__PURE__ */ a("button", {
46
- type: "button",
47
- "aria-pressed": _,
48
- onClick: () => d(_ ? {
49
- ...u,
50
- pinned: null
51
- } : {
52
- ...u,
53
- pinned: !0,
54
- archived: "EXCLUDE"
15
+ children: [
16
+ m ? /* @__PURE__ */ i("div", {
17
+ className: "pb-1.5",
18
+ children: m
19
+ }) : null,
20
+ /* @__PURE__ */ a("div", {
21
+ className: "flex flex-wrap items-center gap-1.5",
22
+ children: [
23
+ /* @__PURE__ */ a("fieldset", {
24
+ className: "m-0 min-w-0 border-0 p-0",
25
+ children: [/* @__PURE__ */ i("legend", {
26
+ className: "sr-only",
27
+ children: g("conversationFilters.legend", "Show")
28
+ }), /* @__PURE__ */ i("div", {
29
+ className: "inline-flex flex-wrap items-center gap-0.5 rounded-full border border-border-default bg-bg-elevated p-0.5",
30
+ children: o.map((e) => {
31
+ let t = v === e;
32
+ return /* @__PURE__ */ a("label", {
33
+ className: `flex min-h-7 cursor-pointer items-center rounded-full px-2.5 text-[11px] font-medium transition-colors has-[:focus-visible]:outline-2 has-[:focus-visible]:outline-solid has-[:focus-visible]:outline-offset-1 has-[:focus-visible]:outline-[var(--color-focus-ring)] ${t ? s : c}`,
34
+ "data-testid": `history-filter-channel-${e.toLowerCase()}`,
35
+ children: [/* @__PURE__ */ i("input", {
36
+ type: "radio",
37
+ name: _,
38
+ value: e,
39
+ checked: t,
40
+ onChange: () => d({
41
+ ...u,
42
+ channel: e
43
+ }),
44
+ className: "sr-only"
45
+ }), x(e)]
46
+ }, e);
47
+ })
48
+ })]
55
49
  }),
56
- className: `inline-flex min-h-7 items-center gap-1 rounded-full border px-2.5 text-[11px] font-medium transition-colors focus:outline-none ${l} ${_ ? `border-action-primary-bg ${s}` : `border-border-default ${c}`}`,
57
- "data-testid": "history-filter-pinned",
58
- children: [/* @__PURE__ */ i(r, {
59
- className: "size-3",
60
- "aria-hidden": "true"
61
- }), m("conversationFilters.pinned", "Pinned")]
62
- }),
63
- /* @__PURE__ */ a("button", {
64
- type: "button",
65
- "aria-pressed": v,
66
- onClick: () => d(v ? {
67
- ...u,
68
- archived: "EXCLUDE"
69
- } : {
70
- ...u,
71
- archived: "ONLY",
72
- pinned: null
50
+ /* @__PURE__ */ a("button", {
51
+ type: "button",
52
+ "aria-pressed": y,
53
+ onClick: () => d(y ? {
54
+ ...u,
55
+ pinned: null
56
+ } : {
57
+ ...u,
58
+ pinned: !0,
59
+ archived: "EXCLUDE"
60
+ }),
61
+ className: `inline-flex min-h-7 items-center gap-1 rounded-full border px-2.5 text-[11px] font-medium transition-colors focus:outline-none ${l} ${y ? `border-action-primary-bg ${s}` : `border-border-default ${c}`}`,
62
+ "data-testid": "history-filter-pinned",
63
+ children: [/* @__PURE__ */ i(r, {
64
+ className: "size-3",
65
+ "aria-hidden": "true"
66
+ }), g("conversationFilters.pinned", "Pinned")]
73
67
  }),
74
- className: `inline-flex min-h-7 items-center gap-1 rounded-full border px-2.5 text-[11px] font-medium transition-colors focus:outline-none ${l} ${v ? `border-action-primary-bg ${s}` : `border-border-default ${c}`}`,
75
- "data-testid": "history-filter-archived",
76
- children: [/* @__PURE__ */ i(n, {
77
- className: "size-3",
78
- "aria-hidden": "true"
79
- }), m("conversationFilters.archived", "Archived")]
80
- })
81
- ]
82
- }), /* @__PURE__ */ i("p", {
83
- role: "status",
84
- "aria-live": "polite",
85
- className: "h-5 truncate text-[10px] leading-5 text-text-muted",
86
- "data-testid": "history-filter-status",
87
- children: b
88
- })]
68
+ /* @__PURE__ */ a("button", {
69
+ type: "button",
70
+ "aria-pressed": b,
71
+ onClick: () => d(b ? {
72
+ ...u,
73
+ archived: "EXCLUDE"
74
+ } : {
75
+ ...u,
76
+ archived: "ONLY",
77
+ pinned: null
78
+ }),
79
+ className: `inline-flex min-h-7 items-center gap-1 rounded-full border px-2.5 text-[11px] font-medium transition-colors focus:outline-none ${l} ${b ? `border-action-primary-bg ${s}` : `border-border-default ${c}`}`,
80
+ "data-testid": "history-filter-archived",
81
+ children: [/* @__PURE__ */ i(n, {
82
+ className: "size-3",
83
+ "aria-hidden": "true"
84
+ }), g("conversationFilters.archived", "Archived")]
85
+ })
86
+ ]
87
+ }),
88
+ /* @__PURE__ */ i("p", {
89
+ role: "status",
90
+ "aria-live": "polite",
91
+ className: "h-5 truncate text-[10px] leading-5 text-text-muted",
92
+ "data-testid": "history-filter-status",
93
+ children: S
94
+ })
95
+ ]
89
96
  });
90
97
  };
91
98
  //#endregion
@@ -24,6 +24,15 @@ import { FC } from 'react';
24
24
  * offers Unarchive, Rename and Delete — never Pin. Delete here stays
25
25
  * IMMEDIATE (operator, Q2); the confirmation dialog is the "delete this
26
26
  * conversation" command's.
27
+ *
28
+ * ★★ BOFF-8159 S9, with the controls: a search box above the filters. While
29
+ * it holds a query the list is the search's (`selectHistorySearchList`):
30
+ * what the server found under "This workspace" — with "Show more results" —
31
+ * and what this device holds that matches under "On this device". A query
32
+ * under 2 characters, a busy server or a failed search shows this device's
33
+ * matches only (with a notice for the last two). Every row is the same row,
34
+ * with the same actions, as in the plain list. The query lives in this
35
+ * component's state only.
27
36
  */
28
37
  export declare const AssistantConversationList: FC;
29
38
  //# sourceMappingURL=AssistantConversationList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantConversationList.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantConversationList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,EAAE,EAGR,MAAM,OAAO,CAAC;AAkOf;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,yBAAyB,EAAE,EA40BvC,CAAC"}
1
+ {"version":3,"file":"AssistantConversationList.d.ts","sourceRoot":"","sources":["../../../../src/shared/assistant/ui/AssistantConversationList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,EAAE,EAGR,MAAM,OAAO,CAAC;AA0Of;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,yBAAyB,EAAE,EAo+BvC,CAAC"}