@pareto-engineering/design-system 4.0.0-alpha.5 → 4.0.0-alpha.9

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.
Files changed (136) hide show
  1. package/dist/cjs/a/AnimatedBlobs/AnimatedBlobs.js +90 -0
  2. package/dist/cjs/a/AnimatedBlobs/index.js +13 -0
  3. package/dist/cjs/a/AnimatedBlobs/styles.scss +87 -0
  4. package/dist/cjs/a/AnimatedGradient/AnimatedGradient.js +56 -0
  5. package/dist/cjs/a/AnimatedGradient/index.js +13 -0
  6. package/dist/cjs/a/AnimatedGradient/styles.scss +14 -0
  7. package/dist/cjs/a/AnimatedGradient/webGIRenderer.js +528 -0
  8. package/dist/cjs/a/ContentTree/ContentTree.js +1 -1
  9. package/dist/cjs/a/Label/Label.js +12 -4
  10. package/dist/cjs/a/Label/styles.scss +1 -1
  11. package/dist/cjs/a/MetaCard/MetaCard.js +60 -0
  12. package/dist/cjs/a/MetaCard/index.js +13 -0
  13. package/dist/cjs/a/MetaCard/styles.scss +28 -0
  14. package/dist/cjs/a/Popover/Popover.js +1 -1
  15. package/dist/cjs/a/SnapScroller/styles.scss +18 -10
  16. package/dist/cjs/a/TextSteps/TextSteps.js +70 -0
  17. package/dist/cjs/a/TextSteps/index.js +13 -0
  18. package/dist/cjs/a/TextSteps/styles.scss +29 -0
  19. package/dist/cjs/a/Tip/Tip.js +72 -0
  20. package/dist/cjs/a/Tip/index.js +13 -0
  21. package/dist/cjs/a/Tip/styles.scss +22 -0
  22. package/dist/cjs/a/index.js +36 -1
  23. package/dist/cjs/b/Button/styles.scss +2 -0
  24. package/dist/cjs/b/Card/Card.js +74 -0
  25. package/dist/cjs/b/Card/common/Group/Group.js +73 -0
  26. package/dist/cjs/b/Card/common/Group/index.js +13 -0
  27. package/dist/cjs/b/Card/common/Group/styles.scss +42 -0
  28. package/dist/cjs/b/Card/common/Section/Section.js +59 -0
  29. package/dist/cjs/b/Card/common/Section/index.js +13 -0
  30. package/dist/cjs/b/Card/common/index.js +19 -0
  31. package/dist/cjs/b/Card/index.js +13 -0
  32. package/dist/cjs/b/Card/styles.scss +46 -0
  33. package/dist/cjs/b/Page/Page.js +9 -2
  34. package/dist/cjs/b/Page/common/Section/Section.js +6 -1
  35. package/dist/cjs/b/Page/styles.scss +22 -4
  36. package/dist/cjs/b/index.js +8 -1
  37. package/dist/cjs/f/fields/ChoicesInput/ChoicesInput.js +15 -7
  38. package/dist/cjs/f/fields/ChoicesInput/styles.scss +21 -33
  39. package/dist/cjs/f/fields/SelectInput/SelectInput.js +2 -2
  40. package/dist/cjs/f/fields/SelectInput/styles.scss +31 -21
  41. package/dist/cjs/f/fields/TextInput/TextInput.js +4 -2
  42. package/dist/cjs/f/fields/TextInput/styles.scss +26 -17
  43. package/dist/es/a/AnimatedBlobs/AnimatedBlobs.js +82 -0
  44. package/dist/es/a/AnimatedBlobs/index.js +1 -0
  45. package/dist/es/a/AnimatedBlobs/styles.scss +87 -0
  46. package/dist/es/a/AnimatedGradient/AnimatedGradient.js +48 -0
  47. package/dist/es/a/AnimatedGradient/index.js +1 -0
  48. package/dist/es/a/AnimatedGradient/styles.scss +14 -0
  49. package/dist/es/a/AnimatedGradient/webGIRenderer.js +492 -0
  50. package/dist/es/a/ContentTree/ContentTree.js +1 -1
  51. package/dist/es/a/Label/Label.js +12 -4
  52. package/dist/es/a/Label/styles.scss +1 -1
  53. package/dist/es/a/MetaCard/MetaCard.js +52 -0
  54. package/dist/es/a/MetaCard/index.js +1 -0
  55. package/dist/es/a/MetaCard/styles.scss +28 -0
  56. package/dist/es/a/Popover/Popover.js +1 -1
  57. package/dist/es/a/SnapScroller/styles.scss +18 -10
  58. package/dist/es/a/TextSteps/TextSteps.js +61 -0
  59. package/dist/es/a/TextSteps/index.js +1 -0
  60. package/dist/es/a/TextSteps/styles.scss +29 -0
  61. package/dist/es/a/Tip/Tip.js +64 -0
  62. package/dist/es/a/Tip/index.js +2 -0
  63. package/dist/es/a/Tip/styles.scss +22 -0
  64. package/dist/es/a/index.js +6 -1
  65. package/dist/es/b/Button/styles.scss +2 -0
  66. package/dist/es/b/Card/Card.js +66 -0
  67. package/dist/es/b/Card/common/Group/Group.js +65 -0
  68. package/dist/es/b/Card/common/Group/index.js +1 -0
  69. package/dist/es/b/Card/common/Group/styles.scss +42 -0
  70. package/dist/es/b/Card/common/Section/Section.js +48 -0
  71. package/dist/es/b/Card/common/Section/index.js +1 -0
  72. package/dist/es/b/Card/common/index.js +2 -0
  73. package/dist/es/b/Card/index.js +1 -0
  74. package/dist/es/b/Card/styles.scss +46 -0
  75. package/dist/es/b/Page/Page.js +9 -2
  76. package/dist/es/b/Page/common/Section/Section.js +6 -1
  77. package/dist/es/b/Page/styles.scss +22 -4
  78. package/dist/es/b/index.js +2 -1
  79. package/dist/es/f/fields/ChoicesInput/ChoicesInput.js +16 -8
  80. package/dist/es/f/fields/ChoicesInput/styles.scss +21 -33
  81. package/dist/es/f/fields/SelectInput/SelectInput.js +2 -2
  82. package/dist/es/f/fields/SelectInput/styles.scss +31 -21
  83. package/dist/es/f/fields/TextInput/TextInput.js +4 -2
  84. package/dist/es/f/fields/TextInput/styles.scss +26 -17
  85. package/package.json +15 -15
  86. package/src/stories/a/MetaCard.stories.jsx +35 -0
  87. package/src/stories/a/TextSteps.stories.jsx +19 -0
  88. package/src/stories/a/Tip.stories.jsx +28 -0
  89. package/src/stories/b/Card/Card.stories.jsx +59 -0
  90. package/src/stories/b/Card/Group.stories.jsx +59 -0
  91. package/src/stories/b/Page.stories.jsx +19 -3
  92. package/src/stories/f/SelectInput.stories.jsx +7 -0
  93. package/src/stories/f/TextInput.stories.jsx +4 -4
  94. package/src/ui/a/AnimatedBlobs/AnimatedBlobs.jsx +102 -0
  95. package/src/ui/a/AnimatedBlobs/index.js +1 -0
  96. package/src/ui/a/AnimatedBlobs/styles.scss +87 -0
  97. package/src/ui/a/AnimatedGradient/AnimatedGradient.jsx +69 -0
  98. package/src/ui/a/AnimatedGradient/index.js +1 -0
  99. package/src/ui/a/AnimatedGradient/styles.scss +14 -0
  100. package/src/ui/a/AnimatedGradient/webGIRenderer.js +541 -0
  101. package/src/ui/a/ContentTree/ContentTree.jsx +1 -1
  102. package/src/ui/a/Label/Label.jsx +11 -2
  103. package/src/ui/a/Label/styles.scss +1 -1
  104. package/src/ui/a/MetaCard/MetaCard.jsx +74 -0
  105. package/src/ui/a/MetaCard/index.js +1 -0
  106. package/src/ui/a/MetaCard/styles.scss +28 -0
  107. package/src/ui/a/Popover/Popover.jsx +1 -1
  108. package/src/ui/a/SnapScroller/styles.scss +18 -10
  109. package/src/ui/a/TextSteps/TextSteps.jsx +87 -0
  110. package/src/ui/a/TextSteps/index.js +1 -0
  111. package/src/ui/a/TextSteps/styles.scss +29 -0
  112. package/src/ui/a/Tip/Tip.jsx +88 -0
  113. package/src/ui/a/Tip/index.js +2 -0
  114. package/src/ui/a/Tip/styles.scss +22 -0
  115. package/src/ui/a/index.js +5 -0
  116. package/src/ui/b/Button/styles.scss +2 -0
  117. package/src/ui/b/Card/Card.jsx +94 -0
  118. package/src/ui/b/Card/common/Group/Group.jsx +91 -0
  119. package/src/ui/b/Card/common/Group/index.js +1 -0
  120. package/src/ui/b/Card/common/Group/styles.scss +42 -0
  121. package/src/ui/b/Card/common/Section/Section.jsx +70 -0
  122. package/src/ui/b/Card/common/Section/index.js +1 -0
  123. package/src/ui/b/Card/common/index.js +2 -0
  124. package/src/ui/b/Card/index.js +1 -0
  125. package/src/ui/b/Card/styles.scss +46 -0
  126. package/src/ui/b/Page/Page.jsx +7 -1
  127. package/src/ui/b/Page/common/Section/Section.jsx +8 -0
  128. package/src/ui/b/Page/styles.scss +22 -4
  129. package/src/ui/b/index.js +1 -0
  130. package/src/ui/f/fields/ChoicesInput/ChoicesInput.jsx +10 -5
  131. package/src/ui/f/fields/ChoicesInput/styles.scss +21 -33
  132. package/src/ui/f/fields/SelectInput/SelectInput.jsx +2 -2
  133. package/src/ui/f/fields/SelectInput/styles.scss +31 -21
  134. package/src/ui/f/fields/TextInput/TextInput.jsx +11 -9
  135. package/src/ui/f/fields/TextInput/styles.scss +26 -17
  136. package/tests/__snapshots__/Storyshots.test.js.snap +1049 -485
@@ -0,0 +1,42 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+ @use "@pareto-engineering/styles/src/mixins";
5
+ @use "@pareto-engineering/styles/src/globals" as *;
6
+
7
+ $default-spacing: var(--gap);
8
+
9
+ .#{bem.$base}.group {
10
+ gap: $default-spacing;
11
+
12
+ &.snap-scroller {
13
+ margin-left: calc($default-spacing * -1);
14
+ margin-right: calc($default-spacing * -1);
15
+
16
+ > .#{bem.$base}.card {
17
+ height: 100%;
18
+ }
19
+ }
20
+
21
+ &.vertical-flexbox {
22
+ display: flex;
23
+ flex-direction: column;
24
+ }
25
+
26
+ @include mixins.media($from: $sm-md) {
27
+ &.desktop-grid {
28
+ display: grid;
29
+ grid-template-columns: repeat(var(--columns), 1fr);
30
+ }
31
+
32
+ &.snap-scroller {
33
+ margin-left: unset;
34
+ margin-right: unset;
35
+ }
36
+
37
+ &.desktop-vertical-flexbox {
38
+ display: flex;
39
+ flex-direction: column;
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var React = _interopRequireWildcard(require("react"));
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+ var _exports = _interopRequireDefault(require("@pareto-engineering/bem/exports"));
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ 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); }
14
+ // Local Definitions
15
+
16
+ const baseClassName = _exports.default.base;
17
+ const componentClassName = 'section';
18
+ const Section = _ref => {
19
+ let {
20
+ id,
21
+ className: userClassName,
22
+ style,
23
+ children,
24
+ isImage,
25
+ ...otherProps
26
+ } = _ref;
27
+ return /*#__PURE__*/React.createElement("div", _extends({
28
+ id: id,
29
+ className: [baseClassName, componentClassName, userClassName, isImage && _exports.default.modifierImage].filter(e => e).join(' '),
30
+ style: style
31
+ }, otherProps), children);
32
+ };
33
+ Section.propTypes = {
34
+ /**
35
+ * The HTML id for this element
36
+ */
37
+ id: _propTypes.default.string,
38
+ /**
39
+ * The HTML class names for this element
40
+ */
41
+ className: _propTypes.default.string,
42
+ /**
43
+ * The React-written, css properties for this element.
44
+ */
45
+ style: _propTypes.default.objectOf(_propTypes.default.string),
46
+ /**
47
+ * The children JSX
48
+ */
49
+ children: _propTypes.default.node,
50
+ /**
51
+ * Whether to use the image modifier class
52
+ */
53
+ isImage: _propTypes.default.bool
54
+ };
55
+ Section.defaultProps = {
56
+ // someProp:false
57
+ };
58
+ var _default = Section;
59
+ exports.default = _default;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Section", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Section.default;
10
+ }
11
+ });
12
+ var _Section = _interopRequireDefault(require("./Section"));
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Group", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Group.Group;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "Section", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _Section.Section;
16
+ }
17
+ });
18
+ var _Section = require("./Section");
19
+ var _Group = require("./Group");
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Card", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Card.default;
10
+ }
11
+ });
12
+ var _Card = _interopRequireDefault(require("./Card"));
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -0,0 +1,46 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+
5
+ $default-border-radius: var(--theme-default-border-radius);
6
+ $default-border-color: var(--hard-background-cards);
7
+ $default-background: var(--background-cards-80);
8
+ $default-padding: 1.5em;
9
+
10
+ .#{bem.$base}.card {
11
+ background: $default-background;
12
+ border: 1px solid $default-border-color;
13
+ border-radius: $default-border-radius;
14
+ display: flex;
15
+ flex-direction: column;
16
+ overflow: hidden;
17
+ position: relative;
18
+
19
+ > .progress-bar {
20
+ left: 0;
21
+ position: absolute;
22
+ top: 0;
23
+ width: 100%;
24
+ }
25
+
26
+ > .#{bem.$base}.section:nth-last-child(2) {
27
+ flex-grow: 1;
28
+ }
29
+
30
+ > .#{bem.$base}.section {
31
+ padding: $default-padding;
32
+
33
+ &.#{bem.$modifier-image} {
34
+ padding: 0;
35
+
36
+ img {
37
+ border-radius: $default-border-radius;
38
+ width: 100%;
39
+ }
40
+ }
41
+ }
42
+
43
+ > .#{bem.$base}.section + .#{bem.$base}.section {
44
+ padding-top: 0;
45
+ }
46
+ }
@@ -32,6 +32,7 @@ const Page = _ref => {
32
32
  itemType,
33
33
  as: Wrapper,
34
34
  helmetProps,
35
+ Background,
35
36
  ...otherProps
36
37
  } = _ref;
37
38
  (0, React.useInsertionEffect)(() => {
@@ -58,7 +59,9 @@ const Page = _ref => {
58
59
  }, otherProps), itemType && /*#__PURE__*/React.createElement("meta", {
59
60
  itemProp: "mainEntityOfPage",
60
61
  content: helmetProps?.canonical
61
- }), helmetProps && /*#__PURE__*/React.createElement(_common.PageHelmet, helmetProps), children));
62
+ }), helmetProps && /*#__PURE__*/React.createElement(_common.PageHelmet, helmetProps), children, Background && /*#__PURE__*/React.createElement(Background, {
63
+ className: "background"
64
+ })));
62
65
  };
63
66
  Page.propTypes = {
64
67
  /**
@@ -88,7 +91,11 @@ Page.propTypes = {
88
91
  /**
89
92
  * The props to pass to `Page.Helmet`. Refer to the corresponding section of the docs.
90
93
  */
91
- helmetProps: _propTypes.default.objectOf(_propTypes.default.string)
94
+ helmetProps: _propTypes.default.objectOf(_propTypes.default.string),
95
+ /**
96
+ * The component to use as background
97
+ */
98
+ Background: _propTypes.default.node
92
99
  };
93
100
  Page.defaultProps = {
94
101
  as: 'main'
@@ -20,6 +20,7 @@ const Section = _ref => {
20
20
  className: userClassName,
21
21
  style,
22
22
  children,
23
+ spaced,
23
24
  ...otherProps
24
25
  } = _ref;
25
26
  const {
@@ -28,7 +29,7 @@ const Section = _ref => {
28
29
  const sectionId = userId && `${pageId}_${userId}`;
29
30
  return /*#__PURE__*/React.createElement("section", _extends({
30
31
  id: sectionId,
31
- className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
32
+ className: [baseClassName, componentClassName, userClassName, spaced && _exports.default.modifierSpaced, 'grid'].filter(e => e).join(' '),
32
33
  style: style
33
34
  }, otherProps), children);
34
35
  };
@@ -45,6 +46,10 @@ Section.propTypes = {
45
46
  * The React-written, css properties for this element.
46
47
  */
47
48
  style: _propTypes.default.objectOf(_propTypes.default.string),
49
+ /**
50
+ * Whether the section contains the theme spacing
51
+ */
52
+ spaced: _propTypes.default.bool,
48
53
  /**
49
54
  * The children JSX
50
55
  */
@@ -2,16 +2,34 @@
2
2
  /* stylelint-disable selector-max-universal -- exception */
3
3
 
4
4
  @use "@pareto-engineering/bem";
5
-
5
+ @use "@pareto-engineering/styles/src/mixins";
6
+ @use "@pareto-engineering/styles/src/globals" as *;
6
7
 
7
8
  .#{bem.$base}.page {
8
- .#{bem.$base}.section {
9
+ position: relative;
10
+
11
+ > .background {
12
+ position: fixed;
13
+ z-index: -1;
14
+ }
15
+
16
+ > .#{bem.$base}.section {
17
+ padding-left: var(--gap);
18
+ padding-right: var(--gap);
9
19
  position: relative;
10
20
 
11
21
  > *:not(:last-child) {
12
22
  z-index: 1;
13
23
  }
14
- }
15
- }
16
24
 
25
+ &.#{bem.$modifier-spaced} {
26
+ padding-bottom: var(--theme-default-section-spacing);
27
+ padding-top: var(--theme-default-section-spacing);
17
28
 
29
+ @include mixins.media($from: $sm-md) {
30
+ padding-bottom: var(--theme-desktop-section-spacing);
31
+ padding-top: var(--theme-desktop-section-spacing);
32
+ }
33
+ }
34
+ }
35
+ }
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "Button", {
9
9
  return _Button.Button;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "Card", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _Card.Card;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "Logo", {
13
19
  enumerable: true,
14
20
  get: function () {
@@ -44,4 +50,5 @@ var _Logo = require("./Logo");
44
50
  var _Page = require("./Page");
45
51
  var _SocialMediaButton = require("./SocialMediaButton");
46
52
  var _ThemeSelector = require("./ThemeSelector");
47
- var _Title = require("./Title");
53
+ var _Title = require("./Title");
54
+ var _Card = require("./Card");
@@ -31,10 +31,10 @@ const ChoicesInput = _ref => {
31
31
  gridColumnsMobile,
32
32
  gridColumnsDesktop,
33
33
  color,
34
- colorChecked,
35
34
  label,
36
35
  optional,
37
- disabled
36
+ disabled,
37
+ description
38
38
  // ...otherProps
39
39
  } = _ref;
40
40
  (0, React.useInsertionEffect)(() => {
@@ -42,7 +42,7 @@ const ChoicesInput = _ref => {
42
42
  }, []);
43
43
  return /*#__PURE__*/React.createElement("div", {
44
44
  id: id,
45
- className: [baseClassName, componentClassName, userClassName, multiple && 'multiple', color && `x-${color}`, colorChecked && `y-${colorChecked}`].filter(e => e).join(' '),
45
+ className: [baseClassName, componentClassName, userClassName, multiple && 'multiple', color && `x-${color}`].filter(e => e).join(' '),
46
46
  style: {
47
47
  '--grid-columns-desktop': gridColumnsDesktop,
48
48
  '--grid-columns-mobile': gridColumnsMobile,
@@ -55,13 +55,18 @@ const ChoicesInput = _ref => {
55
55
  }, label), /*#__PURE__*/React.createElement("div", {
56
56
  className: "choices"
57
57
  }, options.map(choice => /*#__PURE__*/React.createElement(_common.Choice, _extends({
58
+ labelClassName: "with-faded-border",
58
59
  key: choice.value,
59
60
  name: name,
60
61
  id: `${name}-${choice.value}`,
61
62
  multiple: multiple,
62
63
  validate: validate,
63
64
  disabled: disabled
64
- }, choice)))));
65
+ }, choice)))), /*#__PURE__*/React.createElement(_common2.FormDescription, {
66
+ className: "v50 mt-v s-1",
67
+ description: description,
68
+ name: name
69
+ }));
65
70
  };
66
71
  ChoicesInput.propTypes = {
67
72
  /**
@@ -122,13 +127,16 @@ ChoicesInput.propTypes = {
122
127
  /**
123
128
  * Whether the input is optional or not
124
129
  */
125
- optional: _propTypes.default.bool
130
+ optional: _propTypes.default.bool,
131
+ /**
132
+ * The select input description
133
+ */
134
+ description: _propTypes.default.string
126
135
  };
127
136
  ChoicesInput.defaultProps = {
128
137
  gridColumnsMobile: 2,
129
138
  gridColumnsDesktop: 3,
130
- color: 'background2',
131
- colorChecked: 'main2',
139
+ color: 'main',
132
140
  disabled: false
133
141
  };
134
142
  var _default = /*#__PURE__*/(0, React.memo)(ChoicesInput);
@@ -5,21 +5,18 @@
5
5
  @use "@pareto-engineering/styles/src/mixins";
6
6
  @use "@pareto-engineering/styles/src/globals" as *;
7
7
 
8
- $default-grid-gap:var(--u, 1em);
9
- $default-padding:var(--u, 1em);
10
- $default-transition:all .3s;
8
+ $default-flex-separator:calc(1em / 2) calc(.75em / 2);
9
+ $default-transition:var(--theme-default-transition);
10
+ $default-label-padding: .3em 1em calc(2em - .3em);
11
+ $default-label-height: .5em;
11
12
 
12
13
  .#{bem.$base}.choices-input {
13
- .choices {
14
- display: grid;
15
- gap: $default-grid-gap;
16
- grid-template-columns: repeat(var(--grid-columns-mobile), 1fr);
14
+ >.choices {
15
+ display: flex;
16
+ flex-wrap: wrap;
17
+ gap: $default-flex-separator;
17
18
 
18
- @include mixins.media($from:$sm-md) {
19
- grid-template-columns: repeat(var(--grid-columns-desktop), 1fr);
20
- }
21
-
22
- .choice {
19
+ >.choice {
23
20
  display: flex;
24
21
 
25
22
  input {
@@ -33,35 +30,26 @@ $default-transition:all .3s;
33
30
  background-color: var(--hard-x);
34
31
  }
35
32
 
36
- input:not(:disabled) + label {
37
- &:hover {
38
- border-color: var(--soft-y);
39
- }
40
- }
41
-
42
33
  label {
43
- background: var(--soft-x);
44
- border: var(--theme-border-style) var(--hard-x);
45
- border-radius: var(--theme-border-radius);
46
- color: var(--on-x);
34
+ background-color: var(--background-inputs);
35
+ border-radius: var(--theme-default-border-radius);
47
36
  cursor: pointer;
48
37
  display: block;
49
- height: 100%;
50
- padding: $default-padding;
38
+ height: $default-label-height;
39
+ max-width: 100%;
40
+ padding: $default-label-padding;
41
+ position: relative;
51
42
  transition: $default-transition;
52
- width: 100%;
53
- }
54
-
55
- input:checked + label {
56
- background: var(--y);
57
- color: var(--on-y);
58
43
 
59
44
  &:hover {
60
- border-color: var(--y);
45
+ box-shadow: var(--theme-default-input-box-shadow);
61
46
  }
62
47
  }
48
+
49
+ input:checked + label {
50
+ background: var(--x);
51
+ color: var(--on-x);
52
+ }
63
53
  }
64
54
  }
65
55
  }
66
-
67
-
@@ -55,7 +55,7 @@ const SelectInput = _ref => {
55
55
  name: name,
56
56
  optional: optional
57
57
  }, label), /*#__PURE__*/React.createElement("div", {
58
- className: "select-wrapper"
58
+ className: "select-wrapper with-faded-border"
59
59
  }, /*#__PURE__*/React.createElement("select", _extends({
60
60
  className: "input"
61
61
  }, field, {
@@ -142,7 +142,7 @@ SelectInput.propTypes = {
142
142
  };
143
143
  SelectInput.defaultProps = {
144
144
  disabled: false,
145
- color: 'background2'
145
+ color: 'interactive'
146
146
  };
147
147
  var _default = /*#__PURE__*/(0, React.memo)(SelectInput);
148
148
  exports.default = _default;
@@ -5,20 +5,32 @@
5
5
  @use "../../../form.scss";
6
6
 
7
7
 
8
+ $default-spacing-size: 1em;
8
9
  $default-padding: .75em;
9
- $default-margin: 1em;
10
+ $default-bg-gradient: var(--background-far);
11
+ $default-input-border-radius: var(--theme-default-input-border-radius);
10
12
 
11
13
  .#{bem.$base}.select-input {
12
14
  display: flex;
13
15
  flex-direction: column;
14
16
 
15
17
  .#{bem.$base}.label {
16
- margin-bottom: $default-margin;
18
+ margin-bottom: $default-spacing-size;
17
19
  }
18
20
 
19
- .select-wrapper {
21
+ >.select-wrapper {
22
+ background-color: var(--background-inputs);
23
+ border-radius: $default-input-border-radius;
24
+ padding: $default-padding;
20
25
  position: relative;
21
26
 
27
+ &::after {
28
+ border-radius: $default-input-border-radius;
29
+ }
30
+
31
+ &:not(:disabled):hover {
32
+ box-shadow: var(--default-input-box-shadow);
33
+ }
22
34
  >.#{bem.$base}.loading-circle {
23
35
  position: absolute;
24
36
  right: 0;
@@ -26,24 +38,22 @@ $default-margin: 1em;
26
38
  transform: translateY(-50%);
27
39
  }
28
40
 
29
- >.input {
30
- background: var(--soft-y);
31
- border: var(--theme-border-style) var(--hard-y);
32
- color: var(--on-y);
33
- padding: $default-padding;
34
- width: 100%;
35
-
36
- &:not(:disabled):hover {
37
- border: var(--theme-border-style) var(--soft-background4);
38
- }
39
-
40
- &:disabled {
41
- appearance: none;
42
- background-color: var(--hard-y);
43
- }
44
-
45
- &:focus {
46
- background: var(--y);
41
+ select {
42
+ appearance: none;
43
+ background-color: inherit;
44
+ background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyMCAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE5IDEuNUwxMCAxMC41TDEgMS41IiBzdHJva2U9IiM0QzRENTMiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
45
+ background-position: calc(100% - $default-spacing-size);
46
+ background-repeat: no-repeat;
47
+ background-size: $default-spacing-size;
48
+ padding-right: $default-spacing-size;
49
+
50
+ &.input {
51
+ width: 100%;
52
+
53
+ &:disabled {
54
+ appearance: none;
55
+ opacity: 35%;
56
+ }
47
57
  }
48
58
  }
49
59
  }
@@ -57,14 +57,16 @@ const TextInput = _ref => {
57
57
  name: name,
58
58
  color: labelColor,
59
59
  optional: optional
60
- }, label), /*#__PURE__*/React.createElement("input", _extends({
60
+ }, label), /*#__PURE__*/React.createElement("div", {
61
+ className: "input-wrapper with-faded-border"
62
+ }, /*#__PURE__*/React.createElement("input", _extends({
61
63
  id: name,
62
64
  className: "input",
63
65
  type: type,
64
66
  disabled: disabled,
65
67
  placeholder: placeholder,
66
68
  autoComplete: autoComplete
67
- }, field)), /*#__PURE__*/React.createElement(_common.FormDescription, {
69
+ }, field))), /*#__PURE__*/React.createElement(_common.FormDescription, {
68
70
  className: "v50 mt-v s-1",
69
71
  description: description,
70
72
  name: name
@@ -4,31 +4,40 @@
4
4
  @use "../../../form.scss";
5
5
 
6
6
  $default-padding: .75em .75em .55em;
7
+ $default-input-border-radius: var(--theme-default-input-border-radius);
8
+
7
9
 
8
10
  .#{bem.$base}.text-input {
9
11
  display: flex;
10
12
  flex-direction: column;
11
13
 
12
- .input {
13
- background: var(--soft-y);
14
- border: var(--theme-border-style) var(--hard-y);
15
- color: var(--on-y);
16
- padding: $default-padding;
17
-
18
- &::placeholder {
19
- color: var(--metadata);
20
- }
21
-
22
- &:not(:disabled):hover {
23
- border: var(--theme-border-style) var(--soft-background4);
24
- }
14
+ >.input-wrapper {
15
+ position: relative;
25
16
 
26
- &:disabled {
27
- background-color: var(--hard-y);
17
+ &::after {
18
+ border-radius: $default-input-border-radius;
28
19
  }
29
20
 
30
- &:focus {
31
- background: var(--soft-background4);
21
+ > input {
22
+ background-color: var(--background-inputs);
23
+ border-radius: $default-input-border-radius;
24
+ color: var(--x);
25
+ height: 100%;
26
+ padding: $default-padding;
27
+ width: 100%;
28
+
29
+ &::placeholder {
30
+ color: var(--metadata);
31
+ }
32
+
33
+ &:disabled {
34
+ background-color: var(--hard-x);
35
+ }
36
+
37
+ &:not(:disabled):hover {
38
+ border-radius: $default-input-border-radius;
39
+ box-shadow: var(--theme-default-input-box-shadow);
40
+ }
32
41
  }
33
42
  }
34
43
  }