@burdenoff/fe-libs 2026.1027.2 → 2026.1027.4

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 (52) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +8 -5
  2. package/dist/chrome/MobileTabBar.d.ts +9 -2
  3. package/dist/chrome/MobileTabBar.js +51 -42
  4. package/dist/node_modules/@openuidev/devtools/dist/index.js +74 -0
  5. package/dist/node_modules/@openuidev/lang-core/dist/index.js +3779 -0
  6. package/dist/node_modules/@openuidev/lang-core/dist/shared-Dzgc28Wo.js +39 -0
  7. package/dist/node_modules/@openuidev/observability/dist/index.js +30 -0
  8. package/dist/node_modules/@openuidev/react-lang/dist/exports-CLfR509v.js +946 -0
  9. package/dist/node_modules/@openuidev/react-lang/dist/index.js +25 -0
  10. package/dist/node_modules/ci-info/index.js +34 -0
  11. package/dist/node_modules/ci-info/vendors.json.js +331 -0
  12. package/dist/node_modules/react-dom/cjs/react-dom-client.development.js +11168 -0
  13. package/dist/node_modules/react-dom/cjs/react-dom-client.production.js +7384 -0
  14. package/dist/node_modules/react-dom/client.js +19 -0
  15. package/dist/node_modules/scheduler/cjs/scheduler.development.js +203 -0
  16. package/dist/node_modules/scheduler/cjs/scheduler.production.js +203 -0
  17. package/dist/node_modules/scheduler/index.js +10 -0
  18. package/dist/node_modules/zod/v4/classic/errors.js +23 -0
  19. package/dist/node_modules/zod/v4/classic/iso.js +31 -0
  20. package/dist/node_modules/zod/v4/classic/parse.js +6 -0
  21. package/dist/node_modules/zod/v4/classic/schemas.js +339 -0
  22. package/dist/node_modules/zod/v4/core/api.js +491 -0
  23. package/dist/node_modules/zod/v4/core/checks.js +283 -0
  24. package/dist/node_modules/zod/v4/core/core.js +44 -0
  25. package/dist/node_modules/zod/v4/core/doc.js +23 -0
  26. package/dist/node_modules/zod/v4/core/errors.js +41 -0
  27. package/dist/node_modules/zod/v4/core/json-schema-processors.js +306 -0
  28. package/dist/node_modules/zod/v4/core/parse.js +68 -0
  29. package/dist/node_modules/zod/v4/core/regexes.js +25 -0
  30. package/dist/node_modules/zod/v4/core/registries.js +40 -0
  31. package/dist/node_modules/zod/v4/core/schemas.js +796 -0
  32. package/dist/node_modules/zod/v4/core/to-json-schema.js +222 -0
  33. package/dist/node_modules/zod/v4/core/util.js +266 -0
  34. package/dist/node_modules/zod/v4/core/versions.js +8 -0
  35. package/dist/shared/assistant/index.d.ts +4 -0
  36. package/dist/shared/assistant/openui/AssistantOpenUiBlock.d.ts +19 -0
  37. package/dist/shared/assistant/openui/AssistantOpenUiBlock.js +26 -0
  38. package/dist/shared/assistant/openui/AssistantRichContent.d.ts +13 -0
  39. package/dist/shared/assistant/openui/AssistantRichContent.js +37 -0
  40. package/dist/shared/assistant/openui/OpenUiBoundary.d.ts +26 -0
  41. package/dist/shared/assistant/openui/OpenUiBoundary.js +13 -0
  42. package/dist/shared/assistant/openui/generativeUi.d.ts +6 -0
  43. package/dist/shared/assistant/openui/generativeUi.js +12 -0
  44. package/dist/shared/assistant/openui/library.d.ts +2 -0
  45. package/dist/shared/assistant/openui/library.js +191 -0
  46. package/dist/shared/assistant/openui/limits.d.ts +12 -0
  47. package/dist/shared/assistant/openui/limits.js +7 -0
  48. package/dist/shared/assistant/openui/segments.d.ts +40 -0
  49. package/dist/shared/assistant/openui/segments.js +52 -0
  50. package/dist/shared/assistant/ui/AssistantMessageItem.js +115 -109
  51. package/dist/shared-assistant.js +108 -104
  52. package/package.json +2 -1
@@ -1,20 +1,23 @@
1
1
  //#region \0rolldown/runtime.js
2
- var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescriptor, r = Object.getOwnPropertyNames, i = Object.getPrototypeOf, a = Object.prototype.hasOwnProperty, o = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), s = (e, n) => {
2
+ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescriptor, r = Object.getOwnPropertyNames, i = Object.getPrototypeOf, a = Object.prototype.hasOwnProperty, o = (e, t) => () => (e && (t = e(e = 0)), t), s = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), c = (e, n) => {
3
3
  let r = {};
4
4
  for (var i in e) t(r, i, {
5
5
  get: e[i],
6
6
  enumerable: !0
7
7
  });
8
8
  return n || t(r, Symbol.toStringTag, { value: "Module" }), r;
9
- }, c = (e, i, o, s) => {
9
+ }, l = (e, i, o, s) => {
10
10
  if (i && typeof i == "object" || typeof i == "function") for (var c = r(i), l = 0, u = c.length, d; l < u; l++) d = c[l], !a.call(e, d) && d !== o && t(e, d, {
11
11
  get: ((e) => i[e]).bind(null, d),
12
12
  enumerable: !(s = n(i, d)) || s.enumerable
13
13
  });
14
14
  return e;
15
- }, l = (n, r, a) => (a = n == null ? {} : e(i(n)), c(r || !n || !n.__esModule ? t(a, "default", {
15
+ }, u = (n, r, a) => (a = n == null ? {} : e(i(n)), l(r || !n || !n.__esModule ? t(a, "default", {
16
16
  value: n,
17
17
  enumerable: !0
18
- }) : a, n));
18
+ }) : a, n)), d = (e) => a.call(e, "module.exports") ? e["module.exports"] : l(t({}, "__esModule", { value: !0 }), e), f = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (e, t) => (typeof require < "u" ? require : e)[t] }) : e)(function(e) {
19
+ if (typeof require < "u") return require.apply(this, arguments);
20
+ throw Error("Calling `require` for \"" + e + "\" in an environment that doesn't expose the `require` function. See https://rolldown.rs/in-depth/bundling-cjs#require-external-modules for more details.");
21
+ });
19
22
  //#endregion
20
- export { o as __commonJSMin, s as __exportAll, l as __toESM };
23
+ export { s as __commonJSMin, o as __esmMin, c as __exportAll, f as __require, d as __toCommonJS, u as __toESM };
@@ -1,7 +1,14 @@
1
+ import { ReactNode } from 'react';
1
2
  import { MobileActionItem } from './HeaderBar';
2
3
  export interface MobileTabBarProps {
3
- /** Product name — used for the tab bar's accessible label. */
4
+ /** Product name — used for the tab bar's accessible label and, with `logo`, the More sheet's brand header. */
4
5
  appName: string;
6
+ /**
7
+ * Brand mark shown with `appName` at the top of the More sheet (same
8
+ * `logo` prop shape as `ProductSideNav`: a short string or an SVG/img
9
+ * node). Omit to keep the sheet's plain "More" title.
10
+ */
11
+ logo?: ReactNode;
5
12
  /** Nav group ordering for the More sheet (same as ProductSideNav). */
6
13
  groupOrder?: string[];
7
14
  /** Nav group display labels for the More sheet (same as ProductSideNav). */
@@ -20,6 +27,6 @@ export interface MobileTabBarProps {
20
27
  hideWhenKeyboardOpen?: boolean;
21
28
  className?: string;
22
29
  }
23
- export declare function MobileTabBar({ appName, groupOrder, groupLabels, maxTabs, moreLabel, mobileActions, hideWhenKeyboardOpen, className, }: MobileTabBarProps): import('react/jsx-runtime').JSX.Element;
30
+ export declare function MobileTabBar({ appName, logo, groupOrder, groupLabels, maxTabs, moreLabel, mobileActions, hideWhenKeyboardOpen, className, }: MobileTabBarProps): import('react/jsx-runtime').JSX.Element;
24
31
  export { useMobileTabBarVisible } from './mobileTabBar/useMobileTabBarVisible';
25
32
  export { selectMobileTabs } from './mobileTabBar/selectTabs';
@@ -39,14 +39,14 @@ function D(e, t, n) {
39
39
  items: r.get(e) ?? []
40
40
  }));
41
41
  }
42
- function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4, moreLabel: M, mobileActions: N, hideWhenKeyboardOpen: P = !0, className: F }) {
43
- let I = o(), L = M ?? I("nav.more", "More"), R = w(), z = C(), B = c(), { items: V } = l(), [H, U] = v(!1), W = _(null), { tabs: G, more: K, hasMore: q } = g(() => f(V, j), [V, j]), J = g(() => D(K, O, A), [
44
- K,
45
- O,
46
- A
47
- ]), Y = !!N && N.length > 0, X = q || Y;
42
+ function O({ appName: a, logo: O, groupOrder: A = [], groupLabels: j = {}, maxTabs: M = 4, moreLabel: N, mobileActions: P, hideWhenKeyboardOpen: F = !0, className: I }) {
43
+ let L = o(), R = N ?? L("nav.more", "More"), z = w(), B = C(), V = c(), { items: H } = l(), [U, W] = v(!1), G = _(null), { tabs: K, more: q, hasMore: J } = g(() => f(H, M), [H, M]), Y = g(() => D(q, A, j), [
44
+ q,
45
+ A,
46
+ j
47
+ ]), X = !!P && P.length > 0, Z = J || X;
48
48
  h(() => {
49
- let e = W.current;
49
+ let e = G.current;
50
50
  if (!e || typeof window > "u") return;
51
51
  let t = document.documentElement, n = () => t.style.setProperty(T, `${e.offsetHeight}px`);
52
52
  n();
@@ -55,25 +55,25 @@ function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4
55
55
  r?.disconnect(), t.style.removeProperty(T);
56
56
  };
57
57
  }, []), m(() => {
58
- U(!1);
59
- }, [z.pathname]);
60
- let Z = p((e) => {
61
- E(), R(s(e, B));
62
- }, [R, B]), Q = g(() => !!q && K.some((e) => u(e, z.pathname)), [
58
+ W(!1);
59
+ }, [B.pathname]);
60
+ let Q = p((e) => {
61
+ E(), z(s(e, V));
62
+ }, [z, V]), $ = g(() => !!J && q.some((e) => u(e, B.pathname)), [
63
+ J,
63
64
  q,
64
- K,
65
- z.pathname
65
+ B.pathname
66
66
  ]);
67
67
  return /* @__PURE__ */ S(b, { children: [/* @__PURE__ */ S("nav", {
68
- ref: W,
68
+ ref: G,
69
69
  role: "tablist",
70
- "aria-label": I("nav.primaryNavigation", `${a} navigation`),
70
+ "aria-label": L("nav.primaryNavigation", `${a} navigation`),
71
71
  "data-mobile-tabbar": "",
72
72
  "data-shell-chrome": "",
73
- "data-keyboard-keep": P ? void 0 : "",
74
- className: e("fixed inset-x-0 bottom-0 z-[60] flex items-stretch", "bg-bg-surface text-text-primary", F),
75
- children: [G.map((t) => {
76
- let n = u(t, z.pathname);
73
+ "data-keyboard-keep": F ? void 0 : "",
74
+ className: e("fixed inset-x-0 bottom-0 z-[60] flex items-stretch", "bg-bg-surface text-text-primary", I),
75
+ children: [K.map((t) => {
76
+ let n = u(t, B.pathname);
77
77
  return /* @__PURE__ */ S("button", {
78
78
  type: "button",
79
79
  role: "tab",
@@ -83,7 +83,7 @@ function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4
83
83
  "data-mobile-tab": t.id,
84
84
  className: e("mobile-tab relative flex min-w-0 flex-1 flex-col items-center justify-center gap-0.5", "text-text-muted transition-colors duration-150", n && "text-text-link"),
85
85
  onClick: () => {
86
- n && !t.children?.length || Z(d(t));
86
+ n && !t.children?.length || Q(d(t));
87
87
  },
88
88
  children: [/* @__PURE__ */ S("span", {
89
89
  className: "mobile-tab__icon relative inline-flex items-center justify-center",
@@ -97,18 +97,18 @@ function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4
97
97
  children: t.label
98
98
  })]
99
99
  }, t.id);
100
- }), X ? /* @__PURE__ */ S("button", {
100
+ }), Z ? /* @__PURE__ */ S("button", {
101
101
  type: "button",
102
102
  role: "tab",
103
- "aria-selected": Q,
103
+ "aria-selected": $,
104
104
  "aria-haspopup": "dialog",
105
- "aria-expanded": H,
106
- "aria-label": L,
107
- "data-active": Q ? "" : void 0,
105
+ "aria-expanded": U,
106
+ "aria-label": R,
107
+ "data-active": $ ? "" : void 0,
108
108
  "data-mobile-tab": "__more",
109
- className: e("mobile-tab relative flex min-w-0 flex-1 flex-col items-center justify-center gap-0.5", "text-text-muted transition-colors duration-150", Q && "text-text-link"),
109
+ className: e("mobile-tab relative flex min-w-0 flex-1 flex-col items-center justify-center gap-0.5", "text-text-muted transition-colors duration-150", $ && "text-text-link"),
110
110
  onClick: () => {
111
- E(), U(!0);
111
+ E(), W(!0);
112
112
  },
113
113
  children: [/* @__PURE__ */ x("span", {
114
114
  className: "mobile-tab__icon inline-flex items-center justify-center",
@@ -116,19 +116,28 @@ function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4
116
116
  children: /* @__PURE__ */ x(y, {})
117
117
  }), /* @__PURE__ */ x("span", {
118
118
  className: "mobile-tab__label max-w-full truncate",
119
- children: L
119
+ children: R
120
120
  })]
121
121
  }) : null]
122
- }), X ? /* @__PURE__ */ x(t, {
123
- open: H,
124
- onOpenChange: U,
122
+ }), Z ? /* @__PURE__ */ x(t, {
123
+ open: U,
124
+ onOpenChange: W,
125
125
  children: /* @__PURE__ */ S(n, {
126
- "aria-label": L,
126
+ "aria-label": R,
127
127
  "data-swipe-ignore": "",
128
- children: [/* @__PURE__ */ x(r, { children: /* @__PURE__ */ x(i, { children: L }) }), /* @__PURE__ */ S("div", {
128
+ children: [/* @__PURE__ */ S(r, { children: [O ? /* @__PURE__ */ S("div", {
129
+ className: "mb-1 flex items-center gap-2",
130
+ children: [/* @__PURE__ */ x("div", {
131
+ className: "flex size-8 flex-shrink-0 items-center justify-center",
132
+ children: O
133
+ }), /* @__PURE__ */ x("span", {
134
+ className: "text-heading-h4 font-semibold text-text-primary",
135
+ children: a
136
+ })]
137
+ }) : null, /* @__PURE__ */ x(i, { children: R })] }), /* @__PURE__ */ S("div", {
129
138
  className: "flex flex-col gap-4 pb-2",
130
139
  "data-mobile-tabbar-more": "",
131
- children: [J.map((e) => /* @__PURE__ */ S("section", {
140
+ children: [Y.map((e) => /* @__PURE__ */ S("section", {
132
141
  "aria-label": e.label ?? void 0,
133
142
  children: [e.label ? /* @__PURE__ */ x("p", {
134
143
  className: "mb-1 px-1 text-[11px] font-medium uppercase tracking-wider text-text-muted",
@@ -136,29 +145,29 @@ function O({ appName: a, groupOrder: O = [], groupLabels: A = {}, maxTabs: j = 4
136
145
  }) : null, /* @__PURE__ */ x("ul", {
137
146
  className: "flex flex-col",
138
147
  children: e.items.map((e) => {
139
- let t = u(e, z.pathname);
148
+ let t = u(e, B.pathname);
140
149
  return /* @__PURE__ */ x("li", { children: /* @__PURE__ */ x(k, {
141
150
  icon: e.icon,
142
151
  label: e.label,
143
152
  badge: e.badge,
144
153
  active: t,
145
- onSelect: () => Z(d(e))
154
+ onSelect: () => Q(d(e))
146
155
  }) }, e.id);
147
156
  })
148
157
  })]
149
- }, e.key || "__ungrouped")), Y ? /* @__PURE__ */ S("section", {
150
- "aria-label": I("appShell.quickActions", "Quick Actions"),
158
+ }, e.key || "__ungrouped")), X ? /* @__PURE__ */ S("section", {
159
+ "aria-label": L("appShell.quickActions", "Quick Actions"),
151
160
  children: [/* @__PURE__ */ x("p", {
152
161
  className: "mb-1 px-1 text-[11px] font-medium uppercase tracking-wider text-text-muted",
153
- children: I("appShell.quickActions", "Quick Actions")
162
+ children: L("appShell.quickActions", "Quick Actions")
154
163
  }), /* @__PURE__ */ x("ul", {
155
164
  className: "flex flex-col",
156
- children: N?.map((e) => /* @__PURE__ */ x("li", { children: /* @__PURE__ */ x(k, {
165
+ children: P?.map((e) => /* @__PURE__ */ x("li", { children: /* @__PURE__ */ x(k, {
157
166
  icon: e.icon,
158
167
  label: e.label,
159
168
  active: !!e.isToggle && !!e.isActive,
160
169
  onSelect: () => {
161
- E(), e.onClick(), U(!1);
170
+ E(), e.onClick(), W(!1);
162
171
  }
163
172
  }) }, e.id))
164
173
  })]
@@ -0,0 +1,74 @@
1
+ "use client";
2
+ import { __toESM as e } from "../../../../_virtual/_rolldown/runtime.js";
3
+ import { useEffect as t } from "react";
4
+ //#region node_modules/@openuidev/devtools/dist/index.mjs
5
+ var n = /^\d+(\.\d+){0,2}$/;
6
+ function r(e) {
7
+ let t = e?.trim();
8
+ return t ? n.test(t) ? t : null : "latest";
9
+ }
10
+ var i = 300 * 1e3;
11
+ function a(e) {
12
+ let t = r(e);
13
+ if (t === null) return null;
14
+ let n = `https://cdn.jsdelivr.net/npm/@openuidev/devtools@${t}/dist/devtools.browser.js`;
15
+ return /^\d+\.\d+\.\d+$/.test(t) ? n : `${n}?t=${Math.floor(Date.now() / i)}`;
16
+ }
17
+ function o(t = {}) {
18
+ let { version: n, enabled: r, ...i } = t;
19
+ if (!(r ?? (typeof process > "u" || process.env.NODE_ENV !== "production")) || typeof document > "u") return () => {};
20
+ let o = a(n);
21
+ if (o === null) return console.warn(`[@openuidev/devtools] invalid version "${n?.trim()}" — use a major ("0"), minor ("0.1"), or exact ("0.1.0") pin. Widget not mounted.`), () => {};
22
+ let s = !1, c = () => {
23
+ s = !0;
24
+ };
25
+ return Promise.all([
26
+ import(
27
+ /* webpackIgnore: true */
28
+ /* @vite-ignore */
29
+ o
30
+ ),
31
+ import("react"),
32
+ import("react-dom"),
33
+ import("../../../react-dom/client.js").then((t) => /* @__PURE__ */ e(t.default, 1))
34
+ ]).then(([e, t, n, a]) => {
35
+ if (s) return;
36
+ let o = () => {
37
+ s || (c = e.mountOpenUIDevtools({
38
+ React: t,
39
+ ReactDOM: n,
40
+ ReactDOMClient: a,
41
+ loadReactLang: () => import("../../react-lang/dist/index.js"),
42
+ props: {
43
+ ...i,
44
+ enabled: r
45
+ }
46
+ }));
47
+ };
48
+ document.body ? o() : document.addEventListener("DOMContentLoaded", o, { once: !0 });
49
+ }).catch(() => {}), () => c();
50
+ }
51
+ function s(e) {
52
+ let { enabled: n, position: r, maxEvents: i, errorsOnly: a, autoOpenOnError: s, theme: c, version: l, __autoMounted: u } = e;
53
+ return t(() => o({
54
+ enabled: n,
55
+ position: r,
56
+ maxEvents: i,
57
+ errorsOnly: a,
58
+ autoOpenOnError: s,
59
+ theme: c,
60
+ version: l,
61
+ __autoMounted: u
62
+ }), [
63
+ n,
64
+ r,
65
+ i,
66
+ a,
67
+ s,
68
+ c,
69
+ l,
70
+ u
71
+ ]), null;
72
+ }
73
+ //#endregion
74
+ export { s as OpenUIDevtools };