@pareto-engineering/design-system 4.0.0-alpha.62 → 4.0.0-alpha.64
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/cjs/f/common/Description/Description.js +6 -5
- package/dist/cjs/f/common/Label/Label.js +9 -22
- package/dist/cjs/f/common/Label/styles.scss +0 -5
- package/dist/cjs/f/common/index.js +1 -9
- package/dist/cjs/f/fields/Checkbox/Checkbox.js +16 -21
- package/dist/cjs/f/fields/Checkbox/styles.scss +7 -5
- package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +13 -23
- package/dist/cjs/f/fields/ChoicesInput/styles.scss +44 -41
- package/dist/cjs/f/fields/EditorInput/EditorInput.js +11 -39
- package/dist/cjs/f/fields/EditorInput/styles.scss +92 -90
- package/dist/cjs/f/fields/LinkInput/LinkInput.js +14 -20
- package/dist/cjs/f/fields/LinkInput/styles.scss +52 -51
- package/dist/cjs/f/fields/QueryChoices/QueryChoices.js +2 -26
- package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +4 -30
- package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +7 -16
- package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +9 -17
- package/dist/cjs/f/fields/QueryCombobox/styles.scss +38 -37
- package/dist/cjs/f/fields/QuerySelect/QuerySelect.js +2 -10
- package/dist/cjs/f/fields/RatingsInput/RatingsInput.js +14 -38
- package/dist/cjs/f/fields/RatingsInput/styles.scss +5 -1
- package/dist/cjs/f/fields/SelectInput/SelectInput.js +14 -36
- package/dist/cjs/f/fields/SelectInput/styles.scss +5 -2
- package/dist/cjs/f/fields/TextInput/TextInput.js +19 -37
- package/dist/cjs/f/fields/TextInput/styles.scss +37 -30
- package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +15 -37
- package/dist/cjs/f/fields/TextareaInput/styles.scss +30 -27
- package/dist/es/f/common/Description/Description.js +4 -1
- package/dist/es/f/common/Label/Label.js +15 -24
- package/dist/es/f/common/Label/styles.scss +0 -5
- package/dist/es/f/common/index.js +0 -1
- package/dist/es/f/fields/Checkbox/Checkbox.js +14 -19
- package/dist/es/f/fields/Checkbox/styles.scss +7 -5
- package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +31 -39
- package/dist/es/f/fields/ChoicesInput/styles.scss +44 -41
- package/dist/es/f/fields/EditorInput/EditorInput.js +12 -35
- package/dist/es/f/fields/EditorInput/styles.scss +92 -90
- package/dist/es/f/fields/LinkInput/LinkInput.js +14 -20
- package/dist/es/f/fields/LinkInput/styles.scss +52 -51
- package/dist/es/f/fields/QueryChoices/QueryChoices.js +2 -26
- package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +4 -26
- package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +8 -17
- package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +10 -18
- package/dist/es/f/fields/QueryCombobox/styles.scss +38 -37
- package/dist/es/f/fields/QuerySelect/QuerySelect.js +2 -10
- package/dist/es/f/fields/RatingsInput/RatingsInput.js +15 -35
- package/dist/es/f/fields/RatingsInput/styles.scss +5 -1
- package/dist/es/f/fields/SelectInput/SelectInput.js +14 -36
- package/dist/es/f/fields/SelectInput/styles.scss +5 -2
- package/dist/es/f/fields/TextInput/TextInput.js +19 -37
- package/dist/es/f/fields/TextInput/styles.scss +37 -30
- package/dist/es/f/fields/TextareaInput/TextareaInput.js +15 -37
- package/dist/es/f/fields/TextareaInput/styles.scss +30 -27
- package/package.json +3 -3
- package/src/stories/f/Checkbox.stories.jsx +13 -21
- package/src/stories/f/ChoicesInput.stories.jsx +12 -27
- package/src/stories/f/EditorInput.stories.jsx +7 -14
- package/src/stories/f/LinkInput.stories.jsx +15 -22
- package/src/stories/f/QueryChoices.stories.jsx +12 -19
- package/src/stories/f/QueryCombobox.stories.jsx +16 -24
- package/src/stories/f/QuerySelect.stories.jsx +12 -19
- package/src/stories/f/RatingsInput.stories.jsx +7 -14
- package/src/stories/f/SelectInput.stories.jsx +12 -19
- package/src/stories/f/TextInput.stories.jsx +16 -23
- package/src/stories/f/TextareaInput.stories.jsx +7 -14
- package/src/ui/f/common/Description/Description.jsx +6 -2
- package/src/ui/f/common/Label/Label.jsx +27 -37
- package/src/ui/f/common/Label/styles.scss +0 -5
- package/src/ui/f/common/index.js +0 -1
- package/src/ui/f/fields/Checkbox/Checkbox.jsx +27 -33
- package/src/ui/f/fields/Checkbox/styles.scss +7 -5
- package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +29 -38
- package/src/ui/f/fields/ChoicesInput/styles.scss +44 -41
- package/src/ui/f/fields/EditorInput/EditorInput.jsx +16 -41
- package/src/ui/f/fields/EditorInput/styles.scss +92 -90
- package/src/ui/f/fields/LinkInput/LinkInput.jsx +38 -45
- package/src/ui/f/fields/LinkInput/styles.scss +52 -51
- package/src/ui/f/fields/QueryChoices/QueryChoices.jsx +0 -28
- package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +5 -31
- package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +35 -46
- package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +63 -73
- package/src/ui/f/fields/QueryCombobox/styles.scss +38 -37
- package/src/ui/f/fields/QuerySelect/QuerySelect.jsx +0 -8
- package/src/ui/f/fields/RatingsInput/RatingsInput.jsx +20 -47
- package/src/ui/f/fields/RatingsInput/styles.scss +5 -1
- package/src/ui/f/fields/SelectInput/SelectInput.jsx +33 -61
- package/src/ui/f/fields/SelectInput/styles.scss +5 -2
- package/src/ui/f/fields/TextInput/TextInput.jsx +27 -50
- package/src/ui/f/fields/TextInput/styles.scss +37 -30
- package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +32 -59
- package/src/ui/f/fields/TextareaInput/styles.scss +30 -27
- package/tests/__snapshots__/Storyshots.test.js.snap +5909 -0
- package/dist/cjs/f/common/InputWrapper/InputWrapper.js +0 -73
- package/dist/cjs/f/common/InputWrapper/index.js +0 -13
- package/dist/cjs/f/common/InputWrapper/styles.scss +0 -13
- package/dist/es/f/common/InputWrapper/InputWrapper.js +0 -61
- package/dist/es/f/common/InputWrapper/index.js +0 -2
- package/dist/es/f/common/InputWrapper/styles.scss +0 -13
- package/src/ui/f/common/InputWrapper/InputWrapper.jsx +0 -83
- package/src/ui/f/common/InputWrapper/index.js +0 -2
- package/src/ui/f/common/InputWrapper/styles.scss +0 -13
|
@@ -14,36 +14,39 @@ $default-background: var(--background-inputs);
|
|
|
14
14
|
$disabled-background: var(--background-inputs-30);
|
|
15
15
|
|
|
16
16
|
.#{bem.$base}.text-area-input {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
flex-direction: column;
|
|
20
|
-
|
|
21
|
-
> .textarea {
|
|
22
|
-
background: $default-background;
|
|
23
|
-
border: $default-border;
|
|
24
|
-
border-radius: $default-input-border-radius;
|
|
25
|
-
color: var(--y);
|
|
26
|
-
outline: none;
|
|
27
|
-
padding: $default-padding;
|
|
28
|
-
width: 100%;
|
|
29
|
-
|
|
30
|
-
&::placeholder {
|
|
31
|
-
color: var(--metadata);
|
|
32
|
-
}
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
33
19
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
20
|
+
> .#{bem.$base}.form-label {
|
|
21
|
+
margin-bottom: var(--gap);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
> .textarea {
|
|
26
|
+
background: $default-background;
|
|
27
|
+
border: $default-border;
|
|
28
|
+
border-radius: $default-input-border-radius;
|
|
29
|
+
color: var(--y);
|
|
30
|
+
outline: none;
|
|
31
|
+
padding: $default-padding;
|
|
32
|
+
width: 100%;
|
|
37
33
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
34
|
+
&::placeholder {
|
|
35
|
+
color: var(--metadata);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&:disabled {
|
|
39
|
+
background-color: $disabled-background;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
&:not(:disabled) {
|
|
43
|
+
&:hover,
|
|
44
|
+
&:active {
|
|
45
|
+
border: $hover-border;
|
|
46
|
+
}
|
|
43
47
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
48
|
+
&:focus {
|
|
49
|
+
border: $focus-border;
|
|
47
50
|
}
|
|
48
51
|
}
|
|
49
52
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/* @pareto-engineering/generator-front 1.0.12 */
|
|
2
2
|
import * as React from 'react';
|
|
3
|
+
import { useInsertionEffect } from 'react';
|
|
3
4
|
import { useField } from 'formik';
|
|
4
5
|
import PropTypes from 'prop-types';
|
|
5
6
|
import styleNames from '@pareto-engineering/bem/exports';
|
|
6
|
-
import "./styles.scss";
|
|
7
7
|
|
|
8
8
|
// Local Definitions
|
|
9
9
|
|
|
@@ -22,6 +22,9 @@ const Description = ({
|
|
|
22
22
|
color
|
|
23
23
|
// ...otherProps
|
|
24
24
|
}) => {
|
|
25
|
+
useInsertionEffect(() => {
|
|
26
|
+
import("./styles.scss");
|
|
27
|
+
}, []);
|
|
25
28
|
const [, meta] = useField(name);
|
|
26
29
|
const hasError = meta.touched && meta.error;
|
|
27
30
|
if (hasError || description) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/* @pareto-engineering/generator-front 1.0.12 */
|
|
2
2
|
import * as React from 'react';
|
|
3
|
+
import { useInsertionEffect } from 'react';
|
|
3
4
|
import PropTypes from 'prop-types';
|
|
4
5
|
import styleNames from '@pareto-engineering/bem/exports';
|
|
5
|
-
import "./styles.scss";
|
|
6
6
|
|
|
7
7
|
// Local Definitions
|
|
8
8
|
|
|
@@ -20,21 +20,20 @@ const Label = ({
|
|
|
20
20
|
name,
|
|
21
21
|
color,
|
|
22
22
|
optional,
|
|
23
|
-
as: Wrapper
|
|
24
|
-
columnSpan,
|
|
25
|
-
desktopColumnSpan
|
|
23
|
+
as: Wrapper
|
|
26
24
|
// ...otherProps
|
|
27
|
-
}) =>
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}, children, optional && ' (Optional)');
|
|
25
|
+
}) => {
|
|
26
|
+
useInsertionEffect(() => {
|
|
27
|
+
import("./styles.scss");
|
|
28
|
+
}, []);
|
|
29
|
+
return /*#__PURE__*/React.createElement(Wrapper, {
|
|
30
|
+
htmlFor: Wrapper === 'label' ? name : undefined,
|
|
31
|
+
id: id,
|
|
32
|
+
className: [baseClassName, componentClassName, userClassName, `x-${color}`].filter(e => e).join(' '),
|
|
33
|
+
style: style
|
|
34
|
+
// {...otherProps}
|
|
35
|
+
}, children, optional && ' (Optional)');
|
|
36
|
+
};
|
|
38
37
|
Label.propTypes = {
|
|
39
38
|
/**
|
|
40
39
|
* The HTML id for this element
|
|
@@ -67,15 +66,7 @@ Label.propTypes = {
|
|
|
67
66
|
/**
|
|
68
67
|
* Whether the input should have an optional tag
|
|
69
68
|
*/
|
|
70
|
-
optional: PropTypes.bool
|
|
71
|
-
/**
|
|
72
|
-
* How many columns the input should span
|
|
73
|
-
*/
|
|
74
|
-
columnSpan: PropTypes.number,
|
|
75
|
-
/**
|
|
76
|
-
* How many columns the input should span on desktop
|
|
77
|
-
*/
|
|
78
|
-
desktopColumnSpan: PropTypes.number
|
|
69
|
+
optional: PropTypes.bool
|
|
79
70
|
};
|
|
80
71
|
Label.defaultProps = {
|
|
81
72
|
as: 'label',
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
2
|
/* @pareto-engineering/generator-front 1.0.12 */
|
|
3
3
|
import * as React from 'react';
|
|
4
|
+
import { useInsertionEffect } from 'react';
|
|
4
5
|
import PropTypes from 'prop-types';
|
|
5
6
|
import styleNames from '@pareto-engineering/bem/exports';
|
|
6
7
|
import { useField } from 'formik';
|
|
7
|
-
import { FormLabel, FormDescription
|
|
8
|
-
import "./styles.scss";
|
|
8
|
+
import { FormLabel, FormDescription } from "../../common";
|
|
9
9
|
|
|
10
10
|
// Local Definitions
|
|
11
11
|
|
|
@@ -24,31 +24,26 @@ const Checkbox = ({
|
|
|
24
24
|
description,
|
|
25
25
|
disabled,
|
|
26
26
|
optional,
|
|
27
|
-
labelColor
|
|
28
|
-
labelSpan,
|
|
29
|
-
desktopLabelSpan,
|
|
30
|
-
inputSpan,
|
|
31
|
-
desktopInputSpan
|
|
27
|
+
labelColor
|
|
32
28
|
// ...otherProps
|
|
33
29
|
}) => {
|
|
30
|
+
useInsertionEffect(() => {
|
|
31
|
+
import("./styles.scss");
|
|
32
|
+
}, []);
|
|
34
33
|
const [field] = useField({
|
|
35
34
|
name,
|
|
36
35
|
type: 'checkbox'
|
|
37
36
|
});
|
|
38
|
-
return /*#__PURE__*/React.createElement(
|
|
37
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
38
|
+
id: id,
|
|
39
|
+
className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
|
|
40
|
+
style: style
|
|
41
|
+
}, label && /*#__PURE__*/React.createElement(FormLabel, {
|
|
39
42
|
name: name,
|
|
40
43
|
color: labelColor,
|
|
41
|
-
optional: optional
|
|
42
|
-
columnSpan: labelSpan,
|
|
43
|
-
desktopColumnSpan: desktopLabelSpan
|
|
44
|
+
optional: optional
|
|
44
45
|
// {...otherProps}
|
|
45
|
-
}, label), /*#__PURE__*/React.createElement(
|
|
46
|
-
id: id,
|
|
47
|
-
className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
|
|
48
|
-
style: style,
|
|
49
|
-
columnSpan: inputSpan,
|
|
50
|
-
desktopColumnSpan: desktopInputSpan
|
|
51
|
-
}, /*#__PURE__*/React.createElement("input", _extends({
|
|
46
|
+
}, label), /*#__PURE__*/React.createElement("input", _extends({
|
|
52
47
|
id: name,
|
|
53
48
|
className: "input",
|
|
54
49
|
type: "checkbox",
|
|
@@ -57,7 +52,7 @@ const Checkbox = ({
|
|
|
57
52
|
className: "s-1",
|
|
58
53
|
description: description,
|
|
59
54
|
name: name
|
|
60
|
-
}))
|
|
55
|
+
}));
|
|
61
56
|
};
|
|
62
57
|
Checkbox.propTypes = {
|
|
63
58
|
/**
|
|
@@ -5,10 +5,12 @@
|
|
|
5
5
|
@use "@pareto-engineering/styles/src/globals" as *;
|
|
6
6
|
|
|
7
7
|
.#{bem.$base}.checkbox {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
align-items: flex-start;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
justify-content: center;
|
|
12
|
+
|
|
13
|
+
> .#{bem.$base}.form-label {
|
|
14
|
+
margin-bottom: var(--gap);
|
|
13
15
|
}
|
|
14
16
|
}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
2
|
/* @pareto-engineering/generator-front 1.0.12 */
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
import { memo } from 'react';
|
|
4
|
+
import { useInsertionEffect, memo } from 'react';
|
|
5
5
|
import PropTypes from 'prop-types';
|
|
6
6
|
import styleNames from '@pareto-engineering/bem/exports';
|
|
7
7
|
|
|
8
8
|
// Local Definitions
|
|
9
9
|
|
|
10
10
|
import { Choice } from "./common";
|
|
11
|
-
import { FormDescription, FormLabel
|
|
12
|
-
import "./styles.scss";
|
|
11
|
+
import { FormDescription, FormLabel } from "../../common";
|
|
13
12
|
const baseClassName = styleNames.base;
|
|
14
13
|
const componentClassName = 'choices-input';
|
|
15
14
|
|
|
@@ -31,39 +30,36 @@ const ChoicesInput = ({
|
|
|
31
30
|
disabled,
|
|
32
31
|
description,
|
|
33
32
|
spaceBetween,
|
|
34
|
-
labelSpan,
|
|
35
|
-
desktopLabelSpan,
|
|
36
|
-
inputSpan,
|
|
37
|
-
desktopInputSpan,
|
|
38
33
|
...otherProps
|
|
39
|
-
}) =>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
53
|
-
|
|
54
|
-
}, options.map(choice => /*#__PURE__*/React.createElement(Choice, _extends({
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
}, otherProps, choice)))), /*#__PURE__*/React.createElement(FormDescription, {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}))
|
|
34
|
+
}) => {
|
|
35
|
+
useInsertionEffect(() => {
|
|
36
|
+
import("./styles.scss");
|
|
37
|
+
}, []);
|
|
38
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
39
|
+
id: id,
|
|
40
|
+
className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
|
|
41
|
+
style: style
|
|
42
|
+
}, label && /*#__PURE__*/React.createElement(FormLabel, {
|
|
43
|
+
name: name,
|
|
44
|
+
color: labelColor,
|
|
45
|
+
optional: optional
|
|
46
|
+
// {...otherProps}
|
|
47
|
+
}, label), /*#__PURE__*/React.createElement("div", {
|
|
48
|
+
className: ['choices', spaceBetween && 'space-between'].filter(Boolean).join(' ')
|
|
49
|
+
}, options.map(choice => /*#__PURE__*/React.createElement(Choice, _extends({
|
|
50
|
+
className: `x-${color}`,
|
|
51
|
+
key: choice.value,
|
|
52
|
+
name: name,
|
|
53
|
+
id: `${name}-${choice.value}`,
|
|
54
|
+
multiple: multiple,
|
|
55
|
+
validate: validate,
|
|
56
|
+
disabled: disabled
|
|
57
|
+
}, otherProps, choice)))), /*#__PURE__*/React.createElement(FormDescription, {
|
|
58
|
+
className: "s-1",
|
|
59
|
+
description: description,
|
|
60
|
+
name: name
|
|
61
|
+
}));
|
|
62
|
+
};
|
|
67
63
|
ChoicesInput.propTypes = {
|
|
68
64
|
/**
|
|
69
65
|
* The HTML id for this element
|
|
@@ -100,10 +96,6 @@ ChoicesInput.propTypes = {
|
|
|
100
96
|
* how many columns should be displayed on the mobile grid
|
|
101
97
|
*/
|
|
102
98
|
gridColumnsMobile: PropTypes.number,
|
|
103
|
-
/**
|
|
104
|
-
* how many columns should be displayed on the desktop grid
|
|
105
|
-
*/
|
|
106
|
-
gridColumnsDesktop: PropTypes.number,
|
|
107
99
|
/**
|
|
108
100
|
* The choice color
|
|
109
101
|
*/
|
|
@@ -18,59 +18,62 @@ $default-background: var(--background-inputs);
|
|
|
18
18
|
$disabled-background: var(--background-inputs-30);
|
|
19
19
|
|
|
20
20
|
.#{bem.$base}.choices-input {
|
|
21
|
-
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-direction: column;
|
|
23
|
+
|
|
24
|
+
> .#{bem.$base}.form-label {
|
|
25
|
+
margin-bottom: var(--gap);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
> .choices {
|
|
22
29
|
display: flex;
|
|
23
|
-
flex-
|
|
30
|
+
flex-wrap: wrap;
|
|
31
|
+
gap: $default-flex-separator;
|
|
24
32
|
|
|
25
|
-
|
|
33
|
+
&.space-between {
|
|
34
|
+
justify-content: space-between;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
>.choice {
|
|
26
38
|
display: flex;
|
|
27
|
-
flex-wrap: wrap;
|
|
28
|
-
gap: $default-flex-separator;
|
|
29
39
|
|
|
30
|
-
|
|
31
|
-
|
|
40
|
+
input {
|
|
41
|
+
opacity: 0;
|
|
42
|
+
position: fixed;
|
|
43
|
+
visibility: none;
|
|
44
|
+
z-index: -1;
|
|
32
45
|
}
|
|
33
46
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
input {
|
|
38
|
-
opacity: 0;
|
|
39
|
-
position: fixed;
|
|
40
|
-
visibility: none;
|
|
41
|
-
z-index: -1;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
input:disabled + label {
|
|
45
|
-
background-color: $disabled-background;
|
|
46
|
-
}
|
|
47
|
+
input:disabled + label {
|
|
48
|
+
background-color: $disabled-background;
|
|
49
|
+
}
|
|
47
50
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
51
|
+
> label {
|
|
52
|
+
background-color: $default-background;
|
|
53
|
+
border: $default-border;
|
|
54
|
+
border-radius: $default-input-border-radius;
|
|
55
|
+
color: var(--paragraph);
|
|
56
|
+
cursor: pointer;
|
|
57
|
+
display: block;
|
|
58
|
+
height: $default-label-height;
|
|
59
|
+
max-width: 100%;
|
|
60
|
+
padding: $default-label-padding;
|
|
61
|
+
position: relative;
|
|
62
|
+
transition: $default-transition;
|
|
63
|
+
white-space: nowrap;
|
|
61
64
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
}
|
|
65
|
+
&:not(.disabled) {
|
|
66
|
+
&:hover {
|
|
67
|
+
border: $hover-border;
|
|
66
68
|
}
|
|
67
69
|
}
|
|
70
|
+
}
|
|
68
71
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
72
|
+
input:checked + label {
|
|
73
|
+
background: var(--x);
|
|
74
|
+
color: var(--on-x);
|
|
73
75
|
}
|
|
74
76
|
}
|
|
75
77
|
}
|
|
76
78
|
}
|
|
79
|
+
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* @pareto-engineering/generator-front 1.0.12 */
|
|
2
2
|
/* eslint-disable import/no-extraneous-dependencies -- required here */
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
import { memo } from 'react';
|
|
4
|
+
import { useInsertionEffect, memo } from 'react';
|
|
5
5
|
import { useFormikContext } from 'formik';
|
|
6
6
|
import { LexicalComposer } from '@lexical/react/LexicalComposer';
|
|
7
7
|
import { RichTextPlugin } from '@lexical/react/LexicalRichTextPlugin';
|
|
@@ -15,11 +15,10 @@ import { AutoLinkNode, LinkNode } from '@lexical/link';
|
|
|
15
15
|
import { ListItemNode, ListNode } from '@lexical/list';
|
|
16
16
|
import PropTypes from 'prop-types';
|
|
17
17
|
import styleNames from '@pareto-engineering/bem/exports';
|
|
18
|
-
import "./styles.scss";
|
|
19
18
|
|
|
20
19
|
// Local Definitions
|
|
21
20
|
|
|
22
|
-
import { FormLabel, FormDescription
|
|
21
|
+
import { FormLabel, FormDescription } from "../../common";
|
|
23
22
|
import { Toolbar, TreeViewPlugin } from "./common";
|
|
24
23
|
const baseClassName = styleNames.base;
|
|
25
24
|
const componentClassName = 'editor-input';
|
|
@@ -41,13 +40,12 @@ const EditorInput = ({
|
|
|
41
40
|
labelColor,
|
|
42
41
|
description,
|
|
43
42
|
disabled,
|
|
44
|
-
labelSpan,
|
|
45
|
-
desktopLabelSpan,
|
|
46
|
-
inputSpan,
|
|
47
|
-
desktopInputSpan,
|
|
48
43
|
showDebugger
|
|
49
44
|
// ...otherProps
|
|
50
45
|
}) => {
|
|
46
|
+
useInsertionEffect(() => {
|
|
47
|
+
import("./styles.scss");
|
|
48
|
+
}, []);
|
|
51
49
|
const formik = useFormikContext();
|
|
52
50
|
const setInitialValue = () => {
|
|
53
51
|
const value = formik.values[name];
|
|
@@ -105,24 +103,19 @@ const EditorInput = ({
|
|
|
105
103
|
};
|
|
106
104
|
return /*#__PURE__*/React.createElement(LexicalComposer, {
|
|
107
105
|
initialConfig: initialConfig
|
|
108
|
-
}, /*#__PURE__*/React.createElement(
|
|
109
|
-
name: name,
|
|
110
|
-
color: labelColor,
|
|
111
|
-
optional: optional,
|
|
112
|
-
columnSpan: labelSpan,
|
|
113
|
-
desktopColumnSpan: desktopLabelSpan
|
|
114
|
-
// {...otherProps}
|
|
115
|
-
}, label), /*#__PURE__*/React.createElement(InputWrapper, {
|
|
106
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
116
107
|
id: id,
|
|
117
108
|
className: [baseClassName, componentClassName, userClassName, `y-${color}`, disabled && 'disabled'].filter(e => e).join(' '),
|
|
118
109
|
style: {
|
|
119
110
|
...style,
|
|
120
111
|
'--resize': resize,
|
|
121
112
|
'--rows': `${rows}em`
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
113
|
+
}
|
|
114
|
+
}, /*#__PURE__*/React.createElement(FormLabel, {
|
|
115
|
+
name: name,
|
|
116
|
+
color: labelColor,
|
|
117
|
+
optional: optional
|
|
118
|
+
}, label), !disabled && /*#__PURE__*/React.createElement(Toolbar, null), /*#__PURE__*/React.createElement(RichTextPlugin, {
|
|
126
119
|
contentEditable: /*#__PURE__*/React.createElement(ContentEditable, {
|
|
127
120
|
id: name,
|
|
128
121
|
className: "content-editable"
|
|
@@ -185,22 +178,6 @@ EditorInput.propTypes = {
|
|
|
185
178
|
* Whether the input is optional or not
|
|
186
179
|
*/
|
|
187
180
|
optional: PropTypes.bool,
|
|
188
|
-
/**
|
|
189
|
-
* The number of columns the label should span
|
|
190
|
-
*/
|
|
191
|
-
labelSpan: PropTypes.number,
|
|
192
|
-
/**
|
|
193
|
-
* The number of columns the input should span
|
|
194
|
-
*/
|
|
195
|
-
inputSpan: PropTypes.number,
|
|
196
|
-
/**
|
|
197
|
-
* The number of columns the label should span on desktop
|
|
198
|
-
*/
|
|
199
|
-
desktopLabelSpan: PropTypes.number,
|
|
200
|
-
/**
|
|
201
|
-
* The number of columns the input should span on desktop
|
|
202
|
-
*/
|
|
203
|
-
desktopInputSpan: PropTypes.number,
|
|
204
181
|
/**
|
|
205
182
|
* The resize property of the text area
|
|
206
183
|
*/
|