@studiolxd/brand 46.0.0 → 47.1.0
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.
- package/CHANGELOG.md +176 -0
- package/dist/_shared/portal-container.js +9 -0
- package/dist/_types/atoms/AsyncMultiSelect/AsyncMultiSelect.d.ts +8 -7
- package/dist/_types/atoms/AsyncSelect/AsyncSelect.d.ts +8 -6
- package/dist/_types/atoms/InputPhone/InputPhone.d.ts +8 -5
- package/dist/_types/atoms/MenuButton/MenuButton.d.ts +22 -2
- package/dist/_types/atoms/MultiSelect/MultiSelect.d.ts +8 -6
- package/dist/_types/atoms/Popover/Popover.d.ts +8 -1
- package/dist/_types/atoms/Select/Select.d.ts +8 -7
- package/dist/_types/atoms/Tooltip/Tooltip.d.ts +7 -0
- package/dist/_types/constants/portal-container.d.ts +42 -0
- package/dist/_types/messages/BrandMessages.d.ts +29 -1
- package/dist/_types/messages/index.d.ts +1 -1
- package/dist/_types/molecules/Breadcrumb/Breadcrumb.d.ts +10 -2
- package/dist/_types/molecules/EmptyState/EmptyState.d.ts +2 -0
- package/dist/_types/molecules/Menu/Menu.d.ts +8 -1
- package/dist/_types/molecules/Modal/Modal.d.ts +8 -6
- package/dist/_types/molecules/OrgSwitcher/OrgSwitcher.d.ts +15 -1
- package/dist/_types/molecules/PageIntro/PageIntro.d.ts +12 -7
- package/dist/_types/molecules/PrevNextNav/PrevNextNav.d.ts +17 -2
- package/dist/_types/molecules/Sheet/Sheet.d.ts +8 -7
- package/dist/_types/molecules/SidebarNav/SidebarNav.d.ts +18 -3
- package/dist/_types/molecules/SiteNav/SiteNav.d.ts +9 -0
- package/dist/_types/molecules/TableOfContents/TableOfContents.d.ts +11 -2
- package/dist/_types/molecules/UserMenu/UserMenu.d.ts +16 -1
- package/dist/_types/sections/AppHeader/AppHeader.d.ts +8 -2
- package/dist/_types/sections/AppRoot/AppRoot.d.ts +12 -1
- package/dist/_types/sections/AppShell/AppShell.d.ts +14 -1
- package/dist/_types/sections/Hero/Hero.d.ts +4 -1
- package/dist/_types/sections/Sidebar/Sidebar.d.ts +27 -3
- package/dist/_types/sections/SiteHeader/SiteHeader.d.ts +22 -3
- package/dist/_types/sections/SiteShell/SiteShell.d.ts +11 -5
- package/dist/_types/templates/OnboardingShell/OnboardingShell.d.ts +19 -2
- package/dist/_types/templates/PublicPageShell/PublicPageShell.d.ts +42 -6
- package/dist/app-header.js +1 -1
- package/dist/app-launcher.js +62 -58
- package/dist/app-root.js +10 -8
- package/dist/app-shell.js +51 -50
- package/dist/async-multi-select.js +65 -64
- package/dist/async-select.js +49 -48
- package/dist/brand.css +12 -2
- package/dist/breadcrumb.js +24 -21
- package/dist/input-phone.js +38 -37
- package/dist/link.css +1 -1
- package/dist/menu-button.js +16 -14
- package/dist/menu.js +44 -40
- package/dist/modal.js +32 -31
- package/dist/multi-select.js +106 -105
- package/dist/onboarding-shell.js +36 -35
- package/dist/org-switcher.js +64 -59
- package/dist/page-intro.css +1 -1
- package/dist/page-intro.js +23 -17
- package/dist/popover.js +27 -22
- package/dist/prev-next-nav.js +38 -36
- package/dist/public-page-shell.js +24 -20
- package/dist/select.js +70 -69
- package/dist/sheet.js +30 -29
- package/dist/sidebar-nav.js +91 -90
- package/dist/sidebar.js +72 -71
- package/dist/site-header.js +44 -43
- package/dist/site-nav.js +27 -25
- package/dist/site-shell.js +23 -15
- package/dist/table-of-contents.js +30 -27
- package/dist/toaster.js +57 -53
- package/dist/tokens.css +2 -2
- package/dist/tooltip.js +45 -41
- package/dist/user-menu.js +58 -52
- package/package.json +1 -1
- package/src/tokens/molecules/page-intro.css +1 -1
- package/src/tokens/scss/molecules/_page-intro.scss +1 -1
package/dist/async-select.js
CHANGED
|
@@ -3,19 +3,20 @@ import './async-select.css';
|
|
|
3
3
|
import { n as e } from "./_shared/brandmessagescontext.js";
|
|
4
4
|
import { Icon as t } from "./icon.js";
|
|
5
5
|
import { Spinner as n } from "./spinner.js";
|
|
6
|
-
import {
|
|
6
|
+
import { n as r } from "./_shared/portal-container.js";
|
|
7
|
+
import { forwardRef as i, useCallback as ee, useEffect as a, useId as o, useRef as s, useState as c } from "react";
|
|
7
8
|
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
8
9
|
import { Popover as d } from "@base-ui/react/popover";
|
|
9
10
|
//#region src/stories/atoms/AsyncSelect/AsyncSelect.tsx
|
|
10
|
-
function
|
|
11
|
+
function f(e, t) {
|
|
11
12
|
typeof e == "function" ? e(t) : e && (e.current = t);
|
|
12
13
|
}
|
|
13
|
-
var
|
|
14
|
-
let O = e("asyncSelect"), [k, A] = c(!1), [j, M] = c(""), [N, P] = c(!1), [F, I] = c([]), [
|
|
14
|
+
var p = i(function({ onSearch: i, value: p, onValueChange: m, selectedOption: h, placeholder: g, disabled: _, readOnly: v, size: y = "md", debounceMs: b = 300, id: x, name: S, error: C = !1, required: te, onBlur: ne, className: w, "aria-label": T, "aria-describedby": re, emptyMessage: E, loadingLabel: D, clearLabel: ie, container: ae }, oe) {
|
|
15
|
+
let O = e("asyncSelect"), se = r(ae), [k, A] = c(!1), [j, M] = c(""), [N, P] = c(!1), [F, I] = c([]), [ce, L] = c(!1), [R, z] = c(-1), [B, V] = c(null), [H, U] = c(null), W = s(null), G = s(0), K = s(null), q = s(null), J = o(), le = o(), Y = p === void 0 ? B : p, ue = h === void 0 ? H : h, X = (e) => `${le}-opt-${e}`, Z = ee(async (e) => {
|
|
15
16
|
let t = ++G.current;
|
|
16
17
|
P(!0), L(!1);
|
|
17
18
|
try {
|
|
18
|
-
let n = await
|
|
19
|
+
let n = await i(e);
|
|
19
20
|
if (t !== G.current) return;
|
|
20
21
|
I(n), z(-1);
|
|
21
22
|
} catch {
|
|
@@ -24,30 +25,30 @@ var f = r(function({ onSearch: r, value: f, onValueChange: p, selectedOption: m,
|
|
|
24
25
|
} finally {
|
|
25
26
|
t === G.current && (P(!1), L(!0));
|
|
26
27
|
}
|
|
27
|
-
}, [
|
|
28
|
+
}, [i]);
|
|
28
29
|
a(() => () => {
|
|
29
30
|
G.current += 1, W.current && clearTimeout(W.current);
|
|
30
31
|
}, []);
|
|
31
|
-
function
|
|
32
|
+
function de(e) {
|
|
32
33
|
let t = e.target.value;
|
|
33
|
-
M(t), W.current && clearTimeout(W.current), W.current = setTimeout(() => void Z(t),
|
|
34
|
+
M(t), W.current && clearTimeout(W.current), W.current = setTimeout(() => void Z(t), b);
|
|
34
35
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
36
|
+
function fe(e) {
|
|
37
|
+
_ || v || k || (e.preventDefault(), K.current?.focus(), z(-1), M(""), I([]), L(!1), A(!0), Z(""));
|
|
37
38
|
}
|
|
38
39
|
function Q(e) {
|
|
39
|
-
|
|
40
|
+
p === void 0 && (V(e.value), U(e)), m?.(e.value, e), A(!1), z(-1), M("");
|
|
40
41
|
}
|
|
41
42
|
function $() {
|
|
42
|
-
|
|
43
|
+
p === void 0 && (V(null), U(null)), m?.(null, null), M(""), I([]), L(!1), K.current?.focus();
|
|
43
44
|
}
|
|
44
|
-
function
|
|
45
|
+
function pe(e) {
|
|
45
46
|
e.stopPropagation(), $();
|
|
46
47
|
}
|
|
47
|
-
function
|
|
48
|
-
e.key === "ArrowDown" ? (e.preventDefault(), k ? z((e) => Math.min(e + 1, F.length - 1)) : (A(!0), Z(j))) : e.key === "ArrowUp" ? (e.preventDefault(), z((e) => Math.max(e - 1, -1))) : e.key === "Enter" && R >= 0 && F[R] ? (e.preventDefault(), Q(F[R])) : e.key === "Escape" ? (A(!1), M(""), z(-1)) : e.key === "Tab" ? (A(!1), z(-1)) : (e.key === "Backspace" || e.key === "Delete") && j === "" && Y && !
|
|
48
|
+
function me(e) {
|
|
49
|
+
e.key === "ArrowDown" ? (e.preventDefault(), k ? z((e) => Math.min(e + 1, F.length - 1)) : (A(!0), Z(j))) : e.key === "ArrowUp" ? (e.preventDefault(), z((e) => Math.max(e - 1, -1))) : e.key === "Enter" && R >= 0 && F[R] ? (e.preventDefault(), Q(F[R])) : e.key === "Escape" ? (A(!1), M(""), z(-1)) : e.key === "Tab" ? (A(!1), z(-1)) : (e.key === "Backspace" || e.key === "Delete") && j === "" && Y && !_ && !v ? (e.preventDefault(), $()) : !k && e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey && (e.preventDefault(), M(e.key), A(!0), I([]), L(!1), W.current && clearTimeout(W.current), W.current = setTimeout(() => void Z(e.key), b));
|
|
49
50
|
}
|
|
50
|
-
function
|
|
51
|
+
function he(e, t) {
|
|
51
52
|
if (!e) {
|
|
52
53
|
if (t.reason === "outside-press") {
|
|
53
54
|
let e = t.event?.target;
|
|
@@ -56,38 +57,38 @@ var f = r(function({ onSearch: r, value: f, onValueChange: p, selectedOption: m,
|
|
|
56
57
|
A(!1), M(""), z(-1);
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
|
-
let
|
|
60
|
+
let ge = k ? j : ue?.label ?? "", _e = [
|
|
60
61
|
"async-select",
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
].filter(Boolean).join(" "),
|
|
62
|
+
y === "md" ? "" : `async-select--${y}`,
|
|
63
|
+
_ ? "async-select--disabled" : "",
|
|
64
|
+
C ? "async-select--error" : "",
|
|
65
|
+
w ?? ""
|
|
66
|
+
].filter(Boolean).join(" "), ve = ["async-select__content", y === "md" ? "" : `async-select__content--${y}`].filter(Boolean).join(" ");
|
|
66
67
|
return /* @__PURE__ */ u(d.Root, {
|
|
67
68
|
open: k,
|
|
68
|
-
onOpenChange:
|
|
69
|
+
onOpenChange: he,
|
|
69
70
|
children: [/* @__PURE__ */ u("div", {
|
|
70
71
|
ref: q,
|
|
71
|
-
className:
|
|
72
|
+
className: _e,
|
|
72
73
|
"data-popup-open": k || void 0,
|
|
73
74
|
children: [
|
|
74
75
|
/* @__PURE__ */ l("input", {
|
|
75
76
|
ref: (e) => {
|
|
76
|
-
K.current = e,
|
|
77
|
+
K.current = e, f(oe, e);
|
|
77
78
|
},
|
|
78
|
-
id:
|
|
79
|
+
id: x,
|
|
79
80
|
type: "text",
|
|
80
81
|
className: "async-select__input",
|
|
81
|
-
value:
|
|
82
|
-
onChange:
|
|
83
|
-
onPointerDown:
|
|
84
|
-
onKeyDown:
|
|
85
|
-
placeholder: O("placeholder",
|
|
86
|
-
disabled:
|
|
87
|
-
readOnly:
|
|
88
|
-
"aria-label":
|
|
89
|
-
"aria-describedby":
|
|
90
|
-
"aria-invalid":
|
|
82
|
+
value: ge,
|
|
83
|
+
onChange: de,
|
|
84
|
+
onPointerDown: fe,
|
|
85
|
+
onKeyDown: me,
|
|
86
|
+
placeholder: O("placeholder", g),
|
|
87
|
+
disabled: _,
|
|
88
|
+
readOnly: v,
|
|
89
|
+
"aria-label": T,
|
|
90
|
+
"aria-describedby": re,
|
|
91
|
+
"aria-invalid": C || void 0,
|
|
91
92
|
"aria-required": te || void 0,
|
|
92
93
|
"aria-expanded": k,
|
|
93
94
|
"aria-haspopup": "listbox",
|
|
@@ -98,21 +99,21 @@ var f = r(function({ onSearch: r, value: f, onValueChange: p, selectedOption: m,
|
|
|
98
99
|
"aria-autocomplete": "list",
|
|
99
100
|
onBlur: ne
|
|
100
101
|
}),
|
|
101
|
-
|
|
102
|
+
S && /* @__PURE__ */ l("input", {
|
|
102
103
|
type: "hidden",
|
|
103
|
-
name:
|
|
104
|
+
name: S,
|
|
104
105
|
value: Y ?? ""
|
|
105
106
|
}),
|
|
106
107
|
N && /* @__PURE__ */ l(n, {
|
|
107
108
|
size: "sm",
|
|
108
109
|
"aria-hidden": !0
|
|
109
110
|
}),
|
|
110
|
-
!N && Y && !
|
|
111
|
+
!N && Y && !_ && !v && /* @__PURE__ */ l("button", {
|
|
111
112
|
type: "button",
|
|
112
113
|
className: "async-select__clear",
|
|
113
|
-
"aria-label": O("clear",
|
|
114
|
+
"aria-label": O("clear", ie),
|
|
114
115
|
tabIndex: -1,
|
|
115
|
-
onMouseDown:
|
|
116
|
+
onMouseDown: pe,
|
|
116
117
|
children: /* @__PURE__ */ l(t, {
|
|
117
118
|
name: "close",
|
|
118
119
|
size: "xs"
|
|
@@ -120,31 +121,31 @@ var f = r(function({ onSearch: r, value: f, onValueChange: p, selectedOption: m,
|
|
|
120
121
|
})
|
|
121
122
|
]
|
|
122
123
|
}), /* @__PURE__ */ l(d.Portal, {
|
|
123
|
-
container:
|
|
124
|
+
container: se,
|
|
124
125
|
children: /* @__PURE__ */ l(d.Positioner, {
|
|
125
126
|
className: "async-select__positioner",
|
|
126
127
|
anchor: q,
|
|
127
128
|
align: "start",
|
|
128
129
|
sideOffset: -1,
|
|
129
130
|
children: /* @__PURE__ */ l(d.Popup, {
|
|
130
|
-
className:
|
|
131
|
+
className: ve,
|
|
131
132
|
initialFocus: !1,
|
|
132
133
|
finalFocus: !1,
|
|
133
134
|
children: /* @__PURE__ */ u("div", {
|
|
134
135
|
role: "listbox",
|
|
135
|
-
"aria-label":
|
|
136
|
+
"aria-label": T ?? O("placeholder", g),
|
|
136
137
|
id: J,
|
|
137
138
|
children: [
|
|
138
139
|
N && /* @__PURE__ */ l("div", {
|
|
139
140
|
className: "async-select__loading",
|
|
140
141
|
children: /* @__PURE__ */ l(n, {
|
|
141
142
|
size: "sm",
|
|
142
|
-
label: O("loading",
|
|
143
|
+
label: O("loading", D)
|
|
143
144
|
})
|
|
144
145
|
}),
|
|
145
|
-
!N &&
|
|
146
|
+
!N && ce && F.length === 0 && /* @__PURE__ */ l("div", {
|
|
146
147
|
className: "async-select__empty",
|
|
147
|
-
children: O("empty",
|
|
148
|
+
children: O("empty", E)
|
|
148
149
|
}),
|
|
149
150
|
!N && F.map((e, t) => {
|
|
150
151
|
let n = e.value === Y, r = R === t;
|
|
@@ -170,4 +171,4 @@ var f = r(function({ onSearch: r, value: f, onValueChange: p, selectedOption: m,
|
|
|
170
171
|
});
|
|
171
172
|
});
|
|
172
173
|
//#endregion
|
|
173
|
-
export {
|
|
174
|
+
export { p as AsyncSelect };
|