@burdenoff/fe-libs 2026.1021.9 → 2026.1021.10

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.
@@ -3,20 +3,21 @@ import { useAppShell as t } from "../shared/providers/shell/AppShellContext.js";
3
3
  import { cn as n } from "../shared-utils.js";
4
4
  import { Button as r } from "./button.js";
5
5
  import { nativeImpact as i, nativeOpenUrl as a } from "../shared/native/consumers.js";
6
- import { SafeAreaView as o } from "../shared/native/SafeAreaView.js";
7
- import { useCallback as s, useRef as c, useState as l } from "react";
8
- import { jsx as u, jsxs as d } from "react/jsx-runtime";
6
+ import { MainLandmark as o } from "../shared/components/SkipToContent.js";
7
+ import { SafeAreaView as s } from "../shared/native/SafeAreaView.js";
8
+ import { useCallback as c, useRef as l, useState as u } from "react";
9
+ import { jsx as d, jsxs as f } from "react/jsx-runtime";
9
10
  //#region src/ui/native-welcome.tsx
10
- function f({ domain: e }) {
11
+ function p({ domain: e }) {
11
12
  let t = (t) => () => {
12
13
  a(`https://${e}/${t}`);
13
14
  };
14
- return /* @__PURE__ */ d("p", {
15
+ return /* @__PURE__ */ f("p", {
15
16
  className: "text-center text-xs leading-relaxed text-text-muted",
16
17
  children: [
17
18
  "By continuing you agree to our",
18
19
  " ",
19
- /* @__PURE__ */ u("button", {
20
+ /* @__PURE__ */ d("button", {
20
21
  type: "button",
21
22
  onClick: t("terms"),
22
23
  className: "text-text-link underline underline-offset-2 hover:text-text-linkHover",
@@ -25,7 +26,7 @@ function f({ domain: e }) {
25
26
  " ",
26
27
  "and",
27
28
  " ",
28
- /* @__PURE__ */ u("button", {
29
+ /* @__PURE__ */ d("button", {
29
30
  type: "button",
30
31
  onClick: t("privacy"),
31
32
  className: "text-text-link underline underline-offset-2 hover:text-text-linkHover",
@@ -35,113 +36,113 @@ function f({ domain: e }) {
35
36
  ]
36
37
  });
37
38
  }
38
- function p({ productName: a, tagline: p, headline: m, features: h = [], primaryCtaLabel: g = "Sign in", secondaryCtaLabel: _ = "Create account", onSignIn: v, onCreateAccount: y, legal: b, logoSrc: x = "/icons/icon.svg", className: S }) {
39
- let C = t(), w = a ?? C.productName, T = p ?? C.tagline, [E, D] = l(!1), [O, k] = l(0), A = c(null), j = e(), M = s(() => {
40
- let e = A.current;
39
+ function m({ productName: a, tagline: m, headline: h, features: g = [], primaryCtaLabel: _ = "Sign in", secondaryCtaLabel: v = "Create account", onSignIn: y, onCreateAccount: b, legal: x, logoSrc: S = "/icons/icon.svg", className: C }) {
40
+ let w = t(), T = a ?? w.productName, E = m ?? w.tagline, [D, O] = u(!1), [k, A] = u(0), j = l(null), M = e(), N = c(() => {
41
+ let e = j.current;
41
42
  if (!e) return;
42
43
  let t = e.clientWidth || 1;
43
- k(Math.round(e.scrollLeft / t));
44
- }, []), N = s((e) => {
45
- let t = A.current;
44
+ A(Math.round(e.scrollLeft / t));
45
+ }, []), P = c((e) => {
46
+ let t = j.current;
46
47
  t && t.scrollTo({
47
48
  left: e * t.clientWidth,
48
49
  behavior: "smooth"
49
50
  });
50
- }, []), P = (e) => () => {
51
+ }, []), F = (e) => () => {
51
52
  e && (i("light"), e());
52
- }, F = b === void 0 ? C.domain ? /* @__PURE__ */ u(f, { domain: C.domain }) : null : b;
53
- return /* @__PURE__ */ u(o, {
53
+ }, I = x === void 0 ? w.domain ? /* @__PURE__ */ d(p, { domain: w.domain }) : null : x;
54
+ return /* @__PURE__ */ d(s, {
54
55
  "data-native-welcome": "",
55
- className: n("flex min-h-[100dvh] flex-col bg-bg-canvas text-text-primary", j && "items-center justify-center", S),
56
- children: /* @__PURE__ */ d("div", {
57
- className: n("flex flex-1 flex-col", j && "my-auto w-full max-w-[480px] rounded-card border border-border-subtle bg-bg-surface shadow-elevation-3"),
56
+ className: n("flex min-h-[100dvh] flex-col bg-bg-canvas text-text-primary", M && "items-center justify-center", C),
57
+ children: /* @__PURE__ */ f(o, {
58
+ className: n("flex flex-1 flex-col", M && "my-auto w-full max-w-[480px] rounded-card border border-border-subtle bg-bg-surface shadow-elevation-3"),
58
59
  children: [
59
- /* @__PURE__ */ d("header", {
60
+ /* @__PURE__ */ f("header", {
60
61
  "data-shell-chrome": "",
61
62
  className: "flex flex-col items-center gap-4 px-6 pb-6 pt-12 text-center",
62
63
  children: [
63
- E ? /* @__PURE__ */ u("span", {
64
+ D ? /* @__PURE__ */ d("span", {
64
65
  "aria-hidden": "true",
65
66
  className: "flex size-16 items-center justify-center rounded-2xl bg-action-primary-bg text-2xl font-semibold text-action-primary-text shadow-elevation-1",
66
- children: C.brandInitial
67
- }) : /* @__PURE__ */ u("img", {
68
- src: x,
67
+ children: w.brandInitial
68
+ }) : /* @__PURE__ */ d("img", {
69
+ src: S,
69
70
  alt: "",
70
71
  "aria-hidden": "true",
71
- onError: () => D(!0),
72
+ onError: () => O(!0),
72
73
  className: "size-16 rounded-2xl object-contain"
73
74
  }),
74
- m && /* @__PURE__ */ u("p", {
75
+ h && /* @__PURE__ */ d("p", {
75
76
  className: "text-sm font-medium uppercase tracking-wide text-text-muted",
76
- children: m
77
+ children: h
77
78
  }),
78
- /* @__PURE__ */ u("h1", {
79
+ /* @__PURE__ */ d("h1", {
79
80
  className: "text-3xl font-bold tracking-tight text-text-primary",
80
- children: w
81
+ children: T
81
82
  }),
82
- T && /* @__PURE__ */ u("p", {
83
+ E && /* @__PURE__ */ d("p", {
83
84
  className: "max-w-sm text-base leading-relaxed text-text-secondary",
84
- children: T
85
+ children: E
85
86
  })
86
87
  ]
87
88
  }),
88
- h.length > 0 && /* @__PURE__ */ d("section", {
89
+ g.length > 0 && /* @__PURE__ */ f("section", {
89
90
  className: "flex flex-1 flex-col justify-center gap-4 py-2",
90
- children: [/* @__PURE__ */ u("div", {
91
- ref: A,
91
+ children: [/* @__PURE__ */ d("div", {
92
+ ref: j,
92
93
  "data-native-welcome-carousel": "",
93
94
  "data-swipe-ignore": "",
94
- onScroll: M,
95
+ onScroll: N,
95
96
  className: "flex snap-x snap-mandatory overflow-x-auto scroll-smooth",
96
- children: h.map((e) => {
97
+ children: g.map((e) => {
97
98
  let t = e.icon;
98
- return /* @__PURE__ */ d("article", {
99
+ return /* @__PURE__ */ f("article", {
99
100
  className: "flex w-full shrink-0 snap-center flex-col items-center gap-3 px-8 text-center",
100
101
  children: [
101
- t && /* @__PURE__ */ u("span", {
102
+ t && /* @__PURE__ */ d("span", {
102
103
  className: "flex size-12 items-center justify-center rounded-xl bg-bg-accentSubtle text-action-primary-bg",
103
- children: /* @__PURE__ */ u(t, { className: "size-6" })
104
+ children: /* @__PURE__ */ d(t, { className: "size-6" })
104
105
  }),
105
- /* @__PURE__ */ u("h2", {
106
+ /* @__PURE__ */ d("h2", {
106
107
  className: "text-lg font-semibold text-text-primary",
107
108
  children: e.title
108
109
  }),
109
- /* @__PURE__ */ u("p", {
110
+ /* @__PURE__ */ d("p", {
110
111
  className: "max-w-sm text-sm leading-relaxed text-text-secondary",
111
112
  children: e.description
112
113
  })
113
114
  ]
114
115
  }, e.title);
115
116
  })
116
- }), h.length > 1 && /* @__PURE__ */ u("div", {
117
+ }), g.length > 1 && /* @__PURE__ */ d("div", {
117
118
  className: "flex items-center justify-center gap-2",
118
- children: h.map((e, t) => /* @__PURE__ */ u("button", {
119
+ children: g.map((e, t) => /* @__PURE__ */ d("button", {
119
120
  type: "button",
120
- "aria-current": t === O ? "true" : void 0,
121
+ "aria-current": t === k ? "true" : void 0,
121
122
  "aria-label": `Show highlight: ${e.title}`,
122
- onClick: () => N(t),
123
- className: n("size-2 rounded-full transition-colors", t === O ? "bg-action-primary-bg" : "bg-border-strong")
123
+ onClick: () => P(t),
124
+ className: n("size-2 rounded-full transition-colors", t === k ? "bg-action-primary-bg" : "bg-border-strong")
124
125
  }, e.title))
125
126
  })]
126
127
  }),
127
- /* @__PURE__ */ d("footer", {
128
+ /* @__PURE__ */ f("footer", {
128
129
  "data-shell-chrome": "",
129
130
  className: "mt-auto flex flex-col gap-3 border-t border-border-subtle bg-bg-canvas px-6 pb-6 pt-4",
130
131
  children: [
131
- /* @__PURE__ */ u(r, {
132
+ /* @__PURE__ */ d(r, {
132
133
  size: "lg",
133
134
  className: "w-full",
134
- onClick: P(v),
135
- children: g
135
+ onClick: F(y),
136
+ children: _
136
137
  }),
137
- y && /* @__PURE__ */ u(r, {
138
+ b && /* @__PURE__ */ d(r, {
138
139
  size: "lg",
139
140
  variant: "ghost",
140
141
  className: "w-full",
141
- onClick: P(y),
142
- children: _
142
+ onClick: F(b),
143
+ children: v
143
144
  }),
144
- F
145
+ I
145
146
  ]
146
147
  })
147
148
  ]
@@ -149,4 +150,4 @@ function p({ productName: a, tagline: p, headline: m, features: h = [], primaryC
149
150
  });
150
151
  }
151
152
  //#endregion
152
- export { p as NativeWelcome };
153
+ export { m as NativeWelcome };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/fe-libs",
3
- "version": "2026.1021.9",
3
+ "version": "2026.1021.10",
4
4
  "description": "Burdenoff frontend primitives and domain libraries",
5
5
  "type": "module",
6
6
  "bin": {