@transferwise/components 0.0.0-experimental-a64b578 → 0.0.0-experimental-0b6896b
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/index.esm.js +38 -53
- package/build/index.esm.js.map +1 -1
- package/build/index.js +38 -53
- package/build/index.js.map +1 -1
- package/build/types/accordion/AccordionItem/AccordionItem.d.ts.map +1 -1
- package/build/types/common/index.d.ts +1 -0
- package/build/types/common/randomId.d.ts +13 -0
- package/build/types/common/randomId.d.ts.map +1 -0
- package/build/types/promoCard/PromoCard.d.ts.map +1 -1
- package/build/types/select/Select.d.ts.map +1 -1
- package/build/types/select/searchBox/SearchBox.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/accordion/AccordionItem/AccordionItem.spec.js +1 -0
- package/src/accordion/AccordionItem/AccordionItem.tsx +19 -11
- package/src/accordion/AccordionItem/__snapshots__/AccordionItem.spec.js.snap +18 -4
- package/src/common/index.js +1 -0
- package/src/common/randomId.ts +14 -0
- package/src/dateInput/DateInput.story.tsx +0 -3
- package/src/moneyInput/MoneyInput.story.tsx +0 -3
- package/src/phoneNumberInput/PhoneNumberInput.story.js +0 -3
- package/src/promoCard/PromoCard.tsx +1 -16
- package/src/select/Select.js +2 -0
- package/src/select/Select.story.js +0 -6
- package/src/select/searchBox/SearchBox.spec.js +3 -7
- package/src/select/searchBox/SearchBox.tsx +2 -0
- package/src/select/searchBox/__snapshots__/SearchBox.spec.js.snap +0 -46
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccordionItem.d.ts","sourceRoot":"","sources":["../../../../src/accordion/AccordionItem/AccordionItem.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AccordionItem.d.ts","sourceRoot":"","sources":["../../../../src/accordion/AccordionItem/AccordionItem.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAgB,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOpD,MAAM,WAAW,kBAAkB;IACjC,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,uCAAuC;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,yCAAyC;IACzC,OAAO,EAAE,SAAS,CAAC;IACnB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,8DAA8D;IAC9D,IAAI,EAAE,OAAO,CAAC;IACd,oEAAoE;IACpE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,sBAAsB;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,QAAA,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAoDzC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -12,6 +12,7 @@ export * from "./propsValues/profileType";
|
|
|
12
12
|
export * from "./propsValues/scroll";
|
|
13
13
|
export * from "./locale";
|
|
14
14
|
export * from "./commonProps";
|
|
15
|
+
export * from "./randomId";
|
|
15
16
|
export { Breakpoint } from "./propsValues/breakpoint";
|
|
16
17
|
export { Type } from "./propsValues/type";
|
|
17
18
|
export { DateMode } from "./propsValues/dateMode";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* generateRandomId() function
|
|
3
|
+
*
|
|
4
|
+
* This function generates a random string of characters that can be used as
|
|
5
|
+
* an ID.
|
|
6
|
+
*
|
|
7
|
+
* @returns {string} A random string of characters.
|
|
8
|
+
* @example
|
|
9
|
+
* const id = generateRandomId();
|
|
10
|
+
* // id will be a random string of characters, such as "id-4711".
|
|
11
|
+
*/
|
|
12
|
+
export declare const generateRandomId: () => string;
|
|
13
|
+
//# sourceMappingURL=randomId.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"randomId.d.ts","sourceRoot":"","sources":["../../../src/common/randomId.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,QAAO,MAEnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromoCard.d.ts","sourceRoot":"","sources":["../../../src/promoCard/PromoCard.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PromoCard.d.ts","sourceRoot":"","sources":["../../../src/promoCard/PromoCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/select/Select.js"],"names":[],"mappings":"AA8EA;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/select/Select.js"],"names":[],"mappings":"AA8EA;;;;;;;;;;;;;;;;;;;;;;gCAmeC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchBox.d.ts","sourceRoot":"","sources":["../../../../src/select/searchBox/SearchBox.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAUxD,QAAA,MAAM,SAAS;;;;
|
|
1
|
+
{"version":3,"file":"SearchBox.d.ts","sourceRoot":"","sources":["../../../../src/select/searchBox/SearchBox.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAc,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAUxD,QAAA,MAAM,SAAS;;;;oJA0Cd,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { useId } from '@radix-ui/react-id';
|
|
1
2
|
import { useTheme } from '@wise/components-theming';
|
|
2
3
|
import classNames from 'classnames';
|
|
3
4
|
import { cloneElement, FC, ReactNode } from 'react';
|
|
@@ -70,11 +71,13 @@ const AccordionItem: FC<AccordionItemProps> = ({
|
|
|
70
71
|
icon,
|
|
71
72
|
theme = 'light',
|
|
72
73
|
}) => {
|
|
73
|
-
const iconElement = icon ? cloneElement(icon as
|
|
74
|
+
const iconElement = icon ? cloneElement(icon as React.ReactElement<any>, { size: 24 }) : null;
|
|
75
|
+
const fallbackId = useId();
|
|
76
|
+
const accordionId = id ?? fallbackId;
|
|
74
77
|
|
|
75
78
|
return (
|
|
76
79
|
<div
|
|
77
|
-
id={
|
|
80
|
+
id={accordionId}
|
|
78
81
|
className={classNames(
|
|
79
82
|
'np-accordion-item',
|
|
80
83
|
iconElement ? 'np-accordion-item--with-icon' : null,
|
|
@@ -90,18 +93,23 @@ const AccordionItem: FC<AccordionItemProps> = ({
|
|
|
90
93
|
title={title}
|
|
91
94
|
button={<Chevron orientation={open ? Position.TOP : Position.BOTTOM} size={Size.MEDIUM} />}
|
|
92
95
|
inverseMediaCircle={false}
|
|
96
|
+
aria-expanded={open}
|
|
97
|
+
aria-controls={`${accordionId}-section`}
|
|
98
|
+
id={`${accordionId}-control`}
|
|
93
99
|
onClick={onClick}
|
|
94
100
|
/>
|
|
95
101
|
{open && (
|
|
96
|
-
<
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
'
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
102
|
+
<div id={`${accordionId}-section`} role="region" aria-labelledby={`${accordionId}-control`}>
|
|
103
|
+
<Body
|
|
104
|
+
as="span"
|
|
105
|
+
type={Typography.BODY_LARGE}
|
|
106
|
+
className={classNames('np-accordion-item__content', 'd-block', {
|
|
107
|
+
'has-icon': icon,
|
|
108
|
+
})}
|
|
109
|
+
>
|
|
110
|
+
{content}
|
|
111
|
+
</Body>
|
|
112
|
+
</div>
|
|
105
113
|
)}
|
|
106
114
|
</div>
|
|
107
115
|
);
|
|
@@ -4,9 +4,13 @@ exports[`AccordionItem open / close renders an item closed 1`] = `
|
|
|
4
4
|
<div>
|
|
5
5
|
<div
|
|
6
6
|
class="np-accordion-item"
|
|
7
|
+
id="test-accordion"
|
|
7
8
|
>
|
|
8
9
|
<button
|
|
10
|
+
aria-controls="test-accordion-section"
|
|
11
|
+
aria-expanded="false"
|
|
9
12
|
class="np-option decision"
|
|
13
|
+
id="test-accordion-control"
|
|
10
14
|
>
|
|
11
15
|
<div
|
|
12
16
|
class="media"
|
|
@@ -52,9 +56,13 @@ exports[`AccordionItem open / close renders an item open 1`] = `
|
|
|
52
56
|
<div>
|
|
53
57
|
<div
|
|
54
58
|
class="np-accordion-item np-accordion-item--open"
|
|
59
|
+
id="test-accordion"
|
|
55
60
|
>
|
|
56
61
|
<button
|
|
62
|
+
aria-controls="test-accordion-section"
|
|
63
|
+
aria-expanded="true"
|
|
57
64
|
class="np-option decision"
|
|
65
|
+
id="test-accordion-control"
|
|
58
66
|
>
|
|
59
67
|
<div
|
|
60
68
|
class="media"
|
|
@@ -92,11 +100,17 @@ exports[`AccordionItem open / close renders an item open 1`] = `
|
|
|
92
100
|
</div>
|
|
93
101
|
</div>
|
|
94
102
|
</button>
|
|
95
|
-
<
|
|
96
|
-
|
|
103
|
+
<div
|
|
104
|
+
aria-labelledby="test-accordion-control"
|
|
105
|
+
id="test-accordion-section"
|
|
106
|
+
role="region"
|
|
97
107
|
>
|
|
98
|
-
|
|
99
|
-
|
|
108
|
+
<span
|
|
109
|
+
class="np-text-body-large np-accordion-item__content d-block"
|
|
110
|
+
>
|
|
111
|
+
Lauri Ipsum has been the industry standard dummy text ever since the 1500s.
|
|
112
|
+
</span>
|
|
113
|
+
</div>
|
|
100
114
|
</div>
|
|
101
115
|
</div>
|
|
102
116
|
`;
|
package/src/common/index.js
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* generateRandomId() function
|
|
3
|
+
*
|
|
4
|
+
* This function generates a random string of characters that can be used as
|
|
5
|
+
* an ID.
|
|
6
|
+
*
|
|
7
|
+
* @returns {string} A random string of characters.
|
|
8
|
+
* @example
|
|
9
|
+
* const id = generateRandomId();
|
|
10
|
+
* // id will be a random string of characters, such as "id-4711".
|
|
11
|
+
*/
|
|
12
|
+
export const generateRandomId = (): string => {
|
|
13
|
+
return `id-${Math.random().toString(36).slice(7)}`;
|
|
14
|
+
};
|
|
@@ -3,7 +3,7 @@ import classNames from 'classnames';
|
|
|
3
3
|
import React, { forwardRef, FunctionComponent, ReactElement, useEffect, useState } from 'react';
|
|
4
4
|
|
|
5
5
|
import Body from '../body';
|
|
6
|
-
import { Typography } from '../common';
|
|
6
|
+
import { Typography, generateRandomId } from '../common';
|
|
7
7
|
import Card, { CardProps } from '../common/card';
|
|
8
8
|
import Display from '../display';
|
|
9
9
|
import Image from '../image/Image';
|
|
@@ -142,21 +142,6 @@ export type PolymorphicPromoCard = (
|
|
|
142
142
|
props: PromoCardLinkProps | PromoCardCheckedProps,
|
|
143
143
|
) => JSX.Element;
|
|
144
144
|
|
|
145
|
-
/**
|
|
146
|
-
* generateRandomId() function
|
|
147
|
-
*
|
|
148
|
-
* This function generates a random string of characters that can be used as
|
|
149
|
-
* an ID.
|
|
150
|
-
*
|
|
151
|
-
* @returns {string} A random string of characters.
|
|
152
|
-
* @example
|
|
153
|
-
* const id = generateRandomId();
|
|
154
|
-
* // id will be a random string of characters, such as "id-4711".
|
|
155
|
-
*/
|
|
156
|
-
const generateRandomId = (): string => {
|
|
157
|
-
return `id-${Math.random().toString(36).slice(7)}`;
|
|
158
|
-
};
|
|
159
|
-
|
|
160
145
|
/**
|
|
161
146
|
* PromoCard component.
|
|
162
147
|
*
|
package/src/select/Select.js
CHANGED
|
@@ -333,6 +333,8 @@ export default function Select({
|
|
|
333
333
|
ref={optionsListReference}
|
|
334
334
|
id={listboxId}
|
|
335
335
|
role="listbox"
|
|
336
|
+
aria-orientation="vertical"
|
|
337
|
+
aria-activedescendant={getUniqueIdForOption(id, selected)}
|
|
336
338
|
tabIndex="-1"
|
|
337
339
|
className={dropdownClass}
|
|
338
340
|
{...dropdownProps}
|
|
@@ -41,12 +41,6 @@ export const Basic = () => {
|
|
|
41
41
|
return (
|
|
42
42
|
<Select
|
|
43
43
|
id={id}
|
|
44
|
-
buttonProps={{
|
|
45
|
-
'aria-label': 'Basic button',
|
|
46
|
-
}}
|
|
47
|
-
dropdownProps={{
|
|
48
|
-
'aria-label': 'Options for basic button',
|
|
49
|
-
}}
|
|
50
44
|
size={size}
|
|
51
45
|
classNames={`${hasError ? 'has-error' : ''}`}
|
|
52
46
|
placeholder={placeholder}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import '
|
|
2
|
-
|
|
3
|
-
import { render } from '../../test-utils';
|
|
1
|
+
import { render, screen } from '../../test-utils';
|
|
4
2
|
|
|
5
3
|
import SearchBox from '.';
|
|
6
4
|
|
|
7
|
-
jest.mock('react-transition-group/Transition', () => jest.fn('placeholder'));
|
|
8
|
-
|
|
9
5
|
describe('SearchBox', () => {
|
|
10
6
|
const props = {
|
|
11
7
|
classNames: {},
|
|
@@ -17,8 +13,8 @@ describe('SearchBox', () => {
|
|
|
17
13
|
};
|
|
18
14
|
|
|
19
15
|
it('renders', () => {
|
|
20
|
-
|
|
16
|
+
render(<SearchBox {...props} />);
|
|
21
17
|
|
|
22
|
-
expect(
|
|
18
|
+
expect(screen.getByRole('searchbox')).toBeInTheDocument();
|
|
23
19
|
});
|
|
24
20
|
});
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`SearchBox renders 1`] = `
|
|
4
|
-
<div>
|
|
5
|
-
<li
|
|
6
|
-
class="border-bottom"
|
|
7
|
-
>
|
|
8
|
-
<a
|
|
9
|
-
class="np-select-filter-link p-a-0"
|
|
10
|
-
>
|
|
11
|
-
<div
|
|
12
|
-
class="input-group"
|
|
13
|
-
>
|
|
14
|
-
<span
|
|
15
|
-
class="input-group-addon input-group-addon--search"
|
|
16
|
-
>
|
|
17
|
-
<span
|
|
18
|
-
aria-hidden="true"
|
|
19
|
-
class="tw-icon tw-icon-search tw-icon tw-icon-search"
|
|
20
|
-
data-testid="search-icon"
|
|
21
|
-
role="presentation"
|
|
22
|
-
>
|
|
23
|
-
<svg
|
|
24
|
-
fill="currentColor"
|
|
25
|
-
focusable="false"
|
|
26
|
-
height="24"
|
|
27
|
-
viewBox="0 0 24 24"
|
|
28
|
-
width="24"
|
|
29
|
-
>
|
|
30
|
-
<path
|
|
31
|
-
d="m20.786 19.543-4.029-4.029c1.072-1.328 1.672-3 1.672-4.8C18.429 6.471 14.957 3 10.714 3S3 6.471 3 10.714s3.471 7.715 7.714 7.715c1.8 0 3.472-.643 4.8-1.672l4.029 4.029 1.243-1.243Zm-10.029-2.829c-3.3 0-6-2.7-6-6s2.7-6 6-6 6 2.7 6 6-2.7 6-6 6Z"
|
|
32
|
-
/>
|
|
33
|
-
</svg>
|
|
34
|
-
</span>
|
|
35
|
-
</span>
|
|
36
|
-
<input
|
|
37
|
-
class="np-select-filter form-control np-form-control np-form-control--size-auto np-text-body-large np-input np-input--shape-rectangle"
|
|
38
|
-
placeholder="placeholder"
|
|
39
|
-
spellcheck="false"
|
|
40
|
-
value="value"
|
|
41
|
-
/>
|
|
42
|
-
</div>
|
|
43
|
-
</a>
|
|
44
|
-
</li>
|
|
45
|
-
</div>
|
|
46
|
-
`;
|