@studiolxd/brand 49.28.0 → 50.0.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/LICENSE +61 -0
- package/README.md +26 -4
- package/dist/_shared/assign-ref.js +6 -0
- package/dist/_shared/calendargrid.js +57 -57
- package/dist/_shared/datepicker.js +67 -65
- package/dist/_shared/default-render-link.js +7 -0
- package/dist/_shared/dialogsurface.js +1 -1
- package/dist/_shared/dropdownitems.js +14 -20
- package/dist/_shared/imagecropdialog.js +38 -441
- package/dist/_shared/overflow-focusable.js +15 -0
- package/dist/_shared/side-offset.js +13 -0
- package/dist/_shared/tokens.js +31 -129
- package/dist/_shared/useasyncoptions.js +30 -0
- package/dist/_types/atoms/Accordion/Accordion.d.ts +7 -1
- package/dist/_types/atoms/AsyncMultiSelect/AsyncMultiSelect.d.ts +8 -4
- package/dist/_types/atoms/AsyncSelect/AsyncSelect.d.ts +8 -4
- package/dist/_types/atoms/Autocomplete/Autocomplete.d.ts +10 -6
- package/dist/_types/atoms/CloseButton/CloseButton.d.ts +13 -3
- package/dist/_types/atoms/Fieldset/Fieldset.d.ts +1 -1
- package/dist/_types/atoms/InputPhone/InputPhone.d.ts +2 -0
- package/dist/_types/atoms/MultiSelect/MultiSelect.d.ts +11 -10
- package/dist/_types/atoms/Select/Select.d.ts +6 -0
- package/dist/_types/atoms/Skeleton/Skeleton.d.ts +1 -1
- package/dist/_types/atoms/Spinner/Spinner.d.ts +3 -1
- package/dist/_types/atoms/TypingIndicator/TypingIndicator.d.ts +3 -1
- package/dist/_types/atoms/_shared/useAsyncOptions.d.ts +36 -0
- package/dist/_types/constants/assign-ref.d.ts +12 -0
- package/dist/_types/constants/default-render-link.d.ts +13 -0
- package/dist/_types/constants/overflow-focusable.d.ts +15 -0
- package/dist/_types/constants/side-offset.d.ts +18 -0
- package/dist/_types/email/EmailLayout.d.ts +38 -21
- package/dist/_types/messages/BrandMessages.d.ts +8 -2
- package/dist/_types/messages/index.d.ts +1 -1
- package/dist/_types/molecules/AppLauncher/AppLauncher.d.ts +9 -3
- package/dist/_types/molecules/Calendar/Calendar.d.ts +10 -1
- package/dist/_types/molecules/CalendarPlanner/CalendarPlanner.d.ts +43 -13
- package/dist/_types/molecules/CalendarRoster/CalendarRoster.d.ts +10 -2
- package/dist/_types/molecules/ContextMenu/ContextMenu.d.ts +8 -1
- package/dist/_types/molecules/DatePicker/DatePicker.d.ts +6 -0
- package/dist/_types/molecules/DateTimeField/DateTimeField.d.ts +2 -0
- package/dist/_types/molecules/DocsSearch/DocsSearch.d.ts +2 -2
- package/dist/_types/molecules/FloatingToolbar/FloatingToolbar.d.ts +83 -0
- package/dist/_types/molecules/FormField/FormField.d.ts +5 -6
- package/dist/_types/molecules/LanguageSwitcher/LanguageSwitcher.d.ts +7 -3
- package/dist/_types/molecules/LoadingRegion/LoadingRegion.d.ts +12 -4
- package/dist/_types/molecules/Modal/Modal.d.ts +10 -4
- package/dist/_types/molecules/OrgSwitcher/OrgSwitcher.d.ts +7 -1
- package/dist/_types/molecules/PasswordField/PasswordField.d.ts +9 -2
- package/dist/_types/molecules/PrevNextNav/PrevNextNav.d.ts +3 -1
- package/dist/_types/molecules/RecurrenceField/RecurrenceField.d.ts +6 -1
- package/dist/_types/molecules/SidebarNav/SidebarNav.d.ts +18 -2
- package/dist/_types/molecules/SiteNav/SiteNav.d.ts +4 -1
- package/dist/_types/molecules/StatTile/StatTile.d.ts +15 -1
- package/dist/_types/molecules/Table/Table.d.ts +1 -1
- package/dist/_types/molecules/ThemeSwitcher/ThemeSwitcher.d.ts +38 -3
- package/dist/_types/molecules/Toast/Toaster.d.ts +8 -0
- package/dist/_types/molecules/UserMenu/UserMenu.d.ts +7 -1
- package/dist/_types/molecules/_shared/calendarGrid.d.ts +15 -2
- package/dist/_types/molecules/_shared/dialogSurface.d.ts +6 -1
- package/dist/_types/molecules/_shared/dropdownItems.d.ts +0 -2
- package/dist/_types/sections/AppHeader/AppHeader.d.ts +3 -1
- package/dist/_types/sections/AppShell/AppShell.d.ts +6 -1
- package/dist/_types/sections/LegalFooter/LegalFooter.d.ts +7 -1
- package/dist/_types/sections/Sidebar/Sidebar.d.ts +3 -1
- package/dist/_types/sections/SiteFooter/SiteFooter.d.ts +6 -2
- package/dist/_types/sections/SiteHeader/SiteHeader.d.ts +2 -2
- package/dist/_types/templates/ConnectorAuth/ConnectorAuthShell.d.ts +5 -2
- package/dist/_types/templates/ConnectorAuth/ConnectorConsentPage.d.ts +1 -1
- package/dist/_types/templates/ConnectorAuth/ConnectorExternalSignInPage.d.ts +1 -1
- package/dist/_types/templates/ConnectorAuth/ConnectorRejectionPage.d.ts +1 -1
- package/dist/_types/templates/ConnectorAuth/ConnectorSignInPage.d.ts +1 -1
- package/dist/_types/templates/ErrorPage/ErrorPage.d.ts +7 -1
- package/dist/_types/templates/NotFoundPage/NotFoundPage.d.ts +7 -1
- package/dist/_types/templates/PublicPageShell/PublicPageShell.d.ts +6 -0
- package/dist/accordion.css +1 -1
- package/dist/accordion.js +6 -5
- package/dist/alert.css +1 -1
- package/dist/app-header.js +16 -21
- package/dist/app-launcher.css +1 -1
- package/dist/app-launcher.js +29 -21
- package/dist/app-shell.js +43 -43
- package/dist/async-multi-select.css +1 -1
- package/dist/async-multi-select.js +104 -173
- package/dist/async-select.css +1 -1
- package/dist/async-select.js +81 -137
- package/dist/autocomplete.css +1 -1
- package/dist/autocomplete.js +76 -115
- package/dist/brand.css +77 -987
- package/dist/breadcrumb.js +11 -16
- package/dist/button.css +1 -1
- package/dist/calendar-planner.css +1 -1
- package/dist/calendar-planner.js +100 -95
- package/dist/calendar-roster.css +1 -1
- package/dist/calendar-roster.js +69 -61
- package/dist/calendar.css +1 -1
- package/dist/calendar.js +86 -85
- package/dist/card.css +1 -1
- package/dist/card.js +42 -41
- package/dist/chart.css +1 -1
- package/dist/chat-shell.js +48 -47
- package/dist/checkbox.css +1 -1
- package/dist/close-button.js +14 -12
- package/dist/command-palette.css +1 -1
- package/dist/connector-consent-page.js +19 -18
- package/dist/connector-external-sign-in-page.js +6 -5
- package/dist/connector-rejection-page.js +5 -4
- package/dist/connector-sign-in-page.js +10 -9
- package/dist/consent.css +1 -1
- package/dist/context-menu.js +3 -2
- package/dist/conversation-list.css +1 -1
- package/dist/conversation-thread.css +1 -1
- package/dist/conversation-thread.js +1 -0
- package/dist/data-table.js +74 -1625
- package/dist/date-time-field.js +7 -6
- package/dist/docs-search.js +36 -38
- package/dist/email.js +10 -7
- package/dist/error-page.js +2 -2
- package/dist/fieldset.css +1 -1
- package/dist/figure.js +1 -0
- package/dist/file-upload.css +1 -1
- package/dist/file-upload.js +48 -50
- package/dist/floating-toolbar.css +1 -0
- package/dist/floating-toolbar.js +64 -0
- package/dist/form-field.js +55 -53
- package/dist/imagecropdialog.css +1 -1
- package/dist/input-phone.css +1 -1
- package/dist/input-phone.js +30 -31
- package/dist/input.css +1 -1
- package/dist/label.css +1 -1
- package/dist/language-switcher.js +37 -44
- package/dist/legal-footer.js +12 -17
- package/dist/loading-region.css +1 -1
- package/dist/loading-region.js +8 -8
- package/dist/menu.css +1 -1
- package/dist/menu.js +4 -3
- package/dist/message-bubble.css +1 -1
- package/dist/message-composer.css +1 -1
- package/dist/modal.css +1 -1
- package/dist/modal.js +9 -9
- package/dist/multi-select.css +1 -1
- package/dist/multi-select.js +104 -172
- package/dist/not-found-page.js +8 -5
- package/dist/notification-list.js +16 -21
- package/dist/notification-panel.js +34 -46
- package/dist/number-badge.css +1 -1
- package/dist/number-input.css +1 -1
- package/dist/org-switcher.css +1 -1
- package/dist/org-switcher.js +13 -11
- package/dist/password-field.js +40 -39
- package/dist/popover.css +1 -1
- package/dist/popover.js +9 -15
- package/dist/prev-next-nav.js +8 -7
- package/dist/public-page-shell.js +7 -6
- package/dist/radio.css +1 -1
- package/dist/recurrence-field.css +1 -1
- package/dist/recurrence-field.js +38 -37
- package/dist/select.css +1 -1
- package/dist/select.js +3 -2
- package/dist/sheet.css +1 -1
- package/dist/sidebar-nav.css +1 -1
- package/dist/sidebar-nav.js +75 -70
- package/dist/sidebar.css +1 -1
- package/dist/sidebar.js +46 -42
- package/dist/site-footer.js +28 -28
- package/dist/site-header.js +39 -44
- package/dist/site-nav.js +10 -19
- package/dist/site-search.js +34 -36
- package/dist/site-shell.js +17 -16
- package/dist/skeleton.js +8 -6
- package/dist/sortable.js +20 -19
- package/dist/spinner.js +11 -7
- package/dist/stat-tile.js +24 -26
- package/dist/switcher.css +1 -1
- package/dist/table.css +1 -1
- package/dist/table.js +57 -45
- package/dist/textarea.css +1 -1
- package/dist/theme-switcher.js +57 -56
- package/dist/toaster.css +1 -1
- package/dist/toggle.css +1 -1
- package/dist/tokens.css +75 -986
- package/dist/tooltip.css +1 -1
- package/dist/tooltip.js +20 -27
- package/dist/typing-indicator.css +1 -1
- package/dist/typing-indicator.js +4 -4
- package/dist/user-menu.css +1 -1
- package/dist/user-menu.js +38 -45
- package/dist/visuallyhidden.css +1 -1
- package/package.json +26 -14
- package/src/tokens/components/async-multi-select.css +4 -0
- package/src/tokens/components/async-select.css +3 -0
- package/src/tokens/components/autocomplete.css +1 -0
- package/src/tokens/components/breadcrumb.css +0 -2
- package/src/tokens/components/button.css +0 -23
- package/src/tokens/components/control.css +0 -4
- package/src/tokens/components/file-upload.css +0 -4
- package/src/tokens/components/radio.css +2 -0
- package/src/tokens/components/site-header.css +0 -1
- package/src/tokens/index.css +5 -7
- package/src/tokens/molecules/async-multi-select-field.css +0 -6
- package/src/tokens/molecules/async-select-field.css +0 -6
- package/src/tokens/molecules/autocomplete-field.css +0 -5
- package/src/tokens/molecules/avatar-upload.css +0 -6
- package/src/tokens/molecules/calendar-roster.css +5 -0
- package/src/tokens/molecules/chart.css +0 -3
- package/src/tokens/molecules/checkbox-field.css +0 -6
- package/src/tokens/molecules/consent.css +1 -0
- package/src/tokens/molecules/conversation-thread.css +10 -0
- package/src/tokens/molecules/date-picker-field.css +0 -6
- package/src/tokens/molecules/date-time-field.css +0 -6
- package/src/tokens/molecules/dropdown-field.css +0 -6
- package/src/tokens/molecules/file-upload-field.css +0 -6
- package/src/tokens/molecules/floating-toolbar.css +18 -0
- package/src/tokens/molecules/floating-toolbar.ts +4 -0
- package/src/tokens/molecules/input-field.css +0 -1
- package/src/tokens/molecules/input-phone-field.css +0 -6
- package/src/tokens/molecules/modal.css +1 -0
- package/src/tokens/molecules/multi-select-field.css +0 -6
- package/src/tokens/molecules/number-input-field.css +0 -6
- package/src/tokens/molecules/otp-field.css +0 -6
- package/src/tokens/molecules/radio-field.css +0 -6
- package/src/tokens/molecules/recurrence-field.css +1 -0
- package/src/tokens/molecules/select-field.css +0 -6
- package/src/tokens/molecules/sidebar-nav.css +0 -6
- package/src/tokens/molecules/site-search.css +0 -2
- package/src/tokens/molecules/switcher-field.css +0 -1
- package/src/tokens/molecules/table.css +1 -0
- package/src/tokens/molecules/textarea-field.css +0 -6
- package/src/tokens/molecules/time-field.css +0 -6
- package/src/tokens/scss/_index.legacy.scss +1 -0
- package/src/tokens/scss/_index.scss +1 -0
- package/src/tokens/scss/components/_async-multi-select.scss +4 -0
- package/src/tokens/scss/components/_async-select.scss +3 -0
- package/src/tokens/scss/components/_autocomplete.scss +1 -0
- package/src/tokens/scss/components/_breadcrumb.scss +0 -2
- package/src/tokens/scss/components/_button.scss +0 -23
- package/src/tokens/scss/components/_control.scss +0 -4
- package/src/tokens/scss/components/_file-upload.scss +0 -4
- package/src/tokens/scss/components/_site-header.scss +0 -1
- package/src/tokens/scss/molecules/_async-multi-select-field.scss +0 -5
- package/src/tokens/scss/molecules/_async-select-field.scss +0 -5
- package/src/tokens/scss/molecules/_autocomplete-field.scss +0 -5
- package/src/tokens/scss/molecules/_avatar-upload.scss +0 -5
- package/src/tokens/scss/molecules/_calendar-roster.scss +4 -0
- package/src/tokens/scss/molecules/_chart.scss +0 -2
- package/src/tokens/scss/molecules/_checkbox-field.scss +0 -5
- package/src/tokens/scss/molecules/_consent.scss +1 -0
- package/src/tokens/scss/molecules/_conversation-thread.scss +3 -0
- package/src/tokens/scss/molecules/_date-picker-field.scss +0 -5
- package/src/tokens/scss/molecules/_date-time-field.scss +0 -5
- package/src/tokens/scss/molecules/_dropdown-field.scss +0 -5
- package/src/tokens/scss/molecules/_file-upload-field.scss +0 -5
- package/src/tokens/scss/molecules/_floating-toolbar.scss +15 -0
- package/src/tokens/scss/molecules/_input-field.scss +0 -1
- package/src/tokens/scss/molecules/_input-phone-field.scss +0 -5
- package/src/tokens/scss/molecules/_modal.scss +1 -0
- package/src/tokens/scss/molecules/_multi-select-field.scss +0 -5
- package/src/tokens/scss/molecules/_number-input-field.scss +0 -5
- package/src/tokens/scss/molecules/_otp-field.scss +0 -5
- package/src/tokens/scss/molecules/_radio-field.scss +0 -5
- package/src/tokens/scss/molecules/_recurrence-field.scss +1 -0
- package/src/tokens/scss/molecules/_select-field.scss +0 -5
- package/src/tokens/scss/molecules/_sidebar-nav.scss +0 -4
- package/src/tokens/scss/molecules/_site-search.scss +0 -2
- package/src/tokens/scss/molecules/_switcher-field.scss +0 -1
- package/src/tokens/scss/molecules/_table.scss +1 -0
- package/src/tokens/scss/molecules/_textarea-field.scss +0 -5
- package/src/tokens/scss/molecules/_time-field.scss +0 -5
- package/src/tokens/surface-dark-derived.css +2 -1
- package/src/tokens/surface-invert.css +15 -21
- package/src/tokens/surface-public.css +0 -19
- package/src/tokens/tokens.json +31 -129
- package/CHANGELOG.md +0 -8154
- package/dist/_types/data/home.d.ts +0 -83
- package/dist/_types/pages/Auth/AuthPage.d.ts +0 -24
- package/dist/_types/pages/Onboarding/OnboardingPage.d.ts +0 -37
- package/dist/_types/pages/Status/StatusPage.d.ts +0 -37
- package/dist/_types/pages/Status/_datos.d.ts +0 -47
- package/src/tokens/surface-light.css +0 -782
- package/src/tokens/utils.test.ts +0 -86
|
@@ -2,193 +2,124 @@
|
|
|
2
2
|
import './async-multi-select.css';
|
|
3
3
|
import { n as e } from "./_shared/brandmessagescontext.js";
|
|
4
4
|
import { Icon as t } from "./icon.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
5
|
+
import { VisuallyHidden as n } from "./visually-hidden.js";
|
|
6
|
+
import { Spinner as r } from "./spinner.js";
|
|
7
|
+
import { t as i } from "./_shared/useasyncoptions.js";
|
|
8
|
+
import { n as a } from "./_shared/portal-container.js";
|
|
9
|
+
import { forwardRef as o, useState as s } from "react";
|
|
10
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
11
|
+
import { Combobox as u } from "@base-ui/react/combobox";
|
|
10
12
|
//#region src/stories/atoms/AsyncMultiSelect/AsyncMultiSelect.tsx
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
var p = i(function({ onSearch: i, value: p, defaultValue: te = [], onValueChange: ne, selectedOptions: m, placeholder: h, disabled: g, readOnly: _, size: v = "md", debounceMs: re = 300, id: ie, name: y, error: b = !1, required: x, onBlur: S, className: ae, "aria-label": C, "aria-describedby": oe, removeLabel: se, emptyMessage: ce, loadingLabel: w, container: T }, E) {
|
|
15
|
-
let D = e("asyncMultiSelect"), O = r(T), [k, A] = l(!1), [j, M] = l(""), [N, P] = l(!1), [F, I] = l([]), [L, R] = l(!1), [z, B] = l(-1), [V, H] = l(te), [U, W] = l([]), G = c(null), K = c(0), q = c(null), J = c(null), Y = s(), le = s(), X = p === void 0 ? V : p, ue = X.map((e) => m?.find((t) => t.value === e) ?? U.find((t) => t.value === e) ?? {
|
|
13
|
+
var d = [], f = (e, t) => e.value === t.value, p = o(function({ onSearch: o, value: p, defaultValue: m = [], onValueChange: h, selectedOptions: g, placeholder: _, disabled: v, readOnly: y, size: b = "md", debounceMs: x = 300, id: S, name: C, error: w = !1, required: T, onBlur: E, className: D, "aria-label": O, "aria-describedby": k, removeLabel: A, emptyMessage: j, loadingLabel: M, container: N }, P) {
|
|
14
|
+
let F = e("asyncMultiSelect"), I = a(N), { results: L, loading: R, hasSearched: ee, search: z, schedule: B } = i(o, x), [V, H] = s(!1), [U, W] = s(""), [G, K] = s(m), [q, J] = s([]), Y = p === void 0 ? G : p, X = Y.map((e) => g?.find((t) => t.value === e) ?? q.find((t) => t.value === e) ?? {
|
|
16
15
|
value: e,
|
|
17
16
|
label: e
|
|
18
|
-
})
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
if (t !== K.current) return;
|
|
27
|
-
I([]), B(-1);
|
|
28
|
-
} finally {
|
|
29
|
-
t === K.current && (P(!1), R(!0));
|
|
30
|
-
}
|
|
31
|
-
}, [i]);
|
|
32
|
-
o(() => () => {
|
|
33
|
-
K.current += 1, G.current && clearTimeout(G.current);
|
|
34
|
-
}, []);
|
|
35
|
-
function de(e) {
|
|
36
|
-
let t = e.target.value;
|
|
37
|
-
M(t), k || A(!0), G.current && clearTimeout(G.current), G.current = setTimeout(() => void Q(t), re);
|
|
38
|
-
}
|
|
39
|
-
function fe(e) {
|
|
40
|
-
g || _ || k || (e.preventDefault(), q.current?.focus(), B(-1), M(""), I([]), R(!1), A(!0), Q(""));
|
|
41
|
-
}
|
|
42
|
-
function $(e, t) {
|
|
43
|
-
let n = X.includes(e) ? X.filter((t) => t !== e) : [...X, e];
|
|
44
|
-
t && W((e) => e.some((e) => e.value === t.value) ? e : [...e, t]), p === void 0 && H(n), ne?.(n);
|
|
17
|
+
});
|
|
18
|
+
function Z(e) {
|
|
19
|
+
J((t) => {
|
|
20
|
+
let n = e.filter((e) => !t.some((t) => t.value === e.value));
|
|
21
|
+
return n.length ? [...t, ...n] : t;
|
|
22
|
+
});
|
|
23
|
+
let t = e.map((e) => e.value);
|
|
24
|
+
p === void 0 && K(t), h?.(t);
|
|
45
25
|
}
|
|
46
|
-
function
|
|
47
|
-
|
|
48
|
-
else if (e.key === "ArrowUp") e.preventDefault(), B((e) => Math.max(e - 1, -1));
|
|
49
|
-
else if (e.key === "Enter" && z >= 0 && F[z]) e.preventDefault(), $(F[z].value, F[z]), q.current?.focus();
|
|
50
|
-
else if (e.key === "Escape") A(!1), M(""), B(-1);
|
|
51
|
-
else if (e.key === "Tab") A(!1), B(-1);
|
|
52
|
-
else if (e.key === "Backspace" && j === "" && X.length > 0) {
|
|
53
|
-
let e = X[X.length - 1];
|
|
54
|
-
$(e);
|
|
55
|
-
}
|
|
26
|
+
function Q(e, t) {
|
|
27
|
+
e !== V && (H(e), !(e && t.reason === "input-change") && (W(""), e && z("")));
|
|
56
28
|
}
|
|
57
|
-
function
|
|
58
|
-
|
|
59
|
-
if (t.reason === "outside-press") {
|
|
60
|
-
let e = t.event?.target;
|
|
61
|
-
if (e instanceof Node && J.current?.contains(e)) return;
|
|
62
|
-
}
|
|
63
|
-
A(!1), M(""), B(-1);
|
|
64
|
-
}
|
|
29
|
+
function $(e) {
|
|
30
|
+
e.key === "Escape" && !V && e.preventBaseUIHandler?.();
|
|
65
31
|
}
|
|
66
|
-
let
|
|
32
|
+
let te = [
|
|
67
33
|
"async-multi-select",
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
].filter(Boolean).join(" "),
|
|
74
|
-
return /* @__PURE__ */
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
34
|
+
b === "md" ? "" : `async-multi-select--${b}`,
|
|
35
|
+
v ? "async-multi-select--disabled" : "",
|
|
36
|
+
V ? "async-multi-select--open" : "",
|
|
37
|
+
w ? "async-multi-select--error" : "",
|
|
38
|
+
D ?? ""
|
|
39
|
+
].filter(Boolean).join(" "), ne = ["async-multi-select__content", b === "md" ? "" : `async-multi-select__content--${b}`].filter(Boolean).join(" ");
|
|
40
|
+
return /* @__PURE__ */ l(u.Root, {
|
|
41
|
+
multiple: !0,
|
|
42
|
+
items: R ? d : L,
|
|
43
|
+
filter: null,
|
|
44
|
+
value: X,
|
|
45
|
+
onValueChange: Z,
|
|
46
|
+
isItemEqualToValue: f,
|
|
47
|
+
inputValue: U,
|
|
48
|
+
onInputValueChange: (e, t) => {
|
|
49
|
+
t.reason === "input-change" && (W(e), B(e));
|
|
50
|
+
},
|
|
51
|
+
open: V,
|
|
52
|
+
onOpenChange: Q,
|
|
53
|
+
name: C,
|
|
54
|
+
disabled: v,
|
|
55
|
+
readOnly: y,
|
|
56
|
+
children: [/* @__PURE__ */ l(u.InputGroup, {
|
|
57
|
+
className: te,
|
|
58
|
+
children: [/* @__PURE__ */ l(u.Chips, {
|
|
82
59
|
className: "async-multi-select__input-area",
|
|
83
|
-
children: [
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
className: "async-multi-select__input",
|
|
110
|
-
value: j,
|
|
111
|
-
onChange: de,
|
|
112
|
-
onPointerDown: fe,
|
|
113
|
-
onKeyDown: pe,
|
|
114
|
-
placeholder: X.length === 0 ? D("placeholder", h) : void 0,
|
|
115
|
-
disabled: g,
|
|
116
|
-
readOnly: _,
|
|
117
|
-
"aria-label": C,
|
|
118
|
-
"aria-describedby": oe,
|
|
119
|
-
"aria-invalid": b || void 0,
|
|
120
|
-
"aria-required": x || void 0,
|
|
121
|
-
"aria-expanded": k,
|
|
122
|
-
"aria-haspopup": "listbox",
|
|
123
|
-
"aria-controls": k ? Y : void 0,
|
|
124
|
-
"aria-activedescendant": z >= 0 ? Z(z) : void 0,
|
|
125
|
-
autoComplete: "off",
|
|
126
|
-
role: "combobox",
|
|
127
|
-
"aria-autocomplete": "list",
|
|
128
|
-
onBlur: S
|
|
129
|
-
}),
|
|
130
|
-
y && X.map((e) => /* @__PURE__ */ u("input", {
|
|
131
|
-
type: "hidden",
|
|
132
|
-
name: y,
|
|
133
|
-
value: e
|
|
134
|
-
}, e))
|
|
135
|
-
]
|
|
136
|
-
}), N && /* @__PURE__ */ u(n, {
|
|
60
|
+
children: [X.map((e) => /* @__PURE__ */ l(u.Chip, {
|
|
61
|
+
className: "async-multi-select__pill",
|
|
62
|
+
children: [/* @__PURE__ */ c("span", {
|
|
63
|
+
className: "async-multi-select__pill-label",
|
|
64
|
+
children: e.label
|
|
65
|
+
}), !v && !y && /* @__PURE__ */ c(u.ChipRemove, {
|
|
66
|
+
className: "async-multi-select__pill-remove",
|
|
67
|
+
"aria-label": F("remove", A)(e.label),
|
|
68
|
+
children: /* @__PURE__ */ c(t, {
|
|
69
|
+
name: "close",
|
|
70
|
+
size: "xs"
|
|
71
|
+
})
|
|
72
|
+
})]
|
|
73
|
+
}, e.value)), /* @__PURE__ */ c(u.Input, {
|
|
74
|
+
ref: P,
|
|
75
|
+
id: S,
|
|
76
|
+
className: "async-multi-select__input",
|
|
77
|
+
onKeyDown: $,
|
|
78
|
+
placeholder: Y.length === 0 ? F("placeholder", _) : void 0,
|
|
79
|
+
"aria-label": O,
|
|
80
|
+
"aria-describedby": k,
|
|
81
|
+
"aria-invalid": w || void 0,
|
|
82
|
+
"aria-required": T || void 0,
|
|
83
|
+
onBlur: E
|
|
84
|
+
})]
|
|
85
|
+
}), R && /* @__PURE__ */ c(r, {
|
|
137
86
|
size: "sm",
|
|
138
87
|
"aria-hidden": !0
|
|
139
88
|
})]
|
|
140
|
-
}), /* @__PURE__ */ u
|
|
141
|
-
container:
|
|
142
|
-
children: /* @__PURE__ */ u
|
|
89
|
+
}), /* @__PURE__ */ c(u.Portal, {
|
|
90
|
+
container: I,
|
|
91
|
+
children: /* @__PURE__ */ c(u.Positioner, {
|
|
143
92
|
className: "async-multi-select__positioner",
|
|
144
|
-
anchor: J,
|
|
145
93
|
align: "start",
|
|
146
94
|
sideOffset: -1,
|
|
147
|
-
children: /* @__PURE__ */ u
|
|
148
|
-
className:
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
"async-multi-select__item",
|
|
176
|
-
n ? "async-multi-select__item--selected" : "",
|
|
177
|
-
r ? "async-multi-select__item--active" : ""
|
|
178
|
-
].filter(Boolean).join(" "),
|
|
179
|
-
onPointerDown: (e) => e.preventDefault(),
|
|
180
|
-
onClick: () => {
|
|
181
|
-
$(e.value, e), q.current?.focus();
|
|
182
|
-
},
|
|
183
|
-
children: [/* @__PURE__ */ u("span", {
|
|
184
|
-
className: "async-multi-select__item-check",
|
|
185
|
-
"aria-hidden": "true",
|
|
186
|
-
children: /* @__PURE__ */ u("span", { className: "async-multi-select__item-check-mark" })
|
|
187
|
-
}), /* @__PURE__ */ u("span", { children: e.label })]
|
|
188
|
-
}, e.value);
|
|
189
|
-
})
|
|
190
|
-
]
|
|
191
|
-
})
|
|
95
|
+
children: /* @__PURE__ */ l(u.Popup, {
|
|
96
|
+
className: ne,
|
|
97
|
+
"aria-busy": R || void 0,
|
|
98
|
+
children: [
|
|
99
|
+
/* @__PURE__ */ c(u.Status, { children: R && /* @__PURE__ */ l("div", {
|
|
100
|
+
className: "async-multi-select__loading",
|
|
101
|
+
children: [/* @__PURE__ */ c(r, {
|
|
102
|
+
size: "sm",
|
|
103
|
+
"aria-hidden": !0
|
|
104
|
+
}), /* @__PURE__ */ c(n, { children: F("loading", M) })]
|
|
105
|
+
}) }),
|
|
106
|
+
/* @__PURE__ */ c(u.Empty, { children: !R && ee && /* @__PURE__ */ c("div", {
|
|
107
|
+
className: "async-multi-select__empty",
|
|
108
|
+
children: F("empty", j)
|
|
109
|
+
}) }),
|
|
110
|
+
/* @__PURE__ */ c(u.List, {
|
|
111
|
+
"aria-label": O ?? F("placeholder", _),
|
|
112
|
+
children: (e) => /* @__PURE__ */ l(u.Item, {
|
|
113
|
+
value: e,
|
|
114
|
+
className: "async-multi-select__item",
|
|
115
|
+
children: [/* @__PURE__ */ c("span", {
|
|
116
|
+
className: "async-multi-select__item-check",
|
|
117
|
+
"aria-hidden": "true",
|
|
118
|
+
children: /* @__PURE__ */ c("span", { className: "async-multi-select__item-check-mark" })
|
|
119
|
+
}), /* @__PURE__ */ c("span", { children: e.label })]
|
|
120
|
+
}, e.value)
|
|
121
|
+
})
|
|
122
|
+
]
|
|
192
123
|
})
|
|
193
124
|
})
|
|
194
125
|
})]
|
package/dist/async-select.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.async-select{align-items:center;gap:var(--async-select-content-gap);block-size:var(--async-select-height);padding-block:0;padding-inline:var(--async-select-padding-inline);font-family:var(--async-select-font-family);font-size:var(--async-select-font-size);line-height:var(--async-select-line-height);font-weight:var(--async-select-font-weight);color:var(--async-select-color);background-color:var(--async-select-bg);border-width:var(--async-select-border-width);border-style:var(--async-select-border-style);border-color:var(--async-select-border-color);border-radius:var(--async-select-border-radius);box-sizing:border-box;
|
|
1
|
+
.async-select{align-items:center;gap:var(--async-select-content-gap);block-size:var(--async-select-height);padding-block:0;padding-inline:var(--async-select-padding-inline);font-family:var(--async-select-font-family);font-size:var(--async-select-font-size);line-height:var(--async-select-line-height);font-weight:var(--async-select-font-weight);color:var(--async-select-color);background-color:var(--async-select-bg);border-width:var(--async-select-border-width);border-style:var(--async-select-border-style);border-color:var(--async-select-border-color);border-radius:var(--async-select-border-radius);box-sizing:border-box;inline-size:100%;display:inline-flex}.async-select:focus-within{outline:var(--async-select-focus-ring-width) solid var(--async-select-focus-ring-color);outline-offset:calc(-1 * (var(--async-select-focus-ring-width) + var(--async-select-border-width)))}.async-select.async-select--disabled{opacity:var(--async-select-disabled-opacity);cursor:var(--async-select-disabled-cursor);pointer-events:none}.async-select__input{all:unset;cursor:text;min-inline-size:0;font-family:inherit;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;flex:1}.async-select__input::placeholder{color:var(--async-select-placeholder-color)}.async-select__input:disabled{cursor:var(--async-select-disabled-cursor)}.async-select__clear{all:unset;cursor:pointer;line-height:1;font-size:var(--async-select-font-size);opacity:var(--async-select-clear-opacity);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.async-select__clear:hover{opacity:var(--async-select-clear-hover-opacity)}.async-select__content{background-color:var(--async-select-content-bg);border-width:var(--async-select-border-width);border-style:var(--async-select-border-style);border-color:var(--async-select-content-border-color);min-inline-size:var(--anchor-width);max-block-size:var(--async-select-content-max-height,var(--available-height));overscroll-behavior:contain;overflow-y:auto}.async-select__content[data-side=bottom]{border-block-start:none}.async-select__content[data-side=top]{border-block-end:none}.async-select__loading{padding-block:var(--async-select-loading-padding-block);padding-inline:var(--async-select-loading-padding-inline);justify-content:center;align-items:center;display:flex}.async-select__empty{padding-block:var(--async-select-empty-padding-block);padding-inline:var(--async-select-empty-padding-inline);font-size:var(--async-select-empty-font-size);font-family:var(--async-select-empty-font-family);color:var(--async-select-empty-color)}.async-select__item{all:unset;box-sizing:border-box;inline-size:100%;padding-block:var(--async-select-item-padding-block);padding-inline:var(--async-select-padding-inline);font-size:var(--async-select-font-size);font-family:var(--async-select-font-family);color:var(--async-select-color);cursor:pointer;align-items:center;display:flex}.async-select__item[data-highlighted],.async-select__item:hover{background-color:var(--async-select-item-highlighted-bg);color:var(--async-select-item-highlighted-color)}.async-select__item[data-selected]{font-weight:var(--async-select-item-selected-font-weight)}.async-select__content .async-select__item+.async-select__item,.async-select__content[data-side=bottom] .async-select__item:first-child{border-block-start:var(--async-select-border-width) var(--async-select-border-style) var(--async-select-content-border-color)}.async-select__content[data-side=top] .async-select__item:last-child{border-block-end:var(--async-select-border-width) var(--async-select-border-style) var(--async-select-content-border-color)}.async-select.async-select--sm{font-size:var(--async-select-sm-font-size);--async-select-height:var(--async-select-sm-height);padding-inline:var(--async-select-sm-padding-inline)}.async-select__content--sm .async-select__item{font-size:var(--async-select-sm-font-size);padding-block:var(--async-select-sm-item-padding-block)}.async-select.async-select--lg{font-size:var(--async-select-lg-font-size);--async-select-height:var(--async-select-lg-height);padding-inline:var(--async-select-lg-padding-inline)}.async-select__content--lg .async-select__item{font-size:var(--async-select-lg-font-size);padding-block:var(--async-select-lg-item-padding-block)}.async-select__positioner{z-index:var(--async-select-content-z-index)}.async-select.async-select--error{border-color:var(--async-select-error-border-color)}
|
package/dist/async-select.js
CHANGED
|
@@ -2,169 +2,113 @@
|
|
|
2
2
|
import './async-select.css';
|
|
3
3
|
import { n as e } from "./_shared/brandmessagescontext.js";
|
|
4
4
|
import { Icon as t } from "./icon.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
5
|
+
import { VisuallyHidden as n } from "./visually-hidden.js";
|
|
6
|
+
import { Spinner as r } from "./spinner.js";
|
|
7
|
+
import { t as i } from "./_shared/useasyncoptions.js";
|
|
8
|
+
import { n as a } from "./_shared/portal-container.js";
|
|
9
|
+
import { forwardRef as o, useState as s } from "react";
|
|
10
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
11
|
+
import { Combobox as u } from "@base-ui/react/combobox";
|
|
10
12
|
//#region src/stories/atoms/AsyncSelect/AsyncSelect.tsx
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
try {
|
|
19
|
-
let n = await i(e);
|
|
20
|
-
if (t !== G.current) return;
|
|
21
|
-
I(n), z(-1);
|
|
22
|
-
} catch {
|
|
23
|
-
if (t !== G.current) return;
|
|
24
|
-
I([]), z(-1);
|
|
25
|
-
} finally {
|
|
26
|
-
t === G.current && (P(!1), L(!0));
|
|
27
|
-
}
|
|
28
|
-
}, [i]);
|
|
29
|
-
a(() => () => {
|
|
30
|
-
G.current += 1, W.current && clearTimeout(W.current);
|
|
31
|
-
}, []);
|
|
32
|
-
function de(e) {
|
|
33
|
-
let t = e.target.value;
|
|
34
|
-
M(t), W.current && clearTimeout(W.current), W.current = setTimeout(() => void Z(t), b);
|
|
13
|
+
var d = [], f = (e, t) => e.value === t.value, p = o(function({ onSearch: o, 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: w, onBlur: T, className: E, "aria-label": D, "aria-describedby": O, emptyMessage: k, loadingLabel: A, clearLabel: j, container: M }, N) {
|
|
14
|
+
let P = e("asyncSelect"), F = a(M), { results: I, loading: L, hasSearched: R, search: z, schedule: B, clear: V } = i(o, b), [H, U] = s(!1), [W, G] = s(""), [K, q] = s(null), [J, Y] = s(null), X = p === void 0 ? K : p, Z = (h === void 0 ? J : h)?.label ?? "", Q = X ? {
|
|
15
|
+
value: X,
|
|
16
|
+
label: Z
|
|
17
|
+
} : null;
|
|
18
|
+
function $(e) {
|
|
19
|
+
p === void 0 && (q(e?.value ?? null), Y(e)), m?.(e?.value ?? null, e);
|
|
35
20
|
}
|
|
36
|
-
function
|
|
37
|
-
|
|
21
|
+
function ee() {
|
|
22
|
+
$(null), G(""), V();
|
|
38
23
|
}
|
|
39
|
-
function
|
|
40
|
-
|
|
24
|
+
function te(e, t) {
|
|
25
|
+
e !== H && (U(e), !(e && t.reason === "input-change") && (G(""), e && z("")));
|
|
41
26
|
}
|
|
42
|
-
function
|
|
43
|
-
|
|
27
|
+
function ne(e) {
|
|
28
|
+
_ || v || (e.key === "Escape" && !H ? e.preventBaseUIHandler?.() : (e.key === "Backspace" || e.key === "Delete") && W === "" && X ? (e.preventDefault(), e.preventBaseUIHandler?.(), ee()) : !H && e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey && (e.preventDefault(), e.preventBaseUIHandler?.(), U(!0), G(e.key), V(), B(e.key)));
|
|
44
29
|
}
|
|
45
|
-
|
|
46
|
-
e.stopPropagation(), $();
|
|
47
|
-
}
|
|
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));
|
|
50
|
-
}
|
|
51
|
-
function he(e, t) {
|
|
52
|
-
if (!e) {
|
|
53
|
-
if (t.reason === "outside-press") {
|
|
54
|
-
let e = t.event?.target;
|
|
55
|
-
if (e instanceof Node && q.current?.contains(e)) return;
|
|
56
|
-
}
|
|
57
|
-
A(!1), M(""), z(-1);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
let ge = k ? j : ue?.label ?? "", _e = [
|
|
30
|
+
let re = [
|
|
61
31
|
"async-select",
|
|
62
32
|
y === "md" ? "" : `async-select--${y}`,
|
|
63
33
|
_ ? "async-select--disabled" : "",
|
|
64
34
|
C ? "async-select--error" : "",
|
|
65
|
-
|
|
66
|
-
].filter(Boolean).join(" "),
|
|
67
|
-
return /* @__PURE__ */ u
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
35
|
+
E ?? ""
|
|
36
|
+
].filter(Boolean).join(" "), ie = ["async-select__content", y === "md" ? "" : `async-select__content--${y}`].filter(Boolean).join(" ");
|
|
37
|
+
return /* @__PURE__ */ l(u.Root, {
|
|
38
|
+
items: L ? d : I,
|
|
39
|
+
filter: null,
|
|
40
|
+
value: Q,
|
|
41
|
+
onValueChange: (e) => {
|
|
42
|
+
$(e), G("");
|
|
43
|
+
},
|
|
44
|
+
isItemEqualToValue: f,
|
|
45
|
+
inputValue: H ? W : Z,
|
|
46
|
+
onInputValueChange: (e, t) => {
|
|
47
|
+
t.reason === "input-change" && (G(e), B(e));
|
|
48
|
+
},
|
|
49
|
+
open: H,
|
|
50
|
+
onOpenChange: te,
|
|
51
|
+
name: S,
|
|
52
|
+
disabled: _,
|
|
53
|
+
readOnly: v,
|
|
54
|
+
children: [/* @__PURE__ */ l(u.InputGroup, {
|
|
55
|
+
className: re,
|
|
74
56
|
children: [
|
|
75
|
-
/* @__PURE__ */
|
|
76
|
-
ref:
|
|
77
|
-
K.current = e, f(oe, e);
|
|
78
|
-
},
|
|
57
|
+
/* @__PURE__ */ c(u.Input, {
|
|
58
|
+
ref: N,
|
|
79
59
|
id: x,
|
|
80
|
-
type: "text",
|
|
81
60
|
className: "async-select__input",
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
placeholder: O("placeholder", g),
|
|
87
|
-
disabled: _,
|
|
88
|
-
readOnly: v,
|
|
89
|
-
"aria-label": T,
|
|
90
|
-
"aria-describedby": re,
|
|
61
|
+
onKeyDown: ne,
|
|
62
|
+
placeholder: P("placeholder", g),
|
|
63
|
+
"aria-label": D,
|
|
64
|
+
"aria-describedby": O,
|
|
91
65
|
"aria-invalid": C || void 0,
|
|
92
|
-
"aria-required":
|
|
93
|
-
|
|
94
|
-
"aria-haspopup": "listbox",
|
|
95
|
-
"aria-controls": k ? J : void 0,
|
|
96
|
-
"aria-activedescendant": R >= 0 ? X(R) : void 0,
|
|
97
|
-
autoComplete: "off",
|
|
98
|
-
role: "combobox",
|
|
99
|
-
"aria-autocomplete": "list",
|
|
100
|
-
onBlur: ne
|
|
66
|
+
"aria-required": w || void 0,
|
|
67
|
+
onBlur: T
|
|
101
68
|
}),
|
|
102
|
-
|
|
103
|
-
type: "hidden",
|
|
104
|
-
name: S,
|
|
105
|
-
value: Y ?? ""
|
|
106
|
-
}),
|
|
107
|
-
N && /* @__PURE__ */ l(n, {
|
|
69
|
+
L && /* @__PURE__ */ c(r, {
|
|
108
70
|
size: "sm",
|
|
109
71
|
"aria-hidden": !0
|
|
110
72
|
}),
|
|
111
|
-
!
|
|
112
|
-
type: "button",
|
|
73
|
+
!L && !_ && !v && /* @__PURE__ */ c(u.Clear, {
|
|
113
74
|
className: "async-select__clear",
|
|
114
|
-
"aria-label":
|
|
115
|
-
|
|
116
|
-
onMouseDown: pe,
|
|
117
|
-
children: /* @__PURE__ */ l(t, {
|
|
75
|
+
"aria-label": P("clear", j),
|
|
76
|
+
children: /* @__PURE__ */ c(t, {
|
|
118
77
|
name: "close",
|
|
119
78
|
size: "xs"
|
|
120
79
|
})
|
|
121
80
|
})
|
|
122
81
|
]
|
|
123
|
-
}), /* @__PURE__ */
|
|
124
|
-
container:
|
|
125
|
-
children: /* @__PURE__ */
|
|
82
|
+
}), /* @__PURE__ */ c(u.Portal, {
|
|
83
|
+
container: F,
|
|
84
|
+
children: /* @__PURE__ */ c(u.Positioner, {
|
|
126
85
|
className: "async-select__positioner",
|
|
127
|
-
anchor: q,
|
|
128
86
|
align: "start",
|
|
129
87
|
sideOffset: -1,
|
|
130
|
-
children: /* @__PURE__ */ l(
|
|
131
|
-
className:
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
role: "option",
|
|
155
|
-
"aria-selected": n,
|
|
156
|
-
className: [
|
|
157
|
-
"async-select__item",
|
|
158
|
-
n ? "async-select__item--selected" : "",
|
|
159
|
-
r ? "async-select__item--active" : ""
|
|
160
|
-
].filter(Boolean).join(" "),
|
|
161
|
-
onPointerDown: (e) => e.preventDefault(),
|
|
162
|
-
onClick: () => Q(e),
|
|
163
|
-
children: e.label
|
|
164
|
-
}, e.value);
|
|
165
|
-
})
|
|
166
|
-
]
|
|
167
|
-
})
|
|
88
|
+
children: /* @__PURE__ */ l(u.Popup, {
|
|
89
|
+
className: ie,
|
|
90
|
+
"aria-busy": L || void 0,
|
|
91
|
+
children: [
|
|
92
|
+
/* @__PURE__ */ c(u.Status, { children: L && /* @__PURE__ */ l("div", {
|
|
93
|
+
className: "async-select__loading",
|
|
94
|
+
children: [/* @__PURE__ */ c(r, {
|
|
95
|
+
size: "sm",
|
|
96
|
+
"aria-hidden": !0
|
|
97
|
+
}), /* @__PURE__ */ c(n, { children: P("loading", A) })]
|
|
98
|
+
}) }),
|
|
99
|
+
/* @__PURE__ */ c(u.Empty, { children: !L && R && /* @__PURE__ */ c("div", {
|
|
100
|
+
className: "async-select__empty",
|
|
101
|
+
children: P("empty", k)
|
|
102
|
+
}) }),
|
|
103
|
+
/* @__PURE__ */ c(u.List, {
|
|
104
|
+
"aria-label": D ?? P("placeholder", g),
|
|
105
|
+
children: (e) => /* @__PURE__ */ c(u.Item, {
|
|
106
|
+
value: e,
|
|
107
|
+
className: "async-select__item",
|
|
108
|
+
children: e.label
|
|
109
|
+
}, e.value)
|
|
110
|
+
})
|
|
111
|
+
]
|
|
168
112
|
})
|
|
169
113
|
})
|
|
170
114
|
})]
|
package/dist/autocomplete.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.autocomplete{align-items:center;gap:var(--autocomplete-content-gap);block-size:var(--autocomplete-height);padding-block:0;padding-inline:var(--autocomplete-padding-inline);font-family:var(--autocomplete-font-family);font-size:var(--autocomplete-font-size);line-height:var(--autocomplete-line-height);font-weight:var(--autocomplete-font-weight);color:var(--autocomplete-color);background-color:var(--autocomplete-bg);border-width:var(--autocomplete-border-width);border-style:var(--autocomplete-border-style);border-color:var(--autocomplete-border-color);border-radius:var(--autocomplete-border-radius);box-sizing:border-box;
|
|
1
|
+
.autocomplete{align-items:center;gap:var(--autocomplete-content-gap);block-size:var(--autocomplete-height);padding-block:0;padding-inline:var(--autocomplete-padding-inline);font-family:var(--autocomplete-font-family);font-size:var(--autocomplete-font-size);line-height:var(--autocomplete-line-height);font-weight:var(--autocomplete-font-weight);color:var(--autocomplete-color);background-color:var(--autocomplete-bg);border-width:var(--autocomplete-border-width);border-style:var(--autocomplete-border-style);border-color:var(--autocomplete-border-color);border-radius:var(--autocomplete-border-radius);box-sizing:border-box;inline-size:100%;display:inline-flex}.autocomplete:focus-within{outline:var(--autocomplete-focus-ring-width) solid var(--autocomplete-focus-ring-color);outline-offset:calc(-1 * (var(--autocomplete-focus-ring-width) + var(--autocomplete-border-width)))}.autocomplete.autocomplete--disabled{opacity:var(--autocomplete-disabled-opacity);cursor:var(--autocomplete-disabled-cursor);pointer-events:none}.autocomplete__input{all:unset;cursor:text;min-inline-size:0;font-family:inherit;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;flex:1}.autocomplete__input::placeholder{color:var(--autocomplete-placeholder-color)}.autocomplete__input:disabled{cursor:var(--autocomplete-disabled-cursor)}.autocomplete__content{background-color:var(--autocomplete-content-bg);border-width:var(--autocomplete-border-width);border-style:var(--autocomplete-border-style);border-color:var(--autocomplete-content-border-color);min-inline-size:var(--anchor-width);max-block-size:var(--autocomplete-content-max-height,var(--available-height));overscroll-behavior:contain;overflow-y:auto}.autocomplete__content[data-side=bottom]{border-block-start:none}.autocomplete__content[data-side=top]{border-block-end:none}.autocomplete__item{all:unset;box-sizing:border-box;inline-size:100%;padding-block:var(--autocomplete-item-padding-block);padding-inline:var(--autocomplete-padding-inline);font-size:var(--autocomplete-font-size);font-family:var(--autocomplete-font-family);color:var(--autocomplete-color);cursor:pointer;align-items:center;display:flex}.autocomplete__item[data-highlighted],.autocomplete__item:hover{background-color:var(--autocomplete-item-highlighted-bg);color:var(--autocomplete-item-highlighted-color)}.autocomplete__item.autocomplete__item--selected{font-weight:var(--autocomplete-item-selected-font-weight)}.autocomplete__content .autocomplete__item+.autocomplete__item,.autocomplete__content[data-side=bottom] .autocomplete__item:first-child{border-block-start:var(--autocomplete-border-width) var(--autocomplete-border-style) var(--autocomplete-content-border-color)}.autocomplete__content[data-side=top] .autocomplete__item:last-child{border-block-end:var(--autocomplete-border-width) var(--autocomplete-border-style) var(--autocomplete-content-border-color)}.autocomplete.autocomplete--sm{font-size:var(--autocomplete-sm-font-size);--autocomplete-height:var(--autocomplete-sm-height);padding-inline:var(--autocomplete-sm-padding-inline)}.autocomplete__content--sm .autocomplete__item{font-size:var(--autocomplete-sm-font-size);padding-block:var(--autocomplete-sm-item-padding-block)}.autocomplete.autocomplete--lg{font-size:var(--autocomplete-lg-font-size);--autocomplete-height:var(--autocomplete-lg-height);padding-inline:var(--autocomplete-lg-padding-inline)}.autocomplete__content--lg .autocomplete__item{font-size:var(--autocomplete-lg-font-size);padding-block:var(--autocomplete-lg-item-padding-block)}.autocomplete__positioner{z-index:var(--autocomplete-content-z-index)}.autocomplete.autocomplete--error{border-color:var(--autocomplete-error-border-color)}
|