@bookjane2/bookjane-design-library 9.0.13 → 9.0.14
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/lib/components/BKJAvatar/BKJAvatar.styled.d.ts +1 -1
- package/lib/components/BKJButtonIconTextInput/BKJButtonIconTextInput.styled.d.ts +2 -2
- package/lib/components/BKJDialog/BKJDialog.styled.d.ts +1 -1
- package/lib/components/BKJDialogChildren/BKJDialogChildren.styled.d.ts +1 -1
- package/lib/components/BKJFileInput/BKJFileInput.styled.d.ts +2 -2
- package/lib/components/BKJListItem/BKJListItem.d.ts.map +1 -1
- package/lib/components/BKJListItem/BKJListItem.js +1 -1
- package/lib/components/BKJListItem/BKJListItem.js.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.constants.d.ts +7 -0
- package/lib/components/BKJSelect/BKJSelect.constants.d.ts.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.constants.js +7 -0
- package/lib/components/BKJSelect/BKJSelect.constants.js.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.d.ts.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.js +156 -12
- package/lib/components/BKJSelect/BKJSelect.js.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.stories.d.ts +50 -1
- package/lib/components/BKJSelect/BKJSelect.stories.d.ts.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.stories.js +98 -96
- package/lib/components/BKJSelect/BKJSelect.stories.js.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.styled.d.ts +2 -6
- package/lib/components/BKJSelect/BKJSelect.styled.d.ts.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.styled.js +5 -8
- package/lib/components/BKJSelect/BKJSelect.styled.js.map +1 -1
- package/lib/components/BKJSelect/BKJSelect.test.d.ts +2 -0
- package/lib/components/BKJSelect/BKJSelect.test.d.ts.map +1 -0
- package/lib/components/BKJSelect/BKJSelect.test.js +367 -0
- package/lib/components/BKJSelect/BKJSelect.test.js.map +1 -0
- package/lib/components/BKJSelect/BKJSelect.types.d.ts +10 -2
- package/lib/components/BKJSelect/BKJSelect.types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
3
|
-
import { ButtonWrapper, DropdownIcon,
|
|
2
|
+
import { forwardRef, useCallback, useEffect, useMemo, useRef, useState, } from 'react';
|
|
3
|
+
import { ButtonWrapper, DropdownIcon, Placeholder, BKJSelectIcon, BKJSelectErrorMessage, BKJSelectPopoverWrapper, } from './BKJSelect.styled.js';
|
|
4
4
|
import { v4 as uuidv4 } from 'uuid';
|
|
5
5
|
import { usePopper } from 'react-popper';
|
|
6
6
|
import { getDesignLibraryElementNode } from './utils/getDesignLibraryElementNode.js';
|
|
@@ -12,7 +12,40 @@ import { ErrorBoundary } from '../ErrorBoundary/index.js';
|
|
|
12
12
|
import { BKJTheme } from '../../providers/index.js';
|
|
13
13
|
import { Portal } from '../Portal/Portal.js';
|
|
14
14
|
import { BKJIcon } from '../BKJIcon/index.js';
|
|
15
|
-
import { VariantsWithClear } from './BKJSelect.constants.js';
|
|
15
|
+
import { KEY_ARROW_DOWN, KEY_ARROW_UP, KEY_END, KEY_ENTER, KEY_ESCAPE, KEY_HOME, KEY_SPACE, VariantsWithClear, } from './BKJSelect.constants.js';
|
|
16
|
+
function getInitialActiveOptionId(options, value, optionIdsByValue, direction) {
|
|
17
|
+
if (options.length === 0)
|
|
18
|
+
return null;
|
|
19
|
+
const firstSelected = options.find((opt) => value.includes(opt.value));
|
|
20
|
+
if (firstSelected)
|
|
21
|
+
return optionIdsByValue.get(String(firstSelected.value)) ?? null;
|
|
22
|
+
const idx = direction === 'down' ? 0 : options.length - 1;
|
|
23
|
+
return optionIdsByValue.get(String(options[idx].value)) ?? null;
|
|
24
|
+
}
|
|
25
|
+
function getNextOptionId(options, optionIdsByValue, activeOptionId, delta) {
|
|
26
|
+
if (options.length === 0)
|
|
27
|
+
return null;
|
|
28
|
+
if (activeOptionId === null) {
|
|
29
|
+
const idx = delta === 1 ? 0 : options.length - 1;
|
|
30
|
+
return optionIdsByValue.get(String(options[idx].value)) ?? null;
|
|
31
|
+
}
|
|
32
|
+
const currentIdx = options.findIndex((opt) => optionIdsByValue.get(String(opt.value)) === activeOptionId);
|
|
33
|
+
if (currentIdx === -1)
|
|
34
|
+
return optionIdsByValue.get(String(options[0].value)) ?? null;
|
|
35
|
+
const nextIdx = Math.max(0, Math.min(options.length - 1, currentIdx + delta));
|
|
36
|
+
return optionIdsByValue.get(String(options[nextIdx].value)) ?? null;
|
|
37
|
+
}
|
|
38
|
+
function getOptionIdAt(options, optionIdsByValue, idx) {
|
|
39
|
+
if (options.length === 0)
|
|
40
|
+
return null;
|
|
41
|
+
const safeIdx = Math.max(0, Math.min(options.length - 1, idx));
|
|
42
|
+
return optionIdsByValue.get(String(options[safeIdx].value)) ?? null;
|
|
43
|
+
}
|
|
44
|
+
function findOptionByActiveId(options, optionIdsByValue, activeOptionId) {
|
|
45
|
+
if (activeOptionId === null)
|
|
46
|
+
return null;
|
|
47
|
+
return (options.find((opt) => optionIdsByValue.get(String(opt.value)) === activeOptionId) ?? null);
|
|
48
|
+
}
|
|
16
49
|
function BKJSelectEndIcon({ iconProps, isOpen, value, name, variant, onChange, }) {
|
|
17
50
|
if (variant === 'PurpleTextNoArrow')
|
|
18
51
|
return null;
|
|
@@ -26,12 +59,15 @@ function BKJSelectEndIcon({ iconProps, isOpen, value, name, variant, onChange, }
|
|
|
26
59
|
return (_jsx(DropdownIcon, { ...iconProps, iconName: "ArrowDown", color: BKJTheme.select[variant].colorScheme.fontColor(isOpen), isOpen: isOpen }));
|
|
27
60
|
}
|
|
28
61
|
function BKJSelectComponent(props, ref) {
|
|
29
|
-
const { type = 'Single', label, name, onChange, onClose, value: _value = [], placeholder, required = false, variant = 'GreyOutlined', width = 'auto', disabled, dropdownVariant = 'Square', dropdownPlacement = 'bottom', moreValuesLabel = 'More', dropdownWidth, dropdownHeight, dropdownMinHeight, options, renderOptions: RenderOptions, iconComponent: IconComponent, iconProps = {}, modifiers: _modifiers, error, dropdownProps, placeholderColor, ...
|
|
30
|
-
const isError = !!error || (Array.isArray(error) && !!error[0]);
|
|
62
|
+
const { type = 'Single', label, name, onChange, onClose, value: _value = [], placeholder, required = false, variant = 'GreyOutlined', width = 'auto', disabled, dropdownVariant = 'Square', dropdownPlacement = 'bottom', moreValuesLabel = 'More', dropdownWidth, dropdownHeight, dropdownMinHeight, options, renderOptions: RenderOptions, iconComponent: IconComponent, iconProps = {}, modifiers: _modifiers, error, dropdownProps, placeholderColor, headerSlot, 'aria-label': ariaLabelFromRest, 'aria-labelledby': ariaLabelledByFromRest, 'aria-describedby': consumerDescribedBy, ...restWithoutResolvedAria } = props;
|
|
31
63
|
let errorMessages = [];
|
|
32
|
-
if (error &&
|
|
33
|
-
errorMessages =
|
|
64
|
+
if (typeof error === 'string' && error.length > 0) {
|
|
65
|
+
errorMessages = [error];
|
|
66
|
+
}
|
|
67
|
+
else if (Array.isArray(error)) {
|
|
68
|
+
errorMessages = error.filter((e) => typeof e === 'string' && e.length > 0);
|
|
34
69
|
}
|
|
70
|
+
const isError = (typeof error === 'boolean' && error) || errorMessages.length > 0;
|
|
35
71
|
if (!Array.isArray(_value))
|
|
36
72
|
throw new Error("BKJSelect must receive an array for it's value. Even if type is set to Single.");
|
|
37
73
|
const value = useMemo(() => (Boolean(_value.length) ? _value : []), [_value]);
|
|
@@ -71,13 +107,29 @@ function BKJSelectComponent(props, ref) {
|
|
|
71
107
|
},
|
|
72
108
|
},
|
|
73
109
|
], [dropdownVariant, _modifiers]);
|
|
74
|
-
const
|
|
110
|
+
const listboxId = useMemo(() => `bkj-select-listbox-${uuidv4()}`, []);
|
|
111
|
+
const optionIdsByValue = useMemo(() => {
|
|
112
|
+
const map = new Map();
|
|
113
|
+
for (const opt of options)
|
|
114
|
+
map.set(String(opt.value), `bkj-select-option-${uuidv4()}`);
|
|
115
|
+
return map;
|
|
116
|
+
}, [options]);
|
|
117
|
+
const errorMessageIds = useMemo(() => errorMessages.map(() => `bkj-select-error-${uuidv4()}`), [errorMessages.length]);
|
|
118
|
+
const describedByIds = [consumerDescribedBy, ...errorMessageIds].filter(Boolean).join(' ') || undefined;
|
|
119
|
+
const resolvedAriaLabel = ariaLabelledByFromRest !== undefined
|
|
120
|
+
? undefined
|
|
121
|
+
: ariaLabelFromRest !== undefined
|
|
122
|
+
? ariaLabelFromRest
|
|
123
|
+
: label !== undefined
|
|
124
|
+
? label
|
|
125
|
+
: undefined;
|
|
75
126
|
const buttonRef = useRef();
|
|
76
127
|
const dropdownRef = useRef();
|
|
77
128
|
const [inputElement, setInputElement] = useState();
|
|
78
129
|
const [dropdownElement, setDropdownElement] = useState();
|
|
79
130
|
const [targetElement, setTargetElement] = useState(getDesignLibraryElementNode('dropdown-root'));
|
|
80
131
|
const [isOpen, setOpen] = useState(false);
|
|
132
|
+
const [activeOptionId, setActiveOptionId] = useState(null);
|
|
81
133
|
useEffect(() => {
|
|
82
134
|
if (!targetElement) {
|
|
83
135
|
const element = document.createElement('div');
|
|
@@ -86,6 +138,22 @@ function BKJSelectComponent(props, ref) {
|
|
|
86
138
|
setTargetElement(element);
|
|
87
139
|
}
|
|
88
140
|
}, []); // eslint-disable-line
|
|
141
|
+
// Re-seed activeOptionId when `options` mutates and the active id is no longer
|
|
142
|
+
// present in the new list (Clarifications 2026-04-27, Q3=A).
|
|
143
|
+
useEffect(() => {
|
|
144
|
+
if (!isOpen)
|
|
145
|
+
return;
|
|
146
|
+
if (activeOptionId === null)
|
|
147
|
+
return;
|
|
148
|
+
const idStillExists = Array.from(optionIdsByValue.values()).includes(activeOptionId);
|
|
149
|
+
if (idStillExists)
|
|
150
|
+
return;
|
|
151
|
+
if (options.length === 0) {
|
|
152
|
+
setActiveOptionId(null);
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
setActiveOptionId(optionIdsByValue.get(String(options[0].value)) ?? null);
|
|
156
|
+
}, [options, optionIdsByValue, isOpen, activeOptionId]);
|
|
89
157
|
const handleChange = useCallback((event) => {
|
|
90
158
|
switch (type) {
|
|
91
159
|
case 'Multiple': {
|
|
@@ -116,21 +184,97 @@ function BKJSelectComponent(props, ref) {
|
|
|
116
184
|
onChange({ ...event, target: { ...event.target, value: [event.target.value] } });
|
|
117
185
|
setDisplayValues([event.target.label]);
|
|
118
186
|
setOpen(false);
|
|
187
|
+
setActiveOptionId(null);
|
|
188
|
+
buttonRef.current?.focus();
|
|
119
189
|
break;
|
|
120
190
|
}
|
|
121
191
|
}
|
|
122
192
|
}, [displayValues, onChange, type, value]);
|
|
123
193
|
const handleToggle = useCallback(() => {
|
|
124
|
-
|
|
125
|
-
|
|
194
|
+
if (disabled)
|
|
195
|
+
return;
|
|
196
|
+
const willOpen = !isOpen;
|
|
197
|
+
setOpen(willOpen);
|
|
198
|
+
if (willOpen) {
|
|
199
|
+
setActiveOptionId(getInitialActiveOptionId(options, value, optionIdsByValue, 'down'));
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
setActiveOptionId(null);
|
|
203
|
+
}
|
|
204
|
+
}, [disabled, isOpen, options, value, optionIdsByValue]);
|
|
126
205
|
const handleClose = useCallback((event) => {
|
|
127
206
|
if (buttonRef?.current && !buttonRef?.current.contains(event.target)) {
|
|
128
207
|
if (dropdownRef?.current && !dropdownRef?.current.contains(event.target)) {
|
|
129
208
|
setOpen(false);
|
|
209
|
+
setActiveOptionId(null);
|
|
130
210
|
onClose && onClose(event);
|
|
131
211
|
}
|
|
132
212
|
}
|
|
133
213
|
}, [onClose]);
|
|
214
|
+
const handleKeyDown = useCallback((e) => {
|
|
215
|
+
if (disabled)
|
|
216
|
+
return;
|
|
217
|
+
const key = e.key;
|
|
218
|
+
if (!isOpen) {
|
|
219
|
+
if (key === KEY_SPACE ||
|
|
220
|
+
key === KEY_ENTER ||
|
|
221
|
+
key === KEY_ARROW_DOWN ||
|
|
222
|
+
key === KEY_ARROW_UP) {
|
|
223
|
+
e.preventDefault();
|
|
224
|
+
const direction = key === KEY_ARROW_UP ? 'up' : 'down';
|
|
225
|
+
setOpen(true);
|
|
226
|
+
setActiveOptionId(getInitialActiveOptionId(options, value, optionIdsByValue, direction));
|
|
227
|
+
}
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
switch (key) {
|
|
231
|
+
case KEY_ARROW_DOWN:
|
|
232
|
+
e.preventDefault();
|
|
233
|
+
setActiveOptionId((curr) => getNextOptionId(options, optionIdsByValue, curr, +1));
|
|
234
|
+
break;
|
|
235
|
+
case KEY_ARROW_UP:
|
|
236
|
+
e.preventDefault();
|
|
237
|
+
setActiveOptionId((curr) => getNextOptionId(options, optionIdsByValue, curr, -1));
|
|
238
|
+
break;
|
|
239
|
+
case KEY_HOME:
|
|
240
|
+
e.preventDefault();
|
|
241
|
+
setActiveOptionId(getOptionIdAt(options, optionIdsByValue, 0));
|
|
242
|
+
break;
|
|
243
|
+
case KEY_END:
|
|
244
|
+
e.preventDefault();
|
|
245
|
+
setActiveOptionId(getOptionIdAt(options, optionIdsByValue, options.length - 1));
|
|
246
|
+
break;
|
|
247
|
+
case KEY_ENTER:
|
|
248
|
+
case KEY_SPACE: {
|
|
249
|
+
e.preventDefault();
|
|
250
|
+
const opt = findOptionByActiveId(options, optionIdsByValue, activeOptionId);
|
|
251
|
+
if (!opt)
|
|
252
|
+
return;
|
|
253
|
+
// The `as any` cast here is forced by the pre-existing
|
|
254
|
+
// `BKJSelectEventType = ... & any` in BKJSelect.types.ts, which is
|
|
255
|
+
// scoped OUT of this ticket per plan.md Complexity Tracking.
|
|
256
|
+
// TODO: remove this cast when the deferred-`any` follow-up narrows
|
|
257
|
+
// BKJSelectEventType.
|
|
258
|
+
handleChange({ target: { name, value: opt.value, label: opt.label } }); // eslint-disable-line
|
|
259
|
+
break;
|
|
260
|
+
}
|
|
261
|
+
case KEY_ESCAPE:
|
|
262
|
+
e.preventDefault();
|
|
263
|
+
setOpen(false);
|
|
264
|
+
setActiveOptionId(null);
|
|
265
|
+
buttonRef.current?.focus();
|
|
266
|
+
break;
|
|
267
|
+
}
|
|
268
|
+
}, [
|
|
269
|
+
disabled,
|
|
270
|
+
isOpen,
|
|
271
|
+
options,
|
|
272
|
+
value,
|
|
273
|
+
optionIdsByValue,
|
|
274
|
+
activeOptionId,
|
|
275
|
+
name,
|
|
276
|
+
handleChange,
|
|
277
|
+
]);
|
|
134
278
|
const { styles, attributes } = usePopper(inputElement, dropdownElement, {
|
|
135
279
|
modifiers,
|
|
136
280
|
placement: dropdownPlacement,
|
|
@@ -158,7 +302,7 @@ function BKJSelectComponent(props, ref) {
|
|
|
158
302
|
}
|
|
159
303
|
const scrollRef = useRef();
|
|
160
304
|
const RenderOptionsComponent = RenderOptions;
|
|
161
|
-
return (_jsxs(ErrorBoundary, { componentName: "BKJSelect", height: "38px", direction: "row", size: "Small", width: width, isStyled: true, children: [_jsxs(ButtonWrapper, { ...
|
|
305
|
+
return (_jsxs(ErrorBoundary, { componentName: "BKJSelect", height: "38px", direction: "row", size: "Small", width: width, isStyled: true, children: [_jsxs(ButtonWrapper, { ...restWithoutResolvedAria, disabled: disabled, "$isPlaceholderShown": isPlaceholderShown, ref: mergeRefs([ref, buttonRef, setInputElement]), name: name, onClick: handleToggle, onKeyDown: handleKeyDown, value: value, variant: variant, dropdownVariant: dropdownVariant, width: width, isOpen: isOpen, isError: isError, type: "button", role: "combobox", "aria-haspopup": "listbox", "aria-expanded": isOpen, "aria-controls": isOpen ? listboxId : undefined, "aria-activedescendant": isOpen ? activeOptionId ?? undefined : undefined, "aria-label": resolvedAriaLabel, "aria-labelledby": ariaLabelledByFromRest, "aria-invalid": isError ? true : undefined, "aria-describedby": describedByIds, "aria-required": required ? true : undefined, children: [IconComponent && iconProps.iconName && _jsx(BKJSelectIcon, { ...iconProps }), isPlaceholderShown ? (_jsx(Placeholder, { placeholderColor: placeholderColor, children: placeholder })) : typeof label === 'undefined' ? (_jsx("span", { children: displayValues.length > 0
|
|
162
306
|
? `${displayValues[0]}${displayValues.length > 1
|
|
163
307
|
? `... +${displayValues.length - 1} ${moreValuesLabel}`
|
|
164
308
|
: ''}`
|
|
@@ -166,7 +310,7 @@ function BKJSelectComponent(props, ref) {
|
|
|
166
310
|
setDisplayValues([]);
|
|
167
311
|
return onChange(e);
|
|
168
312
|
} })] }), errorMessages[0] &&
|
|
169
|
-
errorMessages.map((err) => _jsx(BKJSelectErrorMessage, { children: err }, err)), targetElement && isOpen && (_jsx(Portal, { targetElement: targetElement, children: _jsx(BKJDropdown, { "$dropdownVariant": dropdownVariant, "$dropdownWidth": dropdownWidth, "$dropdownHeight": dropdownHeight, "$dropdownMinHeight": dropdownMinHeight,
|
|
313
|
+
errorMessages.map((err, idx) => (_jsx(BKJSelectErrorMessage, { id: errorMessageIds[idx], children: err }, err))), targetElement && isOpen && (_jsx(Portal, { targetElement: targetElement, children: _jsxs(BKJSelectPopoverWrapper, { ...popperProps, ref: mergeRefs([dropdownRef, setDropdownElement]), children: [headerSlot, _jsx(BKJDropdown, { "$dropdownVariant": dropdownVariant, "$dropdownWidth": dropdownWidth, "$dropdownHeight": dropdownHeight, "$dropdownMinHeight": dropdownMinHeight, role: "listbox", id: listboxId, "aria-multiselectable": type === 'Multiple' ? true : undefined, children: _jsx(RenderOptionsComponent, { scrollRef: scrollRef, onChange: handleChange, selected: value, options: options, onClose: handleClose, name: name, type: type, dropdownProps: dropdownProps, optionIdsByValue: optionIdsByValue }) })] }) }))] }));
|
|
170
314
|
}
|
|
171
315
|
export const BKJSelect = forwardRef(BKJSelectComponent);
|
|
172
316
|
//# sourceMappingURL=BKJSelect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJSelect.js","sourceRoot":"","sources":["../../../src/components/BKJSelect/BKJSelect.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BKJSelect.js","sourceRoot":"","sources":["../../../src/components/BKJSelect/BKJSelect.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,55 @@ declare const setup: {
|
|
|
4
4
|
ref?: React.ForwardedRef<HTMLElement>;
|
|
5
5
|
}) => ReturnType<(<Type_1>(props: import("./BKJSelect.types.js").IBKJSelectProps<Type_1>, ref: import("react").Ref<HTMLElement>) => JSX.Element)>;
|
|
6
6
|
};
|
|
7
|
-
export declare const Default: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
7
|
+
export declare const Default: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
8
|
+
variant: any;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
'aria-label'?: string;
|
|
11
|
+
}>;
|
|
12
|
+
export declare const Open: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
13
|
+
variant: any;
|
|
14
|
+
placeholder?: string;
|
|
15
|
+
'aria-label'?: string;
|
|
16
|
+
}>;
|
|
17
|
+
export declare const Single: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
18
|
+
variant: any;
|
|
19
|
+
label?: string;
|
|
20
|
+
placeholder?: string;
|
|
21
|
+
error?: string | string[];
|
|
22
|
+
disabled?: boolean;
|
|
23
|
+
required?: boolean;
|
|
24
|
+
}>;
|
|
25
|
+
export declare const Error: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
26
|
+
variant: any;
|
|
27
|
+
label?: string;
|
|
28
|
+
placeholder?: string;
|
|
29
|
+
error?: string | string[];
|
|
30
|
+
disabled?: boolean;
|
|
31
|
+
required?: boolean;
|
|
32
|
+
}>;
|
|
33
|
+
export declare const ErrorMultiple: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
34
|
+
variant: any;
|
|
35
|
+
label?: string;
|
|
36
|
+
placeholder?: string;
|
|
37
|
+
error?: string | string[];
|
|
38
|
+
disabled?: boolean;
|
|
39
|
+
required?: boolean;
|
|
40
|
+
}>;
|
|
41
|
+
export declare const Disabled: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
42
|
+
variant: any;
|
|
43
|
+
label?: string;
|
|
44
|
+
placeholder?: string;
|
|
45
|
+
error?: string | string[];
|
|
46
|
+
disabled?: boolean;
|
|
47
|
+
required?: boolean;
|
|
48
|
+
}>;
|
|
49
|
+
export declare const Required: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, {
|
|
50
|
+
variant: any;
|
|
51
|
+
label?: string;
|
|
52
|
+
placeholder?: string;
|
|
53
|
+
error?: string | string[];
|
|
54
|
+
disabled?: boolean;
|
|
55
|
+
required?: boolean;
|
|
56
|
+
}>;
|
|
8
57
|
export default setup;
|
|
9
58
|
//# sourceMappingURL=BKJSelect.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJSelect.stories.d.ts","sourceRoot":"","sources":["../../../src/components/BKJSelect/BKJSelect.stories.tsx"],"names":[],"mappings":"AAQA,QAAA,MAAM,KAAK;;;
|
|
1
|
+
{"version":3,"file":"BKJSelect.stories.d.ts","sourceRoot":"","sources":["../../../src/components/BKJSelect/BKJSelect.stories.tsx"],"names":[],"mappings":"AAQA,QAAA,MAAM,KAAK;;;WAmM0yW,CAAC;;CAhMrzW,CAAC;AAiIF,eAAO,MAAM,OAAO;aA5FT,GAAG;kBACE,MAAM;mBACL,MAAM;EA0FmC,CAAC;AAS3D,eAAO,MAAM,IAAI;aArGN,GAAG;kBACE,MAAM;mBACL,MAAM;EAmGgC,CAAC;AAYxD,eAAO,MAAM,MAAM;aA1DR,GAAG;YACJ,MAAM;kBACA,MAAM;YACZ,MAAM,GAAG,MAAM,EAAE;eACd,OAAO;eACP,OAAO;EAqDyB,CAAC;AAS9C,eAAO,MAAM,KAAK;aAnEP,GAAG;YACJ,MAAM;kBACA,MAAM;YACZ,MAAM,GAAG,MAAM,EAAE;eACd,OAAO;eACP,OAAO;EA8DwB,CAAC;AAQ7C,eAAO,MAAM,aAAa;aA3Ef,GAAG;YACJ,MAAM;kBACA,MAAM;YACZ,MAAM,GAAG,MAAM,EAAE;eACd,OAAO;eACP,OAAO;EAsEgC,CAAC;AAQrD,eAAO,MAAM,QAAQ;aAnFV,GAAG;YACJ,MAAM;kBACA,MAAM;YACZ,MAAM,GAAG,MAAM,EAAE;eACd,OAAO;eACP,OAAO;EA8E2B,CAAC;AAQhD,eAAO,MAAM,QAAQ;aA3FV,GAAG;YACJ,MAAM;kBACA,MAAM;YACZ,MAAM,GAAG,MAAM,EAAE;eACd,OAAO;eACP,OAAO;EAsF2B,CAAC;AAQhD,eAAe,KAAK,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Fragment, useCallback, useState } from 'react';
|
|
3
3
|
import { BKJIcon } from '../BKJIcon/index.js';
|
|
4
4
|
import { BKJListItem } from '../BKJListItem/index.js';
|
|
@@ -15,108 +15,110 @@ const options = [
|
|
|
15
15
|
{ key: 'part_time', value: 'part_time', label: 'Part Time' },
|
|
16
16
|
{ key: 'reg_part_time', value: 'reg_part_time', label: 'Reg Part Time' },
|
|
17
17
|
{ key: 'terminated', value: 'terminated', label: 'Terminated' },
|
|
18
|
-
{ key: 'terminatee', value: 'terminatee', label: 'Terminated' },
|
|
19
|
-
{ key: 'terminatef', value: 'terminatef', label: 'Terminated' },
|
|
20
|
-
{ key: 'terminateg', value: 'terminateg', label: 'Terminated' },
|
|
21
|
-
{ key: 'terminateh', value: 'terminateh', label: 'Terminated' },
|
|
22
|
-
{ key: 'terminatei', value: 'terminatei', label: 'Terminated' },
|
|
23
|
-
{ key: 'terminatej', value: 'terminatej', label: 'Terminated' },
|
|
24
|
-
{ key: 'terminatek', value: 'terminatek', label: 'Terminated' },
|
|
25
|
-
{ key: 'terminatel', value: 'terminatel', label: 'Terminated' },
|
|
26
|
-
{ key: 'terminatem', value: 'terminatem', label: 'Terminated' },
|
|
27
|
-
{ key: 'terminaten', value: 'terminaten', label: 'Terminated' },
|
|
28
|
-
{ key: 'terminateo', value: 'terminateo', label: 'Terminated' },
|
|
29
|
-
{ key: 'terminatep', value: 'terminatep', label: 'Terminated' },
|
|
30
|
-
{ key: 'terminateq', value: 'terminateq', label: 'Terminated' },
|
|
31
|
-
{ key: 'terminater', value: 'terminater', label: 'Terminated' },
|
|
32
|
-
{ key: 'terminates', value: 'terminates', label: 'Terminated' },
|
|
33
|
-
{ key: 'terminatet', value: 'terminatet', label: 'Terminated' },
|
|
34
|
-
{ key: 'terminateu', value: 'terminateu', label: 'Terminated' },
|
|
35
|
-
{ key: 'terminatev', value: 'terminatev', label: 'Terminated' },
|
|
36
|
-
{ key: 'terminatew', value: 'terminatew', label: 'Terminated' },
|
|
37
|
-
{ key: 'terminatex', value: 'terminatex', label: 'Terminated' },
|
|
38
|
-
{ key: 'terminatey', value: 'terminatey', label: 'Terminated' },
|
|
39
|
-
{ key: 'terminatez', value: 'terminatez', label: 'Terminated' },
|
|
40
|
-
{ key: 'terminatfa', value: 'terminatfa', label: 'Terminated' },
|
|
41
|
-
{ key: 'terminatfb', value: 'terminatfb', label: 'Terminated' },
|
|
42
|
-
{ key: 'terminatfc', value: 'terminatfc', label: 'Terminated' },
|
|
43
|
-
{ key: 'terminatfd', value: 'terminatfd', label: 'Terminated' },
|
|
44
|
-
{ key: 'terminatfe', value: 'terminatfe', label: 'Terminated' },
|
|
45
|
-
{ key: 'terminatff', value: 'terminatff', label: 'Terminated' },
|
|
46
|
-
{ key: 'terminatfg', value: 'terminatfg', label: 'Terminated' },
|
|
47
|
-
{ key: 'terminatfh', value: 'terminatfh', label: 'Terminated' },
|
|
48
|
-
{ key: 'terminatfi', value: 'terminatfi', label: 'Terminated' },
|
|
49
|
-
{ key: 'terminatfj', value: 'terminatfj', label: 'Terminated' },
|
|
50
|
-
{ key: 'terminatfk', value: 'terminatfk', label: 'Terminated' },
|
|
51
|
-
{ key: 'terminatfl', value: 'terminatfl', label: 'Terminated' },
|
|
52
|
-
{ key: 'terminatfm', value: 'terminatfm', label: 'Terminated' },
|
|
53
|
-
{ key: 'terminatfn', value: 'terminatfn', label: 'Terminated' },
|
|
54
|
-
{ key: 'terminatfo', value: 'terminatfo', label: 'Terminated' },
|
|
55
|
-
{ key: 'terminatfp', value: 'terminatfp', label: 'Terminated' },
|
|
56
|
-
{ key: 'terminatfq', value: 'terminatfq', label: 'Terminated' },
|
|
57
|
-
{ key: 'terminatfr', value: 'terminatfr', label: 'Terminated' },
|
|
58
|
-
{ key: 'terminatfs', value: 'terminatfs', label: 'Terminated' },
|
|
59
|
-
{ key: 'terminatft', value: 'terminatft', label: 'Terminated' },
|
|
60
|
-
{ key: 'terminatfu', value: 'terminatfu', label: 'Terminated' },
|
|
61
|
-
{ key: 'terminatfv', value: 'terminatfv', label: 'Terminated' },
|
|
62
|
-
{ key: 'terminatfw', value: 'terminatfw', label: 'Terminated' },
|
|
63
|
-
{ key: 'terminatfx', value: 'terminatfx', label: 'Terminated' },
|
|
64
|
-
{ key: 'terminatfy', value: 'terminatfy', label: 'Terminated' },
|
|
65
|
-
{ key: 'terminatfz', value: 'terminatfz', label: 'Terminated' },
|
|
66
|
-
{ key: 'terminatga', value: 'terminatga', label: 'Terminated' },
|
|
67
|
-
{ key: 'terminatgb', value: 'terminatgb', label: 'Terminated' },
|
|
68
|
-
{ key: 'terminatgc', value: 'terminatgc', label: 'Terminated' },
|
|
69
|
-
{ key: 'terminatgd', value: 'terminatgd', label: 'Terminated' },
|
|
70
|
-
{ key: 'terminatge', value: 'terminatge', label: 'Terminated' },
|
|
71
|
-
{ key: 'terminatgf', value: 'terminatgf', label: 'Terminated' },
|
|
72
18
|
];
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
anuddaOne: 'lmfao',
|
|
77
|
-
whoa: {
|
|
78
|
-
lol: {
|
|
79
|
-
noway: {
|
|
80
|
-
fn: () => { },
|
|
81
|
-
},
|
|
82
|
-
},
|
|
83
|
-
},
|
|
84
|
-
},
|
|
85
|
-
};
|
|
19
|
+
// Options-only renderOptions: emits exclusively `role="option"` items.
|
|
20
|
+
// Non-option content (e.g., "Select All" controls) is now passed via the
|
|
21
|
+
// new `headerSlot` prop on `<BKJSelect>` per Clarifications 2026-04-23 (Q3=D).
|
|
86
22
|
function Test(props) {
|
|
87
|
-
|
|
88
|
-
const isAllSelected = props.selected.length === props.options.length;
|
|
89
|
-
return (_jsxs(Fragment, { children: [_jsx(BKJSelectSearchControls, { numSelected: props.selected.length, isAllSelected: isAllSelected, onSelectAll: () => {
|
|
90
|
-
isAllSelected
|
|
91
|
-
? props.onChange({
|
|
92
|
-
target: {
|
|
93
|
-
name: 'employmentStatus',
|
|
94
|
-
label: [],
|
|
95
|
-
value: [],
|
|
96
|
-
},
|
|
97
|
-
})
|
|
98
|
-
: props.onChange({
|
|
99
|
-
target: {
|
|
100
|
-
name: 'employmentStatus',
|
|
101
|
-
label: options.map(({ label }) => label),
|
|
102
|
-
value: options.map(({ value }) => value),
|
|
103
|
-
},
|
|
104
|
-
});
|
|
105
|
-
} }), props.options.map((val) => (_jsx(BKJListItem, { ...props, ...val, type: "Standard" })))] }));
|
|
23
|
+
return (_jsx(Fragment, { children: props.options.map((val) => (_jsx(BKJListItem, { ...props, ...val, id: props.optionIdsByValue?.get(String(val.value)), type: "Standard" }))) }));
|
|
106
24
|
}
|
|
107
|
-
|
|
25
|
+
// Default template: multi-select with a "Select All" header in the new
|
|
26
|
+
// `headerSlot` slot. Mirrors the previous default visual (PillClear pill with
|
|
27
|
+
// header controls). Crucially does NOT pass `label` — the existing rendering
|
|
28
|
+
// in BKJSelect.tsx shows `label` text in place of the selected display
|
|
29
|
+
// values when `label` is defined, so passing `label` would prevent the visible
|
|
30
|
+
// trigger text from updating as items are selected. Accessible-name comes from
|
|
31
|
+
// `aria-label` rest-spread (FR-014 fallback ladder, second priority).
|
|
32
|
+
const MultipleWithHeaderTemplate = (args) => {
|
|
108
33
|
const [values, setValues] = useState({ employmentStatus: [] });
|
|
109
34
|
const handleChange = useCallback((event) => {
|
|
110
35
|
setValues({ ...values, [event.target.name]: event.target.value });
|
|
111
36
|
}, [values]);
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
37
|
+
const isAllSelected = values.employmentStatus.length === options.length;
|
|
38
|
+
const handleSelectAll = useCallback(() => {
|
|
39
|
+
if (isAllSelected) {
|
|
40
|
+
setValues({ ...values, employmentStatus: [] });
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
setValues({
|
|
44
|
+
...values,
|
|
45
|
+
employmentStatus: options.map((o) => o.value),
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}, [isAllSelected, values]);
|
|
49
|
+
return (_jsx(BKJSelect, { type: "Multiple", width: "300px", name: "employmentStatus", dropdownWidth: "400px", dropdownPlacement: "bottom-start", onChange: handleChange, value: values.employmentStatus, options: options, renderOptions: Test, iconComponent: BKJIcon, css: "padding-left: 12px;", headerSlot: _jsx(BKJSelectSearchControls, { numSelected: values.employmentStatus.length, isAllSelected: isAllSelected, onSelectAll: handleSelectAll }), ...args }));
|
|
50
|
+
};
|
|
51
|
+
// Single-select form-input style. `label` IS passed here because for Single
|
|
52
|
+
// type the typical UX shows the label text in the trigger; this story
|
|
53
|
+
// demonstrates the form-input pattern. The visible trigger text shows the
|
|
54
|
+
// `label` (when present) regardless of selection — this is pre-existing
|
|
55
|
+
// behavior of BKJSelect.tsx's render logic.
|
|
56
|
+
const SingleTemplate = (args) => {
|
|
57
|
+
const [values, setValues] = useState({ employmentStatus: [] });
|
|
58
|
+
const handleChange = useCallback((event) => {
|
|
59
|
+
setValues({ ...values, [event.target.name]: event.target.value });
|
|
60
|
+
}, [values]);
|
|
61
|
+
return (_jsx(BKJSelect, { type: "Single", width: "300px", name: "employmentStatus", dropdownPlacement: "bottom-start", onChange: handleChange, value: values.employmentStatus, options: options, renderOptions: Test, iconComponent: BKJIcon, ...args }));
|
|
62
|
+
};
|
|
63
|
+
// === Stories ===
|
|
64
|
+
// Default — restored to match the pre-WEB-4819 visual: Multiple PillClear
|
|
65
|
+
// with `BKJSelectSearchControls` in the header. Uses `aria-label` (not
|
|
66
|
+
// `label`) so the visible trigger text updates with selection per the
|
|
67
|
+
// existing render logic.
|
|
68
|
+
export const Default = MultipleWithHeaderTemplate.bind({});
|
|
69
|
+
Default.args = {
|
|
70
|
+
variant: 'GreyOutlinedPillClear',
|
|
71
|
+
placeholder: 'Location',
|
|
72
|
+
'aria-label': 'Location',
|
|
73
|
+
};
|
|
74
|
+
// Open — same template as Default; opens on render via the play function so
|
|
75
|
+
// the a11y panel can score the open state.
|
|
76
|
+
export const Open = MultipleWithHeaderTemplate.bind({});
|
|
77
|
+
Open.args = {
|
|
78
|
+
variant: 'GreyOutlinedPillClear',
|
|
79
|
+
placeholder: 'Location',
|
|
80
|
+
'aria-label': 'Location',
|
|
81
|
+
};
|
|
82
|
+
Open.play = async ({ canvasElement }) => {
|
|
83
|
+
const trigger = canvasElement.querySelector('[role="combobox"]');
|
|
84
|
+
trigger?.click();
|
|
85
|
+
};
|
|
86
|
+
// Single — form-input style: Single + GreyOutlined + `label`.
|
|
87
|
+
export const Single = SingleTemplate.bind({});
|
|
88
|
+
Single.args = {
|
|
89
|
+
variant: 'GreyOutlined',
|
|
90
|
+
label: 'Employment Status',
|
|
91
|
+
placeholder: 'Select',
|
|
92
|
+
};
|
|
93
|
+
// Error / ErrorMultiple / Disabled / Required — Single-select form-input
|
|
94
|
+
// style stories so the validation surfaces are clear and focus-visible.
|
|
95
|
+
export const Error = SingleTemplate.bind({});
|
|
96
|
+
Error.args = {
|
|
97
|
+
variant: 'GreyOutlined',
|
|
98
|
+
label: 'Employment Status',
|
|
99
|
+
placeholder: 'Select',
|
|
100
|
+
error: 'This field is required',
|
|
101
|
+
};
|
|
102
|
+
export const ErrorMultiple = SingleTemplate.bind({});
|
|
103
|
+
ErrorMultiple.args = {
|
|
104
|
+
variant: 'GreyOutlined',
|
|
105
|
+
label: 'Employment Status',
|
|
106
|
+
placeholder: 'Select',
|
|
107
|
+
error: ['This field is required', 'Minimum length is 2'],
|
|
108
|
+
};
|
|
109
|
+
export const Disabled = SingleTemplate.bind({});
|
|
110
|
+
Disabled.args = {
|
|
111
|
+
variant: 'GreyOutlined',
|
|
112
|
+
label: 'Employment Status',
|
|
113
|
+
placeholder: 'Select',
|
|
114
|
+
disabled: true,
|
|
115
|
+
};
|
|
116
|
+
export const Required = SingleTemplate.bind({});
|
|
117
|
+
Required.args = {
|
|
118
|
+
variant: 'GreyOutlined',
|
|
119
|
+
label: 'Employment Status',
|
|
120
|
+
placeholder: 'Select',
|
|
121
|
+
required: true,
|
|
118
122
|
};
|
|
119
|
-
export const Default = Template.bind({});
|
|
120
|
-
Default.args = {};
|
|
121
123
|
export default setup;
|
|
122
124
|
//# sourceMappingURL=BKJSelect.stories.js.map
|