@elliemae/ds-props-helpers 2.4.2-rc.9 → 2.4.2
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/cjs/getProps/index.js +0 -1
- package/cjs/globalProps/constants.js +0 -1
- package/cjs/globalProps/globalAttributesPropTypes.js +1 -1
- package/cjs/globalProps/useGetGlobalAttributes.js +0 -1
- package/cjs/propTypes/customPropTypes.js +0 -2
- package/cjs/propTypes/describe.js +1 -0
- package/cjs/propTypes/describeConversions.js +5 -5
- package/cjs/propTypes/toTypescript.js +13 -12
- package/cjs/useDeprecateComponent/index.js +1 -1
- package/cjs/validation/errorTemplates.js +10 -3
- package/cjs/validation/typescriptValidator.js +2 -3
- package/cjs/xstyledProps/constants.js +0 -1
- package/cjs/xstyledProps/useGetXstyledProps.js +0 -1
- package/cjs/xstyledProps/xstyledPropTypes.js +1 -1
- package/esm/getProps/index.js +0 -1
- package/esm/globalProps/constants.js +0 -1
- package/esm/globalProps/globalAttributesPropTypes.js +1 -1
- package/esm/globalProps/useGetGlobalAttributes.js +0 -1
- package/esm/propTypes/customPropTypes.js +0 -2
- package/esm/propTypes/describe.js +1 -0
- package/esm/propTypes/describeConversions.js +5 -5
- package/esm/propTypes/toTypescript.js +13 -12
- package/esm/useDeprecateComponent/index.js +1 -1
- package/esm/validation/errorTemplates.js +10 -3
- package/esm/validation/typescriptValidator.js +2 -3
- package/esm/xstyledProps/constants.js +0 -1
- package/esm/xstyledProps/useGetXstyledProps.js +0 -1
- package/esm/xstyledProps/xstyledPropTypes.js +1 -1
- package/package.json +1 -1
package/cjs/getProps/index.js
CHANGED
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
require('core-js/modules/esnext.async-iterator.filter.js');
|
|
6
6
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
7
|
require('core-js/modules/esnext.iterator.filter.js');
|
|
8
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
9
8
|
|
|
10
9
|
const getAriaProps = props => Object.fromEntries(Object.entries(props).filter(_ref => {
|
|
11
10
|
let [key] = _ref;
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
6
6
|
require('core-js/modules/esnext.iterator.map.js');
|
|
7
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
8
7
|
|
|
9
8
|
/* eslint-disable max-lines */
|
|
10
9
|
const ariaAttributes = ['aria-activedescendant', 'aria-atomic', 'aria-autocomplete', 'aria-busy', 'aria-checked', 'aria-colcount', 'aria-colindex', 'aria-colspan', 'aria-controls', 'aria-current', 'aria-describedby', 'aria-details', 'aria-disabled', 'aria-dropeffect', 'aria-errormessage', 'aria-expanded', 'aria-flowto', 'aria-grabbed', 'aria-haspopup', 'aria-hidden', 'aria-invalid', 'aria-keyshortcuts', 'aria-label', 'aria-labelledby', 'aria-level', 'aria-live', 'aria-modal', 'aria-multiline', 'aria-multiselectable', 'aria-orientation', 'aria-owns', 'aria-placeholder', 'aria-posinset', 'aria-pressed', 'aria-readonly', 'aria-relevant', 'aria-required', 'aria-roledescription', 'aria-rowcount', 'aria-rowindex', 'aria-rowspan', 'aria-selected', 'aria-setsize', 'aria-sort', 'aria-valuemax', 'aria-valuemin', 'aria-valuenow', 'aria-valuetext'];
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var PropTypes = require('../propTypes/PropTypes.js');
|
|
6
|
+
require('core-js/modules/es.error.cause.js');
|
|
6
7
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
7
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
8
9
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
9
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
10
10
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
11
11
|
require('core-js/modules/esnext.iterator.map.js');
|
|
12
12
|
require('prop-types');
|
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
6
6
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
7
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
8
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
9
8
|
var react = require('react');
|
|
10
9
|
var constants = require('./constants.js');
|
|
11
10
|
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
6
|
-
|
|
7
5
|
/* eslint-disable max-params */
|
|
8
6
|
const tupleValidator = tupleShape => {
|
|
9
7
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-call
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
6
5
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
7
6
|
require('core-js/modules/esnext.iterator.map.js');
|
|
8
7
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
9
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
10
9
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
10
|
+
require('core-js/modules/es.error.cause.js');
|
|
11
11
|
var PropTypes = require('prop-types');
|
|
12
12
|
var customPropTypes = require('./customPropTypes.js');
|
|
13
13
|
var describeGuards = require('./describeGuards.js');
|
|
@@ -23,7 +23,7 @@ const enrichPropType = (propType, reactDesc) => {
|
|
|
23
23
|
version = '',
|
|
24
24
|
message = ''
|
|
25
25
|
} = reactDesc.deprecated;
|
|
26
|
-
const error =
|
|
26
|
+
const error = `Warning: "${propName}" property of "${componentName}" will be deprecated in version: ${version}.\n${message}`;
|
|
27
27
|
console.error(error);
|
|
28
28
|
reactDesc.warned = true;
|
|
29
29
|
}
|
|
@@ -51,7 +51,7 @@ const convertShape = _shape => {
|
|
|
51
51
|
|
|
52
52
|
const convertPropType = propType => {
|
|
53
53
|
if (!propType || !propType.type) {
|
|
54
|
-
throw new Error(
|
|
54
|
+
throw new Error(`react-desc: unknown error -- proptype is not well defined`);
|
|
55
55
|
} // DimSum PropTypes conversion
|
|
56
56
|
|
|
57
57
|
|
|
@@ -63,7 +63,7 @@ const convertPropType = propType => {
|
|
|
63
63
|
const realPropType = PropTypes__default["default"][propType.type];
|
|
64
64
|
|
|
65
65
|
if (!realPropType) {
|
|
66
|
-
throw new Error(
|
|
66
|
+
throw new Error(`react-desc: unknown type ${propType.type}`);
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
if (describeGuards.hasArguments(propType)) {
|
|
@@ -95,7 +95,7 @@ const convertPropType = propType => {
|
|
|
95
95
|
return enrichPropType(realPropType(propType.args), propType.reactDesc);
|
|
96
96
|
}
|
|
97
97
|
|
|
98
|
-
throw new Error(
|
|
98
|
+
throw new Error(`react-desc: unknown error -- proptype with args is not matching`);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
101
|
return enrichPropType(realPropType, propType.reactDesc);
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
4
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
5
5
|
require('core-js/modules/esnext.iterator.map.js');
|
|
6
|
+
require('core-js/modules/es.error.cause.js');
|
|
6
7
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
7
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
8
9
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
@@ -32,16 +33,16 @@ const shapeFormat = shape => {
|
|
|
32
33
|
let valueFormat;
|
|
33
34
|
|
|
34
35
|
if (value.type && (value.type === 'arrayOf' || value.type === 'oneOfType' || value.type === 'oneOf') && Array.isArray(value.args)) {
|
|
35
|
-
valueFormat =
|
|
36
|
+
valueFormat = `${propTypeFormat(value)}`;
|
|
36
37
|
} else if (value.type === 'shape') {
|
|
37
|
-
valueFormat =
|
|
38
|
+
valueFormat = `${propTypeFormat(value)}`;
|
|
38
39
|
} else {
|
|
39
40
|
valueFormat = propTypeFormat(value);
|
|
40
41
|
}
|
|
41
42
|
|
|
42
|
-
return
|
|
43
|
+
return `${key}${value.reactDesc && value.reactDesc.required ? '' : '?'}: ${valueFormat}`;
|
|
43
44
|
});
|
|
44
|
-
return
|
|
45
|
+
return `{${props.join(',')}}`;
|
|
45
46
|
};
|
|
46
47
|
|
|
47
48
|
const propTypeFormat = function (propType) {
|
|
@@ -58,15 +59,15 @@ const propTypeFormat = function (propType) {
|
|
|
58
59
|
|
|
59
60
|
case 'arrayOf':
|
|
60
61
|
if (propType.args.type === 'oneOfType') {
|
|
61
|
-
result =
|
|
62
|
+
result = `(${propTypeFormat(propType.args, ' | ')})[]`;
|
|
62
63
|
} else {
|
|
63
|
-
result =
|
|
64
|
+
result = `${propTypeFormat(propType.args, '\n')}[]`;
|
|
64
65
|
}
|
|
65
66
|
|
|
66
67
|
break;
|
|
67
68
|
|
|
68
69
|
case 'tuple':
|
|
69
|
-
result =
|
|
70
|
+
result = `[${propTypeFormat(propType.args, ', ')}]`;
|
|
70
71
|
break;
|
|
71
72
|
|
|
72
73
|
case 'bool':
|
|
@@ -94,23 +95,23 @@ const propTypeFormat = function (propType) {
|
|
|
94
95
|
break;
|
|
95
96
|
|
|
96
97
|
case 'objectOf':
|
|
97
|
-
result =
|
|
98
|
+
result = `{ [key: string]: ${propTypeFormat(propType.args)} }`;
|
|
98
99
|
break;
|
|
99
100
|
|
|
100
101
|
case 'oneOf':
|
|
101
|
-
result = propType.args.map(a => "
|
|
102
|
+
result = propType.args.map(a => `"${a}"`).join(' | ');
|
|
102
103
|
break;
|
|
103
104
|
|
|
104
105
|
case 'oneOfType':
|
|
105
|
-
result =
|
|
106
|
+
result = `${propTypeFormat(propType.args, ' | ')}`;
|
|
106
107
|
break;
|
|
107
108
|
|
|
108
109
|
case 'shape':
|
|
109
|
-
result =
|
|
110
|
+
result = `${shapeFormat(propType.args)}`;
|
|
110
111
|
break;
|
|
111
112
|
|
|
112
113
|
default:
|
|
113
|
-
result =
|
|
114
|
+
result = `${propType.type}`;
|
|
114
115
|
break;
|
|
115
116
|
}
|
|
116
117
|
} else {
|
|
@@ -11,7 +11,7 @@ const useDeprecateComponent = _ref => {
|
|
|
11
11
|
version
|
|
12
12
|
} = _ref;
|
|
13
13
|
react.useEffect(() => {
|
|
14
|
-
console.error(
|
|
14
|
+
console.error(`Warning: ${componentName}:: this component will be deprecated in version: ${version}.`);
|
|
15
15
|
}, [componentName, version]);
|
|
16
16
|
};
|
|
17
17
|
|
|
@@ -2,14 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
require('core-js/modules/es.
|
|
5
|
+
require('core-js/modules/es.error.cause.js');
|
|
6
6
|
|
|
7
7
|
/* eslint-disable max-params */
|
|
8
8
|
const throwTypeError = (componentName, validPropKey, invalidProp, validFormat) => {
|
|
9
|
-
throw new Error(
|
|
9
|
+
throw new Error(`${componentName}:: You are trying to pass a not valid "${validPropKey}" property,
|
|
10
|
+
please provide a valid type.
|
|
11
|
+
|
|
12
|
+
Received: ${invalidProp} (${typeof invalidProp})
|
|
13
|
+
Expected: (${validFormat.replace('\n', ' or ')})
|
|
14
|
+
`);
|
|
10
15
|
};
|
|
11
16
|
const throwRequiredError = (componentName, validPropKey) => {
|
|
12
|
-
throw new Error(
|
|
17
|
+
throw new Error(`${componentName}:: Please provide a/an "${validPropKey}" property to use this component.
|
|
18
|
+
This property is required.
|
|
19
|
+
`);
|
|
13
20
|
};
|
|
14
21
|
|
|
15
22
|
exports.throwRequiredError = throwRequiredError;
|
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
6
6
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
7
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
8
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
9
8
|
var react = require('react');
|
|
10
9
|
require('../propTypes/PropTypes.js');
|
|
11
10
|
var describe = require('../propTypes/describe.js');
|
|
@@ -53,7 +52,7 @@ const validateArray = (schemaName, key, value, format, validationsMemo, nextVali
|
|
|
53
52
|
value.forEach((val, index) => {
|
|
54
53
|
// this is a recursive func, we need to invoke it before it's defined.
|
|
55
54
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
56
|
-
validateValueWithFormat(schemaName,
|
|
55
|
+
validateValueWithFormat(schemaName, `${key}[${index}]`, val, format.slice(0, -2), validationsMemo, nextValidationsMemo);
|
|
57
56
|
});
|
|
58
57
|
};
|
|
59
58
|
|
|
@@ -85,7 +84,7 @@ const validateObject = (schemaName, key, value, format, validationsMemo, nextVal
|
|
|
85
84
|
if (trueKey in value) {
|
|
86
85
|
// this is a recursive func, we need to invoke it before it's defined.
|
|
87
86
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
88
|
-
validateValueWithFormat(schemaName,
|
|
87
|
+
validateValueWithFormat(schemaName, `${key}[${trueKey}]`, value[trueKey], objectValue, validationsMemo, nextValidationsMemo);
|
|
89
88
|
}
|
|
90
89
|
});
|
|
91
90
|
};
|
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
6
6
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
7
7
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
8
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
9
8
|
var react = require('react');
|
|
10
9
|
var constants = require('./constants.js');
|
|
11
10
|
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var PropTypes = require('../propTypes/PropTypes.js');
|
|
6
|
+
require('core-js/modules/es.error.cause.js');
|
|
6
7
|
require('core-js/modules/esnext.async-iterator.for-each.js');
|
|
7
8
|
require('core-js/modules/esnext.iterator.constructor.js');
|
|
8
9
|
require('core-js/modules/esnext.iterator.for-each.js');
|
|
9
|
-
require('core-js/modules/web.dom-collections.iterator.js');
|
|
10
10
|
require('core-js/modules/esnext.async-iterator.map.js');
|
|
11
11
|
require('core-js/modules/esnext.iterator.map.js');
|
|
12
12
|
require('prop-types');
|
package/esm/getProps/index.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
2
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
3
|
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
5
4
|
|
|
6
5
|
const getAriaProps = props => Object.fromEntries(Object.entries(props).filter(_ref => {
|
|
7
6
|
let [key] = _ref;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
2
2
|
import 'core-js/modules/esnext.iterator.map.js';
|
|
3
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
4
3
|
|
|
5
4
|
/* eslint-disable max-lines */
|
|
6
5
|
const ariaAttributes = ['aria-activedescendant', 'aria-atomic', 'aria-autocomplete', 'aria-busy', 'aria-checked', 'aria-colcount', 'aria-colindex', 'aria-colspan', 'aria-controls', 'aria-current', 'aria-describedby', 'aria-details', 'aria-disabled', 'aria-dropeffect', 'aria-errormessage', 'aria-expanded', 'aria-flowto', 'aria-grabbed', 'aria-haspopup', 'aria-hidden', 'aria-invalid', 'aria-keyshortcuts', 'aria-label', 'aria-labelledby', 'aria-level', 'aria-live', 'aria-modal', 'aria-multiline', 'aria-multiselectable', 'aria-orientation', 'aria-owns', 'aria-placeholder', 'aria-posinset', 'aria-pressed', 'aria-readonly', 'aria-relevant', 'aria-required', 'aria-roledescription', 'aria-rowcount', 'aria-rowindex', 'aria-rowspan', 'aria-selected', 'aria-setsize', 'aria-sort', 'aria-valuemax', 'aria-valuemin', 'aria-valuenow', 'aria-valuetext'];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import PropTypes from '../propTypes/PropTypes.js';
|
|
2
|
+
import 'core-js/modules/es.error.cause.js';
|
|
2
3
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
3
4
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
4
5
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
5
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
6
6
|
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
7
7
|
import 'core-js/modules/esnext.iterator.map.js';
|
|
8
8
|
import 'prop-types';
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
2
2
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
3
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
4
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
5
4
|
import { useMemo } from 'react';
|
|
6
5
|
import { globalAttributes } from './constants.js';
|
|
7
6
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
2
1
|
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
3
2
|
import 'core-js/modules/esnext.iterator.map.js';
|
|
4
3
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
4
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
6
5
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
6
|
+
import 'core-js/modules/es.error.cause.js';
|
|
7
7
|
import PropTypes from 'prop-types';
|
|
8
8
|
import { tupleValidator } from './customPropTypes.js';
|
|
9
9
|
import { hasArguments, isOneOfType, isArrayOf, isShape, isInstanceOf, isOneOf, isObjectOf, isExact } from './describeGuards.js';
|
|
@@ -15,7 +15,7 @@ const enrichPropType = (propType, reactDesc) => {
|
|
|
15
15
|
version = '',
|
|
16
16
|
message = ''
|
|
17
17
|
} = reactDesc.deprecated;
|
|
18
|
-
const error =
|
|
18
|
+
const error = `Warning: "${propName}" property of "${componentName}" will be deprecated in version: ${version}.\n${message}`;
|
|
19
19
|
console.error(error);
|
|
20
20
|
reactDesc.warned = true;
|
|
21
21
|
}
|
|
@@ -43,7 +43,7 @@ const convertShape = _shape => {
|
|
|
43
43
|
|
|
44
44
|
const convertPropType = propType => {
|
|
45
45
|
if (!propType || !propType.type) {
|
|
46
|
-
throw new Error(
|
|
46
|
+
throw new Error(`react-desc: unknown error -- proptype is not well defined`);
|
|
47
47
|
} // DimSum PropTypes conversion
|
|
48
48
|
|
|
49
49
|
|
|
@@ -55,7 +55,7 @@ const convertPropType = propType => {
|
|
|
55
55
|
const realPropType = PropTypes[propType.type];
|
|
56
56
|
|
|
57
57
|
if (!realPropType) {
|
|
58
|
-
throw new Error(
|
|
58
|
+
throw new Error(`react-desc: unknown type ${propType.type}`);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
if (hasArguments(propType)) {
|
|
@@ -87,7 +87,7 @@ const convertPropType = propType => {
|
|
|
87
87
|
return enrichPropType(realPropType(propType.args), propType.reactDesc);
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
throw new Error(
|
|
90
|
+
throw new Error(`react-desc: unknown error -- proptype with args is not matching`);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
return enrichPropType(realPropType, propType.reactDesc);
|
|
@@ -3,6 +3,7 @@ import 'core-js/modules/esnext.iterator.filter.js';
|
|
|
3
3
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
4
4
|
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
5
5
|
import 'core-js/modules/esnext.iterator.map.js';
|
|
6
|
+
import 'core-js/modules/es.error.cause.js';
|
|
6
7
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
7
8
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
8
9
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
@@ -26,16 +27,16 @@ const shapeFormat = shape => {
|
|
|
26
27
|
let valueFormat;
|
|
27
28
|
|
|
28
29
|
if (value.type && (value.type === 'arrayOf' || value.type === 'oneOfType' || value.type === 'oneOf') && Array.isArray(value.args)) {
|
|
29
|
-
valueFormat =
|
|
30
|
+
valueFormat = `${propTypeFormat(value)}`;
|
|
30
31
|
} else if (value.type === 'shape') {
|
|
31
|
-
valueFormat =
|
|
32
|
+
valueFormat = `${propTypeFormat(value)}`;
|
|
32
33
|
} else {
|
|
33
34
|
valueFormat = propTypeFormat(value);
|
|
34
35
|
}
|
|
35
36
|
|
|
36
|
-
return
|
|
37
|
+
return `${key}${value.reactDesc && value.reactDesc.required ? '' : '?'}: ${valueFormat}`;
|
|
37
38
|
});
|
|
38
|
-
return
|
|
39
|
+
return `{${props.join(',')}}`;
|
|
39
40
|
};
|
|
40
41
|
|
|
41
42
|
const propTypeFormat = function (propType) {
|
|
@@ -52,15 +53,15 @@ const propTypeFormat = function (propType) {
|
|
|
52
53
|
|
|
53
54
|
case 'arrayOf':
|
|
54
55
|
if (propType.args.type === 'oneOfType') {
|
|
55
|
-
result =
|
|
56
|
+
result = `(${propTypeFormat(propType.args, ' | ')})[]`;
|
|
56
57
|
} else {
|
|
57
|
-
result =
|
|
58
|
+
result = `${propTypeFormat(propType.args, '\n')}[]`;
|
|
58
59
|
}
|
|
59
60
|
|
|
60
61
|
break;
|
|
61
62
|
|
|
62
63
|
case 'tuple':
|
|
63
|
-
result =
|
|
64
|
+
result = `[${propTypeFormat(propType.args, ', ')}]`;
|
|
64
65
|
break;
|
|
65
66
|
|
|
66
67
|
case 'bool':
|
|
@@ -88,23 +89,23 @@ const propTypeFormat = function (propType) {
|
|
|
88
89
|
break;
|
|
89
90
|
|
|
90
91
|
case 'objectOf':
|
|
91
|
-
result =
|
|
92
|
+
result = `{ [key: string]: ${propTypeFormat(propType.args)} }`;
|
|
92
93
|
break;
|
|
93
94
|
|
|
94
95
|
case 'oneOf':
|
|
95
|
-
result = propType.args.map(a => "
|
|
96
|
+
result = propType.args.map(a => `"${a}"`).join(' | ');
|
|
96
97
|
break;
|
|
97
98
|
|
|
98
99
|
case 'oneOfType':
|
|
99
|
-
result =
|
|
100
|
+
result = `${propTypeFormat(propType.args, ' | ')}`;
|
|
100
101
|
break;
|
|
101
102
|
|
|
102
103
|
case 'shape':
|
|
103
|
-
result =
|
|
104
|
+
result = `${shapeFormat(propType.args)}`;
|
|
104
105
|
break;
|
|
105
106
|
|
|
106
107
|
default:
|
|
107
|
-
result =
|
|
108
|
+
result = `${propType.type}`;
|
|
108
109
|
break;
|
|
109
110
|
}
|
|
110
111
|
} else {
|
|
@@ -7,7 +7,7 @@ const useDeprecateComponent = _ref => {
|
|
|
7
7
|
version
|
|
8
8
|
} = _ref;
|
|
9
9
|
useEffect(() => {
|
|
10
|
-
console.error(
|
|
10
|
+
console.error(`Warning: ${componentName}:: this component will be deprecated in version: ${version}.`);
|
|
11
11
|
}, [componentName, version]);
|
|
12
12
|
};
|
|
13
13
|
|
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
import 'core-js/modules/es.
|
|
1
|
+
import 'core-js/modules/es.error.cause.js';
|
|
2
2
|
|
|
3
3
|
/* eslint-disable max-params */
|
|
4
4
|
const throwTypeError = (componentName, validPropKey, invalidProp, validFormat) => {
|
|
5
|
-
throw new Error(
|
|
5
|
+
throw new Error(`${componentName}:: You are trying to pass a not valid "${validPropKey}" property,
|
|
6
|
+
please provide a valid type.
|
|
7
|
+
|
|
8
|
+
Received: ${invalidProp} (${typeof invalidProp})
|
|
9
|
+
Expected: (${validFormat.replace('\n', ' or ')})
|
|
10
|
+
`);
|
|
6
11
|
};
|
|
7
12
|
const throwRequiredError = (componentName, validPropKey) => {
|
|
8
|
-
throw new Error(
|
|
13
|
+
throw new Error(`${componentName}:: Please provide a/an "${validPropKey}" property to use this component.
|
|
14
|
+
This property is required.
|
|
15
|
+
`);
|
|
9
16
|
};
|
|
10
17
|
|
|
11
18
|
export { throwRequiredError, throwTypeError };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
2
2
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
3
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
4
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
5
4
|
import { useState, useMemo } from 'react';
|
|
6
5
|
import '../propTypes/PropTypes.js';
|
|
7
6
|
import describe from '../propTypes/describe.js';
|
|
@@ -49,7 +48,7 @@ const validateArray = (schemaName, key, value, format, validationsMemo, nextVali
|
|
|
49
48
|
value.forEach((val, index) => {
|
|
50
49
|
// this is a recursive func, we need to invoke it before it's defined.
|
|
51
50
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
52
|
-
validateValueWithFormat(schemaName,
|
|
51
|
+
validateValueWithFormat(schemaName, `${key}[${index}]`, val, format.slice(0, -2), validationsMemo, nextValidationsMemo);
|
|
53
52
|
});
|
|
54
53
|
};
|
|
55
54
|
|
|
@@ -81,7 +80,7 @@ const validateObject = (schemaName, key, value, format, validationsMemo, nextVal
|
|
|
81
80
|
if (trueKey in value) {
|
|
82
81
|
// this is a recursive func, we need to invoke it before it's defined.
|
|
83
82
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
84
|
-
validateValueWithFormat(schemaName,
|
|
83
|
+
validateValueWithFormat(schemaName, `${key}[${trueKey}]`, value[trueKey], objectValue, validationsMemo, nextValidationsMemo);
|
|
85
84
|
}
|
|
86
85
|
});
|
|
87
86
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
2
2
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
3
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
4
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
5
4
|
import { useMemo } from 'react';
|
|
6
5
|
import { xstyledKeys } from './constants.js';
|
|
7
6
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import PropTypes from '../propTypes/PropTypes.js';
|
|
2
|
+
import 'core-js/modules/es.error.cause.js';
|
|
2
3
|
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
3
4
|
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
4
5
|
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
5
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
6
6
|
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
7
7
|
import 'core-js/modules/esnext.iterator.map.js';
|
|
8
8
|
import 'prop-types';
|