@burdenoff/fe-libs 2026.1018.1 → 2026.1019.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 (65) hide show
  1. package/dist/chrome/AccountSwitcher.js +90 -89
  2. package/dist/chrome/Breadcrumbs.js +1 -1
  3. package/dist/chrome/CommandPalette.js +91 -90
  4. package/dist/chrome/Footer.js +31 -8
  5. package/dist/chrome/GlobalSearch.js +78 -77
  6. package/dist/chrome/HeaderBar.js +1 -1
  7. package/dist/chrome/HeaderThemeSwitcher.js +48 -47
  8. package/dist/chrome/LanguagePickerSheet.js +23 -22
  9. package/dist/chrome/NavCustomizeDialog.d.ts +0 -14
  10. package/dist/chrome/NavCustomizeDialog.js +114 -122
  11. package/dist/chrome/PanelTabs.js +45 -41
  12. package/dist/chrome/PersonaSurfaceControls.d.ts +0 -17
  13. package/dist/chrome/PersonaSurfaceControls.js +115 -118
  14. package/dist/chrome/PluginSettingsPage.js +29 -28
  15. package/dist/chrome/PluginWidgetGrid.js +19 -18
  16. package/dist/chrome/ProductPickerSheet.js +44 -47
  17. package/dist/chrome/ProductSwitcher.js +2 -6
  18. package/dist/chrome/ProfileSwitcher.js +6 -10
  19. package/dist/chrome/ShortcutHelpDialog.js +60 -65
  20. package/dist/chrome/SideNavigation.js +2 -2
  21. package/dist/chrome/Sidebar.js +44 -43
  22. package/dist/chrome/ThemePreferences.js +289 -267
  23. package/dist/chrome/contextSwitcher/EmptyState.js +31 -27
  24. package/dist/chrome/contextSwitcher/OrganizationList.js +40 -30
  25. package/dist/chrome/contextSwitcher/ProjectList.js +48 -44
  26. package/dist/chrome/contextSwitcher/SearchInput.js +44 -40
  27. package/dist/chrome/contextSwitcher/TriggerButton.js +2 -2
  28. package/dist/chrome/contextSwitcher/WorkspaceList.js +36 -32
  29. package/dist/chrome/globalSearch/AdvancedFiltersPanel.js +128 -126
  30. package/dist/chrome/globalSearch/ResultsList.js +25 -27
  31. package/dist/chrome/globalSearch/SearchInput.js +16 -14
  32. package/dist/chrome/notificationCenter/NotificationCardItem.js +58 -47
  33. package/dist/chrome/notificationCenter/NotificationFilters.js +76 -62
  34. package/dist/chrome/notificationCenter/NotificationFooter.js +21 -21
  35. package/dist/chrome/notificationCenter/NotificationHeader.js +67 -63
  36. package/dist/chrome/notificationCenter/NotificationList.js +75 -71
  37. package/dist/chrome/notificationCenter/NotificationPanel.js +37 -33
  38. package/dist/chrome/notificationCenter/PushOptInToggle.js +33 -32
  39. package/dist/chrome/notificationCenter/constants.d.ts +6 -1
  40. package/dist/chrome/notificationCenter/constants.js +12 -11
  41. package/dist/chrome/useThemeOptionLabels.d.ts +33 -0
  42. package/dist/chrome/useThemeOptionLabels.js +39 -0
  43. package/dist/shared/assistant/conversation.d.ts +8 -0
  44. package/dist/shared/assistant/history/historyMapping.js +1 -1
  45. package/dist/shared/assistant/ui/AssistantMarkdownRenderer.d.ts +6 -6
  46. package/dist/shared/assistant/ui/AssistantMarkdownRenderer.js +86 -85
  47. package/dist/shared/assistant/ui/AssistantMessageItem.js +101 -96
  48. package/dist/shared/assistant/ui/AssistantWriteProposalCard.d.ts +2 -0
  49. package/dist/shared/assistant/ui/AssistantWriteProposalCard.js +93 -89
  50. package/dist/shared/assistant/ui/WorkflowAssistantPanel.js +152 -140
  51. package/dist/shared/assistant/ui/useWriteProposals.js +122 -85
  52. package/dist/shared/assistant/writeProposalDiscovery.d.ts +3 -1
  53. package/dist/shared/assistant/writeProposalDiscovery.js +2 -2
  54. package/dist/shared/events/sinks/RybbitSink.js +2 -2
  55. package/dist/shared/providers/shell/interpolateShellLabel.d.ts +3 -0
  56. package/dist/shared/providers/shell/interpolateShellLabel.js +11 -0
  57. package/dist/shared/providers/shell/useAssistantShellLabels.d.ts +45 -0
  58. package/dist/shared/providers/shell/useAssistantShellLabels.js +54 -0
  59. package/dist/shared/tours/TourPlayer.js +33 -32
  60. package/dist/shared/tours/TourTooltip.js +108 -109
  61. package/dist/shared/tours/tourTrigger/MobileTourSheet.js +98 -85
  62. package/dist/shared/tours/tourTrigger/TourListItemDesktop.js +20 -18
  63. package/dist/shared/tours/tourTrigger/TourListItemMobile.js +23 -25
  64. package/dist/shared-assistant.js +188 -188
  65. package/package.json +2 -2
@@ -1,87 +1,88 @@
1
- import { Markdown as e } from "../../../node_modules/react-markdown/lib/index.js";
2
- import t from "../../../node_modules/remark-gfm/lib/index.js";
3
- import { defaultSchema as n } from "../../../node_modules/hast-util-sanitize/lib/schema.js";
4
- import r from "../../../node_modules/rehype-sanitize/lib/index.js";
5
- import { useAssistantTr as i } from "../i18n.js";
6
- import { copyToClipboard as a } from "../clipboard.js";
7
- import { AssistantMarkdownImage as o } from "./AssistantMarkdownImage.js";
8
- import { assistantRoutePath as s, assistantUrlTransform as c, classifyAssistantHref as l } from "../uiActions/assistantHref.js";
9
- import { createContext as u, useContext as d, useState as f } from "react";
10
- import { Check as p, Copy as m } from "lucide-react";
11
- import { Fragment as h, jsx as g, jsxs as _ } from "react/jsx-runtime";
1
+ import { useAssistantChromeLabels as e } from "../../providers/shell/useAssistantShellLabels.js";
2
+ import { Markdown as t } from "../../../node_modules/react-markdown/lib/index.js";
3
+ import n from "../../../node_modules/remark-gfm/lib/index.js";
4
+ import { defaultSchema as r } from "../../../node_modules/hast-util-sanitize/lib/schema.js";
5
+ import i from "../../../node_modules/rehype-sanitize/lib/index.js";
6
+ import { useAssistantTr as a } from "../i18n.js";
7
+ import { copyToClipboard as o } from "../clipboard.js";
8
+ import { AssistantMarkdownImage as s } from "./AssistantMarkdownImage.js";
9
+ import { assistantRoutePath as c, assistantUrlTransform as l, classifyAssistantHref as u } from "../uiActions/assistantHref.js";
10
+ import { createContext as d, useContext as f, useState as p } from "react";
11
+ import { Check as m, Copy as h } from "lucide-react";
12
+ import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
12
13
  //#region src/shared/assistant/ui/AssistantMarkdownRenderer.tsx
13
- var v = {
14
- ...n,
14
+ var y = {
15
+ ...r,
15
16
  protocols: {
16
- ...n.protocols,
17
- src: [...n.protocols?.src ?? [], "data"]
17
+ ...r.protocols,
18
+ src: [...r.protocols?.src ?? [], "data"]
18
19
  }
19
20
  };
20
- function y(e) {
21
+ function b(e) {
21
22
  return e.defaultPrevented || e.button !== 0 || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey;
22
23
  }
23
- var b = u(null), x = ({ value: e, children: t }) => /* @__PURE__ */ g(b.Provider, {
24
+ var x = d(null), S = ({ value: e, children: t }) => /* @__PURE__ */ _(x.Provider, {
24
25
  value: e ?? null,
25
26
  children: t
26
27
  });
27
- function S() {
28
- return d(b);
28
+ function C() {
29
+ return f(x);
29
30
  }
30
- var C = "text-action-primary-bg underline-offset-2 hover:underline", w = ({ href: e, children: t }) => {
31
- let n = S(), r = l(e), i = r === "internal" ? s(e) : null;
32
- return r === "blocked" ? /* @__PURE__ */ g(h, { children: t }) : n && i ? /* @__PURE__ */ g("a", {
31
+ var w = "text-action-primary-bg underline-offset-2 hover:underline", T = ({ href: e, children: t }) => {
32
+ let n = C(), r = u(e), i = r === "internal" ? c(e) : null;
33
+ return r === "blocked" ? /* @__PURE__ */ _(g, { children: t }) : n && i ? /* @__PURE__ */ _("a", {
33
34
  href: i,
34
- className: C,
35
+ className: w,
35
36
  "data-testid": "assistant-markdown-link",
36
37
  onClick: (e) => {
37
- y(e) || (e.preventDefault(), Promise.resolve(n(i, "person", { surface: "reply-link" })).catch(() => void 0));
38
+ b(e) || (e.preventDefault(), Promise.resolve(n(i, "person", { surface: "reply-link" })).catch(() => void 0));
38
39
  },
39
40
  children: t
40
- }) : r === "internal" || r === "fragment" ? /* @__PURE__ */ g("a", {
41
+ }) : r === "internal" || r === "fragment" ? /* @__PURE__ */ _("a", {
41
42
  href: i ?? e,
42
- className: C,
43
+ className: w,
43
44
  "data-testid": "assistant-markdown-link",
44
45
  children: t
45
- }) : /* @__PURE__ */ g("a", {
46
+ }) : /* @__PURE__ */ _("a", {
46
47
  href: e,
47
48
  target: "_blank",
48
49
  rel: "noopener noreferrer",
49
- className: C,
50
+ className: w,
50
51
  "data-testid": "assistant-markdown-link",
51
52
  children: t
52
53
  });
53
- }, T = [t], E = [[r, v]];
54
- function D({ language: e, code: t }) {
55
- let n = i(), [r, o] = f(!1);
56
- return /* @__PURE__ */ _("div", {
54
+ }, E = [n], D = [[i, y]];
55
+ function O({ language: t, code: n }) {
56
+ let r = e(), i = a(), [s, c] = p(!1);
57
+ return /* @__PURE__ */ v("div", {
57
58
  className: "group relative my-2 overflow-hidden rounded-md border border-border-default bg-bg-sunken",
58
- children: [/* @__PURE__ */ _("div", {
59
+ children: [/* @__PURE__ */ v("div", {
59
60
  className: "flex items-center justify-between border-b border-border-default bg-bg-elevated px-3 py-1.5",
60
- children: [/* @__PURE__ */ g("span", {
61
+ children: [/* @__PURE__ */ _("span", {
61
62
  className: "font-mono text-[10px] uppercase tracking-wider text-text-muted",
62
- children: e || "code"
63
- }), /* @__PURE__ */ g("button", {
63
+ children: t || r.code
64
+ }), /* @__PURE__ */ _("button", {
64
65
  type: "button",
65
66
  onClick: () => {
66
- a(t).then((e) => {
67
- e && (o(!0), setTimeout(() => o(!1), 2e3));
67
+ o(n).then((e) => {
68
+ e && (c(!0), setTimeout(() => c(!1), 2e3));
68
69
  });
69
70
  },
70
71
  className: "flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] text-text-secondary transition-colors hover:bg-bg-sunken hover:text-text-primary",
71
- "aria-label": n("markdown.copyCode", "Copy code"),
72
+ "aria-label": i("markdown.copyCode", "Copy code"),
72
73
  "data-testid": "assistant-markdown-copy-code",
73
- children: r ? /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(p, { className: "size-3 text-status-success-text" }), /* @__PURE__ */ g("span", { children: n("markdown.copied", "Copied") })] }) : /* @__PURE__ */ _(h, { children: [/* @__PURE__ */ g(m, { className: "size-3" }), /* @__PURE__ */ g("span", { children: n("markdown.copy", "Copy") })] })
74
+ children: s ? /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(m, { className: "size-3 text-status-success-text" }), /* @__PURE__ */ _("span", { children: i("markdown.copied", "Copied") })] }) : /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _(h, { className: "size-3" }), /* @__PURE__ */ _("span", { children: i("markdown.copy", "Copy") })] })
74
75
  })]
75
- }), /* @__PURE__ */ g("pre", {
76
+ }), /* @__PURE__ */ _("pre", {
76
77
  className: "overflow-x-auto p-3 text-xs leading-relaxed",
77
- children: /* @__PURE__ */ g("code", {
78
+ children: /* @__PURE__ */ _("code", {
78
79
  className: "font-mono text-text-primary",
79
- children: t
80
+ children: n
80
81
  })
81
82
  })]
82
83
  });
83
84
  }
84
- function O(e) {
85
+ function k(e) {
85
86
  let t = e?.children?.[0];
86
87
  if (!t || t.type !== "element" || t.tagName !== "code") return null;
87
88
  let n = t.children.map((e) => e.type === "text" ? e.value : "").join(""), r = t.properties?.className, i = (Array.isArray(r) ? r.map(String) : String(r ?? "").split(" ")).find((e) => e.startsWith("language-"));
@@ -90,10 +91,10 @@ function O(e) {
90
91
  language: i ? i.slice(9) : ""
91
92
  };
92
93
  }
93
- function k(e, t) {
94
+ function A(e, t) {
94
95
  return typeof e == "string" && e.split(" ").includes(t);
95
96
  }
96
- function A({ level: e, children: t }) {
97
+ function j({ level: e, children: t }) {
97
98
  let n = `h${e}`, r = {
98
99
  2: "text-[1.15em]",
99
100
  3: "text-[1.08em]",
@@ -101,129 +102,129 @@ function A({ level: e, children: t }) {
101
102
  5: "text-[0.95em]",
102
103
  6: "text-[0.9em]"
103
104
  }[e];
104
- return /* @__PURE__ */ g(n, {
105
+ return /* @__PURE__ */ _(n, {
105
106
  className: `mb-1 mt-3 font-semibold text-text-primary ${r}`,
106
107
  children: t
107
108
  });
108
109
  }
109
- var j = {
110
- a: ({ href: e, children: t }) => /* @__PURE__ */ g(w, {
110
+ var M = {
111
+ a: ({ href: e, children: t }) => /* @__PURE__ */ _(T, {
111
112
  href: e,
112
113
  children: t
113
114
  }),
114
- blockquote: ({ children: e }) => /* @__PURE__ */ g("blockquote", {
115
+ blockquote: ({ children: e }) => /* @__PURE__ */ _("blockquote", {
115
116
  className: "my-2 border-l-2 border-action-primary-bg pl-3 italic text-text-secondary",
116
117
  children: e
117
118
  }),
118
- code: ({ children: e }) => /* @__PURE__ */ g("code", {
119
+ code: ({ children: e }) => /* @__PURE__ */ _("code", {
119
120
  className: "rounded bg-bg-sunken px-1 py-0.5 font-mono text-[0.85em] text-text-primary",
120
121
  children: e
121
122
  }),
122
- del: ({ children: e }) => /* @__PURE__ */ g("del", {
123
+ del: ({ children: e }) => /* @__PURE__ */ _("del", {
123
124
  className: "text-text-muted line-through",
124
125
  children: e
125
126
  }),
126
- em: ({ children: e }) => /* @__PURE__ */ g("em", {
127
+ em: ({ children: e }) => /* @__PURE__ */ _("em", {
127
128
  className: "italic",
128
129
  children: e
129
130
  }),
130
- h1: ({ children: e }) => /* @__PURE__ */ g(A, {
131
+ h1: ({ children: e }) => /* @__PURE__ */ _(j, {
131
132
  level: 2,
132
133
  children: e
133
134
  }),
134
- h2: ({ children: e }) => /* @__PURE__ */ g(A, {
135
+ h2: ({ children: e }) => /* @__PURE__ */ _(j, {
135
136
  level: 3,
136
137
  children: e
137
138
  }),
138
- h3: ({ children: e }) => /* @__PURE__ */ g(A, {
139
+ h3: ({ children: e }) => /* @__PURE__ */ _(j, {
139
140
  level: 4,
140
141
  children: e
141
142
  }),
142
- h4: ({ children: e }) => /* @__PURE__ */ g(A, {
143
+ h4: ({ children: e }) => /* @__PURE__ */ _(j, {
143
144
  level: 5,
144
145
  children: e
145
146
  }),
146
- h5: ({ children: e }) => /* @__PURE__ */ g(A, {
147
+ h5: ({ children: e }) => /* @__PURE__ */ _(j, {
147
148
  level: 6,
148
149
  children: e
149
150
  }),
150
- h6: ({ children: e }) => /* @__PURE__ */ g(A, {
151
+ h6: ({ children: e }) => /* @__PURE__ */ _(j, {
151
152
  level: 6,
152
153
  children: e
153
154
  }),
154
- hr: () => /* @__PURE__ */ g("hr", { className: "my-3 border-border-default" }),
155
- img: ({ src: e, alt: t, title: n }) => /* @__PURE__ */ g(o, {
155
+ hr: () => /* @__PURE__ */ _("hr", { className: "my-3 border-border-default" }),
156
+ img: ({ src: e, alt: t, title: n }) => /* @__PURE__ */ _(s, {
156
157
  src: typeof e == "string" ? e : void 0,
157
158
  alt: t,
158
159
  title: n
159
160
  }),
160
- input: ({ checked: e, type: t }) => t === "checkbox" ? /* @__PURE__ */ g("input", {
161
+ input: ({ checked: e, type: t }) => t === "checkbox" ? /* @__PURE__ */ _("input", {
161
162
  type: "checkbox",
162
163
  checked: !!e,
163
164
  disabled: !0,
164
165
  className: "mr-1.5 size-3 flex-shrink-0 align-[-0.1em] accent-[var(--color-action-primary-bg)]"
165
166
  }) : null,
166
- li: ({ className: e, children: t }) => /* @__PURE__ */ g("li", {
167
- className: k(e, "task-list-item") ? "list-none text-text-primary" : "text-text-primary",
167
+ li: ({ className: e, children: t }) => /* @__PURE__ */ _("li", {
168
+ className: A(e, "task-list-item") ? "list-none text-text-primary" : "text-text-primary",
168
169
  children: t
169
170
  }),
170
- ol: ({ children: e }) => /* @__PURE__ */ g("ol", {
171
+ ol: ({ children: e }) => /* @__PURE__ */ _("ol", {
171
172
  className: "my-1.5 ml-5 list-decimal space-y-0.5",
172
173
  children: e
173
174
  }),
174
- p: ({ children: e }) => /* @__PURE__ */ g("p", {
175
+ p: ({ children: e }) => /* @__PURE__ */ _("p", {
175
176
  className: "my-1.5 leading-relaxed text-text-primary",
176
177
  children: e
177
178
  }),
178
179
  pre: ({ children: e, node: t }) => {
179
- let n = O(t);
180
- return n ? /* @__PURE__ */ g(D, {
180
+ let n = k(t);
181
+ return n ? /* @__PURE__ */ _(O, {
181
182
  language: n.language,
182
183
  code: n.code
183
- }) : /* @__PURE__ */ g("pre", {
184
+ }) : /* @__PURE__ */ _("pre", {
184
185
  className: "my-2 overflow-x-auto rounded-md border border-border-default bg-bg-sunken p-3 text-xs leading-relaxed",
185
186
  children: e
186
187
  });
187
188
  },
188
- strong: ({ children: e }) => /* @__PURE__ */ g("strong", {
189
+ strong: ({ children: e }) => /* @__PURE__ */ _("strong", {
189
190
  className: "font-semibold text-text-primary",
190
191
  children: e
191
192
  }),
192
- table: ({ children: e }) => /* @__PURE__ */ g("div", {
193
+ table: ({ children: e }) => /* @__PURE__ */ _("div", {
193
194
  className: "my-2 overflow-x-auto",
194
195
  "data-testid": "assistant-markdown-table",
195
- children: /* @__PURE__ */ g("table", {
196
+ children: /* @__PURE__ */ _("table", {
196
197
  className: "w-full border-collapse text-[0.9em]",
197
198
  children: e
198
199
  })
199
200
  }),
200
- td: ({ children: e }) => /* @__PURE__ */ g("td", {
201
+ td: ({ children: e }) => /* @__PURE__ */ _("td", {
201
202
  className: "px-2 py-1.5 align-top text-text-primary",
202
203
  children: e
203
204
  }),
204
- th: ({ children: e }) => /* @__PURE__ */ g("th", {
205
+ th: ({ children: e }) => /* @__PURE__ */ _("th", {
205
206
  scope: "col",
206
207
  className: "px-2 py-1.5 text-left font-semibold text-text-primary",
207
208
  children: e
208
209
  }),
209
- tr: ({ children: e }) => /* @__PURE__ */ g("tr", {
210
+ tr: ({ children: e }) => /* @__PURE__ */ _("tr", {
210
211
  className: "border-b border-border-subtle",
211
212
  children: e
212
213
  }),
213
- ul: ({ className: e, children: t }) => /* @__PURE__ */ g("ul", {
214
- className: k(e, "contains-task-list") ? "my-1.5 ml-0.5 list-none space-y-0.5" : "my-1.5 ml-5 list-disc space-y-0.5",
214
+ ul: ({ className: e, children: t }) => /* @__PURE__ */ _("ul", {
215
+ className: A(e, "contains-task-list") ? "my-1.5 ml-0.5 list-none space-y-0.5" : "my-1.5 ml-5 list-disc space-y-0.5",
215
216
  children: t
216
217
  })
217
- }, M = ({ content: t }) => /* @__PURE__ */ g("div", {
218
+ }, N = ({ content: e }) => /* @__PURE__ */ _("div", {
218
219
  className: "break-words [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",
219
220
  "data-testid": "assistant-markdown",
220
- children: /* @__PURE__ */ g(e, {
221
- remarkPlugins: T,
222
- rehypePlugins: E,
223
- urlTransform: c,
224
- components: j,
225
- children: t
221
+ children: /* @__PURE__ */ _(t, {
222
+ remarkPlugins: E,
223
+ rehypePlugins: D,
224
+ urlTransform: l,
225
+ components: M,
226
+ children: e
226
227
  })
227
228
  });
228
229
  //#endregion
229
- export { M as AssistantMarkdownRenderer, x as AssistantNavigateProvider, y as browserShouldHandle, S as useAssistantNavigate };
230
+ export { N as AssistantMarkdownRenderer, S as AssistantNavigateProvider, b as browserShouldHandle, C as useAssistantNavigate };