@bookjane2/bookjane-design-library 9.0.20 → 9.0.22
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/BKJDollarTextInput/BKJDollarTextInput.d.ts.map +1 -1
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.js +18 -4
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.js.map +1 -1
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.stories.d.ts +4 -0
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.stories.d.ts.map +1 -1
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.stories.js +35 -0
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.stories.js.map +1 -1
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.test.d.ts +2 -0
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.test.d.ts.map +1 -0
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.test.js +93 -0
- package/lib/components/BKJDollarTextInput/BKJDollarTextInput.test.js.map +1 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.context.d.ts.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.context.js +47 -17
- package/lib/components/BKJPillTextArea/BKJPillTextArea.context.js.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.d.ts.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.js +12 -7
- package/lib/components/BKJPillTextArea/BKJPillTextArea.js.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.stories.d.ts +15 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.stories.d.ts.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.stories.js +45 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.stories.js.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.styled.d.ts +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.styled.d.ts.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.styled.js +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.styled.js.map +1 -1
- package/lib/components/BKJPillTextArea/BKJPillTextArea.test.d.ts +2 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.test.d.ts.map +1 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.test.js +227 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.test.js.map +1 -0
- package/lib/components/BKJPillTextArea/BKJPillTextArea.types.d.ts +6 -2
- package/lib/components/BKJPillTextArea/BKJPillTextArea.types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJDollarTextInput.d.ts","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BKJDollarTextInput.d.ts","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAA6C,MAAM,OAAO,CAAC;AAWtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAGtE,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC,wBAAwB,CA+F1D,CAAC"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
2
|
+
import { useTextField } from '@react-aria/textfield';
|
|
3
|
+
import { Fragment, forwardRef, useCallback, useRef } from 'react';
|
|
4
|
+
import { isBoolean, isFormValidationErrorDisplayed } from '../../common.types.js';
|
|
3
5
|
import { RequiredAsterisk, InputLabel, InputWrapper, TextInput, InputErrorMessage, IconTextInputWrapper, } from './BKJDollarTextInput.styled.js';
|
|
4
6
|
import { mergeRefs } from '../BKJSelect/utils/mergeRefs.js';
|
|
5
7
|
export const BKJDollarTextInput = forwardRef((props, ref) => {
|
|
6
8
|
const { label, error, disabled, required, className, onChange, value, max, ...rest } = props;
|
|
7
|
-
const innerRef = useRef({
|
|
9
|
+
const innerRef = useRef({});
|
|
8
10
|
const handleOuterFocus = useCallback(() => {
|
|
9
|
-
innerRef
|
|
11
|
+
innerRef.current?.focus();
|
|
10
12
|
}, []);
|
|
11
13
|
const handleBlur = useCallback((e) => {
|
|
12
14
|
const currencyFormatter = new Intl.NumberFormat('en-US', {
|
|
@@ -29,7 +31,19 @@ export const BKJDollarTextInput = forwardRef((props, ref) => {
|
|
|
29
31
|
onChange({ ...e, target: { value: e.target.value } });
|
|
30
32
|
}
|
|
31
33
|
}, [onChange]);
|
|
34
|
+
const hasStringyError = isFormValidationErrorDisplayed(error) && !isBoolean(error);
|
|
35
|
+
const { labelProps, inputProps, errorMessageProps } = useTextField({
|
|
36
|
+
isRequired: required,
|
|
37
|
+
isDisabled: disabled,
|
|
38
|
+
label: label || 'Dollar amount',
|
|
39
|
+
value,
|
|
40
|
+
errorMessage: hasStringyError ? error : undefined,
|
|
41
|
+
validationState: isFormValidationErrorDisplayed(error) ? 'invalid' : 'valid',
|
|
42
|
+
onBlur: handleBlur,
|
|
43
|
+
}, innerRef);
|
|
32
44
|
const hasValue = value !== '';
|
|
33
|
-
return (_jsxs(IconTextInputWrapper, { className: className, tabIndex: -1, onFocus: handleOuterFocus, children: [label && (_jsxs(InputLabel, { disabled: disabled, children: [label, required && _jsx(RequiredAsterisk, { children: "\u00A0*" })] })), _jsx(InputWrapper, { children: _jsx(TextInput, { placeholder: "None",
|
|
45
|
+
return (_jsxs(IconTextInputWrapper, { className: className, tabIndex: -1, onFocus: handleOuterFocus, children: [label && (_jsxs(InputLabel, { ...labelProps, disabled: disabled, children: [label, required && _jsx(RequiredAsterisk, { children: "\u00A0*" })] })), _jsx(InputWrapper, { children: _jsx(TextInput, { ...inputProps, placeholder: "None", ref: mergeRefs([innerRef, ref]), error: error ? (Array.isArray(error) ? !!error.length : !!error) : false, disabled: disabled, value: value, hasValue: hasValue, onChange: handleChange, max: max, inputMode: "decimal", ...rest }) }), hasStringyError && (_jsx(InputErrorMessage, { ...errorMessageProps, children: Array.isArray(error)
|
|
46
|
+
? error.map((err, i) => (_jsxs(Fragment, { children: [i > 0 && _jsx("br", {}), err] }, `${err}-${i}`)))
|
|
47
|
+
: error }))] }));
|
|
34
48
|
});
|
|
35
49
|
//# sourceMappingURL=BKJDollarTextInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJDollarTextInput.js","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAM,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJDollarTextInput.js","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -33,5 +33,9 @@ declare const setup: {
|
|
|
33
33
|
};
|
|
34
34
|
};
|
|
35
35
|
export declare const Default: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJDollarTextInputProps>;
|
|
36
|
+
export declare const WithStringError: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJDollarTextInputProps>;
|
|
37
|
+
export declare const WithArrayError: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJDollarTextInputProps>;
|
|
38
|
+
export declare const Required: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJDollarTextInputProps>;
|
|
39
|
+
export declare const Disabled: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJDollarTextInputProps>;
|
|
36
40
|
export default setup;
|
|
37
41
|
//# sourceMappingURL=BKJDollarTextInput.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJDollarTextInput.stories.d.ts","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAGrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BV,CAAC;AAUF,eAAO,MAAM,OAAO,oHAAoB,CAAC;AAUzC,eAAe,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"BKJDollarTextInput.stories.d.ts","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAGrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BV,CAAC;AAUF,eAAO,MAAM,OAAO,oHAAoB,CAAC;AAUzC,eAAO,MAAM,eAAe,oHAAoB,CAAC;AAWjD,eAAO,MAAM,cAAc,oHAAoB,CAAC;AAWhD,eAAO,MAAM,QAAQ,oHAAoB,CAAC;AAU1C,eAAO,MAAM,QAAQ,oHAAoB,CAAC;AAW1C,eAAe,KAAK,CAAC"}
|
|
@@ -48,5 +48,40 @@ Default.args = {
|
|
|
48
48
|
placeholder: 'None',
|
|
49
49
|
ref: React.createRef(),
|
|
50
50
|
};
|
|
51
|
+
export const WithStringError = Template.bind({});
|
|
52
|
+
WithStringError.args = {
|
|
53
|
+
label: 'Set Rate',
|
|
54
|
+
max: 1000,
|
|
55
|
+
required: false,
|
|
56
|
+
placeholder: 'None',
|
|
57
|
+
error: 'Amount must be greater than $0',
|
|
58
|
+
ref: React.createRef(),
|
|
59
|
+
};
|
|
60
|
+
export const WithArrayError = Template.bind({});
|
|
61
|
+
WithArrayError.args = {
|
|
62
|
+
label: 'Set Rate',
|
|
63
|
+
max: 1000,
|
|
64
|
+
required: false,
|
|
65
|
+
placeholder: 'None',
|
|
66
|
+
error: ['Amount must be greater than $0', 'Amount must be less than $1000'],
|
|
67
|
+
ref: React.createRef(),
|
|
68
|
+
};
|
|
69
|
+
export const Required = Template.bind({});
|
|
70
|
+
Required.args = {
|
|
71
|
+
label: 'Set Rate',
|
|
72
|
+
max: 1000,
|
|
73
|
+
required: true,
|
|
74
|
+
placeholder: 'None',
|
|
75
|
+
ref: React.createRef(),
|
|
76
|
+
};
|
|
77
|
+
export const Disabled = Template.bind({});
|
|
78
|
+
Disabled.args = {
|
|
79
|
+
label: 'Set Rate',
|
|
80
|
+
max: 1000,
|
|
81
|
+
required: false,
|
|
82
|
+
disabled: true,
|
|
83
|
+
placeholder: 'None',
|
|
84
|
+
ref: React.createRef(),
|
|
85
|
+
};
|
|
51
86
|
export default setup;
|
|
52
87
|
//# sourceMappingURL=BKJDollarTextInput.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJDollarTextInput.stories.js","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.stories.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,KAAK,GAAG;IACZ,KAAK,EAAE,mCAAmC;IAC1C,SAAS,EAAE,kBAAkB;IAC7B,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,IAAI,EAAE,YAAY;SACnB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM;aACb;SACF;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,gBAAgB;SACvB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,aAAa;SACpB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU;SACjB;QACD,GAAG,EAAE;YACH,IAAI,EAAE,KAAK;SACZ;QACD,KAAK,EAAE;YACL,KAAK,EAAE;gBACL,OAAO,EAAE,IAAI;aACd;SACF;KACF;CACF,CAAC;AAEF,MAAM,QAAQ,GAAsC,CAAC,IAAI,EAAE,EAAE;IAC3D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAkB,EAAE,EAAE;QACrD,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,KAAC,kBAAkB,OAAK,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,GAAI,CAAC;AAC/E,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAEzC,OAAO,CAAC,IAAI,GAAG;IACb,KAAK,EAAE,UAAU;IACjB,GAAG,EAAE,IAAI;IACT,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,MAAM;IACnB,GAAG,EAAE,KAAK,CAAC,SAAS,EAAE;CACvB,CAAC;AAEF,eAAe,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"BKJDollarTextInput.stories.js","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BKJDollarTextInput.test.d.ts","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { screen } from '@testing-library/react';
|
|
3
|
+
import { renderAndCheckA11y, renderWithTheme } from '../../test-utils/index.js';
|
|
4
|
+
import { BKJDollarTextInput } from './BKJDollarTextInput.js';
|
|
5
|
+
const noop = () => { };
|
|
6
|
+
describe('BKJDollarTextInput', () => {
|
|
7
|
+
describe('Accessibility', () => {
|
|
8
|
+
it('default (labelled) has no a11y violations', async () => {
|
|
9
|
+
const { axeResults } = await renderAndCheckA11y(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", onChange: noop, value: "" }));
|
|
10
|
+
expect(axeResults).toHaveNoViolations();
|
|
11
|
+
});
|
|
12
|
+
it('required has no a11y violations', async () => {
|
|
13
|
+
const { axeResults } = await renderAndCheckA11y(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", required: true, onChange: noop, value: "" }));
|
|
14
|
+
expect(axeResults).toHaveNoViolations();
|
|
15
|
+
});
|
|
16
|
+
it('with string error has no a11y violations', async () => {
|
|
17
|
+
const { axeResults } = await renderAndCheckA11y(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", error: "Amount must be greater than $0", onChange: noop, value: "" }));
|
|
18
|
+
expect(axeResults).toHaveNoViolations();
|
|
19
|
+
});
|
|
20
|
+
it('with array of errors has no a11y violations', async () => {
|
|
21
|
+
const { axeResults } = await renderAndCheckA11y(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", error: ['Amount must be greater than $0', 'Amount must be less than $1000'], onChange: noop, value: "" }));
|
|
22
|
+
expect(axeResults).toHaveNoViolations();
|
|
23
|
+
});
|
|
24
|
+
it('disabled has no a11y violations', async () => {
|
|
25
|
+
const { axeResults } = await renderAndCheckA11y(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", disabled: true, onChange: noop, value: "" }));
|
|
26
|
+
expect(axeResults).toHaveNoViolations();
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
describe('ARIA attributes', () => {
|
|
30
|
+
it('label htmlFor matches input id', () => {
|
|
31
|
+
renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", onChange: noop, value: "" }));
|
|
32
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
33
|
+
const inputId = input.getAttribute('id');
|
|
34
|
+
expect(inputId).toBeTruthy();
|
|
35
|
+
const label = document.querySelector(`label[for="${inputId}"]`);
|
|
36
|
+
expect(label).not.toBeNull();
|
|
37
|
+
expect(label?.textContent).toContain('Set Rate');
|
|
38
|
+
});
|
|
39
|
+
it('input has aria-invalid="true" when error is a string', () => {
|
|
40
|
+
renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", error: "Amount must be greater than $0", onChange: noop, value: "" }));
|
|
41
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
42
|
+
expect(input).toHaveAttribute('aria-invalid', 'true');
|
|
43
|
+
});
|
|
44
|
+
it('input has no aria-invalid when error is falsy', () => {
|
|
45
|
+
renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", onChange: noop, value: "" }));
|
|
46
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
47
|
+
expect(input).not.toHaveAttribute('aria-invalid');
|
|
48
|
+
});
|
|
49
|
+
it('aria-describedby references a single error element when error is a string', () => {
|
|
50
|
+
const { container } = renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", error: "Amount must be greater than $0", onChange: noop, value: "" }));
|
|
51
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
52
|
+
const describedBy = input.getAttribute('aria-describedby');
|
|
53
|
+
expect(describedBy).toBeTruthy();
|
|
54
|
+
const errorIds = (describedBy ?? '').split(/\s+/).filter(Boolean);
|
|
55
|
+
expect(errorIds.length).toBeGreaterThan(0);
|
|
56
|
+
for (const id of errorIds) {
|
|
57
|
+
const matches = container.querySelectorAll(`[id="${id}"]`);
|
|
58
|
+
expect(matches.length).toBe(1);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
it('renders a single error element when error is an array of strings', () => {
|
|
62
|
+
const { container } = renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", error: ['Amount must be greater than $0', 'Amount must be less than $1000'], onChange: noop, value: "" }));
|
|
63
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
64
|
+
expect(input).toHaveAttribute('aria-invalid', 'true');
|
|
65
|
+
const describedBy = input.getAttribute('aria-describedby');
|
|
66
|
+
expect(describedBy).toBeTruthy();
|
|
67
|
+
const errorIds = (describedBy ?? '').split(/\s+/).filter(Boolean);
|
|
68
|
+
expect(errorIds.length).toBeGreaterThan(0);
|
|
69
|
+
for (const id of errorIds) {
|
|
70
|
+
const matches = container.querySelectorAll(`[id="${id}"]`);
|
|
71
|
+
expect(matches.length).toBe(1);
|
|
72
|
+
expect(matches[0].textContent?.trim().length ?? 0).toBeGreaterThan(0);
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
it('input has aria-required="true" when required is true', () => {
|
|
76
|
+
renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", required: true, onChange: noop, value: "" }));
|
|
77
|
+
// The visible "*" is part of the accessible name when required, so use a regex match.
|
|
78
|
+
const input = screen.getByRole('textbox', { name: /Set Rate/ });
|
|
79
|
+
expect(input).toHaveAttribute('aria-required', 'true');
|
|
80
|
+
});
|
|
81
|
+
it('input has no aria-required when required is absent', () => {
|
|
82
|
+
renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", onChange: noop, value: "" }));
|
|
83
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
84
|
+
expect(input).not.toHaveAttribute('aria-required');
|
|
85
|
+
});
|
|
86
|
+
it('input has inputmode="decimal"', () => {
|
|
87
|
+
renderWithTheme(_jsx(BKJDollarTextInput, { label: "Set Rate", name: "rate", onChange: noop, value: "" }));
|
|
88
|
+
const input = screen.getByRole('textbox', { name: 'Set Rate' });
|
|
89
|
+
expect(input).toHaveAttribute('inputmode', 'decimal');
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=BKJDollarTextInput.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BKJDollarTextInput.test.js","sourceRoot":"","sources":["../../../src/components/BKJDollarTextInput/BKJDollarTextInput.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.context.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,EAAE,EAWH,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAI5F,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,wBAAwB,
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.context.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,EAAE,EAWH,MAAM,OAAO,CAAC;AAIf,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAI5F,eAAO,MAAM,uBAAuB,EAAE,EAAE,CAAC,wBAAwB,CAiRhE,CAAC;AAEF,eAAO,MAAM,yBAAyB,+BAA2C,CAAC"}
|
|
@@ -3,13 +3,15 @@ import { createContext, useCallback, useContext, useEffect, useMemo, useRef, use
|
|
|
3
3
|
import { v4 as uuidv4 } from 'uuid';
|
|
4
4
|
import { useClickOutside } from '../../hooks/index.js';
|
|
5
5
|
const BKJPillTextAreaContext = createContext(null);
|
|
6
|
-
export const BKJPillTextAreaProvider = ({ children, value = [], onChange, name, max, }) => {
|
|
6
|
+
export const BKJPillTextAreaProvider = ({ children, value = [], onChange, name, max, disabled = false, }) => {
|
|
7
7
|
const wrapperRef = useRef(null);
|
|
8
8
|
const inputRef = useRef(null);
|
|
9
9
|
const mouseDownTargetRef = useRef(null);
|
|
10
10
|
const [uuid] = useState(uuidv4());
|
|
11
11
|
const [targetElement, setTargetElement] = useState(null);
|
|
12
12
|
const [inputValue, setInputValue] = useState('');
|
|
13
|
+
const inputLabelId = useMemo(() => `BKJPillTextArea_${uuid}_Label`, [uuid]);
|
|
14
|
+
const errorContainerId = useMemo(() => `BKJPillTextArea_${uuid}_Error`, [uuid]);
|
|
13
15
|
const setInitialTargetElement = useCallback((id) => {
|
|
14
16
|
const ele = document.getElementById(id);
|
|
15
17
|
const inputElement = document.querySelector(`#BKJPillTextArea_${uuid}_ActiveInputElement`);
|
|
@@ -17,7 +19,41 @@ export const BKJPillTextAreaProvider = ({ children, value = [], onChange, name,
|
|
|
17
19
|
inputElement?.focus();
|
|
18
20
|
inputElement?.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
19
21
|
}, [uuid]);
|
|
22
|
+
const setCursorAtIndex = useCallback((index) => {
|
|
23
|
+
setTimeout(() => {
|
|
24
|
+
const ele = document.getElementById(`BKJPillRow_${uuid}_${index}`);
|
|
25
|
+
setTargetElement(ele);
|
|
26
|
+
const element = document.getElementById(`BKJPillRow_${uuid}_DefaultInput`);
|
|
27
|
+
if (!element) {
|
|
28
|
+
inputRef.current?.focus();
|
|
29
|
+
inputRef.current?.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
element?.focus();
|
|
33
|
+
element?.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
34
|
+
}
|
|
35
|
+
}, 0);
|
|
36
|
+
}, [uuid]);
|
|
20
37
|
const onInputFocused = useCallback((event) => {
|
|
38
|
+
const target = event.target;
|
|
39
|
+
const closeButton = target?.closest('button[aria-label]');
|
|
40
|
+
if (closeButton) {
|
|
41
|
+
const wrapper = closeButton.closest('[id^="BKJPillRow_"]');
|
|
42
|
+
const idx = wrapper
|
|
43
|
+
? Number.parseInt(wrapper.id.split('_').pop() || '-1', 10)
|
|
44
|
+
: -1;
|
|
45
|
+
if (idx >= 0 && idx < value.length) {
|
|
46
|
+
event.preventDefault();
|
|
47
|
+
event.stopPropagation();
|
|
48
|
+
const nextValue = Array.from(value);
|
|
49
|
+
nextValue.splice(idx, 1);
|
|
50
|
+
onChange({ target: { name, value: nextValue } });
|
|
51
|
+
setCursorAtIndex(idx - 1);
|
|
52
|
+
return void 0;
|
|
53
|
+
}
|
|
54
|
+
event.stopPropagation();
|
|
55
|
+
return void 0;
|
|
56
|
+
}
|
|
21
57
|
const currentTargetId = event?.currentTarget?.id;
|
|
22
58
|
if (currentTargetId === `BKJPillTextArea_${uuid}_TextAreaWrapper`) {
|
|
23
59
|
const hasValues = value.length > 0;
|
|
@@ -41,22 +77,7 @@ export const BKJPillTextAreaProvider = ({ children, value = [], onChange, name,
|
|
|
41
77
|
event.stopPropagation();
|
|
42
78
|
setInitialTargetElement(event.currentTarget.id);
|
|
43
79
|
return void 0;
|
|
44
|
-
}, [setInitialTargetElement, targetElement?.id, uuid, value
|
|
45
|
-
const setCursorAtIndex = useCallback((index) => {
|
|
46
|
-
setTimeout(() => {
|
|
47
|
-
const ele = document.getElementById(`BKJPillRow_${uuid}_${index}`);
|
|
48
|
-
setTargetElement(ele);
|
|
49
|
-
const element = document.getElementById(`BKJPillRow_${uuid}_DefaultInput`);
|
|
50
|
-
if (!element) {
|
|
51
|
-
inputRef.current?.focus();
|
|
52
|
-
inputRef.current?.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
element?.focus();
|
|
56
|
-
element?.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
57
|
-
}
|
|
58
|
-
}, 0);
|
|
59
|
-
}, [uuid]);
|
|
80
|
+
}, [setInitialTargetElement, targetElement?.id, uuid, value, onChange, name, setCursorAtIndex]);
|
|
60
81
|
const getCursorIndex = useCallback(() => {
|
|
61
82
|
const index = Number.parseInt(targetElement?.id?.split('_')?.pop() || '-1', 10);
|
|
62
83
|
return index;
|
|
@@ -141,7 +162,13 @@ export const BKJPillTextAreaProvider = ({ children, value = [], onChange, name,
|
|
|
141
162
|
return (event) => {
|
|
142
163
|
event.preventDefault();
|
|
143
164
|
event.stopPropagation();
|
|
165
|
+
// Mouse activation is handled on mousedown by onInputFocused (legacy timing).
|
|
166
|
+
// Click handler services keyboard activation only (Enter/Space → detail=0).
|
|
167
|
+
if (event.detail !== 0)
|
|
168
|
+
return;
|
|
144
169
|
const index = value.indexOf(label);
|
|
170
|
+
if (index < 0)
|
|
171
|
+
return;
|
|
145
172
|
const nextValue = Array.from(value);
|
|
146
173
|
nextValue.splice(index, 1);
|
|
147
174
|
onChange({ target: { name, value: nextValue } });
|
|
@@ -190,6 +217,9 @@ export const BKJPillTextAreaProvider = ({ children, value = [], onChange, name,
|
|
|
190
217
|
setInputValue,
|
|
191
218
|
uuid,
|
|
192
219
|
isMaxLimitReached,
|
|
220
|
+
inputLabelId,
|
|
221
|
+
errorContainerId,
|
|
222
|
+
disabled,
|
|
193
223
|
}, children: children }));
|
|
194
224
|
};
|
|
195
225
|
export const useBKJPillTextAreaContext = () => useContext(BKJPillTextAreaContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.context.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.context.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,aAAa,EAMb,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,MAAM,sBAAsB,GAAG,aAAa,CAA0B,IAAK,CAAC,CAAC;AAE7E,MAAM,CAAC,MAAM,uBAAuB,GAAiC,CAAC,EACpE,QAAQ,EACR,KAAK,GAAG,EAAE,EACV,QAAQ,EACR,IAAI,EACJ,GAAG,
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.context.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.context.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAerC,OAAO,EAAe,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAerC,OAAO,EAAe,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAqKxE,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,gBAAgB,CA2BhD,CAAC"}
|
|
@@ -7,8 +7,8 @@ import { Portal } from '../Portal/Portal.js';
|
|
|
7
7
|
import { BKJPillTextAreaProvider, useBKJPillTextAreaContext } from './BKJPillTextArea.context.js';
|
|
8
8
|
import { BKJPillRowWrapper, BKJPillTextAreaWrapper, Input, InputLabel, InputMessage, RequiredAsterisk, TextAreaWrapper, } from './BKJPillTextArea.styled.js';
|
|
9
9
|
const BKJPillRow = ({ label, id }) => {
|
|
10
|
-
const { onInputFocused, onChipRemove } = useBKJPillTextAreaContext();
|
|
11
|
-
return (_jsx(BKJPillRowWrapper, { id: id, width: "100%", onMouseDown: onInputFocused, flexDirection: "column-reverse", children: _jsx(BKJChip, { onClose: onChipRemove(label), variant: "Purple", children: label }) }));
|
|
10
|
+
const { onInputFocused, onChipRemove, disabled } = useBKJPillTextAreaContext();
|
|
11
|
+
return (_jsx(BKJPillRowWrapper, { id: id, width: "100%", onMouseDown: onInputFocused, flexDirection: "column-reverse", children: _jsx(BKJChip, { onClose: onChipRemove(label), variant: "Purple", closeAriaLabel: `Remove ${label}`, closeButtonDisabled: disabled, children: label }) }));
|
|
12
12
|
};
|
|
13
13
|
function calcMargin(targetElement, value) {
|
|
14
14
|
const split = targetElement.id.split('_');
|
|
@@ -22,11 +22,16 @@ function calcMargin(targetElement, value) {
|
|
|
22
22
|
}
|
|
23
23
|
const BKJPillTextAreaComponent = (props) => {
|
|
24
24
|
const { value, label, required, disabled, description, name, valueDescription, placeholder, error, max, ...rest } = props;
|
|
25
|
-
const { wrapperRef, inputRef, uuid, inputValue, targetElement, onInputFocused, onInputChange, onInputKeyDown, onInputBlur, onInputPaste, isMaxLimitReached, } = useBKJPillTextAreaContext();
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
const { wrapperRef, inputRef, uuid, inputValue, targetElement, onInputFocused, onInputChange, onInputKeyDown, onInputBlur, onInputPaste, isMaxLimitReached, inputLabelId, errorContainerId, } = useBKJPillTextAreaContext();
|
|
26
|
+
const hasErrorBlock = (typeof error === 'string' || Array.isArray(error)) && error.length > 0;
|
|
27
|
+
const ariaInvalid = !!error || isMaxLimitReached ? 'true' : undefined;
|
|
28
|
+
const ariaDescribedBy = hasErrorBlock ? errorContainerId : undefined;
|
|
29
|
+
const ariaRequired = required ? 'true' : undefined;
|
|
30
|
+
return (_jsxs(BKJPillTextAreaWrapper, { onBlur: onInputBlur, children: [label && (_jsxs(InputLabel, { id: inputLabelId, disabled: disabled, children: [label, required && _jsx(RequiredAsterisk, { children: "\u00A0*" })] })), _jsxs(TextAreaWrapper, { ...rest, id: `BKJPillTextArea_${uuid}_TextAreaWrapper`, ref: wrapperRef, error: !!error || isMaxLimitReached, disabled: disabled, onMouseDown: onInputFocused, children: [value.length === 0 ? (_jsx(Input, { rows: 1, margin: "8px 0 0 0", id: `BKJPillRow_${uuid}_DefaultInput`, ref: inputRef, error: !!error, value: inputValue, placeholder: !!value.length ? undefined : placeholder, onChange: onInputChange, onKeyDown: onInputKeyDown, onPaste: onInputPaste, "aria-labelledby": inputLabelId, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedBy, "aria-required": ariaRequired })) : (_jsxs(Fragment, { children: [_jsx(Flex, { id: `BKJPillRow_${uuid}_-1`, padding: "0 0 0 8px", width: "100%", onMouseDown: onInputFocused, flexDirection: "column-reverse", children: _jsx(Flex, { minHeight: "8px" }) }), value.map((label, index) => (_jsx(BKJPillRow, { id: `BKJPillRow_${uuid}_${index}`, onChange: onInputChange, label: label, name: name }, `${label}-${index}`)))] })), targetElement?.id && (_jsx(Portal, { targetElement: targetElement, children: _jsx(Input, { id: `BKJPillTextArea_${uuid}_ActiveInputElement`, rows: 1, margin: calcMargin(targetElement, value), css: "padding: 0 4px;", ref: inputRef, error: !!error, value: inputValue, onPaste: onInputPaste, onChange: onInputChange, onKeyDown: onInputKeyDown, "aria-labelledby": inputLabelId, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedBy, "aria-required": ariaRequired }) }, targetElement.id))] }), description && _jsx(InputMessage, { children: description }), _jsxs(InputMessage, { isMaxLimitReached: isMaxLimitReached, children: [`${value.length}/${max}`, !!valueDescription && ` ${valueDescription}`] }), hasErrorBlock && (_jsx("span", { id: errorContainerId, role: "alert", children: Array.isArray(error)
|
|
31
|
+
? error.map((err) => (_jsx(BKJTextInputErrorMessage, { children: err }, err)))
|
|
32
|
+
: _jsx(BKJTextInputErrorMessage, { children: error }) }))] }));
|
|
28
33
|
};
|
|
29
|
-
export const BKJPillTextArea = ({ value = [], onChange, name, validations, max = 10, ...rest }) => {
|
|
30
|
-
return (_jsx(BKJPillTextAreaProvider, { value: value, onChange: onChange, name: name, validations: validations, max: max, children: _jsx(BKJPillTextAreaComponent, { name: name, value: value, max: max, ...rest }) }));
|
|
34
|
+
export const BKJPillTextArea = ({ value = [], onChange, name, validations, max = 10, disabled, ...rest }) => {
|
|
35
|
+
return (_jsx(BKJPillTextAreaProvider, { value: value, onChange: onChange, name: name, validations: validations, max: max, disabled: disabled, children: _jsx(BKJPillTextAreaComponent, { name: name, value: value, max: max, disabled: disabled, ...rest }) }));
|
|
31
36
|
};
|
|
32
37
|
//# sourceMappingURL=BKJPillTextArea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAM,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAC/F,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,EACL,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,GAChB,MAAM,0BAA0B,CAAC;AAGlC,MAAM,UAAU,GAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE;IACpD,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,yBAAyB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.tsx"],"names":[],"mappings":"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"}
|
|
@@ -30,5 +30,20 @@ declare const setup: {
|
|
|
30
30
|
};
|
|
31
31
|
};
|
|
32
32
|
export declare const Default: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJPillTextArea>;
|
|
33
|
+
export declare const WithChips: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJPillTextArea & {
|
|
34
|
+
initialValue?: string[];
|
|
35
|
+
}>;
|
|
36
|
+
export declare const ErrorState: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJPillTextArea & {
|
|
37
|
+
initialValue?: string[];
|
|
38
|
+
}>;
|
|
39
|
+
export declare const ErrorStateArray: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJPillTextArea & {
|
|
40
|
+
initialValue?: string[];
|
|
41
|
+
}>;
|
|
42
|
+
export declare const MaxReached: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJPillTextArea & {
|
|
43
|
+
initialValue?: string[];
|
|
44
|
+
}>;
|
|
45
|
+
export declare const Disabled: import("@storybook/core/csf").AnnotatedStoryFn<import("@storybook/react").ReactRenderer, IBKJPillTextArea & {
|
|
46
|
+
initialValue?: string[];
|
|
47
|
+
}>;
|
|
33
48
|
export default setup;
|
|
34
49
|
//# sourceMappingURL=BKJPillTextArea.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.stories.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAQ3D,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BV,CAAC;AAsCF,eAAO,MAAM,OAAO,4GAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.stories.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAQ3D,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BV,CAAC;AAsCF,eAAO,MAAM,OAAO,4GAAoB,CAAC;AAuBzC,eAAO,MAAM,SAAS;mBAdgD,MAAM,EAAE;EAc1B,CAAC;AAQrD,eAAO,MAAM,UAAU;mBAtB+C,MAAM,EAAE;EAsBzB,CAAC;AAStD,eAAO,MAAM,eAAe;mBA/B0C,MAAM,EAAE;EA+BpB,CAAC;AAS3D,eAAO,MAAM,UAAU;mBAxC+C,MAAM,EAAE;EAwCzB,CAAC;AAQtD,eAAO,MAAM,QAAQ;mBAhDiD,MAAM,EAAE;EAgD3B,CAAC;AASpD,eAAe,KAAK,CAAC"}
|
|
@@ -71,5 +71,50 @@ Default.args = {
|
|
|
71
71
|
required: true,
|
|
72
72
|
placeholder: "Type or paste a list of dropdown values, so that there's one value per line.",
|
|
73
73
|
};
|
|
74
|
+
const FixedValueTemplate = ({ initialValue = [], ...props }) => {
|
|
75
|
+
const { values: { data }, onChange, } = useFormBehaviors({
|
|
76
|
+
initialState: { data: initialValue },
|
|
77
|
+
onSubmit: console.log,
|
|
78
|
+
});
|
|
79
|
+
return _jsx(BKJPillTextArea, { ...props, onChange: onChange, name: "data", value: data });
|
|
80
|
+
};
|
|
81
|
+
export const WithChips = FixedValueTemplate.bind({});
|
|
82
|
+
WithChips.args = {
|
|
83
|
+
label: 'Dropdown Values',
|
|
84
|
+
valueDescription: 'values',
|
|
85
|
+
max: 10,
|
|
86
|
+
initialValue: ['option-one', 'option-two', 'option-three'],
|
|
87
|
+
};
|
|
88
|
+
export const ErrorState = FixedValueTemplate.bind({});
|
|
89
|
+
ErrorState.args = {
|
|
90
|
+
label: 'Dropdown Values',
|
|
91
|
+
valueDescription: 'values',
|
|
92
|
+
max: 10,
|
|
93
|
+
initialValue: [],
|
|
94
|
+
error: 'At least 1 option is required',
|
|
95
|
+
};
|
|
96
|
+
export const ErrorStateArray = FixedValueTemplate.bind({});
|
|
97
|
+
ErrorStateArray.args = {
|
|
98
|
+
label: 'Dropdown Values',
|
|
99
|
+
valueDescription: 'values',
|
|
100
|
+
max: 10,
|
|
101
|
+
initialValue: ['duplicate', 'duplicate'],
|
|
102
|
+
error: ['Remove duplicate values', '\t• duplicate'],
|
|
103
|
+
};
|
|
104
|
+
export const MaxReached = FixedValueTemplate.bind({});
|
|
105
|
+
MaxReached.args = {
|
|
106
|
+
label: 'Dropdown Values',
|
|
107
|
+
valueDescription: 'values',
|
|
108
|
+
max: 10,
|
|
109
|
+
initialValue: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11'],
|
|
110
|
+
};
|
|
111
|
+
export const Disabled = FixedValueTemplate.bind({});
|
|
112
|
+
Disabled.args = {
|
|
113
|
+
label: 'Dropdown Values',
|
|
114
|
+
valueDescription: 'values',
|
|
115
|
+
max: 10,
|
|
116
|
+
initialValue: ['option-one', 'option-two'],
|
|
117
|
+
disabled: true,
|
|
118
|
+
};
|
|
74
119
|
export default setup;
|
|
75
120
|
//# sourceMappingURL=BKJPillTextArea.stories.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.stories.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.stories.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.stories.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.stories.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export declare const RequiredAsterisk: import("styled-components/dist/types").IS
|
|
|
10
10
|
}, "disabled" | "key" | keyof import("react").LabelHTMLAttributes<HTMLLabelElement>> & {
|
|
11
11
|
ref?: import("react").Ref<HTMLLabelElement>;
|
|
12
12
|
}, never>> & string;
|
|
13
|
-
export declare const BKJPillTextAreaWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").
|
|
13
|
+
export declare const BKJPillTextAreaWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
14
14
|
export declare const TextAreaWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, TextAreaWrapperProps>> & string;
|
|
15
15
|
export declare const Input: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, {
|
|
16
16
|
margin?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.styled.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.styled.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAEpE,eAAO,MAAM,UAAU;eAA4B,OAAO;YAEzD,CAAC;AAEF,eAAO,MAAM,YAAY,sOAExB,CAAC;AAEF,eAAO,MAAM,YAAY,ySAYxB,CAAC;AAEF,eAAO,MAAM,gBAAgB;eAtBsB,OAAO;;;mBAwBzD,CAAC;AAEF,eAAO,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.styled.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.styled.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAEpE,eAAO,MAAM,UAAU;eAA4B,OAAO;YAEzD,CAAC;AAEF,eAAO,MAAM,YAAY,sOAExB,CAAC;AAEF,eAAO,MAAM,YAAY,ySAYxB,CAAC;AAEF,eAAO,MAAM,gBAAgB;eAtBsB,OAAO;;;mBAwBzD,CAAC;AAEF,eAAO,MAAM,sBAAsB,6NAIlC,CAAC;AAEF,eAAO,MAAM,eAAe,yPAkB3B,CAAC;AAEF,eAAO,MAAM,KAAK;aAA8B,MAAM;YAAU,8BAA8B;UAAQ,GAAG;YAoBxG,CAAC;AAEF,eAAO,MAAM,iBAAiB,uXAM7B,CAAC"}
|
|
@@ -21,7 +21,7 @@ export const InputMessage = styled.label `
|
|
|
21
21
|
export const RequiredAsterisk = styled(InputLabel) `
|
|
22
22
|
${InputRequiredAsteriskCSS}
|
|
23
23
|
`;
|
|
24
|
-
export const BKJPillTextAreaWrapper = styled.
|
|
24
|
+
export const BKJPillTextAreaWrapper = styled.div `
|
|
25
25
|
${InputWrapperCSS};
|
|
26
26
|
display: flex;
|
|
27
27
|
flex-direction: column;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.styled.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.styled.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,eAAe,GAChB,MAAM,WAAW,CAAC;AAEnB,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAI/B,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAsB;IACxD,aAAa;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAA;IACpC,oBAAoB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAEvC;IACG,eAAe;;IAEf,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC1B,IAAI,iBAAiB;QACnB,OAAO,GAAG,CAAA;iBACC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY;OAClD,CAAC;IACJ,OAAO,GAAG,CAAA,EAAE,CAAC;AACf,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;IAC9C,wBAAwB;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.styled.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.styled.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,eAAe,GAChB,MAAM,WAAW,CAAC;AAEnB,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAI/B,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAsB;IACxD,aAAa;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAA;IACpC,oBAAoB;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAEvC;IACG,eAAe;;IAEf,CAAC,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC1B,IAAI,iBAAiB;QACnB,OAAO,GAAG,CAAA;iBACC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY;OAClD,CAAC;IACJ,OAAO,GAAG,CAAA,EAAE,CAAC;AACf,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;IAC9C,wBAAwB;CAC3B,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,GAAG,CAAA;IAC5C,eAAe;;;CAGlB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAsB;IAC3D,YAAY;sBACM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;;;;;;;;;;;wBAa/B,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY;;;CAG/D,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAwE;;;;;;;;WAQjG,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY;IAC/C,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CACf,MAAM;IACN,GAAG,CAAA;gBACS,MAAM;KACjB;IACD,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB;IAC5C,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACd,KAAK;IACL,GAAG,CAAA;eACQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY;KAClD;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;;;;;;CAM5C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.test.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
class ResizeObserverMock {
|
|
3
|
+
observe() { }
|
|
4
|
+
unobserve() { }
|
|
5
|
+
disconnect() { }
|
|
6
|
+
}
|
|
7
|
+
globalThis.ResizeObserver =
|
|
8
|
+
ResizeObserverMock;
|
|
9
|
+
if (!Element.prototype.scrollIntoView) {
|
|
10
|
+
Element.prototype.scrollIntoView = function () { };
|
|
11
|
+
}
|
|
12
|
+
import { act, fireEvent, render, screen, waitFor } from '@testing-library/react';
|
|
13
|
+
import userEvent from '@testing-library/user-event';
|
|
14
|
+
import { computeAccessibleName } from 'dom-accessibility-api';
|
|
15
|
+
import { useState } from 'react';
|
|
16
|
+
import { renderAndCheckA11y } from '../../test-utils/index.js';
|
|
17
|
+
import { BKJThemeProvider } from '../../providers/BKJThemeProvider/index.js';
|
|
18
|
+
import { BKJPillTextArea } from './BKJPillTextArea.js';
|
|
19
|
+
function ControlledHarness({ initialValue = [], validations = [], ...rest }) {
|
|
20
|
+
const [value, setValue] = useState(initialValue);
|
|
21
|
+
return (_jsx(BKJPillTextArea, { label: "Dropdown Values", max: 10, ...rest, name: "data", value: value, onChange: (e) => setValue(e.target.value), validations: validations }));
|
|
22
|
+
}
|
|
23
|
+
function renderHarness(overrides = {}) {
|
|
24
|
+
return render(_jsx(BKJThemeProvider, { children: _jsx(ControlledHarness, { ...overrides }) }));
|
|
25
|
+
}
|
|
26
|
+
async function renderHarnessWithA11y(overrides = {}) {
|
|
27
|
+
return renderAndCheckA11y(_jsx(BKJThemeProvider, { children: _jsx(ControlledHarness, { ...overrides }) }));
|
|
28
|
+
}
|
|
29
|
+
function focusChipArea() {
|
|
30
|
+
const wrapper = document.querySelector('[id$="_TextAreaWrapper"]');
|
|
31
|
+
fireEvent.mouseDown(wrapper);
|
|
32
|
+
const input = document.querySelector('textarea');
|
|
33
|
+
return input;
|
|
34
|
+
}
|
|
35
|
+
describe('BKJPillTextArea', () => {
|
|
36
|
+
describe('Accessibility (axe)', () => {
|
|
37
|
+
it('has no axe violations in empty state', async () => {
|
|
38
|
+
const { axeResults } = await renderHarnessWithA11y();
|
|
39
|
+
expect(axeResults).toHaveNoViolations();
|
|
40
|
+
});
|
|
41
|
+
it('has no axe violations with chips', async () => {
|
|
42
|
+
const { axeResults } = await renderHarnessWithA11y({ initialValue: ['1', '2', '3'] });
|
|
43
|
+
expect(axeResults).toHaveNoViolations();
|
|
44
|
+
});
|
|
45
|
+
it('has no axe violations in error string state', async () => {
|
|
46
|
+
const { axeResults } = await renderHarnessWithA11y({
|
|
47
|
+
error: 'At least 1 option is required',
|
|
48
|
+
});
|
|
49
|
+
expect(axeResults).toHaveNoViolations();
|
|
50
|
+
});
|
|
51
|
+
it('has no axe violations in error string-array state', async () => {
|
|
52
|
+
const { axeResults } = await renderHarnessWithA11y({
|
|
53
|
+
error: ['Remove duplicate values', '\t• value-A'],
|
|
54
|
+
initialValue: ['value-A', 'value-A'],
|
|
55
|
+
});
|
|
56
|
+
expect(axeResults).toHaveNoViolations();
|
|
57
|
+
});
|
|
58
|
+
it('has no axe violations in max-reached state', async () => {
|
|
59
|
+
const { axeResults } = await renderHarnessWithA11y({
|
|
60
|
+
initialValue: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11'],
|
|
61
|
+
max: 10,
|
|
62
|
+
});
|
|
63
|
+
expect(axeResults).toHaveNoViolations();
|
|
64
|
+
});
|
|
65
|
+
it('has no axe violations in disabled state', async () => {
|
|
66
|
+
const { axeResults } = await renderHarnessWithA11y({
|
|
67
|
+
initialValue: ['1', '2'],
|
|
68
|
+
disabled: true,
|
|
69
|
+
});
|
|
70
|
+
expect(axeResults).toHaveNoViolations();
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
describe('Label association (FR-001 / FR-016 g)', () => {
|
|
74
|
+
it('input accessible name equals the label exactly (empty state, required)', () => {
|
|
75
|
+
renderHarness({ label: 'Dropdown Values', required: true });
|
|
76
|
+
const input = screen.getByRole('textbox');
|
|
77
|
+
expect(computeAccessibleName(input).trim()).toBe('Dropdown Values *');
|
|
78
|
+
});
|
|
79
|
+
it('input accessible name equals the label exactly (empty state, not required)', () => {
|
|
80
|
+
renderHarness({ label: 'Dropdown Values' });
|
|
81
|
+
const input = screen.getByRole('textbox');
|
|
82
|
+
expect(computeAccessibleName(input).trim()).toBe('Dropdown Values');
|
|
83
|
+
});
|
|
84
|
+
it('InputLabel has stable id matching input aria-labelledby', () => {
|
|
85
|
+
renderHarness({ label: 'Dropdown Values' });
|
|
86
|
+
const input = screen.getByRole('textbox');
|
|
87
|
+
const ariaLabelledBy = input.getAttribute('aria-labelledby');
|
|
88
|
+
expect(ariaLabelledBy).toMatch(/^BKJPillTextArea_.*_Label$/);
|
|
89
|
+
const labelEl = document.getElementById(ariaLabelledBy);
|
|
90
|
+
expect(labelEl).not.toBeNull();
|
|
91
|
+
expect(labelEl?.textContent).toContain('Dropdown Values');
|
|
92
|
+
});
|
|
93
|
+
it('BKJPillTextAreaWrapper is a <div>', () => {
|
|
94
|
+
const { container } = renderHarness();
|
|
95
|
+
const wrapper = container.firstChild;
|
|
96
|
+
expect(wrapper.tagName).toBe('DIV');
|
|
97
|
+
});
|
|
98
|
+
it('aria-required is "true" when required prop is set', () => {
|
|
99
|
+
renderHarness({ required: true });
|
|
100
|
+
const input = screen.getByRole('textbox');
|
|
101
|
+
expect(input).toHaveAttribute('aria-required', 'true');
|
|
102
|
+
});
|
|
103
|
+
it('aria-required is absent when required prop is not set', () => {
|
|
104
|
+
renderHarness();
|
|
105
|
+
const input = screen.getByRole('textbox');
|
|
106
|
+
expect(input).not.toHaveAttribute('aria-required');
|
|
107
|
+
});
|
|
108
|
+
it('ActiveInputElement (Portal-rendered) carries the same aria-labelledby', () => {
|
|
109
|
+
renderHarness({ initialValue: ['hello'], label: 'Dropdown Values' });
|
|
110
|
+
const input = focusChipArea();
|
|
111
|
+
expect(input).not.toBeNull();
|
|
112
|
+
const ariaLabelledBy = input.getAttribute('aria-labelledby');
|
|
113
|
+
expect(ariaLabelledBy).toMatch(/^BKJPillTextArea_.*_Label$/);
|
|
114
|
+
const labelEl = document.getElementById(ariaLabelledBy);
|
|
115
|
+
expect(labelEl?.textContent).toContain('Dropdown Values');
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
describe('Chip remove button (FR-002 / FR-003 / FR-005)', () => {
|
|
119
|
+
it('each chip remove button is a focusable native <button> with accessible name', () => {
|
|
120
|
+
renderHarness({ initialValue: ['1', '2', '3'] });
|
|
121
|
+
const removeButtons = screen.getAllByRole('button', { name: /^Remove / });
|
|
122
|
+
expect(removeButtons).toHaveLength(3);
|
|
123
|
+
expect(computeAccessibleName(removeButtons[0])).toBe('Remove 1');
|
|
124
|
+
expect(computeAccessibleName(removeButtons[1])).toBe('Remove 2');
|
|
125
|
+
expect(computeAccessibleName(removeButtons[2])).toBe('Remove 3');
|
|
126
|
+
expect(removeButtons[0].tagName).toBe('BUTTON');
|
|
127
|
+
expect(removeButtons[0]).toHaveAttribute('type', 'button');
|
|
128
|
+
});
|
|
129
|
+
it('disabled BKJPillTextArea disables every chip remove button', () => {
|
|
130
|
+
renderHarness({ initialValue: ['1', '2'], disabled: true });
|
|
131
|
+
const removeButtons = screen.getAllByRole('button', { name: /^Remove / });
|
|
132
|
+
removeButtons.forEach((btn) => expect(btn).toBeDisabled());
|
|
133
|
+
});
|
|
134
|
+
it('mousedown on chip remove button removes the chip immediately (matches legacy timing)', () => {
|
|
135
|
+
// Regression: in real browsers, the post-removal Portal-mount of the active
|
|
136
|
+
// <textarea> shifts the X button between mousedown and mouseup — breaking the
|
|
137
|
+
// click event. Chip removal must happen on mousedown (matching the pre-WEB-4814
|
|
138
|
+
// <div onMouseDown> behaviour) so the click event isn't required to fire.
|
|
139
|
+
renderHarness({ initialValue: ['a', 'b', 'c'] });
|
|
140
|
+
const removeBtn = screen.getByRole('button', { name: 'Remove a' });
|
|
141
|
+
fireEvent.mouseDown(removeBtn);
|
|
142
|
+
expect(screen.queryByRole('button', { name: 'Remove a' })).not.toBeInTheDocument();
|
|
143
|
+
expect(screen.getByRole('button', { name: 'Remove b' })).toBeInTheDocument();
|
|
144
|
+
expect(screen.getByRole('button', { name: 'Remove c' })).toBeInTheDocument();
|
|
145
|
+
});
|
|
146
|
+
it('mousedown on chip remove button does not mount the active textarea pre-removal', () => {
|
|
147
|
+
// Sanity check: the cursor-move side effect (setCursorAtIndex's setTimeout) is
|
|
148
|
+
// queued but does not fire synchronously, so the active textarea is not mounted
|
|
149
|
+
// at the moment of mousedown — preventing the layout shift that breaks the click.
|
|
150
|
+
renderHarness({ initialValue: ['a', 'b', 'c'] });
|
|
151
|
+
expect(screen.queryByRole('textbox')).not.toBeInTheDocument();
|
|
152
|
+
const removeBtn = screen.getByRole('button', { name: 'Remove a' });
|
|
153
|
+
fireEvent.mouseDown(removeBtn);
|
|
154
|
+
expect(screen.queryByRole('textbox')).not.toBeInTheDocument();
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
describe('Keyboard chip removal (FR-003)', () => {
|
|
158
|
+
it('Enter on chip remove button removes the chip and focuses the active text input', async () => {
|
|
159
|
+
const user = userEvent.setup();
|
|
160
|
+
renderHarness({ initialValue: ['1', '2', '3'] });
|
|
161
|
+
const remove2 = screen.getByRole('button', { name: 'Remove 2' });
|
|
162
|
+
remove2.focus();
|
|
163
|
+
await act(async () => {
|
|
164
|
+
await user.keyboard('{Enter}');
|
|
165
|
+
});
|
|
166
|
+
expect(screen.queryByRole('button', { name: 'Remove 2' })).not.toBeInTheDocument();
|
|
167
|
+
await waitFor(() => {
|
|
168
|
+
expect(document.activeElement).toBe(screen.getByRole('textbox'));
|
|
169
|
+
}, { timeout: 200 });
|
|
170
|
+
});
|
|
171
|
+
it('Space on chip remove button removes the chip', async () => {
|
|
172
|
+
const user = userEvent.setup();
|
|
173
|
+
renderHarness({ initialValue: ['1'] });
|
|
174
|
+
const remove1 = screen.getByRole('button', { name: 'Remove 1' });
|
|
175
|
+
remove1.focus();
|
|
176
|
+
await act(async () => {
|
|
177
|
+
await user.keyboard(' ');
|
|
178
|
+
});
|
|
179
|
+
expect(screen.queryByRole('button', { name: 'Remove 1' })).not.toBeInTheDocument();
|
|
180
|
+
});
|
|
181
|
+
});
|
|
182
|
+
describe('Error wiring (FR-011 / FR-012 / FR-013 / FR-016 h)', () => {
|
|
183
|
+
it('truthy error → aria-invalid="true" + aria-describedby resolves to error container', () => {
|
|
184
|
+
renderHarness({ error: 'Required' });
|
|
185
|
+
const input = screen.getByRole('textbox');
|
|
186
|
+
expect(input).toHaveAttribute('aria-invalid', 'true');
|
|
187
|
+
const errorId = input.getAttribute('aria-describedby');
|
|
188
|
+
expect(errorId).toMatch(/^BKJPillTextArea_.*_Error$/);
|
|
189
|
+
const errorContainer = document.getElementById(errorId);
|
|
190
|
+
expect(errorContainer).toHaveTextContent('Required');
|
|
191
|
+
expect(errorContainer).toHaveAttribute('role', 'alert');
|
|
192
|
+
});
|
|
193
|
+
it('string-array error → all messages reachable via aria-describedby container', () => {
|
|
194
|
+
renderHarness({ error: ['Remove duplicates', '\t• value-A'] });
|
|
195
|
+
const input = screen.getByRole('textbox');
|
|
196
|
+
const errorId = input.getAttribute('aria-describedby');
|
|
197
|
+
const errorContainer = document.getElementById(errorId);
|
|
198
|
+
expect(errorContainer).toHaveTextContent('Remove duplicates');
|
|
199
|
+
expect(errorContainer).toHaveTextContent('value-A');
|
|
200
|
+
});
|
|
201
|
+
it('falsy error and below max → no aria-invalid and no aria-describedby', () => {
|
|
202
|
+
renderHarness();
|
|
203
|
+
const input = screen.getByRole('textbox');
|
|
204
|
+
expect(input).not.toHaveAttribute('aria-invalid');
|
|
205
|
+
expect(input).not.toHaveAttribute('aria-describedby');
|
|
206
|
+
});
|
|
207
|
+
it('isMaxLimitReached without error → aria-invalid="true" but no aria-describedby', () => {
|
|
208
|
+
renderHarness({
|
|
209
|
+
initialValue: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11'],
|
|
210
|
+
max: 10,
|
|
211
|
+
});
|
|
212
|
+
const input = focusChipArea();
|
|
213
|
+
expect(input.getAttribute('aria-invalid')).toBe('true');
|
|
214
|
+
expect(input.hasAttribute('aria-describedby')).toBe(false);
|
|
215
|
+
});
|
|
216
|
+
it('clearing the error removes aria-invalid and aria-describedby', () => {
|
|
217
|
+
const { rerender } = render(_jsx(BKJThemeProvider, { children: _jsx(ControlledHarness, { error: "Required" }) }));
|
|
218
|
+
let input = screen.getByRole('textbox');
|
|
219
|
+
expect(input).toHaveAttribute('aria-invalid', 'true');
|
|
220
|
+
rerender(_jsx(BKJThemeProvider, { children: _jsx(ControlledHarness, {}) }));
|
|
221
|
+
input = screen.getByRole('textbox');
|
|
222
|
+
expect(input).not.toHaveAttribute('aria-invalid');
|
|
223
|
+
expect(input).not.toHaveAttribute('aria-describedby');
|
|
224
|
+
});
|
|
225
|
+
});
|
|
226
|
+
});
|
|
227
|
+
//# sourceMappingURL=BKJPillTextArea.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.test.js","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export interface IBKJPillTextAreaProvider {
|
|
|
7
7
|
readonly name: string;
|
|
8
8
|
readonly validations: IBKJPillTextArea['validations'];
|
|
9
9
|
readonly max: IBKJPillTextArea['max'];
|
|
10
|
+
readonly disabled?: boolean;
|
|
10
11
|
}
|
|
11
12
|
export interface IBKJPillTextAreaContext {
|
|
12
13
|
wrapperRef: RefObject<HTMLDivElement>;
|
|
@@ -17,12 +18,15 @@ export interface IBKJPillTextAreaContext {
|
|
|
17
18
|
onInputFocused: MouseEventHandler<HTMLDivElement>;
|
|
18
19
|
onInputChange: ChangeFunctionType;
|
|
19
20
|
onInputKeyDown: KeyboardEventHandler<HTMLTextAreaElement>;
|
|
20
|
-
onInputBlur: FocusEventHandler<
|
|
21
|
+
onInputBlur: FocusEventHandler<HTMLDivElement>;
|
|
21
22
|
onInputPaste: ClipboardEventHandler<HTMLTextAreaElement>;
|
|
22
|
-
onChipRemove: (label: string) => MouseEventHandler<HTMLDivElement>;
|
|
23
|
+
onChipRemove: (label: string) => MouseEventHandler<HTMLDivElement | HTMLButtonElement>;
|
|
23
24
|
targetElement: HTMLElement | null;
|
|
24
25
|
uuid: string;
|
|
25
26
|
isMaxLimitReached: boolean;
|
|
27
|
+
inputLabelId: string;
|
|
28
|
+
errorContainerId: string;
|
|
29
|
+
disabled: boolean;
|
|
26
30
|
}
|
|
27
31
|
export interface IBKJPillTextArea extends InputHTMLAttributes<any> {
|
|
28
32
|
readonly label?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BKJPillTextArea.types.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC5D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACtD,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"BKJPillTextArea.types.d.ts","sourceRoot":"","sources":["../../../src/components/BKJPillTextArea/BKJPillTextArea.types.ts"],"names":[],"mappings":"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"}
|