@burdenoff/fe-libs 2026.527.2 → 2026.527.3

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 (78) hide show
  1. package/dist/button/Button.js +18 -16
  2. package/dist/chrome/AccountSwitcher.js +10 -7
  3. package/dist/chrome/AutoBreadcrumbs.js +2 -0
  4. package/dist/chrome/Breadcrumbs.js +2 -0
  5. package/dist/chrome/CommandPalette.js +5 -3
  6. package/dist/chrome/ContextSwitcher.js +12 -11
  7. package/dist/chrome/DynamicFooter.js +7 -7
  8. package/dist/chrome/Footer.js +5 -5
  9. package/dist/chrome/GeographySwitcher.js +3 -3
  10. package/dist/chrome/GlobalSearch.js +18 -9
  11. package/dist/chrome/HeaderBar.js +6 -1
  12. package/dist/chrome/LanguagePickerSheet.js +1 -1
  13. package/dist/chrome/LanguageSwitcher.js +2 -2
  14. package/dist/chrome/NotificationCenter.js +19 -10
  15. package/dist/chrome/PanelTabs.js +7 -4
  16. package/dist/chrome/PluginContextMenuTarget.js +1 -1
  17. package/dist/chrome/ProductPickerSheet.js +4 -4
  18. package/dist/chrome/ProductSideNav.js +1 -1
  19. package/dist/chrome/ProductSwitcher.js +3 -3
  20. package/dist/chrome/ProfileSwitcher.js +13 -8
  21. package/dist/chrome/ShortcutHelpDialog.js +2 -1
  22. package/dist/chrome/SideNavigation.js +7 -3
  23. package/dist/chrome/Sidebar.js +1 -0
  24. package/dist/form/Checkbox.js +17 -15
  25. package/dist/form/FormDescription.js +9 -10
  26. package/dist/form/FormField.js +11 -12
  27. package/dist/form/FormLabel.js +13 -13
  28. package/dist/form/FormMessage.js +10 -11
  29. package/dist/form/Input.js +11 -10
  30. package/dist/form/Radio.js +25 -21
  31. package/dist/form/Select.js +81 -66
  32. package/dist/form/Textarea.js +10 -9
  33. package/dist/shared/components/AccessDenied.js +8 -4
  34. package/dist/shared/components/AppErrorBoundary.js +2 -0
  35. package/dist/shared/components/ContextConversationWidget.js +15 -15
  36. package/dist/shared/components/ErrorFallback.js +3 -0
  37. package/dist/shared/components/PWAInstallBanner.js +8 -4
  38. package/dist/shared/components/RequireAuth.js +4 -4
  39. package/dist/shared/components/SSORedirectGuard.js +1 -1
  40. package/dist/shared/feature-flags/FeatureFlagProvider.js +21 -21
  41. package/dist/shared/geography/GeographyProvider.js +20 -20
  42. package/dist/shared/graphql/GatewayContext.js +1 -1
  43. package/dist/shared/motion/MotionList.js +1 -1
  44. package/dist/shared/pages/AiPage.js +3 -3
  45. package/dist/shared/pages/SearchPage.js +38 -33
  46. package/dist/shared/plugins/PluginRuntimeProvider.js +1 -1
  47. package/dist/shared/providers/shell/ActiveContextProvider.js +12 -12
  48. package/dist/shared/providers/shell/AppShellContext.js +1 -1
  49. package/dist/shared/providers/shell/AuthProvider.js +17 -17
  50. package/dist/shared/providers/shell/AuthTokenProvider.js +6 -6
  51. package/dist/shared/providers/shell/ContextManagerProvider.js +1 -1
  52. package/dist/shared/providers/shell/FeatureFlagsProvider.js +5 -5
  53. package/dist/shared/providers/shell/GlobalUiProvider.js +17 -17
  54. package/dist/shared/providers/shell/I18nProvider.js +15 -15
  55. package/dist/shared/providers/shell/PageConversationContextProvider.js +14 -14
  56. package/dist/shared/providers/shell/PermissionProvider.js +16 -16
  57. package/dist/shared/providers/shell/ShellUiProvider.js +13 -13
  58. package/dist/shared/providers/shell/ThemeProvider.js +9 -9
  59. package/dist/shared/tours/TourPlayer.js +1 -0
  60. package/dist/shared/tours/TourPlayerProvider.js +1 -1
  61. package/dist/shared/tours/TourTooltip.js +3 -0
  62. package/dist/shared/tours/TourTrigger.js +12 -9
  63. package/dist/shared/tours/ToursContext.js +11 -11
  64. package/dist/shared-events.js +3 -3
  65. package/dist/shared-hooks.js +1 -1
  66. package/dist/storage/SaveToFilesButton.js +3 -3
  67. package/dist/storage/SaveToFilesDialog.js +1 -1
  68. package/dist/tag/TagBadge.js +1 -1
  69. package/dist/tag/TagsWidget.js +6 -6
  70. package/dist/ui/card.js +44 -39
  71. package/dist/ui/dropdown-menu.js +82 -66
  72. package/dist/ui/input.js +10 -10
  73. package/dist/ui/label.js +13 -11
  74. package/dist/ui/select.js +80 -66
  75. package/dist/ui/table.js +61 -54
  76. package/dist/ui/textarea.js +9 -9
  77. package/dist/ui/tooltip.js +13 -11
  78. package/package.json +1 -1
@@ -1,13 +1,14 @@
1
1
  import { cn as e } from "../shared-utils.js";
2
- import * as t from "react";
3
- import { jsx as n } from "react/jsx-runtime";
2
+ import "react";
3
+ import { jsx as t } from "react/jsx-runtime";
4
4
  //#region src/form/Input.tsx
5
- var r = t.forwardRef(({ className: t, type: r, ...i }, a) => /* @__PURE__ */ n("input", {
6
- type: r,
7
- className: e("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors", "file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground", "placeholder:text-muted-foreground", "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", "aria-[invalid=true]:border-destructive", t),
8
- ref: a,
9
- ...i
10
- }));
11
- r.displayName = "Input";
5
+ function n({ ref: n, className: r, type: i, ...a }) {
6
+ return /* @__PURE__ */ t("input", {
7
+ type: i,
8
+ className: e("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors", "file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground", "placeholder:text-muted-foreground", "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", "aria-[invalid=true]:border-destructive", r),
9
+ ref: n,
10
+ ...a
11
+ });
12
+ }
12
13
  //#endregion
13
- export { r as Input };
14
+ export { n as Input };
@@ -1,24 +1,28 @@
1
1
  import { cn as e } from "../shared-utils.js";
2
- import * as t from "react";
3
- import { Circle as n } from "lucide-react";
4
- import { jsx as r } from "react/jsx-runtime";
5
- import * as i from "@radix-ui/react-radio-group";
2
+ import "react";
3
+ import { Circle as t } from "lucide-react";
4
+ import { jsx as n } from "react/jsx-runtime";
5
+ import * as r from "@radix-ui/react-radio-group";
6
6
  //#region src/form/Radio.tsx
7
- var a = t.forwardRef(({ className: t, ...n }, a) => /* @__PURE__ */ r(i.Root, {
8
- className: e("grid gap-2", t),
9
- ...n,
10
- ref: a
11
- }));
12
- a.displayName = i.Root.displayName;
13
- var o = t.forwardRef(({ className: t, ...a }, o) => /* @__PURE__ */ r(i.Item, {
14
- ref: o,
15
- className: e("aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow", "focus:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", t),
16
- ...a,
17
- children: /* @__PURE__ */ r(i.Indicator, {
18
- className: "flex items-center justify-center",
19
- children: /* @__PURE__ */ r(n, { className: "h-3.5 w-3.5 fill-primary" })
20
- })
21
- }));
22
- o.displayName = i.Item.displayName;
7
+ function i({ ref: t, className: i, ...a }) {
8
+ return /* @__PURE__ */ n(r.Root, {
9
+ className: e("grid gap-2", i),
10
+ ...a,
11
+ ref: t
12
+ });
13
+ }
14
+ i.displayName = r.Root.displayName;
15
+ function a({ ref: i, className: a, ...o }) {
16
+ return /* @__PURE__ */ n(r.Item, {
17
+ ref: i,
18
+ className: e("aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow", "focus:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", a),
19
+ ...o,
20
+ children: /* @__PURE__ */ n(r.Indicator, {
21
+ className: "flex items-center justify-center",
22
+ children: /* @__PURE__ */ n(t, { className: "size-3.5 fill-primary" })
23
+ })
24
+ });
25
+ }
26
+ a.displayName = r.Item.displayName;
23
27
  //#endregion
24
- export { a as RadioGroup, o as RadioGroupItem };
28
+ export { i as RadioGroup, a as RadioGroupItem };
@@ -1,69 +1,84 @@
1
1
  import { cn as e } from "../shared-utils.js";
2
- import * as t from "react";
3
- import { Check as n, ChevronDown as r, ChevronUp as i } from "lucide-react";
4
- import { jsx as a, jsxs as o } from "react/jsx-runtime";
5
- import * as s from "@radix-ui/react-select";
2
+ import "react";
3
+ import { Check as t, ChevronDown as n, ChevronUp as r } from "lucide-react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import * as o from "@radix-ui/react-select";
6
6
  //#region src/form/Select.tsx
7
- var c = s.Root, l = s.Group, u = s.Value, d = t.forwardRef(({ className: t, children: n, ...i }, c) => /* @__PURE__ */ o(s.Trigger, {
8
- ref: c,
9
- className: e("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm", "placeholder:text-muted-foreground", "focus:outline-none focus:ring-1 focus:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", "aria-[invalid=true]:border-destructive", "[&>span]:line-clamp-1", t),
10
- ...i,
11
- children: [n, /* @__PURE__ */ a(s.Icon, {
12
- asChild: !0,
13
- children: /* @__PURE__ */ a(r, { className: "h-4 w-4 opacity-50" })
14
- })]
15
- }));
16
- d.displayName = s.Trigger.displayName;
17
- var f = t.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ a(s.ScrollUpButton, {
18
- ref: r,
19
- className: e("flex cursor-default items-center justify-center py-1", t),
20
- ...n,
21
- children: /* @__PURE__ */ a(i, { className: "h-4 w-4" })
22
- }));
23
- f.displayName = s.ScrollUpButton.displayName;
24
- var p = t.forwardRef(({ className: t, ...n }, i) => /* @__PURE__ */ a(s.ScrollDownButton, {
25
- ref: i,
26
- className: e("flex cursor-default items-center justify-center py-1", t),
27
- ...n,
28
- children: /* @__PURE__ */ a(r, { className: "h-4 w-4" })
29
- }));
30
- p.displayName = s.ScrollDownButton.displayName;
31
- var m = t.forwardRef(({ className: t, children: n, position: r = "popper", ...i }, c) => /* @__PURE__ */ a(s.Portal, { children: /* @__PURE__ */ o(s.Content, {
32
- ref: c,
33
- className: e("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md", "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", r === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", t),
34
- position: r,
35
- ...i,
36
- children: [
37
- /* @__PURE__ */ a(f, {}),
38
- /* @__PURE__ */ a(s.Viewport, {
39
- className: e("p-1", r === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),
40
- children: n
41
- }),
42
- /* @__PURE__ */ a(p, {})
43
- ]
44
- }) }));
45
- m.displayName = s.Content.displayName;
46
- var h = t.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ a(s.Label, {
47
- ref: r,
48
- className: e("px-2 py-1.5 text-sm font-semibold", t),
49
- ...n
50
- }));
51
- h.displayName = s.Label.displayName;
52
- var g = t.forwardRef(({ className: t, children: r, ...i }, c) => /* @__PURE__ */ o(s.Item, {
53
- ref: c,
54
- className: e("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none", "focus:bg-accent focus:text-accent-foreground", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", t),
55
- ...i,
56
- children: [/* @__PURE__ */ a("span", {
57
- className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center",
58
- children: /* @__PURE__ */ a(s.ItemIndicator, { children: /* @__PURE__ */ a(n, { className: "h-4 w-4" }) })
59
- }), /* @__PURE__ */ a(s.ItemText, { children: r })]
60
- }));
61
- g.displayName = s.Item.displayName;
62
- var _ = t.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ a(s.Separator, {
63
- ref: r,
64
- className: e("-mx-1 my-1 h-px bg-muted", t),
65
- ...n
66
- }));
67
- _.displayName = s.Separator.displayName;
7
+ var s = o.Root, c = o.Group, l = o.Value;
8
+ function u({ ref: t, className: r, children: s, ...c }) {
9
+ return /* @__PURE__ */ a(o.Trigger, {
10
+ ref: t,
11
+ className: e("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm", "placeholder:text-muted-foreground", "focus:outline-none focus:ring-1 focus:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", "aria-[invalid=true]:border-destructive", "[&>span]:line-clamp-1", r),
12
+ ...c,
13
+ children: [s, /* @__PURE__ */ i(o.Icon, {
14
+ asChild: !0,
15
+ children: /* @__PURE__ */ i(n, { className: "size-4 opacity-50" })
16
+ })]
17
+ });
18
+ }
19
+ u.displayName = o.Trigger.displayName;
20
+ function d({ ref: t, className: n, ...a }) {
21
+ return /* @__PURE__ */ i(o.ScrollUpButton, {
22
+ ref: t,
23
+ className: e("flex cursor-default items-center justify-center py-1", n),
24
+ ...a,
25
+ children: /* @__PURE__ */ i(r, { className: "size-4" })
26
+ });
27
+ }
28
+ d.displayName = o.ScrollUpButton.displayName;
29
+ function f({ ref: t, className: r, ...a }) {
30
+ return /* @__PURE__ */ i(o.ScrollDownButton, {
31
+ ref: t,
32
+ className: e("flex cursor-default items-center justify-center py-1", r),
33
+ ...a,
34
+ children: /* @__PURE__ */ i(n, { className: "size-4" })
35
+ });
36
+ }
37
+ f.displayName = o.ScrollDownButton.displayName;
38
+ function p({ ref: t, className: n, children: r, position: s = "popper", ...c }) {
39
+ return /* @__PURE__ */ i(o.Portal, { children: /* @__PURE__ */ a(o.Content, {
40
+ ref: t,
41
+ className: e("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md", "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", s === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", n),
42
+ position: s,
43
+ ...c,
44
+ children: [
45
+ /* @__PURE__ */ i(d, {}),
46
+ /* @__PURE__ */ i(o.Viewport, {
47
+ className: e("p-1", s === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),
48
+ children: r
49
+ }),
50
+ /* @__PURE__ */ i(f, {})
51
+ ]
52
+ }) });
53
+ }
54
+ p.displayName = o.Content.displayName;
55
+ function m({ ref: t, className: n, ...r }) {
56
+ return /* @__PURE__ */ i(o.Label, {
57
+ ref: t,
58
+ className: e("px-2 py-1.5 text-sm font-semibold", n),
59
+ ...r
60
+ });
61
+ }
62
+ m.displayName = o.Label.displayName;
63
+ function h({ ref: n, className: r, children: s, ...c }) {
64
+ return /* @__PURE__ */ a(o.Item, {
65
+ ref: n,
66
+ className: e("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none", "focus:bg-accent focus:text-accent-foreground", "data-[disabled]:pointer-events-none data-[disabled]:opacity-50", r),
67
+ ...c,
68
+ children: [/* @__PURE__ */ i("span", {
69
+ className: "absolute right-2 flex size-3.5 items-center justify-center",
70
+ children: /* @__PURE__ */ i(o.ItemIndicator, { children: /* @__PURE__ */ i(t, { className: "size-4" }) })
71
+ }), /* @__PURE__ */ i(o.ItemText, { children: s })]
72
+ });
73
+ }
74
+ h.displayName = o.Item.displayName;
75
+ function g({ ref: t, className: n, ...r }) {
76
+ return /* @__PURE__ */ i(o.Separator, {
77
+ ref: t,
78
+ className: e("-mx-1 my-1 h-px bg-muted", n),
79
+ ...r
80
+ });
81
+ }
82
+ g.displayName = o.Separator.displayName;
68
83
  //#endregion
69
- export { c as Select, m as SelectContent, l as SelectGroup, g as SelectItem, h as SelectLabel, p as SelectScrollDownButton, f as SelectScrollUpButton, _ as SelectSeparator, d as SelectTrigger, u as SelectValue };
84
+ export { s as Select, p as SelectContent, c as SelectGroup, h as SelectItem, m as SelectLabel, f as SelectScrollDownButton, d as SelectScrollUpButton, g as SelectSeparator, u as SelectTrigger, l as SelectValue };
@@ -1,12 +1,13 @@
1
1
  import { cn as e } from "../shared-utils.js";
2
- import * as t from "react";
3
- import { jsx as n } from "react/jsx-runtime";
2
+ import "react";
3
+ import { jsx as t } from "react/jsx-runtime";
4
4
  //#region src/form/Textarea.tsx
5
- var r = t.forwardRef(({ className: t, ...r }, i) => /* @__PURE__ */ n("textarea", {
6
- className: e("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm", "placeholder:text-muted-foreground", "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", "aria-[invalid=true]:border-destructive", "resize-y", t),
7
- ref: i,
8
- ...r
9
- }));
10
- r.displayName = "Textarea";
5
+ function n({ ref: n, className: r, ...i }) {
6
+ return /* @__PURE__ */ t("textarea", {
7
+ className: e("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm", "placeholder:text-muted-foreground", "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring", "disabled:cursor-not-allowed disabled:opacity-50", "aria-[invalid=true]:border-destructive", "resize-y", r),
8
+ ref: n,
9
+ ...i
10
+ });
11
+ }
11
12
  //#endregion
12
- export { r as Textarea };
13
+ export { n as Textarea };
@@ -2,7 +2,7 @@ import { jsx as e, jsxs as t } from "react/jsx-runtime";
2
2
  //#region src/shared/components/AccessDenied.tsx
3
3
  function n() {
4
4
  return /* @__PURE__ */ e("svg", {
5
- className: "w-12 h-12 text-status-error-text",
5
+ className: "size-12 text-status-error-text",
6
6
  fill: "none",
7
7
  viewBox: "0 0 24 24",
8
8
  stroke: "currentColor",
@@ -16,7 +16,7 @@ function n() {
16
16
  }
17
17
  function r() {
18
18
  return /* @__PURE__ */ e("svg", {
19
- className: "w-5 h-5 text-status-error-text",
19
+ className: "size-5 text-status-error-text",
20
20
  fill: "none",
21
21
  viewBox: "0 0 24 24",
22
22
  stroke: "currentColor",
@@ -35,7 +35,7 @@ function i({ title: i = "Access Denied", description: a = "You don't have permis
35
35
  className: "bg-bg-surface border border-border-default rounded-lg p-8 max-w-md w-full text-center shadow-sm",
36
36
  children: [
37
37
  /* @__PURE__ */ e("div", {
38
- className: "w-16 h-16 mx-auto mb-6 rounded-full bg-status-error-bg-subtle flex items-center justify-center",
38
+ className: "size-16 mx-auto mb-6 rounded-full bg-status-error-bg-subtle flex items-center justify-center",
39
39
  children: s ?? /* @__PURE__ */ e(n, {})
40
40
  }),
41
41
  /* @__PURE__ */ e("h1", {
@@ -53,10 +53,12 @@ function i({ title: i = "Access Denied", description: a = "You don't have permis
53
53
  (c || l) && /* @__PURE__ */ t("div", {
54
54
  className: "flex flex-col sm:flex-row gap-3 justify-center mt-6",
55
55
  children: [l && /* @__PURE__ */ e("button", {
56
+ type: "button",
56
57
  onClick: l.onClick,
57
58
  className: "px-4 py-2 text-action-secondary-text bg-action-secondary-bg border border-border-default rounded-md hover:bg-action-secondary-bg-hover transition-colors",
58
59
  children: l.label
59
60
  }), c && /* @__PURE__ */ e("button", {
61
+ type: "button",
60
62
  onClick: c.onClick,
61
63
  className: "px-4 py-2 text-action-primary-text bg-action-primary-bg rounded-md hover:bg-action-primary-bg-hover transition-colors",
62
64
  children: c.label
@@ -75,7 +77,7 @@ function i({ title: i = "Access Denied", description: a = "You don't have permis
75
77
  className: `bg-bg-surface border border-border-default rounded-lg p-6 text-center ${d}`,
76
78
  children: [
77
79
  /* @__PURE__ */ e("div", {
78
- className: "w-12 h-12 mx-auto mb-4 rounded-full bg-status-error-bg-subtle flex items-center justify-center",
80
+ className: "size-12 mx-auto mb-4 rounded-full bg-status-error-bg-subtle flex items-center justify-center",
79
81
  children: s ?? /* @__PURE__ */ e(n, {})
80
82
  }),
81
83
  /* @__PURE__ */ e("h2", {
@@ -93,10 +95,12 @@ function i({ title: i = "Access Denied", description: a = "You don't have permis
93
95
  (c || l) && /* @__PURE__ */ t("div", {
94
96
  className: "flex flex-col sm:flex-row gap-2 justify-center mt-4",
95
97
  children: [l && /* @__PURE__ */ e("button", {
98
+ type: "button",
96
99
  onClick: l.onClick,
97
100
  className: "px-3 py-1.5 text-sm text-action-secondary-text bg-action-secondary-bg border border-border-default rounded hover:bg-action-secondary-bg-hover transition-colors",
98
101
  children: l.label
99
102
  }), c && /* @__PURE__ */ e("button", {
103
+ type: "button",
100
104
  onClick: c.onClick,
101
105
  className: "px-3 py-1.5 text-sm text-action-primary-text bg-action-primary-bg rounded hover:bg-action-primary-bg-hover transition-colors",
102
106
  children: c.label
@@ -134,6 +134,7 @@ var i = class extends e {
134
134
  justifyContent: "center"
135
135
  },
136
136
  children: [/* @__PURE__ */ t("button", {
137
+ type: "button",
137
138
  onClick: this.handleReload,
138
139
  style: {
139
140
  padding: "0.75rem 1.5rem",
@@ -153,6 +154,7 @@ var i = class extends e {
153
154
  },
154
155
  children: "Reload Application"
155
156
  }), r() && /* @__PURE__ */ t("button", {
157
+ type: "button",
156
158
  onClick: () => {
157
159
  this.setState({
158
160
  hasError: !1,
@@ -404,7 +404,7 @@ function x({ className: p, widgetKey: y }) {
404
404
  className: p,
405
405
  children: [/* @__PURE__ */ d(s, { children: /* @__PURE__ */ f(ee, {
406
406
  className: "flex items-center gap-2 text-base",
407
- children: [/* @__PURE__ */ d(le, { className: "h-4 w-4" }), W("conversationWidget.title", "Page conversation")]
407
+ children: [/* @__PURE__ */ d(le, { className: "size-4" }), W("conversationWidget.title", "Page conversation")]
408
408
  }) }), /* @__PURE__ */ d(o, { children: /* @__PURE__ */ d("p", {
409
409
  className: "text-sm text-muted-foreground",
410
410
  children: W("conversationWidget.noWorkspace", "Select a workspace to enable contextual conversations on this page.")
@@ -510,7 +510,7 @@ function x({ className: p, widgetKey: y }) {
510
510
  className: "space-y-1",
511
511
  children: [/* @__PURE__ */ f(ee, {
512
512
  className: "flex items-center gap-2 text-base",
513
- children: [/* @__PURE__ */ d(le, { className: "h-4 w-4" }), Y.data?.conversation?.title || w.contextTitle || W("conversationWidget.title", "Page conversation")]
513
+ children: [/* @__PURE__ */ d(le, { className: "size-4" }), Y.data?.conversation?.title || w.contextTitle || W("conversationWidget.title", "Page conversation")]
514
514
  }), /* @__PURE__ */ d("p", {
515
515
  className: "text-sm text-muted-foreground truncate whitespace-nowrap overflow-hidden max-w-full",
516
516
  title: w.entityType && w.entityId ? `${w.entityType} · ${w.entityId}` : w.pagePath,
@@ -531,7 +531,7 @@ function x({ className: p, widgetKey: y }) {
531
531
  E(w.pagePath);
532
532
  }
533
533
  },
534
- children: [/* @__PURE__ */ d(se, { className: "mr-2 h-4 w-4" }), W("conversationWidget.openContext", "Open context")]
534
+ children: [/* @__PURE__ */ d(se, { className: "mr-2 size-4" }), W("conversationWidget.openContext", "Open context")]
535
535
  }),
536
536
  /* @__PURE__ */ d(e, {
537
537
  type: "button",
@@ -550,7 +550,7 @@ function x({ className: p, widgetKey: y }) {
550
550
  size: "icon",
551
551
  onClick: () => Ue((e) => !e),
552
552
  "aria-label": M ? W("conversationWidget.expand", "Expand page conversation") : W("conversationWidget.collapse", "Collapse page conversation"),
553
- children: d(M ? ae : oe, { className: "h-4 w-4" })
553
+ children: d(M ? ae : oe, { className: "size-4" })
554
554
  })
555
555
  ]
556
556
  })]
@@ -600,7 +600,7 @@ function x({ className: p, widgetKey: y }) {
600
600
  }),
601
601
  /* @__PURE__ */ d("span", { children: Ve(t.createdAt) }),
602
602
  t.isEdited ? /* @__PURE__ */ d("span", { children: W("conversationWidget.edited", "edited") }) : null,
603
- t.isPinned ? /* @__PURE__ */ d(fe, { className: "h-3 w-3" }) : null
603
+ t.isPinned ? /* @__PURE__ */ d(fe, { className: "size-3" }) : null
604
604
  ]
605
605
  }), /* @__PURE__ */ d("div", {
606
606
  className: "flex items-center gap-1",
@@ -667,7 +667,7 @@ function x({ className: p, widgetKey: y }) {
667
667
  variant: "ghost",
668
668
  size: "sm",
669
669
  onClick: () => P(t),
670
- children: [/* @__PURE__ */ d(me, { className: "mr-2 h-3 w-3" }), W("conversationWidget.reply", "Reply")]
670
+ children: [/* @__PURE__ */ d(me, { className: "mr-2 size-3" }), W("conversationWidget.reply", "Reply")]
671
671
  }) : null,
672
672
  t.permissions.canEdit && F !== t.id ? /* @__PURE__ */ f(e, {
673
673
  type: "button",
@@ -676,7 +676,7 @@ function x({ className: p, widgetKey: y }) {
676
676
  onClick: () => {
677
677
  I(t.id), R(t.content);
678
678
  },
679
- children: [/* @__PURE__ */ d(de, { className: "mr-2 h-3 w-3" }), W("conversationWidget.edit", "Edit")]
679
+ children: [/* @__PURE__ */ d(de, { className: "mr-2 size-3" }), W("conversationWidget.edit", "Edit")]
680
680
  }) : null,
681
681
  t.permissions.canDelete ? /* @__PURE__ */ f(e, {
682
682
  type: "button",
@@ -688,14 +688,14 @@ function x({ className: p, widgetKey: y }) {
688
688
  hard: !1
689
689
  } }), await X.refetch();
690
690
  },
691
- children: [/* @__PURE__ */ d(_e, { className: "mr-2 h-3 w-3" }), W("conversationWidget.delete", "Delete")]
691
+ children: [/* @__PURE__ */ d(_e, { className: "mr-2 size-3" }), W("conversationWidget.delete", "Delete")]
692
692
  }) : null,
693
693
  t.permissions.canPin ? /* @__PURE__ */ f(e, {
694
694
  type: "button",
695
695
  variant: "ghost",
696
696
  size: "sm",
697
697
  onClick: () => void ht(t),
698
- children: [t.isPinned ? /* @__PURE__ */ d(pe, { className: "mr-2 h-3 w-3" }) : /* @__PURE__ */ d(fe, { className: "mr-2 h-3 w-3" }), t.isPinned ? W("conversationWidget.unpin", "Unpin") : W("conversationWidget.pin", "Pin")]
698
+ children: [t.isPinned ? /* @__PURE__ */ d(pe, { className: "mr-2 size-3" }) : /* @__PURE__ */ d(fe, { className: "mr-2 size-3" }), t.isPinned ? W("conversationWidget.unpin", "Unpin") : W("conversationWidget.pin", "Pin")]
699
699
  }) : null
700
700
  ]
701
701
  })
@@ -725,7 +725,7 @@ function x({ className: p, widgetKey: y }) {
725
725
  variant: "ghost",
726
726
  size: "icon",
727
727
  onClick: () => P(null),
728
- children: /* @__PURE__ */ d(ve, { className: "h-4 w-4" })
728
+ children: /* @__PURE__ */ d(ve, { className: "size-4" })
729
729
  })]
730
730
  }) : null,
731
731
  B.length > 0 ? /* @__PURE__ */ d("div", {
@@ -734,7 +734,7 @@ function x({ className: p, widgetKey: y }) {
734
734
  variant: "secondary",
735
735
  className: "gap-2 py-1.5",
736
736
  children: [
737
- /* @__PURE__ */ d(ue, { className: "h-3 w-3" }),
737
+ /* @__PURE__ */ d(ue, { className: "size-3" }),
738
738
  /* @__PURE__ */ d("span", {
739
739
  className: "max-w-[14rem] truncate",
740
740
  children: e.fileName
@@ -742,7 +742,7 @@ function x({ className: p, widgetKey: y }) {
742
742
  /* @__PURE__ */ d("button", {
743
743
  type: "button",
744
744
  onClick: () => V((t) => t.filter((t) => t.fileId !== e.fileId)),
745
- children: /* @__PURE__ */ d(ve, { className: "h-3 w-3" })
745
+ children: /* @__PURE__ */ d(ve, { className: "size-3" })
746
746
  })
747
747
  ]
748
748
  }, e.fileId))
@@ -760,7 +760,7 @@ function x({ className: p, widgetKey: y }) {
760
760
  }),
761
761
  $.mentions && lt.length > 0 ? /* @__PURE__ */ f("div", {
762
762
  className: "flex flex-wrap gap-2 rounded-md border border-border bg-muted/20 p-2",
763
- children: [/* @__PURE__ */ d(ge, { className: "mt-0.5 h-4 w-4 text-muted-foreground" }), lt.map((t) => /* @__PURE__ */ f(e, {
763
+ children: [/* @__PURE__ */ d(ge, { className: "mt-0.5 size-4 text-muted-foreground" }), lt.map((t) => /* @__PURE__ */ f(e, {
764
764
  type: "button",
765
765
  variant: "outline",
766
766
  size: "sm",
@@ -786,7 +786,7 @@ function x({ className: p, widgetKey: y }) {
786
786
  size: "sm",
787
787
  onClick: () => U.current?.click(),
788
788
  disabled: z,
789
- children: [z ? /* @__PURE__ */ d(ce, { className: "mr-2 h-4 w-4 animate-spin" }) : /* @__PURE__ */ d(ue, { className: "mr-2 h-4 w-4" }), W("conversationWidget.attach", "Attach files")]
789
+ children: [z ? /* @__PURE__ */ d(ce, { className: "mr-2 size-4 animate-spin" }) : /* @__PURE__ */ d(ue, { className: "mr-2 size-4" }), W("conversationWidget.attach", "Attach files")]
790
790
  }),
791
791
  $.mentions ? /* @__PURE__ */ d(i, {
792
792
  variant: "outline",
@@ -797,7 +797,7 @@ function x({ className: p, widgetKey: y }) {
797
797
  type: "button",
798
798
  onClick: () => void dt(),
799
799
  disabled: Je || z || !A.trim(),
800
- children: [Je ? /* @__PURE__ */ d(ce, { className: "mr-2 h-4 w-4 animate-spin" }) : /* @__PURE__ */ d(he, { className: "mr-2 h-4 w-4" }), W("conversationWidget.send", "Send")]
800
+ children: [Je ? /* @__PURE__ */ d(ce, { className: "mr-2 size-4 animate-spin" }) : /* @__PURE__ */ d(he, { className: "mr-2 size-4" }), W("conversationWidget.send", "Send")]
801
801
  })]
802
802
  })
803
803
  ]
@@ -25,14 +25,17 @@ function i({ error: i, resetErrorBoundary: a }) {
25
25
  /* @__PURE__ */ n("div", {
26
26
  className: "flex gap-3 justify-center",
27
27
  children: s ? /* @__PURE__ */ n("button", {
28
+ type: "button",
28
29
  onClick: c,
29
30
  className: "px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover font-medium",
30
31
  children: "Reload page"
31
32
  }) : /* @__PURE__ */ r(t, { children: [/* @__PURE__ */ n("button", {
33
+ type: "button",
32
34
  onClick: a,
33
35
  className: "px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover font-medium",
34
36
  children: "Try again"
35
37
  }), /* @__PURE__ */ n("button", {
38
+ type: "button",
36
39
  onClick: c,
37
40
  className: "px-4 py-2 bg-transparent text-text-secondary border border-border-default rounded-md hover:bg-bg-surface-hover font-medium",
38
41
  children: "Reload page"
@@ -31,7 +31,7 @@ function c({ productName: c = "App", brandInitial: l = "B" }) {
31
31
  className: "flex items-start gap-3",
32
32
  children: [/* @__PURE__ */ o("div", {
33
33
  className: "flex-shrink-0",
34
- children: /* @__PURE__ */ o(i, { className: "w-5 h-5 text-status-info-text" })
34
+ children: /* @__PURE__ */ o(i, { className: "size-5 text-status-info-text" })
35
35
  }), /* @__PURE__ */ s("div", {
36
36
  className: "flex-1 min-w-0",
37
37
  children: [
@@ -50,6 +50,7 @@ function c({ productName: c = "App", brandInitial: l = "B" }) {
50
50
  /* @__PURE__ */ o("div", {
51
51
  className: "mt-3 flex gap-2",
52
52
  children: /* @__PURE__ */ o("button", {
53
+ type: "button",
53
54
  onClick: m,
54
55
  className: "px-3 py-1.5 text-sm font-medium bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors",
55
56
  children: "Refresh Now"
@@ -69,7 +70,7 @@ function c({ productName: c = "App", brandInitial: l = "B" }) {
69
70
  /* @__PURE__ */ o("div", {
70
71
  className: "flex-shrink-0",
71
72
  children: /* @__PURE__ */ o("div", {
72
- className: "w-10 h-10 rounded-lg bg-gradient-to-br from-brand-primary to-brand-secondary flex items-center justify-center text-white font-bold",
73
+ className: "size-10 rounded-lg bg-gradient-to-br from-brand-primary to-brand-secondary flex items-center justify-center text-white font-bold",
73
74
  children: l
74
75
  })
75
76
  }),
@@ -87,10 +88,12 @@ function c({ productName: c = "App", brandInitial: l = "B" }) {
87
88
  /* @__PURE__ */ s("div", {
88
89
  className: "mt-3 flex gap-2",
89
90
  children: [/* @__PURE__ */ s("button", {
91
+ type: "button",
90
92
  onClick: v,
91
93
  className: "inline-flex items-center gap-1.5 px-3 py-1.5 text-sm font-medium bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors",
92
- children: [/* @__PURE__ */ o(r, { className: "w-4 h-4" }), "Install"]
94
+ children: [/* @__PURE__ */ o(r, { className: "size-4" }), "Install"]
93
95
  }), /* @__PURE__ */ o("button", {
96
+ type: "button",
94
97
  onClick: y,
95
98
  className: "px-3 py-1.5 text-sm font-medium text-text-secondary hover:text-text-primary transition-colors",
96
99
  children: "Not now"
@@ -99,10 +102,11 @@ function c({ productName: c = "App", brandInitial: l = "B" }) {
99
102
  ]
100
103
  }),
101
104
  /* @__PURE__ */ o("button", {
105
+ type: "button",
102
106
  onClick: y,
103
107
  className: "flex-shrink-0 p-1 text-text-muted hover:text-text-secondary transition-colors",
104
108
  "aria-label": "Dismiss",
105
- children: /* @__PURE__ */ o(a, { className: "w-4 h-4" })
109
+ children: /* @__PURE__ */ o(a, { className: "size-4" })
106
110
  })
107
111
  ]
108
112
  })
@@ -8,7 +8,7 @@ function a({ children: e, loginPath: a = "/auth/login", loadingComponent: o, una
8
8
  className: "flex items-center justify-center min-h-screen bg-bg-canvas",
9
9
  children: /* @__PURE__ */ i("div", {
10
10
  className: "flex flex-col items-center gap-4",
11
- children: [/* @__PURE__ */ r("div", { className: "w-8 h-8 border-2 border-brand-primary border-t-transparent rounded-full animate-spin" }), /* @__PURE__ */ r("span", {
11
+ children: [/* @__PURE__ */ r("div", { className: "size-8 border-2 border-brand-primary border-t-transparent rounded-full animate-spin" }), /* @__PURE__ */ r("span", {
12
12
  className: "text-text-secondary text-sm",
13
13
  children: "Loading..."
14
14
  })]
@@ -43,9 +43,9 @@ function a({ children: e, loginPath: a = "/auth/login", loadingComponent: o, una
43
43
  className: "bg-bg-surface border border-border-default rounded-lg p-8 max-w-md w-full text-center",
44
44
  children: [
45
45
  /* @__PURE__ */ r("div", {
46
- className: "w-12 h-12 mx-auto mb-4 rounded-full bg-status-error-bg-subtle flex items-center justify-center",
46
+ className: "size-12 mx-auto mb-4 rounded-full bg-status-error-bg-subtle flex items-center justify-center",
47
47
  children: /* @__PURE__ */ r("svg", {
48
- className: "w-6 h-6 text-status-error-text",
48
+ className: "size-6 text-status-error-text",
49
49
  fill: "none",
50
50
  viewBox: "0 0 24 24",
51
51
  stroke: "currentColor",
@@ -79,7 +79,7 @@ function o({ children: i, redirectTo: a = "/", redirect: o }) {
79
79
  let { isAuthenticated: s, isLoading: c } = t();
80
80
  return c ? /* @__PURE__ */ r("div", {
81
81
  className: "flex items-center justify-center min-h-screen bg-bg-canvas",
82
- children: /* @__PURE__ */ r("div", { className: "w-8 h-8 border-2 border-brand-primary border-t-transparent rounded-full animate-spin" })
82
+ children: /* @__PURE__ */ r("div", { className: "size-8 border-2 border-brand-primary border-t-transparent rounded-full animate-spin" })
83
83
  }) : s ? o ? /* @__PURE__ */ r(n, { children: o(a) }) : (typeof window < "u" && e(a), null) : /* @__PURE__ */ r(n, { children: i });
84
84
  }
85
85
  //#endregion
@@ -143,7 +143,7 @@ function w() {
143
143
  function T() {
144
144
  return /* @__PURE__ */ o("div", {
145
145
  className: "flex items-center justify-center min-h-screen",
146
- children: /* @__PURE__ */ o("div", { className: "animate-spin rounded-full h-8 w-8 border-2 border-action-primary-bg border-t-transparent" })
146
+ children: /* @__PURE__ */ o("div", { className: "animate-spin rounded-full size-8 border-2 border-action-primary-bg border-t-transparent" })
147
147
  });
148
148
  }
149
149
  //#endregion