box-ui-elements 23.4.0-beta.1 → 23.4.0-beta.3
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/dist/explorer.js +1 -1
- package/dist/preview.js +1 -1
- package/dist/sidebar.js +1 -1
- package/es/common/types/metadata.js.flow +1 -0
- package/es/common/types/metadata.js.map +1 -1
- package/es/features/metadata-instance-editor/CascadePolicy.js +6 -2
- package/es/features/metadata-instance-editor/CascadePolicy.js.flow +19 -12
- package/es/features/metadata-instance-editor/CascadePolicy.js.map +1 -1
- package/es/features/metadata-instance-editor/Instance.js +31 -9
- package/es/features/metadata-instance-editor/Instance.js.flow +41 -9
- package/es/features/metadata-instance-editor/Instance.js.map +1 -1
- package/es/features/metadata-instance-editor/Instances.js +2 -0
- package/es/features/metadata-instance-editor/Instances.js.flow +3 -0
- package/es/features/metadata-instance-editor/Instances.js.map +1 -1
- package/es/features/metadata-instance-editor/MetadataInstanceEditor.js +2 -0
- package/es/features/metadata-instance-editor/MetadataInstanceEditor.js.flow +3 -0
- package/es/features/metadata-instance-editor/MetadataInstanceEditor.js.map +1 -1
- package/es/features/metadata-instance-editor/TemplateDropdown.js +1 -1
- package/es/features/metadata-instance-editor/TemplateDropdown.js.flow +1 -1
- package/es/features/metadata-instance-editor/TemplateDropdown.js.map +1 -1
- package/es/features/metadata-instance-editor/TemplatedInstance.js +2 -0
- package/es/features/metadata-instance-editor/TemplatedInstance.js.flow +11 -1
- package/es/features/metadata-instance-editor/TemplatedInstance.js.map +1 -1
- package/es/features/metadata-instance-editor/constants.js +2 -1
- package/es/features/metadata-instance-editor/constants.js.flow +3 -1
- package/es/features/metadata-instance-editor/constants.js.map +1 -1
- package/es/features/metadata-instance-fields/DateMetadataField.js +30 -25
- package/es/features/metadata-instance-fields/DateMetadataField.js.flow +31 -27
- package/es/features/metadata-instance-fields/DateMetadataField.js.map +1 -1
- package/es/features/metadata-instance-fields/EnumMetadataField.js +8 -5
- package/es/features/metadata-instance-fields/EnumMetadataField.js.flow +8 -6
- package/es/features/metadata-instance-fields/EnumMetadataField.js.map +1 -1
- package/es/features/metadata-instance-fields/FloatMetadataField.js +2 -0
- package/es/features/metadata-instance-fields/FloatMetadataField.js.flow +3 -0
- package/es/features/metadata-instance-fields/FloatMetadataField.js.map +1 -1
- package/es/features/metadata-instance-fields/IntegerMetadataField.js +2 -0
- package/es/features/metadata-instance-fields/IntegerMetadataField.js.flow +3 -0
- package/es/features/metadata-instance-fields/IntegerMetadataField.js.map +1 -1
- package/es/features/metadata-instance-fields/MetadataField.js +7 -0
- package/es/features/metadata-instance-fields/MetadataField.js.flow +8 -0
- package/es/features/metadata-instance-fields/MetadataField.js.map +1 -1
- package/es/features/metadata-instance-fields/MultiSelectMetadataField.js +2 -0
- package/es/features/metadata-instance-fields/MultiSelectMetadataField.js.flow +3 -0
- package/es/features/metadata-instance-fields/MultiSelectMetadataField.js.map +1 -1
- package/es/features/metadata-instance-fields/TextMetadataField.js +8 -5
- package/es/features/metadata-instance-fields/TextMetadataField.js.flow +8 -6
- package/es/features/metadata-instance-fields/TextMetadataField.js.map +1 -1
- package/i18n/bn-IN.js +4 -4
- package/i18n/bn-IN.properties +4 -4
- package/i18n/da-DK.js +4 -4
- package/i18n/da-DK.properties +4 -4
- package/i18n/de-DE.js +4 -4
- package/i18n/de-DE.properties +4 -4
- package/i18n/es-419.js +3 -3
- package/i18n/es-419.properties +3 -3
- package/i18n/es-ES.js +3 -3
- package/i18n/es-ES.properties +3 -3
- package/i18n/fi-FI.js +3 -3
- package/i18n/fi-FI.properties +3 -3
- package/i18n/fr-CA.js +4 -4
- package/i18n/fr-CA.properties +4 -4
- package/i18n/fr-FR.js +4 -4
- package/i18n/fr-FR.properties +4 -4
- package/i18n/hi-IN.js +4 -4
- package/i18n/hi-IN.properties +4 -4
- package/i18n/it-IT.js +4 -4
- package/i18n/it-IT.properties +4 -4
- package/i18n/ko-KR.js +4 -4
- package/i18n/ko-KR.properties +4 -4
- package/i18n/nb-NO.js +4 -4
- package/i18n/nb-NO.properties +4 -4
- package/i18n/nl-NL.js +4 -4
- package/i18n/nl-NL.properties +4 -4
- package/i18n/pl-PL.js +4 -4
- package/i18n/pl-PL.properties +4 -4
- package/i18n/pt-BR.js +4 -4
- package/i18n/pt-BR.properties +4 -4
- package/i18n/ru-RU.js +4 -4
- package/i18n/ru-RU.properties +4 -4
- package/i18n/sv-SE.js +4 -4
- package/i18n/sv-SE.properties +4 -4
- package/i18n/tr-TR.js +4 -4
- package/i18n/tr-TR.properties +4 -4
- package/i18n/zh-CN.js +4 -4
- package/i18n/zh-CN.properties +4 -4
- package/i18n/zh-TW.js +4 -4
- package/i18n/zh-TW.properties +4 -4
- package/package.json +1 -1
- package/src/common/types/metadata.js +1 -0
- package/src/features/metadata-instance-editor/CascadePolicy.js +19 -12
- package/src/features/metadata-instance-editor/Instance.js +41 -9
- package/src/features/metadata-instance-editor/Instances.js +3 -0
- package/src/features/metadata-instance-editor/MetadataInstanceEditor.js +3 -0
- package/src/features/metadata-instance-editor/TemplateDropdown.js +1 -1
- package/src/features/metadata-instance-editor/TemplatedInstance.js +11 -1
- package/src/features/metadata-instance-editor/__tests__/CascadePolicy.test.js +92 -1
- package/src/features/metadata-instance-editor/__tests__/Instance.test.js +207 -2
- package/src/features/metadata-instance-editor/__tests__/Instances.test.js +92 -3
- package/src/features/metadata-instance-editor/__tests__/MetadataInstanceEditor.test.js +105 -0
- package/src/features/metadata-instance-editor/__tests__/TemplatedInstance.test.js +83 -1
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/CascadePolicy.test.js.snap +1 -0
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/Instance.test.js.snap +16 -5
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/Instances.test.js.snap +4 -2
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/MetadataInstanceEditor.test.js.snap +1 -0
- package/src/features/metadata-instance-editor/__tests__/__snapshots__/TemplatedInstance.test.js.snap +2 -2
- package/src/features/metadata-instance-editor/constants.js +3 -1
- package/src/features/metadata-instance-fields/DateMetadataField.js +31 -27
- package/src/features/metadata-instance-fields/EnumMetadataField.js +8 -6
- package/src/features/metadata-instance-fields/FloatMetadataField.js +3 -0
- package/src/features/metadata-instance-fields/IntegerMetadataField.js +3 -0
- package/src/features/metadata-instance-fields/MetadataField.js +8 -0
- package/src/features/metadata-instance-fields/MultiSelectMetadataField.js +3 -0
- package/src/features/metadata-instance-fields/TextMetadataField.js +8 -6
- package/src/features/metadata-instance-fields/__tests__/DateMetadataField.test.js +59 -8
- package/src/features/metadata-instance-fields/__tests__/EnumMetadataField.test.js +63 -18
- package/src/features/metadata-instance-fields/__tests__/FloatMetadataField.test.js +68 -4
- package/src/features/metadata-instance-fields/__tests__/IntegerMetadataField.test.js +90 -4
- package/src/features/metadata-instance-fields/__tests__/MultiSelectMetadataField.test.js +95 -7
- package/src/features/metadata-instance-fields/__tests__/TextMetadataField.test.js +107 -14
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/DateMetadataField.test.js.snap +0 -18
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/EnumMetadataField.test.js.snap +0 -84
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/FloatMetadataField.test.js.snap +0 -8
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/IntegerMetadataField.test.js.snap +0 -8
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/MultiSelectMetadataField.test.js.snap +0 -58
- package/src/features/metadata-instance-fields/__tests__/__snapshots__/TextMetadataField.test.js.snap +0 -31
|
@@ -1,24 +1,117 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { render, screen } from '../../../test-utils/testing-library';
|
|
2
3
|
|
|
3
|
-
import
|
|
4
|
+
import TextMetadataField from '../TextMetadataField';
|
|
4
5
|
|
|
5
|
-
describe('
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
describe('TextMetadataField', () => {
|
|
7
|
+
const getTextFieldBaseProps = (props = {}) => ({
|
|
8
|
+
dataKey: 'testKeyText',
|
|
9
|
+
displayName: 'Test Text Field',
|
|
10
|
+
onChange: jest.fn(),
|
|
11
|
+
onRemove: jest.fn(),
|
|
12
|
+
type: 'text',
|
|
13
|
+
dataValue: 'initial text value',
|
|
14
|
+
canEdit: true,
|
|
15
|
+
...props,
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
test('should correctly render a text field with its value', () => {
|
|
19
|
+
render(
|
|
20
|
+
<TextMetadataField
|
|
21
|
+
{...getTextFieldBaseProps({
|
|
22
|
+
dataValue: 'specific text',
|
|
23
|
+
displayName: 'My Test Text',
|
|
24
|
+
})}
|
|
25
|
+
/>,
|
|
26
|
+
);
|
|
27
|
+
const textInput = screen.getByRole('textbox', { name: 'My Test Text' });
|
|
28
|
+
expect(textInput).toBeInTheDocument();
|
|
29
|
+
expect(textInput).toHaveValue('specific text');
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
test('should correctly render a number field with its numeric value', () => {
|
|
33
|
+
render(
|
|
34
|
+
<TextMetadataField
|
|
35
|
+
{...getTextFieldBaseProps({
|
|
36
|
+
dataValue: 12345,
|
|
37
|
+
displayName: 'My Test Number',
|
|
38
|
+
type: 'number',
|
|
39
|
+
})}
|
|
40
|
+
/>,
|
|
41
|
+
);
|
|
42
|
+
const numberInput = screen.getByRole('spinbutton', { name: 'My Test Number' });
|
|
43
|
+
expect(numberInput).toBeInTheDocument();
|
|
44
|
+
expect(numberInput).toHaveValue(12345);
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
test('should correctly render zero in a number field', () => {
|
|
48
|
+
render(
|
|
49
|
+
<TextMetadataField
|
|
50
|
+
{...getTextFieldBaseProps({
|
|
51
|
+
dataValue: 0,
|
|
52
|
+
displayName: 'My Zero Number',
|
|
53
|
+
type: 'number',
|
|
54
|
+
})}
|
|
55
|
+
/>,
|
|
56
|
+
);
|
|
57
|
+
const zeroInput = screen.getByRole('spinbutton', { name: 'My Zero Number' });
|
|
58
|
+
expect(zeroInput).toBeInTheDocument();
|
|
59
|
+
expect(zeroInput).toHaveValue(0);
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
test('should display description when provided', () => {
|
|
63
|
+
const descriptionText = 'This is a text field description.';
|
|
64
|
+
render(
|
|
65
|
+
<TextMetadataField
|
|
66
|
+
{...getTextFieldBaseProps({
|
|
67
|
+
displayName: 'My Text With Desc',
|
|
68
|
+
description: descriptionText,
|
|
69
|
+
})}
|
|
70
|
+
/>,
|
|
71
|
+
);
|
|
72
|
+
const textInput = screen.getByRole('textbox', { name: 'My Text With Desc This is a text field description.' });
|
|
73
|
+
expect(textInput).toBeInTheDocument();
|
|
74
|
+
expect(screen.getByText(descriptionText)).toBeInTheDocument();
|
|
75
|
+
});
|
|
9
76
|
|
|
10
|
-
test('should
|
|
11
|
-
const
|
|
12
|
-
|
|
77
|
+
test('should render as disabled when isDisabled is true', () => {
|
|
78
|
+
const descriptionText = 'A description for the text field.';
|
|
79
|
+
render(
|
|
80
|
+
<TextMetadataField
|
|
81
|
+
{...getTextFieldBaseProps({
|
|
82
|
+
isDisabled: true,
|
|
83
|
+
description: descriptionText,
|
|
84
|
+
})}
|
|
85
|
+
/>,
|
|
86
|
+
);
|
|
87
|
+
expect(
|
|
88
|
+
screen.getByRole('textbox', { name: 'Test Text Field A description for the text field.' }),
|
|
89
|
+
).toBeDisabled();
|
|
13
90
|
});
|
|
14
91
|
|
|
15
|
-
test('should
|
|
16
|
-
const
|
|
17
|
-
|
|
92
|
+
test('should render as enabled when isDisabled is false', () => {
|
|
93
|
+
const descriptionText = 'A description for the text field.';
|
|
94
|
+
render(
|
|
95
|
+
<TextMetadataField
|
|
96
|
+
{...getTextFieldBaseProps({
|
|
97
|
+
isDisabled: false,
|
|
98
|
+
description: descriptionText,
|
|
99
|
+
})}
|
|
100
|
+
/>,
|
|
101
|
+
);
|
|
102
|
+
expect(
|
|
103
|
+
screen.getByRole('textbox', { name: 'Test Text Field A description for the text field.' }),
|
|
104
|
+
).not.toBeDisabled();
|
|
18
105
|
});
|
|
19
106
|
|
|
20
|
-
test('should
|
|
21
|
-
const
|
|
22
|
-
|
|
107
|
+
test('should render as enabled when isDisabled is not provided', () => {
|
|
108
|
+
const props = getTextFieldBaseProps({
|
|
109
|
+
description: 'A description for the text field.',
|
|
110
|
+
});
|
|
111
|
+
delete props.isDisabled;
|
|
112
|
+
render(<TextMetadataField {...props} />);
|
|
113
|
+
expect(
|
|
114
|
+
screen.getByRole('textbox', { name: 'Test Text Field A description for the text field.' }),
|
|
115
|
+
).not.toBeDisabled();
|
|
23
116
|
});
|
|
24
117
|
});
|
package/src/features/metadata-instance-fields/__tests__/__snapshots__/DateMetadataField.test.js.snap
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`features/metadata-instance-editor/fields/DateMetadataField should correctly render a date field 1`] = `
|
|
4
|
-
<DatePicker
|
|
5
|
-
className="bdl-DateMetadataField"
|
|
6
|
-
dateFormat="utcISOString"
|
|
7
|
-
displayFormat={
|
|
8
|
-
{
|
|
9
|
-
"day": "numeric",
|
|
10
|
-
"month": "long",
|
|
11
|
-
"year": "numeric",
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
hideOptionalLabel={true}
|
|
15
|
-
onChange={[Function]}
|
|
16
|
-
value={2018-06-13T07:00:00.000Z}
|
|
17
|
-
/>
|
|
18
|
-
`;
|
package/src/features/metadata-instance-fields/__tests__/__snapshots__/EnumMetadataField.test.js.snap
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`features/metadata-instance-editor/fields/EnumMetadataField should correctly render an enum field 1`] = `
|
|
4
|
-
<div
|
|
5
|
-
className="bdl-EnumMetadataField"
|
|
6
|
-
>
|
|
7
|
-
<Label>
|
|
8
|
-
<SingleSelectField
|
|
9
|
-
isEscapedWithReference={true}
|
|
10
|
-
isScrollable={true}
|
|
11
|
-
onChange={[Function]}
|
|
12
|
-
options={
|
|
13
|
-
[
|
|
14
|
-
{
|
|
15
|
-
"displayText": undefined,
|
|
16
|
-
"isSelectable": false,
|
|
17
|
-
"value": undefined,
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"displayText": "foo",
|
|
21
|
-
"isSelectable": true,
|
|
22
|
-
"value": "foo",
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"displayText": "bar",
|
|
26
|
-
"isSelectable": true,
|
|
27
|
-
"value": "bar",
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"displayText": "baz",
|
|
31
|
-
"isSelectable": true,
|
|
32
|
-
"value": "baz",
|
|
33
|
-
},
|
|
34
|
-
]
|
|
35
|
-
}
|
|
36
|
-
selectedValue="value"
|
|
37
|
-
/>
|
|
38
|
-
</Label>
|
|
39
|
-
</div>
|
|
40
|
-
`;
|
|
41
|
-
|
|
42
|
-
exports[`features/metadata-instance-editor/fields/EnumMetadataField should correctly render an enum field with description 1`] = `
|
|
43
|
-
<div
|
|
44
|
-
className="bdl-EnumMetadataField"
|
|
45
|
-
>
|
|
46
|
-
<Label>
|
|
47
|
-
<i
|
|
48
|
-
className="bdl-EnumMetadataField-desc"
|
|
49
|
-
>
|
|
50
|
-
description
|
|
51
|
-
</i>
|
|
52
|
-
<SingleSelectField
|
|
53
|
-
isEscapedWithReference={true}
|
|
54
|
-
isScrollable={true}
|
|
55
|
-
onChange={[Function]}
|
|
56
|
-
options={
|
|
57
|
-
[
|
|
58
|
-
{
|
|
59
|
-
"displayText": undefined,
|
|
60
|
-
"isSelectable": false,
|
|
61
|
-
"value": undefined,
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
"displayText": "foo",
|
|
65
|
-
"isSelectable": true,
|
|
66
|
-
"value": "foo",
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
"displayText": "bar",
|
|
70
|
-
"isSelectable": true,
|
|
71
|
-
"value": "bar",
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
"displayText": "baz",
|
|
75
|
-
"isSelectable": true,
|
|
76
|
-
"value": "baz",
|
|
77
|
-
},
|
|
78
|
-
]
|
|
79
|
-
}
|
|
80
|
-
selectedValue="value"
|
|
81
|
-
/>
|
|
82
|
-
</Label>
|
|
83
|
-
</div>
|
|
84
|
-
`;
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`features/metadata-instance-editor/fields/MultiSelectMetadataField should correctly render 1`] = `
|
|
4
|
-
<div
|
|
5
|
-
className="bdl-MultiSelectMetadataField"
|
|
6
|
-
>
|
|
7
|
-
<Label>
|
|
8
|
-
<MultiSelectField
|
|
9
|
-
isEscapedWithReference={true}
|
|
10
|
-
isScrollable={true}
|
|
11
|
-
onChange={[Function]}
|
|
12
|
-
options={[]}
|
|
13
|
-
placeholder={
|
|
14
|
-
<FormattedMessage
|
|
15
|
-
defaultMessage="Select Values"
|
|
16
|
-
id="boxui.metadataInstanceFields.fieldMultiSelectValue"
|
|
17
|
-
/>
|
|
18
|
-
}
|
|
19
|
-
selectedValues={
|
|
20
|
-
[
|
|
21
|
-
"value",
|
|
22
|
-
]
|
|
23
|
-
}
|
|
24
|
-
/>
|
|
25
|
-
</Label>
|
|
26
|
-
</div>
|
|
27
|
-
`;
|
|
28
|
-
|
|
29
|
-
exports[`features/metadata-instance-editor/fields/MultiSelectMetadataField should correctly render with description 1`] = `
|
|
30
|
-
<div
|
|
31
|
-
className="bdl-MultiSelectMetadataField"
|
|
32
|
-
>
|
|
33
|
-
<Label>
|
|
34
|
-
<i
|
|
35
|
-
className="bdl-MultiSelectMetadataField-desc"
|
|
36
|
-
>
|
|
37
|
-
description
|
|
38
|
-
</i>
|
|
39
|
-
<MultiSelectField
|
|
40
|
-
isEscapedWithReference={true}
|
|
41
|
-
isScrollable={true}
|
|
42
|
-
onChange={[Function]}
|
|
43
|
-
options={[]}
|
|
44
|
-
placeholder={
|
|
45
|
-
<FormattedMessage
|
|
46
|
-
defaultMessage="Select Values"
|
|
47
|
-
id="boxui.metadataInstanceFields.fieldMultiSelectValue"
|
|
48
|
-
/>
|
|
49
|
-
}
|
|
50
|
-
selectedValues={
|
|
51
|
-
[
|
|
52
|
-
"value",
|
|
53
|
-
]
|
|
54
|
-
}
|
|
55
|
-
/>
|
|
56
|
-
</Label>
|
|
57
|
-
</div>
|
|
58
|
-
`;
|
package/src/features/metadata-instance-fields/__tests__/__snapshots__/TextMetadataField.test.js.snap
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`features/metadata-instance-editor/fields/TextMetadataField should correctly render a number field 1`] = `
|
|
4
|
-
<TextInput
|
|
5
|
-
className="bdl-TextMetadataField"
|
|
6
|
-
hideOptionalLabel={true}
|
|
7
|
-
onChange={[Function]}
|
|
8
|
-
type="number"
|
|
9
|
-
value="value"
|
|
10
|
-
/>
|
|
11
|
-
`;
|
|
12
|
-
|
|
13
|
-
exports[`features/metadata-instance-editor/fields/TextMetadataField should correctly render a text field 1`] = `
|
|
14
|
-
<TextInput
|
|
15
|
-
className="bdl-TextMetadataField"
|
|
16
|
-
hideOptionalLabel={true}
|
|
17
|
-
onChange={[Function]}
|
|
18
|
-
type="text"
|
|
19
|
-
value="value"
|
|
20
|
-
/>
|
|
21
|
-
`;
|
|
22
|
-
|
|
23
|
-
exports[`features/metadata-instance-editor/fields/TextMetadataField should correctly render a zero in a number field 1`] = `
|
|
24
|
-
<TextInput
|
|
25
|
-
className="bdl-TextMetadataField"
|
|
26
|
-
hideOptionalLabel={true}
|
|
27
|
-
onChange={[Function]}
|
|
28
|
-
type="number"
|
|
29
|
-
value={0}
|
|
30
|
-
/>
|
|
31
|
-
`;
|