@revikornmann/muka-ui 0.14.0 → 0.16.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/build/manifest.json +10 -0
- package/dist/cjs/components/BottomBar/BottomBar.css +19 -4
- package/dist/cjs/components/ChatMessage/ChatMessage.css +7 -1
- package/dist/cjs/components/ChatMessage/ChatMessage.js.map +1 -1
- package/dist/cjs/components/ChatMessageList/ChatMessageList.css +1 -1
- package/dist/cjs/components/Combobox/Combobox.css +59 -1
- package/dist/cjs/components/Combobox/Combobox.js +22 -3
- package/dist/cjs/components/Combobox/Combobox.js.map +1 -1
- package/dist/cjs/components/Input/Input.js +8 -6
- package/dist/cjs/components/Input/Input.js.map +1 -1
- package/dist/cjs/components/LicensePlateInput/LicensePlateInput.js +10 -5
- package/dist/cjs/components/LicensePlateInput/LicensePlateInput.js.map +1 -1
- package/dist/cjs/components/NumberInput/NumberInput.js +6 -4
- package/dist/cjs/components/NumberInput/NumberInput.js.map +1 -1
- package/dist/cjs/components/SearchInput/SearchInput.js +20 -5
- package/dist/cjs/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/cjs/components/TextLink/TextLink.css +79 -0
- package/dist/cjs/components/TextLink/TextLink.js +28 -0
- package/dist/cjs/components/TextLink/TextLink.js.map +1 -0
- package/dist/cjs/components/TextLink/index.js +11 -0
- package/dist/cjs/components/TextLink/index.js.map +1 -0
- package/dist/cjs/components/Textarea/Textarea.js +5 -4
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/index.js +3 -1
- package/dist/cjs/components/index.js.map +1 -1
- package/dist/cjs/utils/accessibility.js +14 -0
- package/dist/cjs/utils/accessibility.js.map +1 -1
- package/dist/esm/components/BottomBar/BottomBar.css +19 -4
- package/dist/esm/components/ChatMessage/ChatMessage.css +7 -1
- package/dist/esm/components/ChatMessage/ChatMessage.js.map +1 -1
- package/dist/esm/components/ChatMessageList/ChatMessageList.css +1 -1
- package/dist/esm/components/Combobox/Combobox.css +59 -1
- package/dist/esm/components/Combobox/Combobox.js +23 -4
- package/dist/esm/components/Combobox/Combobox.js.map +1 -1
- package/dist/esm/components/Input/Input.js +8 -6
- package/dist/esm/components/Input/Input.js.map +1 -1
- package/dist/esm/components/LicensePlateInput/LicensePlateInput.js +10 -5
- package/dist/esm/components/LicensePlateInput/LicensePlateInput.js.map +1 -1
- package/dist/esm/components/NumberInput/NumberInput.js +6 -4
- package/dist/esm/components/NumberInput/NumberInput.js.map +1 -1
- package/dist/esm/components/SearchInput/SearchInput.js +20 -5
- package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/esm/components/TextLink/TextLink.css +79 -0
- package/dist/esm/components/TextLink/TextLink.js +24 -0
- package/dist/esm/components/TextLink/TextLink.js.map +1 -0
- package/dist/esm/components/TextLink/index.js +3 -0
- package/dist/esm/components/TextLink/index.js.map +1 -0
- package/dist/esm/components/Textarea/Textarea.js +5 -4
- package/dist/esm/components/Textarea/Textarea.js.map +1 -1
- package/dist/esm/components/index.js +1 -0
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/utils/accessibility.js +13 -0
- package/dist/esm/utils/accessibility.js.map +1 -1
- package/dist/styles/components/BottomBar.css +19 -4
- package/dist/styles/components/ChatMessage.css +7 -1
- package/dist/styles/components/ChatMessageList.css +1 -1
- package/dist/styles/components/Combobox.css +59 -1
- package/dist/styles/components/TextLink.css +79 -0
- package/dist/styles/index.css +925 -762
- package/dist/styles/muka-dark.css +925 -762
- package/dist/styles/muka-light.css +925 -762
- package/dist/styles/tokens-bouwplan-dark.css +4 -2
- package/dist/styles/tokens-bouwplan-light.css +4 -2
- package/dist/styles/tokens-fscl-dark.css +4 -2
- package/dist/styles/tokens-fscl-light.css +4 -2
- package/dist/styles/tokens-grip-dark.css +4 -2
- package/dist/styles/tokens-grip-light.css +4 -2
- package/dist/styles/tokens-muka-dark.css +4 -2
- package/dist/styles/tokens-muka-light.css +4 -2
- package/dist/styles/tokens-wireframe-dark.css +4 -2
- package/dist/styles/tokens-wireframe-light.css +4 -2
- package/dist/styles/wireframe-dark.css +925 -762
- package/dist/styles/wireframe-light.css +925 -762
- package/dist/types/components/ChatMessage/ChatMessage.d.ts +4 -1
- package/dist/types/components/ChatMessage/ChatMessage.d.ts.map +1 -1
- package/dist/types/components/Combobox/Combobox.d.ts +7 -0
- package/dist/types/components/Combobox/Combobox.d.ts.map +1 -1
- package/dist/types/components/Input/Input.d.ts +4 -2
- package/dist/types/components/Input/Input.d.ts.map +1 -1
- package/dist/types/components/LicensePlateInput/LicensePlateInput.d.ts +2 -2
- package/dist/types/components/LicensePlateInput/LicensePlateInput.d.ts.map +1 -1
- package/dist/types/components/NumberInput/NumberInput.d.ts +2 -2
- package/dist/types/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/types/components/SearchInput/SearchInput.d.ts +2 -2
- package/dist/types/components/SearchInput/SearchInput.d.ts.map +1 -1
- package/dist/types/components/TextLink/TextLink.d.ts +30 -0
- package/dist/types/components/TextLink/TextLink.d.ts.map +1 -0
- package/dist/types/components/TextLink/index.d.ts +3 -0
- package/dist/types/components/TextLink/index.d.ts.map +1 -0
- package/dist/types/components/Textarea/Textarea.d.ts +2 -2
- package/dist/types/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/components/index.d.ts.map +1 -1
- package/dist/types/utils/accessibility.d.ts +10 -0
- package/dist/types/utils/accessibility.d.ts.map +1 -1
- package/package.json +3 -1
- package/tokens/t4-components/bottombar.json +2 -1
- package/tokens/t4-components/chat.json +15 -0
- package/tokens/t4-components/chatbubble.json +7 -1
|
@@ -18,7 +18,10 @@ require("./SearchInput.css");
|
|
|
18
18
|
* - Renders as `<input type="search">` inside a `<form role="search">` landmark
|
|
19
19
|
* - Clear and cancel buttons have descriptive aria-labels
|
|
20
20
|
*/
|
|
21
|
-
exports.SearchInput = (0, react_1.forwardRef)(({ value, onChange, placeholder = 'Search', clearable = true, cancellable = false, cancelLabel = 'Cancel', onCancel, onSubmit, loading = false, variant = 'default', autoFocus = false, disabled = false, size = 'md', 'aria-label': ariaLabel, className = '',
|
|
21
|
+
exports.SearchInput = (0, react_1.forwardRef)(({ value, onChange, placeholder = 'Search', clearable = true, cancellable = false, cancelLabel = 'Cancel', onCancel, onSubmit, loading = false, variant = 'default', autoFocus = false, disabled = false, size = 'md', 'aria-label': ariaLabel, className = '',
|
|
22
|
+
// Disable browser-supplied autofill/correction by default — the field
|
|
23
|
+
// renders its own clear affordance. Consumers can still override these.
|
|
24
|
+
autoComplete = 'off', autoCorrect = 'off', spellCheck = false, onKeyDown, onFocus, onBlur, ...rest }, forwardedRef) => {
|
|
22
25
|
const inputRef = (0, react_1.useRef)(null);
|
|
23
26
|
(0, react_1.useImperativeHandle)(forwardedRef, () => inputRef.current);
|
|
24
27
|
const [focused, setFocused] = (0, react_1.useState)(false);
|
|
@@ -45,6 +48,7 @@ exports.SearchInput = (0, react_1.forwardRef)(({ value, onChange, placeholder =
|
|
|
45
48
|
else if (e.key === 'Escape' && cancellable) {
|
|
46
49
|
handleCancel();
|
|
47
50
|
}
|
|
51
|
+
onKeyDown?.(e);
|
|
48
52
|
};
|
|
49
53
|
const rootClasses = [
|
|
50
54
|
'muka-search-input',
|
|
@@ -56,10 +60,21 @@ exports.SearchInput = (0, react_1.forwardRef)(({ value, onChange, placeholder =
|
|
|
56
60
|
]
|
|
57
61
|
.filter(Boolean)
|
|
58
62
|
.join(' ');
|
|
59
|
-
return ((0, jsx_runtime_1.jsxs)("form", { className: rootClasses, role: "search", onSubmit: (e) => e.preventDefault(), children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-search-input__field", children: [(0, jsx_runtime_1.jsx)("span", { className: "muka-search-input__leading", "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "search", variant: "line", size: "md" }) }), (0, jsx_runtime_1.jsx)("input", { ref: inputRef, type: "search", className: "muka-search-input__input", value: value, onChange: (e) => onChange(e.target.value), onFocus: () =>
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
+
return ((0, jsx_runtime_1.jsxs)("form", { className: rootClasses, role: "search", onSubmit: (e) => e.preventDefault(), children: [(0, jsx_runtime_1.jsxs)("div", { className: "muka-search-input__field", children: [(0, jsx_runtime_1.jsx)("span", { className: "muka-search-input__leading", "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "search", variant: "line", size: "md" }) }), (0, jsx_runtime_1.jsx)("input", { ...rest, ref: inputRef, type: "search", className: "muka-search-input__input", value: value, onChange: (e) => onChange(e.target.value), onFocus: (e) => {
|
|
64
|
+
setFocused(true);
|
|
65
|
+
onFocus?.(e);
|
|
66
|
+
}, onBlur: (e) => {
|
|
67
|
+
setFocused(false);
|
|
68
|
+
onBlur?.(e);
|
|
69
|
+
}, onKeyDown: handleKeyDown, placeholder: placeholder, disabled: disabled,
|
|
70
|
+
// Not an unconditional autofocus: this forwards the consumer's own
|
|
71
|
+
// opt-in `autoFocus` prop, which defaults to false. The caller
|
|
72
|
+
// decides, exactly as with a native <input>.
|
|
73
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
74
|
+
autoFocus: autoFocus, "aria-label": ariaLabel || placeholder,
|
|
75
|
+
// The browser-supplied clear icon is hidden in CSS via the
|
|
76
|
+
// `-webkit-search-cancel-button` pseudo-element — we render our own.
|
|
77
|
+
autoComplete: autoComplete, autoCorrect: autoCorrect, spellCheck: spellCheck }), loading && ((0, jsx_runtime_1.jsx)("span", { className: "muka-search-input__trailing", children: (0, jsx_runtime_1.jsx)(Spinner_1.Spinner, { size: "sm", variant: "subtle" }) })), showClear && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "muka-search-input__clear", onClick: handleClear, "aria-label": "Clear search", children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: "close", variant: "line", size: "sm" }) }))] }), showCancel && ((0, jsx_runtime_1.jsx)("button", { type: "button", className: "muka-search-input__cancel", onClick: handleCancel, children: cancelLabel }))] }));
|
|
63
78
|
});
|
|
64
79
|
exports.SearchInput.displayName = 'SearchInput';
|
|
65
80
|
exports.default = exports.SearchInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchInput.js","sourceRoot":"","sources":["../../../../components/SearchInput/SearchInput.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;AAEb,iCAAiF;AACjF,wCAAqC;AACrC,kCAA+B;AAC/B,6BAA2B;
|
|
1
|
+
{"version":3,"file":"SearchInput.js","sourceRoot":"","sources":["../../../../components/SearchInput/SearchInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/* TextLink Component Styles - Using Muka Design Tokens */
|
|
2
|
+
|
|
3
|
+
.muka-text-link {
|
|
4
|
+
display: inline;
|
|
5
|
+
cursor: pointer;
|
|
6
|
+
text-decoration: underline;
|
|
7
|
+
/* Nudge the rule clear of descenders; the Figma underline sits off baseline. */
|
|
8
|
+
text-underline-offset: 0.2em;
|
|
9
|
+
text-decoration-thickness: from-font;
|
|
10
|
+
/* Rounds the focus ring's corners; the link itself has no visible box. */
|
|
11
|
+
border-radius: var(--border-radius-sm);
|
|
12
|
+
transition: color var(--motion-duration-micro, 0.15s) var(--motion-easing-enter, ease);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/* ─── Sizes ───────────────────────────────────────────────
|
|
16
|
+
Mirrors the body text scale so a link matches the copy it sits in. */
|
|
17
|
+
.muka-text-link--sm {
|
|
18
|
+
font-family: var(--text-body-sm-regular-fontFamily);
|
|
19
|
+
font-weight: var(--text-body-sm-regular-fontWeight);
|
|
20
|
+
font-size: var(--text-body-sm-regular-fontSize);
|
|
21
|
+
line-height: var(--text-body-sm-regular-lineHeight);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.muka-text-link--base {
|
|
25
|
+
font-family: var(--text-body-base-regular-fontFamily);
|
|
26
|
+
font-weight: var(--text-body-base-regular-fontWeight);
|
|
27
|
+
font-size: var(--text-body-base-regular-fontSize);
|
|
28
|
+
line-height: var(--text-body-base-regular-lineHeight);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.muka-text-link--lg {
|
|
32
|
+
font-family: var(--text-body-lg-regular-fontFamily);
|
|
33
|
+
font-weight: var(--text-body-lg-regular-fontWeight);
|
|
34
|
+
font-size: var(--text-body-lg-regular-fontSize);
|
|
35
|
+
line-height: var(--text-body-lg-regular-lineHeight);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/* ─── Variant: default (accent) ───────────────────────────
|
|
39
|
+
Visited repeats the default colour on purpose: the design treats visited and
|
|
40
|
+
default the same, and pinning it stops the browser's purple from showing. */
|
|
41
|
+
.muka-text-link--default,
|
|
42
|
+
.muka-text-link--default:visited {
|
|
43
|
+
color: var(--color-text-action-default);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.muka-text-link--default:hover,
|
|
47
|
+
.muka-text-link--default:focus-visible {
|
|
48
|
+
color: var(--color-text-action-hover);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.muka-text-link--default:active {
|
|
52
|
+
color: var(--color-text-action-pressed);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/* ─── Variant: subtle (neutral) ───────────────────────────
|
|
56
|
+
Hover, focus and pressed all darken to the default text colour. */
|
|
57
|
+
.muka-text-link--subtle,
|
|
58
|
+
.muka-text-link--subtle:visited {
|
|
59
|
+
color: var(--color-text-subtle-default);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.muka-text-link--subtle:hover,
|
|
63
|
+
.muka-text-link--subtle:focus-visible,
|
|
64
|
+
.muka-text-link--subtle:active {
|
|
65
|
+
color: var(--color-text-default-default);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/* ─── Focus ───────────────────────────────────────────────
|
|
69
|
+
Same ring as every other focusable Muka component. */
|
|
70
|
+
.muka-text-link:focus-visible {
|
|
71
|
+
outline: 2px solid var(--color-border-focus);
|
|
72
|
+
outline-offset: 2px;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
@media (prefers-reduced-motion: reduce) {
|
|
76
|
+
.muka-text-link {
|
|
77
|
+
transition: none;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TextLink = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
require("./TextLink.css");
|
|
6
|
+
/**
|
|
7
|
+
* TextLink Component
|
|
8
|
+
*
|
|
9
|
+
* An underlined inline text link. Renders a native `<a>`, so `href`, `target`,
|
|
10
|
+
* `rel`, `download` and the rest of the anchor attributes pass straight through.
|
|
11
|
+
*
|
|
12
|
+
* Variants: default (accent), subtle (neutral)
|
|
13
|
+
* Sizes: sm, base, lg
|
|
14
|
+
* States: hover, focus-visible, pressed. Visited is pinned to the default colour
|
|
15
|
+
* so the browser's purple never leaks in.
|
|
16
|
+
*/
|
|
17
|
+
const TextLink = ({ children, variant = 'default', size = 'base', className = '', ...props }) => {
|
|
18
|
+
const linkClasses = [
|
|
19
|
+
'muka-text-link',
|
|
20
|
+
`muka-text-link--${variant}`,
|
|
21
|
+
`muka-text-link--${size}`,
|
|
22
|
+
className,
|
|
23
|
+
].filter(Boolean).join(' ');
|
|
24
|
+
return ((0, jsx_runtime_1.jsx)("a", { className: linkClasses, ...props, children: children }));
|
|
25
|
+
};
|
|
26
|
+
exports.TextLink = TextLink;
|
|
27
|
+
exports.default = exports.TextLink;
|
|
28
|
+
//# sourceMappingURL=TextLink.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextLink.js","sourceRoot":"","sources":["../../../../components/TextLink/TextLink.tsx"],"names":[],"mappings":";;;;AACA,0BAAwB;AAoBxB;;;;;;;;;;GAUG;AACI,MAAM,QAAQ,GAA4B,CAAC,EAChD,QAAQ,EACR,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,MAAM,EACb,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,WAAW,GAAG;QAClB,gBAAgB;QAChB,mBAAmB,OAAO,EAAE;QAC5B,mBAAmB,IAAI,EAAE;QACzB,SAAS;KACV,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,OAAO,CACL,8BAAG,SAAS,EAAE,WAAW,KAAM,KAAK,YACjC,QAAQ,GACP,CACL,CAAC;AACJ,CAAC,CAAC;AAnBW,QAAA,QAAQ,YAmBnB;AAEF,kBAAe,gBAAQ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = exports.TextLink = void 0;
|
|
7
|
+
var TextLink_1 = require("./TextLink");
|
|
8
|
+
Object.defineProperty(exports, "TextLink", { enumerable: true, get: function () { return TextLink_1.TextLink; } });
|
|
9
|
+
var TextLink_2 = require("./TextLink");
|
|
10
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(TextLink_2).default; } });
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../components/TextLink/index.ts"],"names":[],"mappings":";;;;;;AAAA,uCAA0D;AAAjD,oGAAA,QAAQ,OAAA;AACjB,uCAAqC;AAA5B,oHAAA,OAAO,OAAA"}
|
|
@@ -37,15 +37,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
37
37
|
exports.Textarea = void 0;
|
|
38
38
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
39
39
|
const react_1 = __importStar(require("react"));
|
|
40
|
+
const accessibility_1 = require("../../utils/accessibility");
|
|
40
41
|
require("./Textarea.css");
|
|
41
|
-
exports.Textarea = react_1.default.forwardRef(function Textarea({ value, onChange, placeholder, label, helperText, error = false, errorMessage, disabled = false, readOnly = false, size = 'md', rows, resize = 'vertical', showCount = false, maxLength, className = '', name, id, required = false, onBlur, onFocus, }, forwardedRef) {
|
|
42
|
+
exports.Textarea = react_1.default.forwardRef(function Textarea({ value, onChange, placeholder, label, helperText, error = false, errorMessage, disabled = false, readOnly = false, size = 'md', rows, resize = 'vertical', showCount = false, maxLength, className = '', name, id, required = false, onBlur, onFocus, style, 'aria-describedby': ariaDescribedBy, 'aria-invalid': ariaInvalid, ...rest }, forwardedRef) {
|
|
42
43
|
const [isFocused, setIsFocused] = (0, react_1.useState)(false);
|
|
43
44
|
const generatedId = (0, react_1.useId)();
|
|
44
45
|
const textareaId = id || name || generatedId;
|
|
45
46
|
const helperTextId = `${textareaId}-helper`;
|
|
46
47
|
const errorMessageId = `${textareaId}-error`;
|
|
47
48
|
const showError = error && errorMessage;
|
|
48
|
-
const describedBy = showError ? errorMessageId : helperText ? helperTextId : undefined;
|
|
49
|
+
const describedBy = (0, accessibility_1.mergeIds)(ariaDescribedBy, showError ? errorMessageId : helperText ? helperTextId : undefined);
|
|
49
50
|
const charCount = value?.length ?? 0;
|
|
50
51
|
const wrapperClasses = [
|
|
51
52
|
'muka-textarea',
|
|
@@ -58,13 +59,13 @@ exports.Textarea = react_1.default.forwardRef(function Textarea({ value, onChang
|
|
|
58
59
|
error && 'muka-textarea__field--error',
|
|
59
60
|
disabled && 'muka-textarea__field--disabled',
|
|
60
61
|
].filter(Boolean).join(' ');
|
|
61
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: wrapperClasses, children: [label && ((0, jsx_runtime_1.jsxs)("label", { className: `muka-textarea__label muka-textarea__label--${size}`, htmlFor: textareaId, children: [label, required && (0, jsx_runtime_1.jsx)("span", { className: "muka-textarea__required", "aria-hidden": "true", children: " *" })] })), (0, jsx_runtime_1.jsx)("div", { className: fieldClasses, children: (0, jsx_runtime_1.jsx)("textarea", { ref: forwardedRef, id: textareaId, className: "muka-textarea__native", value: value, onChange: onChange, placeholder: placeholder, disabled: disabled, readOnly: readOnly, name: name, required: required, rows: rows, maxLength: maxLength, "aria-invalid": error || undefined, "aria-describedby": describedBy, onFocus: (e) => {
|
|
62
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: wrapperClasses, children: [label && ((0, jsx_runtime_1.jsxs)("label", { className: `muka-textarea__label muka-textarea__label--${size}`, htmlFor: textareaId, children: [label, required && (0, jsx_runtime_1.jsx)("span", { className: "muka-textarea__required", "aria-hidden": "true", children: " *" })] })), (0, jsx_runtime_1.jsx)("div", { className: fieldClasses, children: (0, jsx_runtime_1.jsx)("textarea", { ...rest, ref: forwardedRef, id: textareaId, className: "muka-textarea__native", value: value, onChange: onChange, placeholder: placeholder, disabled: disabled, readOnly: readOnly, name: name, required: required, rows: rows, maxLength: maxLength, "aria-invalid": ariaInvalid ?? (error || undefined), "aria-describedby": describedBy, onFocus: (e) => {
|
|
62
63
|
setIsFocused(true);
|
|
63
64
|
onFocus?.(e);
|
|
64
65
|
}, onBlur: (e) => {
|
|
65
66
|
setIsFocused(false);
|
|
66
67
|
onBlur?.(e);
|
|
67
|
-
}, style: { resize } }) }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-textarea__footer", children: [showError && ((0, jsx_runtime_1.jsx)("p", { className: "muka-textarea__error", id: errorMessageId, role: "alert", children: errorMessage })), !showError && helperText && ((0, jsx_runtime_1.jsx)("p", { className: "muka-textarea__helper", id: helperTextId, children: helperText })), showCount && ((0, jsx_runtime_1.jsxs)("span", { className: "muka-textarea__count", children: [charCount, maxLength ? `/${maxLength}` : ''] }))] })] }));
|
|
68
|
+
}, style: { resize, ...style } }) }), (0, jsx_runtime_1.jsxs)("div", { className: "muka-textarea__footer", children: [showError && ((0, jsx_runtime_1.jsx)("p", { className: "muka-textarea__error", id: errorMessageId, role: "alert", children: errorMessage })), !showError && helperText && ((0, jsx_runtime_1.jsx)("p", { className: "muka-textarea__helper", id: helperTextId, children: helperText })), showCount && ((0, jsx_runtime_1.jsxs)("span", { className: "muka-textarea__count", children: [charCount, maxLength ? `/${maxLength}` : ''] }))] })] }));
|
|
68
69
|
});
|
|
69
70
|
exports.default = exports.Textarea;
|
|
70
71
|
//# sourceMappingURL=Textarea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Textarea.js","sourceRoot":"","sources":["../../../../components/Textarea/Textarea.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,+CAA+C;AAC/C,0BAAwB;
|
|
1
|
+
{"version":3,"file":"Textarea.js","sourceRoot":"","sources":["../../../../components/Textarea/Textarea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TableCell = exports.TableRow = exports.TableBody = exports.TableHead = exports.Table = exports.RangeSlider = exports.DataPieChart = exports.PieChart = exports.Progress = exports.ProfileBadge = exports.AvatarGroup = exports.Avatar = exports.BadgeNumber = exports.Badge = exports.Container = exports.Section = exports.NavigationTransition = exports.AppShell = exports.View = exports.Dialog = exports.BottomBarTab = exports.BottomBar = exports.ControlBar = exports.TopBar = exports.ProgressAccordeon = exports.ProgressTracker = exports.EmptyState = exports.Toast = exports.Alert = exports.RadioTile = exports.CheckboxTile = exports.Toggle = exports.Checkbox = exports.Radio = exports.TabPanel = exports.Tab = exports.TabList = exports.Tabs = exports.Select = exports.Divider = exports.Chip = exports.Icon = exports.Label = exports.Card = exports.NumberInput = exports.useForm = exports.Form = exports.Input = exports.ListItem = exports.Button = void 0;
|
|
4
4
|
exports.AccordionTrigger = exports.AccordionItem = exports.Accordion = exports.PopoverClose = exports.PopoverTrigger = exports.PopoverRoot = exports.PopoverContent = exports.Popover = exports.Tooltip = exports.Drawer = exports.Pagination = exports.Breadcrumb = exports.Skeleton = exports.Textarea = exports.ContextMenuSubContent = exports.ContextMenuSubTrigger = exports.ContextMenuSub = exports.ContextMenuRadioItem = exports.ContextMenuRadioGroup = exports.ContextMenuCheckboxItem = exports.ContextMenuGroup = exports.ContextMenuSeparator = exports.ContextMenuItem = exports.ContextMenuContent = exports.ContextMenuTrigger = exports.ContextMenu = exports.MenuSubContent = exports.MenuSubTrigger = exports.MenuSub = exports.MenuRadioItem = exports.MenuRadioGroup = exports.MenuCheckboxItem = exports.MenuGroup = exports.MenuSeparator = exports.MenuItem = exports.MenuContent = exports.MenuTrigger = exports.Menu = exports.FileUploadItem = exports.FileUpload = exports.SmsOtpField = exports.DocumentViewer = exports.Tile = exports.PriceTag = exports.SegmentGroup = exports.DatePicker = exports.DataTable = exports.useTableSelection = exports.TablePagination = exports.TableHeaderCell = void 0;
|
|
5
|
-
exports.PhotoUploader = exports.Thumbnail = exports.LicensePlateInput = exports.PullToRefresh = exports.SwipeActions = exports.Combobox = exports.ChatAttachmentChip = exports.TypingIndicator = exports.AgentTaskList = exports.ChatComposer = exports.ChatPhotoGrid = exports.ChatMessageList = exports.ChatMessageStack = exports.ChatMessage = exports.SearchInput = exports.ActionSheet = exports.FAB = exports.SpecRow = exports.SpecList = exports.Spinner = exports.Sheet = exports.AccordionContent = void 0;
|
|
5
|
+
exports.TextLink = exports.PhotoUploader = exports.Thumbnail = exports.LicensePlateInput = exports.PullToRefresh = exports.SwipeActions = exports.Combobox = exports.ChatAttachmentChip = exports.TypingIndicator = exports.AgentTaskList = exports.ChatComposer = exports.ChatPhotoGrid = exports.ChatMessageList = exports.ChatMessageStack = exports.ChatMessage = exports.SearchInput = exports.ActionSheet = exports.FAB = exports.SpecRow = exports.SpecList = exports.Spinner = exports.Sheet = exports.AccordionContent = void 0;
|
|
6
6
|
// Muka Design System Components
|
|
7
7
|
var Button_1 = require("./Button");
|
|
8
8
|
Object.defineProperty(exports, "Button", { enumerable: true, get: function () { return Button_1.Button; } });
|
|
@@ -204,4 +204,6 @@ var Thumbnail_1 = require("./Thumbnail");
|
|
|
204
204
|
Object.defineProperty(exports, "Thumbnail", { enumerable: true, get: function () { return Thumbnail_1.Thumbnail; } });
|
|
205
205
|
var PhotoUploader_1 = require("./PhotoUploader");
|
|
206
206
|
Object.defineProperty(exports, "PhotoUploader", { enumerable: true, get: function () { return PhotoUploader_1.PhotoUploader; } });
|
|
207
|
+
var TextLink_1 = require("./TextLink");
|
|
208
|
+
Object.defineProperty(exports, "TextLink", { enumerable: true, get: function () { return TextLink_1.TextLink; } });
|
|
207
209
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../components/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../components/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.VISUALLY_HIDDEN_CLASS = void 0;
|
|
7
7
|
exports.warnMissingA11yProp = warnMissingA11yProp;
|
|
8
|
+
exports.mergeIds = mergeIds;
|
|
8
9
|
/** CSS class for visually hidden content that remains accessible to screen readers */
|
|
9
10
|
exports.VISUALLY_HIDDEN_CLASS = 'muka-visually-hidden';
|
|
10
11
|
/**
|
|
@@ -18,4 +19,17 @@ function warnMissingA11yProp(component, condition, message) {
|
|
|
18
19
|
console.warn(`[${component}] Accessibility: ${message}`);
|
|
19
20
|
}
|
|
20
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Merge `aria-describedby` / `aria-labelledby` id lists.
|
|
24
|
+
*
|
|
25
|
+
* Components own ids for their helper text and error message, but consumers
|
|
26
|
+
* may point the same attribute at their own element. Both need to survive, so
|
|
27
|
+
* the ids are concatenated rather than one replacing the other.
|
|
28
|
+
*
|
|
29
|
+
* Returns `undefined` when nothing is left, so the attribute is omitted.
|
|
30
|
+
*/
|
|
31
|
+
function mergeIds(...ids) {
|
|
32
|
+
const merged = ids.filter(Boolean).join(' ');
|
|
33
|
+
return merged || undefined;
|
|
34
|
+
}
|
|
21
35
|
//# sourceMappingURL=accessibility.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessibility.js","sourceRoot":"","sources":["../../../utils/accessibility.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAWH,kDAaC;
|
|
1
|
+
{"version":3,"file":"accessibility.js","sourceRoot":"","sources":["../../../utils/accessibility.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAWH,kDAaC;AAWD,4BAKC;AAnCD,sFAAsF;AACzE,QAAA,qBAAqB,GAAG,sBAAsB,CAAC;AAE5D;;GAEG;AACH,SAAgB,mBAAmB,CACjC,SAAiB,EACjB,SAAkB,EAClB,OAAe;IAEf,sEAAsE;IACtE,MAAM,KAAK,GACT,OAAO,OAAO,KAAK,WAAW;QAC9B,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,YAAY,CAAC;IAE1C,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS,oBAAoB,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,QAAQ,CACtB,GAAG,GAA6C;IAEhD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,OAAO,MAAM,IAAI,SAAS,CAAC;AAC7B,CAAC"}
|
|
@@ -66,19 +66,34 @@
|
|
|
66
66
|
|
|
67
67
|
.muka-bottombar--chat .muka-bottombar__content {
|
|
68
68
|
flex-direction: row;
|
|
69
|
-
max-width: var(--bottombar-chat-max-width);
|
|
70
69
|
width: 100%;
|
|
71
70
|
margin: 0 auto;
|
|
72
71
|
}
|
|
73
72
|
|
|
74
|
-
/*
|
|
73
|
+
/*
|
|
74
|
+
* `--bottombar-chat-max-width` is the conversation column (it derives from
|
|
75
|
+
* `chat.column.max-width`, the same token `ChatMessageList` caps its column
|
|
76
|
+
* with). The cap here carries the padding on top of it, so it is the
|
|
77
|
+
* composer's own edges — not the padding around it — that land on the column.
|
|
78
|
+
*/
|
|
79
|
+
|
|
80
|
+
/*
|
|
81
|
+
* Docked chat pads its content; the floating card supplies its own padding.
|
|
82
|
+
* The inline half is the section gutter `ChatMessageList` pads its scroller
|
|
83
|
+
* with, so below the cap — where the column runs full-bleed — the composer
|
|
84
|
+
* keeps to the same gutters as the messages.
|
|
85
|
+
*/
|
|
75
86
|
.muka-bottombar--chat:not(.muka-bottombar--floating) .muka-bottombar__content {
|
|
76
|
-
padding: var(--bottombar-chat-padding)
|
|
87
|
+
padding: var(--bottombar-chat-padding)
|
|
88
|
+
var(--section-padding-horizontal-default, var(--spacing-4));
|
|
89
|
+
max-width: calc(
|
|
90
|
+
var(--bottombar-chat-max-width) + 2 * var(--section-padding-horizontal-default, var(--spacing-4))
|
|
91
|
+
);
|
|
77
92
|
}
|
|
78
93
|
|
|
79
94
|
/* Floating chat card widens to the chat cap (overrides the md default below). */
|
|
80
95
|
.muka-bottombar--chat.muka-bottombar--floating .muka-bottombar__content {
|
|
81
|
-
max-width: var(--bottombar-chat-max-width);
|
|
96
|
+
max-width: calc(var(--bottombar-chat-max-width) + 2 * var(--bottombar-floating-padding));
|
|
82
97
|
}
|
|
83
98
|
|
|
84
99
|
/* ─── Tab item ────────────────────────────────────────── */
|
|
@@ -62,7 +62,13 @@
|
|
|
62
62
|
* no length measuring needed (Figma `Text length` on 5355:44091).
|
|
63
63
|
*/
|
|
64
64
|
width: fit-content;
|
|
65
|
-
|
|
65
|
+
/*
|
|
66
|
+
* Stops short of the far edge at every width: the fixed cap once the
|
|
67
|
+
* conversation column reaches its own cap, the ratio below that, where the
|
|
68
|
+
* column runs full-bleed. Without that gap a long `own` bubble spans the
|
|
69
|
+
* column and reads no differently from a `peer` one.
|
|
70
|
+
*/
|
|
71
|
+
max-width: min(var(--chatbubble-max-width), var(--chatbubble-max-width-ratio));
|
|
66
72
|
position: relative;
|
|
67
73
|
display: flex;
|
|
68
74
|
flex-direction: column;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatMessage.js","sourceRoot":"","sources":["../../../../components/ChatMessage/ChatMessage.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,mBAAmB,CAAC;AAI3B;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAA4B,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatMessage.js","sourceRoot":"","sources":["../../../../components/ChatMessage/ChatMessage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
/* Combobox Component Styles */
|
|
2
2
|
|
|
3
|
+
/* ─── Trigger group (positioning context for the trailing controls) ── */
|
|
4
|
+
|
|
5
|
+
/*
|
|
6
|
+
* The clear control is a sibling of the trigger, not a child (a <button> may
|
|
7
|
+
* not contain interactive content), so it is overlaid on the trigger's trailing
|
|
8
|
+
* padding. The trigger reserves that space with padding-right below.
|
|
9
|
+
*/
|
|
10
|
+
.muka-combobox__trigger-group {
|
|
11
|
+
position: relative;
|
|
12
|
+
display: block;
|
|
13
|
+
width: 100%;
|
|
14
|
+
}
|
|
15
|
+
|
|
3
16
|
/* ─── Trigger (looks like an Input field, behaves like a button) ── */
|
|
4
17
|
|
|
5
18
|
.muka-combobox {
|
|
@@ -7,7 +20,7 @@
|
|
|
7
20
|
align-items: center;
|
|
8
21
|
gap: var(--spacing-2);
|
|
9
22
|
width: 100%;
|
|
10
|
-
padding: 0 var(--input-field-padding-x);
|
|
23
|
+
padding: 0 var(--muka-combobox-trailing-space) 0 var(--input-field-padding-x);
|
|
11
24
|
background-color: var(--input-field-color-default-background);
|
|
12
25
|
border: var(--border-width-regular) solid var(--input-field-color-default-border);
|
|
13
26
|
color: var(--color-text-default-default);
|
|
@@ -19,6 +32,19 @@
|
|
|
19
32
|
line-height: var(--text-body-md-regular-lineHeight);
|
|
20
33
|
-webkit-tap-highlight-color: transparent;
|
|
21
34
|
transition: border-color 0.12s ease;
|
|
35
|
+
|
|
36
|
+
/* Room for the chevron overlaid on the trailing edge. */
|
|
37
|
+
--muka-combobox-trailing-space: calc(
|
|
38
|
+
var(--input-field-padding-x) + var(--icon-size-sm) + var(--spacing-2)
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/* …and for the clear button next to it, when one is rendered. */
|
|
43
|
+
.muka-combobox--clearable {
|
|
44
|
+
--muka-combobox-trailing-space: calc(
|
|
45
|
+
var(--input-field-padding-x) + var(--icon-size-sm) + var(--spacing-2) +
|
|
46
|
+
var(--icon-size-xs) + var(--spacing-1) * 2 + var(--spacing-2)
|
|
47
|
+
);
|
|
22
48
|
}
|
|
23
49
|
|
|
24
50
|
.muka-combobox--sm {
|
|
@@ -71,6 +97,23 @@
|
|
|
71
97
|
text-overflow: ellipsis;
|
|
72
98
|
}
|
|
73
99
|
|
|
100
|
+
/* ─── Trailing controls (clear + chevron) ─────────────── */
|
|
101
|
+
|
|
102
|
+
.muka-combobox__actions {
|
|
103
|
+
position: absolute;
|
|
104
|
+
top: 0;
|
|
105
|
+
right: var(--input-field-padding-x);
|
|
106
|
+
height: 100%;
|
|
107
|
+
display: flex;
|
|
108
|
+
align-items: center;
|
|
109
|
+
gap: var(--spacing-2);
|
|
110
|
+
/*
|
|
111
|
+
* The strip sits on top of the trigger, so it must not swallow taps meant to
|
|
112
|
+
* open the picker. Only the clear button takes pointer events back.
|
|
113
|
+
*/
|
|
114
|
+
pointer-events: none;
|
|
115
|
+
}
|
|
116
|
+
|
|
74
117
|
.muka-combobox__clear,
|
|
75
118
|
.muka-combobox__chevron {
|
|
76
119
|
display: inline-flex;
|
|
@@ -81,9 +124,13 @@
|
|
|
81
124
|
}
|
|
82
125
|
|
|
83
126
|
.muka-combobox__clear {
|
|
127
|
+
pointer-events: auto;
|
|
84
128
|
cursor: pointer;
|
|
85
129
|
padding: var(--spacing-1);
|
|
130
|
+
border: none;
|
|
131
|
+
background: none;
|
|
86
132
|
border-radius: var(--radius-sm);
|
|
133
|
+
-webkit-tap-highlight-color: transparent;
|
|
87
134
|
}
|
|
88
135
|
|
|
89
136
|
.muka-combobox__clear:hover {
|
|
@@ -91,6 +138,17 @@
|
|
|
91
138
|
background-color: var(--color-surface-level1);
|
|
92
139
|
}
|
|
93
140
|
|
|
141
|
+
.muka-combobox__clear:focus-visible {
|
|
142
|
+
outline: 2px solid var(--color-border-focus);
|
|
143
|
+
outline-offset: 2px;
|
|
144
|
+
color: var(--color-text-default-default);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.muka-combobox--disabled ~ .muka-combobox__actions,
|
|
148
|
+
.muka-combobox:disabled ~ .muka-combobox__actions {
|
|
149
|
+
opacity: 0.5;
|
|
150
|
+
}
|
|
151
|
+
|
|
94
152
|
/* ─── Picker sheet body ───────────────────────────────── */
|
|
95
153
|
|
|
96
154
|
.muka-combobox__picker {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useId, useMemo, useState } from 'react';
|
|
3
|
+
import { useId, useMemo, useRef, useState } from 'react';
|
|
4
4
|
import { Sheet } from '../Sheet';
|
|
5
5
|
import { SearchInput } from '../SearchInput';
|
|
6
6
|
import { ListItem } from '../ListItem';
|
|
@@ -21,10 +21,18 @@ const defaultFilter = (option, query) => {
|
|
|
21
21
|
* by the underlying Vaul drawer's responsive behavior.
|
|
22
22
|
*
|
|
23
23
|
* For long lists, pass a custom `filter` to do fuzzy or async matching.
|
|
24
|
+
*
|
|
25
|
+
* @accessibility
|
|
26
|
+
* - Trigger is a native `<button>` with `aria-haspopup="listbox"`/`aria-expanded`
|
|
27
|
+
* - The `clearable` control is a sibling `<button>`, not nested in the trigger:
|
|
28
|
+
* it is in the tab order, operable with Enter/Space, and its label stays out
|
|
29
|
+
* of the trigger's accessible name
|
|
30
|
+
* - Clearing returns focus to the trigger, since the clear button unmounts
|
|
24
31
|
*/
|
|
25
32
|
export const Combobox = ({ value, onChange, options, placeholder = 'Select…', title, searchable = true, searchPlaceholder = 'Search', emptyText = 'No results', clearable = false, disabled = false, size = 'md', filter = defaultFilter, 'aria-label': ariaLabel, name, id, className = '', }) => {
|
|
26
33
|
const generatedId = useId();
|
|
27
34
|
const triggerId = id || name || generatedId;
|
|
35
|
+
const triggerRef = useRef(null);
|
|
28
36
|
const [open, setOpen] = useState(false);
|
|
29
37
|
const [query, setQuery] = useState('');
|
|
30
38
|
const selected = useMemo(() => options.find((o) => o.value === value) ?? null, [options, value]);
|
|
@@ -45,20 +53,31 @@ export const Combobox = ({ value, onChange, options, placeholder = 'Select…',
|
|
|
45
53
|
onChange(option.value);
|
|
46
54
|
handleOpenChange(false);
|
|
47
55
|
};
|
|
48
|
-
const
|
|
49
|
-
|
|
56
|
+
const showClear = clearable && !!selected && !disabled;
|
|
57
|
+
const handleClear = () => {
|
|
50
58
|
onChange(null);
|
|
59
|
+
// The clear button unmounts as soon as the selection goes — without this,
|
|
60
|
+
// focus would fall back to <body> and the keyboard user would lose their
|
|
61
|
+
// place. Hand it to the trigger, the control the clear belongs to.
|
|
62
|
+
triggerRef.current?.focus();
|
|
51
63
|
};
|
|
52
64
|
const triggerClasses = [
|
|
53
65
|
'muka-combobox',
|
|
54
66
|
`muka-combobox--${size}`,
|
|
55
67
|
!selected && 'muka-combobox--placeholder',
|
|
56
68
|
disabled && 'muka-combobox--disabled',
|
|
69
|
+
showClear && 'muka-combobox--clearable',
|
|
57
70
|
className,
|
|
58
71
|
]
|
|
59
72
|
.filter(Boolean)
|
|
60
73
|
.join(' ');
|
|
61
|
-
return (_jsxs(_Fragment, { children: [_jsxs("button", { type: "button", id: triggerId, name: name, className: triggerClasses, onClick: () => !disabled && setOpen(true), disabled: disabled, "aria-haspopup": "listbox", "aria-expanded": open, "aria-label": ariaLabel, children: [selected?.icon && (_jsx("span", { className: "muka-combobox__leading", "aria-hidden": "true", children: selected.icon })), _jsx("span", { className: "muka-combobox__label", children: selected ? selected.label : placeholder }),
|
|
74
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "muka-combobox__trigger-group", children: [_jsxs("button", { ref: triggerRef, type: "button", id: triggerId, name: name, className: triggerClasses, onClick: () => !disabled && setOpen(true), disabled: disabled, "aria-haspopup": "listbox", "aria-expanded": open, "aria-label": ariaLabel, children: [selected?.icon && (_jsx("span", { className: "muka-combobox__leading", "aria-hidden": "true", children: selected.icon })), _jsx("span", { className: "muka-combobox__label", children: selected ? selected.label : placeholder })] }), _jsxs("span", { className: "muka-combobox__actions", children: [showClear && (_jsx("button", { type: "button", className: "muka-combobox__clear", onClick: handleClear, "aria-label": "Clear selection", children: _jsx(Icon, { name: "close", size: "xs" }) })), _jsx("span", { className: "muka-combobox__chevron", "aria-hidden": "true", children: _jsx(Icon, { name: "arrow-down-s", size: "sm" }) })] })] }), _jsx(Sheet, { open: open, onOpenChange: handleOpenChange, title: title || ariaLabel || placeholder, children: _jsxs("div", { className: "muka-combobox__picker", children: [title && _jsx("h2", { className: "muka-combobox__title", children: title }), searchable && (_jsx("div", { className: "muka-combobox__search", children: _jsx(SearchInput, { value: query, onChange: setQuery, placeholder: searchPlaceholder,
|
|
75
|
+
// The picker is a modal Sheet the user deliberately opened, and
|
|
76
|
+
// search is its primary action — focus belongs in the field on
|
|
77
|
+
// open. This is focus management on a modal, not a page-load
|
|
78
|
+
// focus steal.
|
|
79
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
80
|
+
autoFocus: true }) })), _jsx("div", { className: "muka-combobox__list", role: "listbox", "aria-label": title || placeholder, children: filtered.length === 0 ? (_jsx(EmptyState, { title: emptyText })) : (filtered.map((option) => (_jsx(ListItem, { label: option.label, caption: option.caption, leadingIcon: option.icon, selected: option.value === value, "aria-selected": option.value === value, disabled: option.disabled, onClick: () => handleSelect(option) }, option.value)))) })] }) })] }));
|
|
62
81
|
};
|
|
63
82
|
export default Combobox;
|
|
64
83
|
//# sourceMappingURL=Combobox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Combobox.js","sourceRoot":"","sources":["../../../../components/Combobox/Combobox.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Combobox.js","sourceRoot":"","sources":["../../../../components/Combobox/Combobox.tsx"],"names":[],"mappings":"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"}
|