@burdenoff/fe-libs 2026.624.1 → 2026.624.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.
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderBar.d.ts","sourceRoot":"","sources":["../../src/chrome/HeaderBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,oBAAoB;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAEhB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qGAAqG;IACrG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,kGAAkG;IAClG,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAElC,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,yBAAyB;IACzB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE7B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,wBAAwB;IACxB,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAE7B,iDAAiD;IACjD,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,yDAAyD;IACzD,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAE7B,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAE9B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,uCAAuC;IACvC,wBAAwB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEtC,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAiPxC,CAAC"}
1
+ {"version":3,"file":"HeaderBar.d.ts","sourceRoot":"","sources":["../../src/chrome/HeaderBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,oBAAoB;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,2BAA2B;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,IAAI,CAAC,EAAE,SAAS,CAAC;IAEjB,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAEhB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzB,0BAA0B;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,uCAAuC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qGAAqG;IACrG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,kGAAkG;IAClG,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAElC,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,yBAAyB;IACzB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE7B,2BAA2B;IAC3B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAE3B,wBAAwB;IACxB,IAAI,CAAC,EAAE;QACL,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,8BAA8B;IAC9B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAE7B,iDAAiD;IACjD,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB,yDAAyD;IACzD,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,kCAAkC;IAClC,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAE7B,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAE9B,iCAAiC;IACjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B,uCAAuC;IACvC,wBAAwB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEtC,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CA6MxC,CAAC"}
@@ -1,69 +1,70 @@
1
- import { jsx as e, jsxs as t } from "react/jsx-runtime";
1
+ import { HeaderThemeSwitcher as e } from "./HeaderThemeSwitcher.js";
2
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
2
3
  //#region src/chrome/HeaderBar.tsx
3
- var n = ({ logo: n, appName: r, onLogoClick: i, onMenuToggle: a, onSearchClick: o, searchPlaceholder: s = "Search...", searchShortcut: c = "⌘K", unreadNotifications: l = 0, onNotificationsClick: u, notificationCenter: d, colorMode: f = "light", onThemeToggle: p, user: m, onUserMenuClick: h, actions: g, contextSwitcher: _, productSwitcher: v, languageSwitcher: y, geographySwitcher: b, profileSwitcher: x, onKeyboardShortcutsClick: S, mobileOptimized: C = !0 }) => /* @__PURE__ */ t("header", {
4
+ var r = ({ logo: r, appName: i, onLogoClick: a, onMenuToggle: o, onSearchClick: s, searchPlaceholder: c = "Search...", searchShortcut: l = "⌘K", unreadNotifications: u = 0, onNotificationsClick: d, notificationCenter: f, colorMode: p = "light", onThemeToggle: m, user: h, onUserMenuClick: g, actions: _, contextSwitcher: v, productSwitcher: y, languageSwitcher: b, geographySwitcher: x, profileSwitcher: S, onKeyboardShortcutsClick: C, mobileOptimized: w = !0 }) => /* @__PURE__ */ n("header", {
4
5
  className: "relative z-[100] h-14 bg-[var(--color-surface-glass)] backdrop-blur-[var(--blur-glass)] border-b border-[var(--color-border-glass)] flex items-center px-3 md:px-card-padding justify-between",
5
- children: [/* @__PURE__ */ t("div", {
6
+ children: [/* @__PURE__ */ n("div", {
6
7
  className: "flex items-center gap-2 md:gap-control-gap",
7
- children: [a && /* @__PURE__ */ e("button", {
8
+ children: [o && /* @__PURE__ */ t("button", {
8
9
  type: "button",
9
- onClick: a,
10
+ onClick: o,
10
11
  className: "p-2 hover:bg-bg-sunken rounded-button text-text-primary transition-colors",
11
12
  "aria-label": "Toggle sidebar",
12
- children: /* @__PURE__ */ e("svg", {
13
+ children: /* @__PURE__ */ t("svg", {
13
14
  className: "w-icon-md h-icon-md",
14
15
  fill: "none",
15
16
  stroke: "currentColor",
16
17
  viewBox: "0 0 24 24",
17
- children: /* @__PURE__ */ e("path", {
18
+ children: /* @__PURE__ */ t("path", {
18
19
  strokeLinecap: "round",
19
20
  strokeLinejoin: "round",
20
21
  strokeWidth: 2,
21
22
  d: "M4 6h16M4 12h16M4 18h16"
22
23
  })
23
24
  })
24
- }), n && /* @__PURE__ */ e("div", {
25
- className: `w-8 h-8 bg-action-primary-bg rounded-md flex items-center justify-center ${i ? "cursor-pointer hover:opacity-80 transition-opacity" : ""}`,
26
- onClick: i,
27
- role: i ? "button" : void 0,
28
- tabIndex: i ? 0 : void 0,
29
- onKeyDown: i ? (e) => {
30
- (e.key === "Enter" || e.key === " ") && (e.preventDefault(), i());
25
+ }), r && /* @__PURE__ */ t("div", {
26
+ className: `w-8 h-8 bg-action-primary-bg rounded-md flex items-center justify-center ${a ? "cursor-pointer hover:opacity-80 transition-opacity" : ""}`,
27
+ onClick: a,
28
+ role: a ? "button" : void 0,
29
+ tabIndex: a ? 0 : void 0,
30
+ onKeyDown: a ? (e) => {
31
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), a());
31
32
  } : void 0,
32
- "aria-label": i ? "Go to home" : void 0,
33
- children: typeof n == "string" ? /* @__PURE__ */ e("span", {
33
+ "aria-label": a ? "Go to home" : void 0,
34
+ children: typeof r == "string" ? /* @__PURE__ */ t("span", {
34
35
  className: "text-action-primary-text font-bold text-sm",
35
- children: n
36
- }) : n
36
+ children: r
37
+ }) : r
37
38
  })]
38
- }), /* @__PURE__ */ t("div", {
39
+ }), /* @__PURE__ */ n("div", {
39
40
  className: "flex items-center gap-1 md:gap-control-gap",
40
41
  children: [
41
- _,
42
- v && /* @__PURE__ */ e("div", {
43
- className: C ? "hidden md:block empty:hidden" : "empty:hidden",
44
- children: v
45
- }),
46
- y && /* @__PURE__ */ e("div", {
47
- className: C ? "hidden md:block empty:hidden" : "empty:hidden",
42
+ v,
43
+ y && /* @__PURE__ */ t("div", {
44
+ className: w ? "hidden md:block empty:hidden" : "empty:hidden",
48
45
  children: y
49
46
  }),
50
- b && /* @__PURE__ */ e("div", {
51
- className: C ? "hidden md:block empty:hidden" : "empty:hidden",
47
+ b && /* @__PURE__ */ t("div", {
48
+ className: w ? "hidden md:block empty:hidden" : "empty:hidden",
52
49
  children: b
53
50
  }),
54
- (_ || v || y || b) && /* @__PURE__ */ e("div", { className: "hidden md:block h-6 w-px bg-border-subtle" }),
55
- S && /* @__PURE__ */ e("button", {
51
+ x && /* @__PURE__ */ t("div", {
52
+ className: w ? "hidden md:block empty:hidden" : "empty:hidden",
53
+ children: x
54
+ }),
55
+ (v || y || b || x) && /* @__PURE__ */ t("div", { className: "hidden md:block h-6 w-px bg-border-subtle" }),
56
+ C && /* @__PURE__ */ t("button", {
56
57
  type: "button",
57
- onClick: S,
58
- className: `p-2 hover:bg-bg-sunken rounded-button text-text-primary transition-colors ${C ? "hidden md:block" : ""}`,
58
+ onClick: C,
59
+ className: `p-2 hover:bg-bg-sunken rounded-button text-text-primary transition-colors ${w ? "hidden md:block" : ""}`,
59
60
  "aria-label": "Keyboard shortcuts",
60
61
  title: "Keyboard shortcuts (Ctrl+/ or Cmd+/)",
61
- children: /* @__PURE__ */ e("svg", {
62
+ children: /* @__PURE__ */ t("svg", {
62
63
  className: "w-icon-md h-icon-md",
63
64
  fill: "none",
64
65
  stroke: "currentColor",
65
66
  viewBox: "0 0 24 24",
66
- children: /* @__PURE__ */ e("path", {
67
+ children: /* @__PURE__ */ t("path", {
67
68
  strokeLinecap: "round",
68
69
  strokeLinejoin: "round",
69
70
  strokeWidth: 2,
@@ -71,18 +72,18 @@ var n = ({ logo: n, appName: r, onLogoClick: i, onMenuToggle: a, onSearchClick:
71
72
  })
72
73
  })
73
74
  }),
74
- o && /* @__PURE__ */ e("button", {
75
+ s && /* @__PURE__ */ t("button", {
75
76
  type: "button",
76
- onClick: o,
77
+ onClick: s,
77
78
  className: "p-2 hover:bg-bg-sunken rounded-button text-text-primary transition-colors",
78
79
  "aria-label": "Search",
79
- title: `Search (${c})`,
80
- children: /* @__PURE__ */ e("svg", {
80
+ title: `Search (${l})`,
81
+ children: /* @__PURE__ */ t("svg", {
81
82
  className: "w-icon-md h-icon-md",
82
83
  fill: "none",
83
84
  stroke: "currentColor",
84
85
  viewBox: "0 0 24 24",
85
- children: /* @__PURE__ */ e("path", {
86
+ children: /* @__PURE__ */ t("path", {
86
87
  strokeLinecap: "round",
87
88
  strokeLinejoin: "round",
88
89
  strokeWidth: 2,
@@ -90,57 +91,29 @@ var n = ({ logo: n, appName: r, onLogoClick: i, onMenuToggle: a, onSearchClick:
90
91
  })
91
92
  })
92
93
  }),
93
- g,
94
- d || (u ? /* @__PURE__ */ t("button", {
94
+ _,
95
+ f || (d ? /* @__PURE__ */ n("button", {
95
96
  type: "button",
96
- onClick: u,
97
+ onClick: d,
97
98
  className: "relative p-2 hover:bg-bg-sunken rounded-button text-text-primary transition-colors",
98
99
  "aria-label": "Notifications",
99
- children: [/* @__PURE__ */ e("svg", {
100
+ children: [/* @__PURE__ */ t("svg", {
100
101
  className: "w-icon-md h-icon-md",
101
102
  fill: "none",
102
103
  stroke: "currentColor",
103
104
  viewBox: "0 0 24 24",
104
- children: /* @__PURE__ */ e("path", {
105
+ children: /* @__PURE__ */ t("path", {
105
106
  strokeLinecap: "round",
106
107
  strokeLinejoin: "round",
107
108
  strokeWidth: 2,
108
109
  d: "M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9"
109
110
  })
110
- }), l > 0 && /* @__PURE__ */ e("span", { className: "absolute top-1 right-1 size-2 bg-status-error-bg rounded-full border border-bg-elevated" })]
111
+ }), u > 0 && /* @__PURE__ */ t("span", { className: "absolute top-1 right-1 size-2 bg-status-error-bg rounded-full border border-bg-elevated" })]
111
112
  }) : null),
112
- p && /* @__PURE__ */ e("button", {
113
- type: "button",
114
- onClick: p,
115
- className: `p-2 hover:bg-bg-sunken rounded-button text-text-primary transition-colors ${C ? "hidden md:block" : ""}`,
116
- "aria-label": "Toggle theme",
117
- children: f === "light" ? /* @__PURE__ */ e("svg", {
118
- className: "w-icon-md h-icon-md",
119
- fill: "none",
120
- stroke: "currentColor",
121
- viewBox: "0 0 24 24",
122
- children: /* @__PURE__ */ e("path", {
123
- strokeLinecap: "round",
124
- strokeLinejoin: "round",
125
- strokeWidth: 2,
126
- d: "M20.354 15.354A9 9 0 018.646 3.646 9.003 9.003 0 0012 21a9.003 9.003 0 008.354-5.646z"
127
- })
128
- }) : /* @__PURE__ */ e("svg", {
129
- className: "w-icon-md h-icon-md",
130
- fill: "none",
131
- stroke: "currentColor",
132
- viewBox: "0 0 24 24",
133
- children: /* @__PURE__ */ e("path", {
134
- strokeLinecap: "round",
135
- strokeLinejoin: "round",
136
- strokeWidth: 2,
137
- d: "M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 11-8 0 4 4 0 018 0z"
138
- })
139
- })
140
- }),
141
- x
113
+ m && /* @__PURE__ */ t(e, { mobileOptimized: w }),
114
+ S
142
115
  ]
143
116
  })]
144
117
  });
145
118
  //#endregion
146
- export { n as HeaderBar };
119
+ export { r as HeaderBar };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Shared 6-theme switcher for the app-shell header. Rendered by HeaderBar so
3
+ * EVERY product shell exposes the full Boff UI theme picker (not just a binary
4
+ * light/dark toggle). Drives the fe-libs ThemeProvider directly via `setMode`.
5
+ */
6
+ export declare function HeaderThemeSwitcher({ mobileOptimized }: {
7
+ mobileOptimized?: boolean;
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=HeaderThemeSwitcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeaderThemeSwitcher.d.ts","sourceRoot":"","sources":["../../src/chrome/HeaderThemeSwitcher.tsx"],"names":[],"mappings":"AAgCA;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,eAAsB,EAAE,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,2CAiD5F"}
@@ -0,0 +1,111 @@
1
+ import { DropdownMenu as e, DropdownMenuContent as t, DropdownMenuItem as n, DropdownMenuLabel as r, DropdownMenuSeparator as i, DropdownMenuTrigger as a } from "../ui/dropdown-menu.js";
2
+ import { useTheme as o } from "../shared/providers/shell/ThemeProvider.js";
3
+ import { useExclusiveMenu as s } from "../shared/hooks/useExclusiveMenu.js";
4
+ import { cn as c } from "../utils/cn.js";
5
+ import "../utils/index.js";
6
+ import { useCallback as l, useState as u } from "react";
7
+ import { Check as d, Contrast as f, Monitor as p, Moon as m, Palette as h, Sun as g, Sunset as _, Trees as v, Waves as y } from "lucide-react";
8
+ import { jsx as b, jsxs as x } from "react/jsx-runtime";
9
+ //#region src/chrome/HeaderThemeSwitcher.tsx
10
+ var S = {
11
+ light: g,
12
+ dark: m,
13
+ forest: v,
14
+ ocean: y,
15
+ sunset: _,
16
+ "high-contrast": f
17
+ }, C = [
18
+ {
19
+ value: "light",
20
+ label: "Light"
21
+ },
22
+ {
23
+ value: "dark",
24
+ label: "Dark"
25
+ },
26
+ {
27
+ value: "forest",
28
+ label: "Forest"
29
+ },
30
+ {
31
+ value: "ocean",
32
+ label: "Ocean"
33
+ },
34
+ {
35
+ value: "sunset",
36
+ label: "Sunset"
37
+ },
38
+ {
39
+ value: "high-contrast",
40
+ label: "High contrast"
41
+ }
42
+ ];
43
+ function w({ mobileOptimized: n = !0 }) {
44
+ let [d, f] = u(!1);
45
+ s("header-theme", d, l(() => f(!1), []));
46
+ let { mode: _, setMode: v, resolvedTheme: y } = o(), w = y === "dark" ? m : g, E = l((e) => v(e), [v]);
47
+ return /* @__PURE__ */ x(e, {
48
+ open: d,
49
+ onOpenChange: f,
50
+ children: [/* @__PURE__ */ b(a, {
51
+ asChild: !0,
52
+ children: /* @__PURE__ */ b("button", {
53
+ type: "button",
54
+ "aria-label": "Theme",
55
+ title: "Theme",
56
+ className: c("flex size-9 items-center justify-center rounded-button text-text-primary transition-colors", "hover:bg-bg-sunken focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]", n ? "hidden md:flex" : ""),
57
+ children: /* @__PURE__ */ b(w, {
58
+ className: "size-5",
59
+ "aria-hidden": "true"
60
+ })
61
+ })
62
+ }), /* @__PURE__ */ x(t, {
63
+ align: "end",
64
+ className: "w-56",
65
+ children: [
66
+ /* @__PURE__ */ x(r, {
67
+ className: "flex items-center gap-2 text-text-secondary",
68
+ children: [/* @__PURE__ */ b(h, {
69
+ className: "size-4",
70
+ "aria-hidden": "true"
71
+ }), "Appearance"]
72
+ }),
73
+ /* @__PURE__ */ b(i, {}),
74
+ /* @__PURE__ */ b(T, {
75
+ active: _ === "system",
76
+ icon: p,
77
+ label: "System",
78
+ onSelect: () => E("system")
79
+ }),
80
+ C.map((e) => /* @__PURE__ */ b(T, {
81
+ active: _ === e.value,
82
+ icon: S[e.value],
83
+ label: e.label,
84
+ onSelect: () => E(e.value)
85
+ }, e.value))
86
+ ]
87
+ })]
88
+ });
89
+ }
90
+ function T({ active: e, icon: t, label: r, onSelect: i }) {
91
+ return /* @__PURE__ */ x(n, {
92
+ onSelect: i,
93
+ className: c("gap-2", e && "bg-[var(--color-accent-soft)] text-text-primary"),
94
+ children: [
95
+ /* @__PURE__ */ b(t, {
96
+ className: "size-4 text-text-secondary",
97
+ "aria-hidden": "true"
98
+ }),
99
+ /* @__PURE__ */ b("span", {
100
+ className: "flex-1",
101
+ children: r
102
+ }),
103
+ e && /* @__PURE__ */ b(d, {
104
+ className: "size-4 text-action-primary-bg",
105
+ "aria-hidden": "true"
106
+ })
107
+ ]
108
+ });
109
+ }
110
+ //#endregion
111
+ export { w as HeaderThemeSwitcher };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/fe-libs",
3
- "version": "2026.624.1",
3
+ "version": "2026.624.2",
4
4
  "description": "Burdenoff frontend primitives and domain libraries",
5
5
  "type": "module",
6
6
  "imports": {