Skip to content

Commit 97dc397

Browse files
committed
Sync with master
1 parent 1af7555 commit 97dc397

File tree

55 files changed

+1360
-1568
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+1360
-1568
lines changed

package.json

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"private": true,
99
"scripts": {
1010
"bootstrap": "lerna bootstrap",
11-
"build": "yarn clean-build && lerna run build --concurrency 1 --ignore @data-driven-forms/react-renderer-demo --ignore @data-driven-forms/pf3-component-mapper",
11+
"build": "yarn clean-build && lerna run build --concurrency 1 --ignore @data-driven-forms/react-renderer-demo",
1212
"vendor": "lerna run vendor",
1313
"test": "jest --coverage",
1414
"test:ci": "jest --coverage --runInBand",
@@ -28,8 +28,7 @@
2828
"jest": {
2929
"verbose": true,
3030
"testPathIgnorePatterns": [
31-
"/node_modules/",
32-
"/pf3-component-mapper/"
31+
"/node_modules/"
3332
],
3433
"setupFiles": [
3534
"<rootDir>/config/jest.setup.js"
@@ -39,7 +38,6 @@
3938
"<rootDir>/packages/**/src/**/*.ts",
4039
"!<rootDir>/packages/**/src/**/*.d.ts",
4140
"!<rootDir>/packages/react-renderer-demo/**/*.js",
42-
"!<rootDir>/packages/pf3-component-mapper/**/*.js",
4341
"!<rootDir>/packages/**/dist",
4442
"!<rootDir>/templates/**/*.js",
4543
"!<rootDir>/packages/**/src/**/index.js"
@@ -143,7 +141,7 @@
143141
"assets": [
144142
"package.json"
145143
],
146-
"successComment": ":tada: This ${issue.pull_request ? 'PR is included' : 'issue has been resolved'} in version ${nextRelease.version} :tada:\n\nThe release is available on \n\n- [react-form-renderer (@latest dist-tag)](https://www.npmjs.com/package/@data-driven-forms/react-form-renderer)\n\n- [pf3-component-mapper (@latest dist-tag)](https://www.npmjs.com/package/@data-driven-forms/pf3-component-mapper)\n\n- [pf4-component-mapper (@latest dist-tag)](https://www.npmjs.com/package/@data-driven-forms/pf4-component-mapper)\n\n- [mui-component-mapper (@latest dist-tag)](https://www.npmjs.com/package/@data-driven-forms/mui-component-mapper)\n\nDemo can be found [here](http://data-driven-forms.org/)!"
144+
"successComment": ":tada: This ${issue.pull_request ? 'PR is included' : 'issue has been resolved'} in version ${nextRelease.version} :tada:\n\nThe release is available on \n\n- [react-form-renderer (@latest dist-tag)](https://www.npmjs.com/package/@data-driven-forms/react-form-renderer)\n\nDemo can be found [here](http://data-driven-forms.org/)!"
147145
},
148146
[
149147
"@semantic-release/git",

packages/ant-component-mapper/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@data-driven-forms/ant-component-mapper",
3-
"version": "2.19.1",
3+
"version": "2.23.2",
44
"description": "Component mapper for Ant Design component mapper form data-driven-forms.",
55
"main": "index.js",
66
"module": "esm/index.js",

packages/blueprint-component-mapper/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@data-driven-forms/blueprint-component-mapper",
3-
"version": "2.19.1",
3+
"version": "2.23.2",
44
"description": "Blueprint component mapper for data-driven-forms.",
55
"main": "index.js",
66
"module": "esm/index.js",

packages/carbon-component-mapper/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@data-driven-forms/carbon-component-mapper",
3-
"version": "2.19.1",
3+
"version": "2.23.2",
44
"description": "carbon-component-mapper for data-driven-forms.",
55
"main": "index.js",
66
"module": "esm/index.js",

packages/carbon-component-mapper/src/form-template/form-template.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ const WrappedFormTemplate = (props) => (
9090
ButtonGroup={ButtonGroup}
9191
Title={Title}
9292
Description={Description}
93-
buttonOrder={['cancel', 'reset', 'submit']}
93+
buttonOrder={['submit', 'reset', 'cancel']}
9494
Header={Header}
9595
{...props}
9696
/>

packages/carbon-component-mapper/src/sub-form/sub-form.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ SubForm.propTypes = {
4343
};
4444

4545
SubForm.defaultProps = {
46-
TitleElement: 'h5',
46+
TitleElement: 'h3',
4747
DescriptionElement: 'p'
4848
};
4949

packages/carbon-component-mapper/src/tests/components.test.js

Lines changed: 85 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@ describe('component tests', () => {
1414
onSubmit={jest.fn()}
1515
FormTemplate={(props) => <FormTemplate {...props} />}
1616
schema={schema}
17-
componentMapper={componentMapper}
17+
componentMapper={{
18+
...componentMapper,
19+
'text-field-number': {
20+
component: componentMapper[componentTypes.TEXT_FIELD],
21+
type: 'number'
22+
}
23+
}}
1824
{...props}
1925
/>
2026
);
@@ -47,7 +53,8 @@ describe('component tests', () => {
4753
componentTypes.TIME_PICKER,
4854
componentTypes.SWITCH,
4955
componentTypes.SELECT,
50-
componentTypes.SLIDER
56+
componentTypes.SLIDER,
57+
'text-field-number'
5158
].forEach((component) => {
5259
describe(`Component type: ${component}`, () => {
5360
beforeEach(() => {
@@ -70,6 +77,8 @@ describe('component tests', () => {
7077

7178
if (component === componentTypes.RADIO) {
7279
expect(wrapper.find('.bx--radio-button-wrapper')).toHaveLength(options.length);
80+
} else if (component === 'text-field-number') {
81+
expect(wrapper.find('NumberInput')).toHaveLength(1);
7382
} else {
7483
expect(wrapper.find(componentMapper[component])).toHaveLength(1);
7584
expect(
@@ -99,95 +108,98 @@ describe('component tests', () => {
99108
}
100109
});
101110

102-
it('renders with warning', async () => {
103-
const errorField = {
104-
...field,
105-
validate: [{ type: validatorTypes.REQUIRED, warning: true }],
106-
validateOnMount: true
107-
};
108-
let wrapper;
111+
if (component !== 'text-field-number') {
112+
it('renders with warning', async () => {
113+
const errorField = {
114+
...field,
115+
validate: [{ type: validatorTypes.REQUIRED, warning: true }],
116+
validateOnMount: true
117+
};
118+
let wrapper;
119+
120+
await act(async () => {
121+
wrapper = mount(<RendererWrapper schema={{ fields: [errorField] }} />);
122+
});
123+
wrapper.update();
124+
wrapper.update();
125+
126+
const helperText = wrapper.find('.bx--form__helper-text');
127+
128+
if (helperText.length) {
129+
expect(helperText.text()).toEqual(errorText);
130+
} else {
131+
expect(
132+
wrapper
133+
.find('.bx--form-requirement')
134+
.last()
135+
.text()
136+
).toEqual(errorText);
137+
}
138+
});
139+
140+
it('renders with helperText', () => {
141+
const helpertextField = {
142+
...field,
143+
helperText
144+
};
145+
const wrapper = mount(<RendererWrapper schema={{ fields: [helpertextField] }} />);
109146

110-
await act(async () => {
111-
wrapper = mount(<RendererWrapper schema={{ fields: [errorField] }} />);
147+
expect(
148+
wrapper
149+
.find('.bx--form__helper-text')
150+
.last()
151+
.text()
152+
).toEqual(helperText);
112153
});
113-
wrapper.update();
114154

115-
const helperText = wrapper.find('.bx--form__helper-text');
155+
it('renders with description and helperText', () => {
156+
const descriptionField = {
157+
...field,
158+
description,
159+
helperText
160+
};
161+
const wrapper = mount(<RendererWrapper schema={{ fields: [descriptionField] }} />);
162+
163+
expect(wrapper.find(WithDescription)).toHaveLength(1);
116164

117-
if (helperText.length) {
118-
expect(helperText.text()).toEqual(errorText);
119-
} else {
120165
expect(
121166
wrapper
122-
.find('.bx--form-requirement')
167+
.find('.bx--form__helper-text')
123168
.last()
124169
.text()
125-
).toEqual(errorText);
126-
}
127-
});
170+
).toEqual(helperText);
171+
});
128172

129-
it('renders with helperText', () => {
130-
const helpertextField = {
131-
...field,
132-
helperText
133-
};
134-
const wrapper = mount(<RendererWrapper schema={{ fields: [helpertextField] }} />);
135-
136-
expect(
137-
wrapper
138-
.find('.bx--form__helper-text')
139-
.last()
140-
.text()
141-
).toEqual(helperText);
142-
});
173+
it('renders with error and helperText', () => {
174+
const errorFields = {
175+
...field,
176+
helperText,
177+
validate: [{ type: validatorTypes.REQUIRED }]
178+
};
179+
const wrapper = mount(<RendererWrapper schema={{ fields: [errorFields] }} />);
180+
wrapper.find('form').simulate('submit');
143181

144-
it('renders with description', () => {
145-
const descriptionField = {
146-
...field,
147-
description
148-
};
149-
const wrapper = mount(<RendererWrapper schema={{ fields: [descriptionField] }} />);
182+
if (wrapper.find('#field-name-error-msg').length) {
183+
expect(wrapper.find('#field-name-error-msg').text()).toEqual(errorText);
184+
expect(wrapper.find('[invalid=true]').length).toBeGreaterThanOrEqual(1);
185+
}
150186

151-
expect(wrapper.find(WithDescription)).toHaveLength(1);
152-
});
187+
if (wrapper.find('.ddorg__carbon-error-helper-text').length) {
188+
expect(wrapper.find('.ddorg__carbon-error-helper-text').text()).toEqual(errorText);
189+
}
190+
191+
expect(wrapper.find('.bx--form__helper-text')).toHaveLength(0);
192+
});
193+
}
153194

154-
it('renders with description and helperText', () => {
195+
it('renders with description', () => {
155196
const descriptionField = {
156197
...field,
157-
description,
158-
helperText
198+
description
159199
};
160200
const wrapper = mount(<RendererWrapper schema={{ fields: [descriptionField] }} />);
161201

162202
expect(wrapper.find(WithDescription)).toHaveLength(1);
163-
164-
expect(
165-
wrapper
166-
.find('.bx--form__helper-text')
167-
.last()
168-
.text()
169-
).toEqual(helperText);
170-
});
171-
172-
it('renders with error and helperText', () => {
173-
const errorFields = {
174-
...field,
175-
helperText,
176-
validate: [{ type: validatorTypes.REQUIRED }]
177-
};
178-
const wrapper = mount(<RendererWrapper schema={{ fields: [errorFields] }} />);
179-
wrapper.find('form').simulate('submit');
180-
181-
if (wrapper.find('#field-name-error-msg').length) {
182-
expect(wrapper.find('#field-name-error-msg').text()).toEqual(errorText);
183-
expect(wrapper.find('[invalid=true]').length).toBeGreaterThanOrEqual(1);
184-
}
185-
186-
if (wrapper.find('.ddorg__carbon-error-helper-text').length) {
187-
expect(wrapper.find('.ddorg__carbon-error-helper-text').text()).toEqual(errorText);
188-
}
189-
190-
expect(wrapper.find('.bx--form__helper-text')).toHaveLength(0);
191203
});
192204

193205
it('renders isDisabled', () => {

packages/carbon-component-mapper/src/text-field/text-field.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,28 @@ import React from 'react';
22
import PropTypes from 'prop-types';
33
import { useFieldApi } from '@data-driven-forms/react-form-renderer';
44

5-
import { TextInput } from 'carbon-components-react';
5+
import { TextInput, NumberInput } from 'carbon-components-react';
66

77
import prepareProps from '../prepare-props';
88

99
const TextField = (props) => {
10-
const { input, meta, validateOnMount, ...rest } = useFieldApi(prepareProps(props));
10+
const { input, meta, validateOnMount, labelText, ...rest } = useFieldApi(prepareProps(props));
11+
12+
const Component = input.type === 'number' ? NumberInput : TextInput;
1113

1214
const invalid = (meta.touched || validateOnMount) && (meta.error || meta.submitError);
1315
const warn = (meta.touched || validateOnMount) && meta.warning;
1416

1517
return (
16-
<TextInput
18+
<Component
1719
{...input}
1820
key={input.name}
1921
id={input.name}
2022
invalid={Boolean(invalid)}
2123
invalidText={invalid || ''}
2224
warn={Boolean(warn)}
2325
warnText={warn || ''}
26+
{...(input.type === 'number' ? { label: labelText } : { labelText })}
2427
{...rest}
2528
/>
2629
);

packages/common/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@data-driven-forms/common",
3-
"version": "2.19.1",
3+
"version": "2.23.2",
44
"description": "Common components, helpers and other pieces of code",
55
"license": "Apache-2.0",
66
"main": "index.js",

packages/common/src/wizard/enter-handler.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import selectNext from './select-next';
22

33
const enterHandler = (e, formOptions, activeStep, findCurrentStep, handleNext, handleSubmit) => {
4-
if (e.key === 'Enter') {
4+
if (e.key === 'Enter' && !e.shiftKey && !e.ctrlKey) {
55
const isNotButton = e.target.type !== 'button';
66

77
if (isNotButton) {

0 commit comments

Comments
 (0)