@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.
Files changed (70) hide show
  1. package/CHANGELOG.md +176 -0
  2. package/dist/_shared/portal-container.js +9 -0
  3. package/dist/_types/atoms/AsyncMultiSelect/AsyncMultiSelect.d.ts +8 -7
  4. package/dist/_types/atoms/AsyncSelect/AsyncSelect.d.ts +8 -6
  5. package/dist/_types/atoms/InputPhone/InputPhone.d.ts +8 -5
  6. package/dist/_types/atoms/MenuButton/MenuButton.d.ts +22 -2
  7. package/dist/_types/atoms/MultiSelect/MultiSelect.d.ts +8 -6
  8. package/dist/_types/atoms/Popover/Popover.d.ts +8 -1
  9. package/dist/_types/atoms/Select/Select.d.ts +8 -7
  10. package/dist/_types/atoms/Tooltip/Tooltip.d.ts +7 -0
  11. package/dist/_types/constants/portal-container.d.ts +42 -0
  12. package/dist/_types/messages/BrandMessages.d.ts +29 -1
  13. package/dist/_types/messages/index.d.ts +1 -1
  14. package/dist/_types/molecules/Breadcrumb/Breadcrumb.d.ts +10 -2
  15. package/dist/_types/molecules/EmptyState/EmptyState.d.ts +2 -0
  16. package/dist/_types/molecules/Menu/Menu.d.ts +8 -1
  17. package/dist/_types/molecules/Modal/Modal.d.ts +8 -6
  18. package/dist/_types/molecules/OrgSwitcher/OrgSwitcher.d.ts +15 -1
  19. package/dist/_types/molecules/PageIntro/PageIntro.d.ts +12 -7
  20. package/dist/_types/molecules/PrevNextNav/PrevNextNav.d.ts +17 -2
  21. package/dist/_types/molecules/Sheet/Sheet.d.ts +8 -7
  22. package/dist/_types/molecules/SidebarNav/SidebarNav.d.ts +18 -3
  23. package/dist/_types/molecules/SiteNav/SiteNav.d.ts +9 -0
  24. package/dist/_types/molecules/TableOfContents/TableOfContents.d.ts +11 -2
  25. package/dist/_types/molecules/UserMenu/UserMenu.d.ts +16 -1
  26. package/dist/_types/sections/AppHeader/AppHeader.d.ts +8 -2
  27. package/dist/_types/sections/AppRoot/AppRoot.d.ts +12 -1
  28. package/dist/_types/sections/AppShell/AppShell.d.ts +14 -1
  29. package/dist/_types/sections/Hero/Hero.d.ts +4 -1
  30. package/dist/_types/sections/Sidebar/Sidebar.d.ts +27 -3
  31. package/dist/_types/sections/SiteHeader/SiteHeader.d.ts +22 -3
  32. package/dist/_types/sections/SiteShell/SiteShell.d.ts +11 -5
  33. package/dist/_types/templates/OnboardingShell/OnboardingShell.d.ts +19 -2
  34. package/dist/_types/templates/PublicPageShell/PublicPageShell.d.ts +42 -6
  35. package/dist/app-header.js +1 -1
  36. package/dist/app-launcher.js +62 -58
  37. package/dist/app-root.js +10 -8
  38. package/dist/app-shell.js +51 -50
  39. package/dist/async-multi-select.js +65 -64
  40. package/dist/async-select.js +49 -48
  41. package/dist/brand.css +12 -2
  42. package/dist/breadcrumb.js +24 -21
  43. package/dist/input-phone.js +38 -37
  44. package/dist/link.css +1 -1
  45. package/dist/menu-button.js +16 -14
  46. package/dist/menu.js +44 -40
  47. package/dist/modal.js +32 -31
  48. package/dist/multi-select.js +106 -105
  49. package/dist/onboarding-shell.js +36 -35
  50. package/dist/org-switcher.js +64 -59
  51. package/dist/page-intro.css +1 -1
  52. package/dist/page-intro.js +23 -17
  53. package/dist/popover.js +27 -22
  54. package/dist/prev-next-nav.js +38 -36
  55. package/dist/public-page-shell.js +24 -20
  56. package/dist/select.js +70 -69
  57. package/dist/sheet.js +30 -29
  58. package/dist/sidebar-nav.js +91 -90
  59. package/dist/sidebar.js +72 -71
  60. package/dist/site-header.js +44 -43
  61. package/dist/site-nav.js +27 -25
  62. package/dist/site-shell.js +23 -15
  63. package/dist/table-of-contents.js +30 -27
  64. package/dist/toaster.js +57 -53
  65. package/dist/tokens.css +2 -2
  66. package/dist/tooltip.js +45 -41
  67. package/dist/user-menu.js +58 -52
  68. package/package.json +1 -1
  69. package/src/tokens/molecules/page-intro.css +1 -1
  70. package/src/tokens/scss/molecules/_page-intro.scss +1 -1
@@ -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 { forwardRef as r, useCallback as i, useEffect as a, useId as o, useRef as s, useState as c } from "react";
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 ee(e, t) {
11
+ function f(e, t) {
11
12
  typeof e == "function" ? e(t) : e && (e.current = t);
12
13
  }
13
- var f = r(function({ onSearch: r, value: f, onValueChange: p, selectedOption: m, placeholder: h, disabled: g, readOnly: _, size: v = "md", debounceMs: y = 300, id: b, name: x, error: S = !1, required: te, onBlur: ne, className: C, "aria-label": w, "aria-describedby": T, emptyMessage: re, loadingLabel: ie, clearLabel: ae, container: E }, D) {
14
- let O = e("asyncSelect"), [k, A] = c(!1), [j, M] = c(""), [N, P] = c(!1), [F, I] = c([]), [oe, 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(), se = o(), Y = f === void 0 ? B : f, ce = m === void 0 ? H : m, X = (e) => `${se}-opt-${e}`, Z = i(async (e) => {
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 r(e);
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
- }, [r]);
28
+ }, [i]);
28
29
  a(() => () => {
29
30
  G.current += 1, W.current && clearTimeout(W.current);
30
31
  }, []);
31
- function le(e) {
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), y);
34
+ M(t), W.current && clearTimeout(W.current), W.current = setTimeout(() => void Z(t), b);
34
35
  }
35
- function ue(e) {
36
- g || _ || k || (e.preventDefault(), K.current?.focus(), z(-1), M(""), I([]), L(!1), A(!0), Z(""));
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
- f === void 0 && (V(e.value), U(e)), p?.(e.value, e), A(!1), z(-1), M("");
40
+ p === void 0 && (V(e.value), U(e)), m?.(e.value, e), A(!1), z(-1), M("");
40
41
  }
41
42
  function $() {
42
- f === void 0 && (V(null), U(null)), p?.(null, null), M(""), I([]), L(!1), K.current?.focus();
43
+ p === void 0 && (V(null), U(null)), m?.(null, null), M(""), I([]), L(!1), K.current?.focus();
43
44
  }
44
- function de(e) {
45
+ function pe(e) {
45
46
  e.stopPropagation(), $();
46
47
  }
47
- function fe(e) {
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 && !g && !_ ? (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), 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 pe(e, t) {
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 me = k ? j : ce?.label ?? "", he = [
60
+ let ge = k ? j : ue?.label ?? "", _e = [
60
61
  "async-select",
61
- v === "md" ? "" : `async-select--${v}`,
62
- g ? "async-select--disabled" : "",
63
- S ? "async-select--error" : "",
64
- C ?? ""
65
- ].filter(Boolean).join(" "), ge = ["async-select__content", v === "md" ? "" : `async-select__content--${v}`].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: pe,
69
+ onOpenChange: he,
69
70
  children: [/* @__PURE__ */ u("div", {
70
71
  ref: q,
71
- className: he,
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, ee(D, e);
77
+ K.current = e, f(oe, e);
77
78
  },
78
- id: b,
79
+ id: x,
79
80
  type: "text",
80
81
  className: "async-select__input",
81
- value: me,
82
- onChange: le,
83
- onPointerDown: ue,
84
- onKeyDown: fe,
85
- placeholder: O("placeholder", h),
86
- disabled: g,
87
- readOnly: _,
88
- "aria-label": w,
89
- "aria-describedby": T,
90
- "aria-invalid": S || void 0,
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
- x && /* @__PURE__ */ l("input", {
102
+ S && /* @__PURE__ */ l("input", {
102
103
  type: "hidden",
103
- name: x,
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 && !g && !_ && /* @__PURE__ */ l("button", {
111
+ !N && Y && !_ && !v && /* @__PURE__ */ l("button", {
111
112
  type: "button",
112
113
  className: "async-select__clear",
113
- "aria-label": O("clear", ae),
114
+ "aria-label": O("clear", ie),
114
115
  tabIndex: -1,
115
- onMouseDown: de,
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: E,
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: ge,
131
+ className: ve,
131
132
  initialFocus: !1,
132
133
  finalFocus: !1,
133
134
  children: /* @__PURE__ */ u("div", {
134
135
  role: "listbox",
135
- "aria-label": w ?? O("placeholder", h),
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", ie)
143
+ label: O("loading", D)
143
144
  })
144
145
  }),
145
- !N && oe && F.length === 0 && /* @__PURE__ */ l("div", {
146
+ !N && ce && F.length === 0 && /* @__PURE__ */ l("div", {
146
147
  className: "async-select__empty",
147
- children: O("empty", re)
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 { f as AsyncSelect };
174
+ export { p as AsyncSelect };