@pareto-engineering/design-system 2.0.0-alpha.53 → 2.0.0-alpha.54

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 (199) hide show
  1. package/dist/cjs/a/GradientBackground/GradientBackground.js +140 -0
  2. package/dist/cjs/a/GradientBackground/index.js +15 -0
  3. package/dist/cjs/a/GradientBackground/styles.scss +191 -0
  4. package/dist/cjs/a/Popover/common/Divider/Divider.js +67 -0
  5. package/dist/cjs/a/Popover/common/Divider/index.js +15 -0
  6. package/dist/cjs/a/Popover/common/Item/Item.js +67 -0
  7. package/dist/cjs/a/Popover/common/Item/index.js +15 -0
  8. package/dist/cjs/a/Popover/common/index.js +21 -0
  9. package/dist/cjs/c/AcceptCookies/AcceptCookies.js +134 -0
  10. package/dist/cjs/c/AcceptCookies/index.js +15 -0
  11. package/dist/cjs/c/AcceptCookies/styles.scss +49 -0
  12. package/dist/cjs/c/BlogCategoryButton/BlogCategoryButton.js +95 -0
  13. package/dist/cjs/c/BlogCategoryButton/index.js +15 -0
  14. package/dist/cjs/c/BlogContext/BlogContextProvider.js +63 -0
  15. package/dist/cjs/c/BlogContext/Context.js +16 -0
  16. package/dist/cjs/c/BlogContext/ContextProvider.js +63 -0
  17. package/dist/cjs/c/BlogContext/index.js +31 -0
  18. package/dist/cjs/c/BlogContext/useBlog.js +16 -0
  19. package/dist/cjs/c/BlogPost/BlogPost.js +147 -0
  20. package/dist/cjs/c/BlogPost/index.js +15 -0
  21. package/dist/cjs/c/BlogPost/styles.scss +33 -0
  22. package/dist/cjs/c/BlogPostsList/BlogPostsList.js +73 -0
  23. package/dist/cjs/c/BlogPostsList/common/Card/Card.js +170 -0
  24. package/dist/cjs/c/BlogPostsList/common/Card/index.js +15 -0
  25. package/dist/cjs/c/BlogPostsList/common/index.js +13 -0
  26. package/dist/cjs/c/BlogPostsList/index.js +15 -0
  27. package/dist/cjs/c/BlogPostsList/styles.scss +72 -0
  28. package/dist/cjs/c/SiteFooter/SiteFooter.js +73 -0
  29. package/dist/cjs/c/SiteFooter/common/Section/Section.js +95 -0
  30. package/dist/cjs/c/SiteFooter/common/Section/index.js +15 -0
  31. package/dist/cjs/c/SiteFooter/common/index.js +13 -0
  32. package/dist/cjs/c/SiteFooter/index.js +15 -0
  33. package/dist/cjs/c/SiteFooter/styles.scss +34 -0
  34. package/dist/cjs/c/SiteHeaderCTA/SiteHeaderCTA.js +108 -0
  35. package/dist/cjs/c/SiteHeaderCTA/index.js +15 -0
  36. package/dist/cjs/c/SiteHeaderCTA/styles.scss +44 -0
  37. package/dist/cjs/c/SiteMission/SiteMission.js +113 -0
  38. package/dist/cjs/c/SiteMission/index.js +15 -0
  39. package/dist/cjs/c/SiteMission/styles.scss +30 -0
  40. package/dist/cjs/c/SiteNavigation/SiteNavigation.js +130 -0
  41. package/dist/cjs/c/SiteNavigation/index.js +15 -0
  42. package/dist/cjs/c/SiteNavigation/styles.scss +118 -0
  43. package/dist/cjs/c/SiteOnboardingStep/SiteOnboardingStep.js +98 -0
  44. package/dist/cjs/c/SiteOnboardingStep/index.js +15 -0
  45. package/dist/cjs/c/SiteOnboardingStep/styles.scss +51 -0
  46. package/dist/cjs/c/SitePricing/SitePricing.js +108 -0
  47. package/dist/cjs/c/SitePricing/index.js +15 -0
  48. package/dist/cjs/c/SitePricing/styles.scss +73 -0
  49. package/dist/cjs/c/SiteServices/SiteServices.js +211 -0
  50. package/dist/cjs/c/SiteServices/index.js +15 -0
  51. package/dist/cjs/c/SiteServices/styles.scss +138 -0
  52. package/dist/cjs/c/TeamGallery/TeamGallery.js +80 -0
  53. package/dist/cjs/c/TeamGallery/common/PersonCard/PersonCard.js +84 -0
  54. package/dist/cjs/c/TeamGallery/common/PersonCard/index.js +15 -0
  55. package/dist/cjs/c/TeamGallery/common/index.js +13 -0
  56. package/dist/cjs/c/TeamGallery/index.js +15 -0
  57. package/dist/cjs/c/TeamGallery/styles.scss +100 -0
  58. package/dist/cjs/c/Testimonials/Testimonials.js +119 -0
  59. package/dist/cjs/c/Testimonials/index.js +15 -0
  60. package/dist/cjs/c/Testimonials/styles.scss +112 -0
  61. package/dist/cjs/experimental/GradientBackground/GradientBackground.js +98 -0
  62. package/dist/cjs/experimental/GradientBackground/index.js +15 -0
  63. package/dist/cjs/experimental/GradientBackground/styles.scss +64 -0
  64. package/dist/cjs/experimental/index.js +13 -0
  65. package/dist/cjs/f/common/Description/Description.js +20 -14
  66. package/dist/cjs/f/fields/CheckboxInput/CheckboxInput.js +105 -0
  67. package/dist/cjs/f/fields/CheckboxInput/index.js +15 -0
  68. package/dist/cjs/f/fields/CheckboxInput/styles.scss +28 -0
  69. package/dist/cjs/f/fields/QueryCombobox/QueryCombobox.js +0 -2
  70. package/dist/cjs/f/fields/QueryCombobox/common/Combobox/Combobox.js +5 -9
  71. package/dist/cjs/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +5 -9
  72. package/dist/cjs/f/fields/QuerySelect/styles.scss +21 -0
  73. package/dist/cjs/f/fields/RadioInput/RadioInput.js +110 -0
  74. package/dist/cjs/f/fields/RadioInput/index.js +15 -0
  75. package/dist/cjs/f/fields/RadioInput/styles.scss +26 -0
  76. package/dist/cjs/f/fields/SelectInput/SelectInput.js +16 -8
  77. package/dist/cjs/f/fields/TaskRecommendation/TaskRecommendation.js +129 -0
  78. package/dist/cjs/f/fields/TaskRecommendation/index.js +15 -0
  79. package/dist/cjs/f/fields/TaskRecommendation/styles.scss +37 -0
  80. package/dist/cjs/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +131 -0
  81. package/dist/cjs/f/fields/TaskRecommendationInput/index.js +15 -0
  82. package/dist/cjs/f/fields/TaskRecommendationInput/styles.scss +41 -0
  83. package/dist/cjs/f/fields/TextArea/TextArea.js +141 -0
  84. package/dist/cjs/f/fields/TextArea/index.js +15 -0
  85. package/dist/cjs/f/fields/TextArea/styles.scss +19 -0
  86. package/dist/cjs/f/fields/TextInput/TextInput.js +18 -9
  87. package/dist/cjs/f/fields/TextareaInput/TextareaInput.js +16 -8
  88. package/dist/cjs/test/QueryLoader/styles.scss +9 -0
  89. package/dist/es/a/GradientBackground/GradientBackground.js +118 -0
  90. package/dist/es/a/GradientBackground/index.js +2 -0
  91. package/dist/es/a/GradientBackground/styles.scss +191 -0
  92. package/dist/es/a/Popover/common/Divider/Divider.js +47 -0
  93. package/dist/es/a/Popover/common/Divider/index.js +2 -0
  94. package/dist/es/a/Popover/common/Item/Item.js +47 -0
  95. package/dist/es/a/Popover/common/Item/index.js +2 -0
  96. package/dist/es/a/Popover/common/index.js +2 -0
  97. package/dist/es/c/AcceptCookies/AcceptCookies.js +117 -0
  98. package/dist/es/c/AcceptCookies/index.js +2 -0
  99. package/dist/es/c/AcceptCookies/styles.scss +49 -0
  100. package/dist/es/c/BlogCategoryButton/BlogCategoryButton.js +68 -0
  101. package/dist/es/c/BlogCategoryButton/index.js +2 -0
  102. package/dist/es/c/BlogContext/BlogContextProvider.js +45 -0
  103. package/dist/es/c/BlogContext/Context.js +2 -0
  104. package/dist/es/c/BlogContext/ContextProvider.js +45 -0
  105. package/dist/es/c/BlogContext/index.js +4 -0
  106. package/dist/es/c/BlogContext/useBlog.js +3 -0
  107. package/dist/es/c/BlogPost/BlogPost.js +128 -0
  108. package/dist/es/c/BlogPost/index.js +2 -0
  109. package/dist/es/c/BlogPost/styles.scss +33 -0
  110. package/dist/es/c/BlogPostsList/BlogPostsList.js +56 -0
  111. package/dist/es/c/BlogPostsList/common/Card/Card.js +143 -0
  112. package/dist/es/c/BlogPostsList/common/Card/index.js +2 -0
  113. package/dist/es/c/BlogPostsList/common/index.js +1 -0
  114. package/dist/es/c/BlogPostsList/index.js +2 -0
  115. package/dist/es/c/BlogPostsList/styles.scss +72 -0
  116. package/dist/es/c/SiteFooter/SiteFooter.js +56 -0
  117. package/dist/es/c/SiteFooter/common/Section/Section.js +73 -0
  118. package/dist/es/c/SiteFooter/common/Section/index.js +2 -0
  119. package/dist/es/c/SiteFooter/common/index.js +1 -0
  120. package/dist/es/c/SiteFooter/index.js +2 -0
  121. package/dist/es/c/SiteFooter/styles.scss +34 -0
  122. package/dist/es/c/SiteHeaderCTA/SiteHeaderCTA.js +92 -0
  123. package/dist/es/c/SiteHeaderCTA/index.js +2 -0
  124. package/dist/es/c/SiteHeaderCTA/styles.scss +44 -0
  125. package/dist/es/c/SiteMission/SiteMission.js +96 -0
  126. package/dist/es/c/SiteMission/index.js +2 -0
  127. package/dist/es/c/SiteMission/styles.scss +30 -0
  128. package/dist/es/c/SiteNavigation/SiteNavigation.js +111 -0
  129. package/dist/es/c/SiteNavigation/index.js +2 -0
  130. package/dist/es/c/SiteNavigation/styles.scss +118 -0
  131. package/dist/es/c/SiteOnboardingStep/SiteOnboardingStep.js +81 -0
  132. package/dist/es/c/SiteOnboardingStep/index.js +2 -0
  133. package/dist/es/c/SiteOnboardingStep/styles.scss +51 -0
  134. package/dist/es/c/SitePricing/SitePricing.js +91 -0
  135. package/dist/es/c/SitePricing/index.js +2 -0
  136. package/dist/es/c/SitePricing/styles.scss +73 -0
  137. package/dist/es/c/SiteServices/SiteServices.js +195 -0
  138. package/dist/es/c/SiteServices/index.js +2 -0
  139. package/dist/es/c/SiteServices/styles.scss +138 -0
  140. package/dist/es/c/TeamGallery/TeamGallery.js +64 -0
  141. package/dist/es/c/TeamGallery/common/PersonCard/PersonCard.js +64 -0
  142. package/dist/es/c/TeamGallery/common/PersonCard/index.js +2 -0
  143. package/dist/es/c/TeamGallery/common/index.js +1 -0
  144. package/dist/es/c/TeamGallery/index.js +2 -0
  145. package/dist/es/c/TeamGallery/styles.scss +100 -0
  146. package/dist/es/c/Testimonials/Testimonials.js +99 -0
  147. package/dist/es/c/Testimonials/index.js +2 -0
  148. package/dist/es/c/Testimonials/styles.scss +112 -0
  149. package/dist/es/experimental/GradientBackground/GradientBackground.js +76 -0
  150. package/dist/es/experimental/GradientBackground/index.js +2 -0
  151. package/dist/es/experimental/GradientBackground/styles.scss +64 -0
  152. package/dist/es/experimental/index.js +1 -0
  153. package/dist/es/f/common/Description/Description.js +19 -14
  154. package/dist/es/f/fields/CheckboxInput/CheckboxInput.js +85 -0
  155. package/dist/es/f/fields/CheckboxInput/index.js +2 -0
  156. package/dist/es/f/fields/CheckboxInput/styles.scss +28 -0
  157. package/dist/es/f/fields/QueryCombobox/QueryCombobox.js +0 -2
  158. package/dist/es/f/fields/QueryCombobox/common/Combobox/Combobox.js +5 -9
  159. package/dist/es/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +5 -9
  160. package/dist/es/f/fields/QuerySelect/styles.scss +21 -0
  161. package/dist/es/f/fields/RadioInput/RadioInput.js +90 -0
  162. package/dist/es/f/fields/RadioInput/index.js +2 -0
  163. package/dist/es/f/fields/RadioInput/styles.scss +26 -0
  164. package/dist/es/f/fields/SelectInput/SelectInput.js +16 -8
  165. package/dist/es/f/fields/TaskRecommendation/TaskRecommendation.js +111 -0
  166. package/dist/es/f/fields/TaskRecommendation/index.js +2 -0
  167. package/dist/es/f/fields/TaskRecommendation/styles.scss +37 -0
  168. package/dist/es/f/fields/TaskRecommendationInput/TaskRecommendationInput.js +111 -0
  169. package/dist/es/f/fields/TaskRecommendationInput/index.js +2 -0
  170. package/dist/es/f/fields/TaskRecommendationInput/styles.scss +41 -0
  171. package/dist/es/f/fields/TextArea/TextArea.js +124 -0
  172. package/dist/es/f/fields/TextArea/index.js +2 -0
  173. package/dist/es/f/fields/TextArea/styles.scss +19 -0
  174. package/dist/es/f/fields/TextInput/TextInput.js +18 -9
  175. package/dist/es/f/fields/TextareaInput/TextareaInput.js +16 -8
  176. package/dist/es/test/QueryLoader/styles.scss +9 -0
  177. package/package.json +1 -1
  178. package/src/__snapshots__/Storyshots.test.js.snap +1526 -1383
  179. package/src/stories/a/DotInfo.stories.jsx +12 -12
  180. package/src/stories/a/ProgressBar.stories.jsx +12 -6
  181. package/src/stories/a/Timestamp.stories.jsx +32 -38
  182. package/src/stories/b/Logo.stories.jsx +13 -13
  183. package/src/stories/b/QuestionDropdown.stories.jsx +17 -30
  184. package/src/stories/b/SocialMediaButton.stories.jsx +32 -50
  185. package/src/stories/b/Title.stories.jsx +11 -13
  186. package/src/stories/c/ContentSlides.stories.jsx +24 -294
  187. package/src/stories/f/ChoicesInput.stories.jsx +62 -129
  188. package/src/stories/f/Description.stories.jsx +12 -2
  189. package/src/stories/f/RatingsInput.stories.jsx +21 -22
  190. package/src/stories/f/SelectInput.stories.jsx +35 -75
  191. package/src/stories/f/TextInput.stories.jsx +55 -52
  192. package/src/stories/f/TextareaInput.stories.jsx +31 -46
  193. package/src/ui/f/common/Description/Description.jsx +34 -29
  194. package/src/ui/f/fields/QueryCombobox/QueryCombobox.jsx +1 -2
  195. package/src/ui/f/fields/QueryCombobox/common/Combobox/Combobox.jsx +1 -11
  196. package/src/ui/f/fields/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +1 -11
  197. package/src/ui/f/fields/SelectInput/SelectInput.jsx +16 -9
  198. package/src/ui/f/fields/TextInput/TextInput.jsx +13 -7
  199. package/src/ui/f/fields/TextareaInput/TextareaInput.jsx +9 -8
@@ -35,7 +35,6 @@ const MultipleCombobox = ({
35
35
  options: items,
36
36
  getOptions,
37
37
  setValue,
38
- error,
39
38
  description,
40
39
  value,
41
40
  color,
@@ -184,9 +183,11 @@ const MultipleCombobox = ({
184
183
  getItemProps: getItemProps,
185
184
  highlightedIndex: highlightedIndex,
186
185
  items: getFilteredItems()
187
- }, getMenuProps()))), (description || error) && /*#__PURE__*/React.createElement(FormDescription, {
188
- isError: !!error
189
- }, error || description));
186
+ }, getMenuProps()))), /*#__PURE__*/React.createElement(FormDescription, {
187
+ className: "v50 mt-v s-1",
188
+ description: description,
189
+ name: name
190
+ }));
190
191
  };
191
192
 
192
193
  MultipleCombobox.propTypes = {
@@ -238,11 +239,6 @@ MultipleCombobox.propTypes = {
238
239
  */
239
240
  description: PropTypes.string,
240
241
 
241
- /**
242
- * The error object
243
- */
244
- error: PropTypes.objectOf(PropTypes.string),
245
-
246
242
  /**
247
243
  * The value of the custom select input
248
244
  */
@@ -0,0 +1,21 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ @use "@pareto-engineering/bem";
3
+
4
+ $default-loading-circle-displacement: .8em;
5
+
6
+ .#{bem.$base}.query-select {
7
+ position: relative;
8
+
9
+
10
+ >.#{bem.$base}.select-input {
11
+ select:disabled {
12
+ appearance: none;
13
+ }
14
+ }
15
+
16
+ >.#{bem.$base}.loading-circle {
17
+ position: absolute;
18
+ right: $default-loading-circle-displacement;
19
+ bottom: $default-loading-circle-displacement;
20
+ }
21
+ }
@@ -0,0 +1,90 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ /* @pareto-engineering/generator-front 1.0.12 */
4
+ import * as React from 'react';
5
+ import { useLayoutEffect, memo } from 'react';
6
+ import { useField } from 'formik';
7
+ import PropTypes from 'prop-types';
8
+ import styleNames from '@pareto-engineering/bem';
9
+ import { FormLabel, FormDescription } from "../../common"; // Local Definitions
10
+
11
+ const baseClassName = styleNames.base;
12
+ const componentClassName = 'radio-input';
13
+ /**
14
+ * This is the component description.
15
+ */
16
+
17
+ const RadioInput = ({
18
+ id,
19
+ className: userClassName,
20
+ children,
21
+ style,
22
+ name,
23
+ value // ...otherProps
24
+
25
+ }) => {
26
+ useLayoutEffect(() => {
27
+ import("./styles.scss");
28
+ }, []);
29
+ const [field, meta] = useField(name);
30
+ const isOptionSelected = field.value === value;
31
+ return /*#__PURE__*/React.createElement("div", {
32
+ id: id,
33
+ className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
34
+ style: style // {...otherProps}
35
+
36
+ }, /*#__PURE__*/React.createElement("div", {
37
+ className: `${isOptionSelected ? 'selected' : 'not-selected'} uc v1 pv-v`
38
+ }, /*#__PURE__*/React.createElement(FormLabel, {
39
+ name: name
40
+ }, /*#__PURE__*/React.createElement("input", _extends({}, field, {
41
+ id: name,
42
+ className: "input",
43
+ type: "radio",
44
+ value: value
45
+ })), /*#__PURE__*/React.createElement("span", {
46
+ className: "text"
47
+ }, children))), meta.error && meta.touched && /*#__PURE__*/React.createElement(FormDescription, {
48
+ error: true
49
+ }, meta.error));
50
+ };
51
+
52
+ RadioInput.propTypes = {
53
+ /**
54
+ * The HTML id for this element
55
+ */
56
+ id: PropTypes.string,
57
+
58
+ /**
59
+ * The HTML class names for this element
60
+ */
61
+ className: PropTypes.string,
62
+
63
+ /**
64
+ * The React-written, css properties for this element.
65
+ */
66
+ style: PropTypes.objectOf(PropTypes.string),
67
+
68
+ /**
69
+ * The children JSX
70
+ */
71
+ children: PropTypes.node,
72
+
73
+ /**
74
+ * The name of the radio input
75
+ */
76
+ name: PropTypes.string,
77
+
78
+ /**
79
+ * The value of the radio input
80
+ */
81
+ value: PropTypes.string,
82
+
83
+ /**
84
+ * The label of the radio input
85
+ */
86
+ label: PropTypes.string
87
+ };
88
+ RadioInput.defaultProps = {// someProp:false
89
+ };
90
+ export default /*#__PURE__*/memo(RadioInput);
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as RadioInput } from "./RadioInput";
@@ -0,0 +1,26 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+ @use "@pareto-engineering/bem";
4
+ @use "../../../form.scss";
5
+
6
+
7
+ .#{bem.$base}.radio-input {
8
+ .input {
9
+ @include form.radio-checkbox-input;
10
+ }
11
+
12
+ .not-selected {
13
+ @include form.radio-checkbox-input-not-selected;
14
+ }
15
+
16
+
17
+ .selected {
18
+ @include form.radio-checkbox-input-selected;
19
+ }
20
+
21
+ .text {
22
+ color: inherit;
23
+ }
24
+ }
25
+
26
+
@@ -26,13 +26,14 @@ const SelectInput = ({
26
26
  validate,
27
27
  description,
28
28
  disabled,
29
- isLoading // ...otherProps
29
+ isLoading,
30
+ autoComplete // ...otherProps
30
31
 
31
32
  }) => {
32
33
  useLayoutEffect(() => {
33
34
  import("./styles.scss");
34
35
  }, []);
35
- const [field, meta] = useField({
36
+ const [field] = useField({
36
37
  name,
37
38
  validate
38
39
  });
@@ -50,7 +51,8 @@ const SelectInput = ({
50
51
  }, field, {
51
52
  value: field.value || '',
52
53
  id: name,
53
- disabled: disabled
54
+ disabled: disabled,
55
+ autoComplete: autoComplete
54
56
  }), options.map(option => {
55
57
  // i.e if option is a string like "blah", return { value: "blah", label: "blah" }
56
58
  const newOption = typeof option === 'string' ? {
@@ -64,10 +66,11 @@ const SelectInput = ({
64
66
  }, newOption.label);
65
67
  })), isLoading && /*#__PURE__*/React.createElement(LoadingCircle, {
66
68
  className: "x-main2"
67
- })), (description || meta.touched && meta.error) && /*#__PURE__*/React.createElement(FormDescription, {
68
- isError: !!meta.error,
69
- className: "v50 mt-v s-1"
70
- }, meta.error || description));
69
+ })), /*#__PURE__*/React.createElement(FormDescription, {
70
+ className: "v50 mt-v s-1",
71
+ description: description,
72
+ name: name
73
+ }));
71
74
  };
72
75
 
73
76
  SelectInput.propTypes = {
@@ -128,7 +131,12 @@ SelectInput.propTypes = {
128
131
  /*
129
132
  * Whether the query that is fetching the select options is still in flight
130
133
  */
131
- isLoading: PropTypes.bool
134
+ isLoading: PropTypes.bool,
135
+
136
+ /**
137
+ * The autoComplete value that the browser should watch for the input
138
+ */
139
+ autoComplete: PropTypes.string
132
140
  };
133
141
  SelectInput.defaultProps = {
134
142
  disabled: false,
@@ -0,0 +1,111 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ /* @pareto-engineering/generator-front 1.0.12 */
4
+ import * as React from 'react';
5
+ import { useLayoutEffect } from 'react';
6
+ import PropTypes from 'prop-types';
7
+ import { useField } from 'formik';
8
+ import styleNames from '@pareto-engineering/bem';
9
+ import { FormLabel } from "../../common"; // Local Definitions
10
+
11
+ const baseClassName = styleNames.base;
12
+ const componentClassName = 'task-recommendation';
13
+ /**
14
+ * This is the component description.
15
+ */
16
+
17
+ const TaskRecommendation = ({
18
+ id,
19
+ className: userClassName,
20
+ style,
21
+ name,
22
+ value,
23
+ oneLiner,
24
+ label,
25
+ color,
26
+ image // ...otherProps
27
+
28
+ }) => {
29
+ var _field$value;
30
+
31
+ useLayoutEffect(() => {
32
+ import("./styles.scss");
33
+ }, []);
34
+ const [field] = useField(name);
35
+ const isOptionSelected = !!(((_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.length) > 0 && field.value.includes(value));
36
+ return /*#__PURE__*/React.createElement("div", {
37
+ id: id,
38
+ className: [baseClassName, componentClassName, userClassName, `x-${color}`].filter(e => e).join(' '),
39
+ style: style // {...otherProps}
40
+
41
+ }, /*#__PURE__*/React.createElement("div", {
42
+ className: `task-content ${isOptionSelected ? 'b-x' : 'b-on-x'}`
43
+ }, /*#__PURE__*/React.createElement("div", {
44
+ className: "v1 p-v task"
45
+ }, /*#__PURE__*/React.createElement(FormLabel, {
46
+ className: `uc mb-v ${isOptionSelected ? 'c-on-x' : 'c-x'}`,
47
+ name: name
48
+ }, label), /*#__PURE__*/React.createElement("input", _extends({}, field, {
49
+ value: value,
50
+ id: name,
51
+ className: "input",
52
+ type: "checkbox"
53
+ })), /*#__PURE__*/React.createElement("img", {
54
+ className: "image",
55
+ src: image,
56
+ alt: "img"
57
+ }), /*#__PURE__*/React.createElement("p", {
58
+ className: ['uc u2 mt-u', isOptionSelected && 'c-on-x'].filter(e => e).join(' ')
59
+ }, oneLiner))));
60
+ };
61
+
62
+ TaskRecommendation.propTypes = {
63
+ /**
64
+ * The HTML id for this element
65
+ */
66
+ id: PropTypes.string,
67
+
68
+ /**
69
+ * The HTML class names for this element
70
+ */
71
+ className: PropTypes.string,
72
+
73
+ /**
74
+ * The React-written, css properties for this element.
75
+ */
76
+ style: PropTypes.objectOf(PropTypes.string),
77
+
78
+ /**
79
+ * The name of the input
80
+ */
81
+ name: PropTypes.string.isRequired,
82
+
83
+ /**
84
+ * The value of the input
85
+ */
86
+ value: PropTypes.string.isRequired,
87
+
88
+ /**
89
+ * The task one liner description
90
+ */
91
+ oneLiner: PropTypes.string.isRequired,
92
+
93
+ /**
94
+ * The task label
95
+ */
96
+ label: PropTypes.string.isRequired,
97
+
98
+ /**
99
+ * The color
100
+ */
101
+ color: PropTypes.string,
102
+
103
+ /**
104
+ * Task image
105
+ */
106
+ image: PropTypes.string.isRequired
107
+ };
108
+ TaskRecommendation.defaultProps = {
109
+ color: 'main2'
110
+ };
111
+ export default TaskRecommendation;
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as TaskRecommendation } from "./TaskRecommendation";
@@ -0,0 +1,37 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ @use "@pareto-engineering/bem";
3
+
4
+ .#{bem.$base}.task-recommendation {
5
+
6
+ .task-content {
7
+ border-radius: var(--theme-border-radius);
8
+ border: 1px solid var(--x);
9
+ height: 100%;
10
+
11
+ .task {
12
+ position: relative;
13
+ display: flex;
14
+ flex-direction: column;
15
+ justify-content: space-around;
16
+ align-items: center;
17
+ height: 100%;
18
+
19
+ .input {
20
+ appearance: none;
21
+ position: absolute;
22
+ left: 0;
23
+ top: 0;
24
+ bottom:0;
25
+ cursor: pointer;
26
+ width: 100%;
27
+ }
28
+
29
+ .image {
30
+ width: 7rem;
31
+ }
32
+ }
33
+ }
34
+ }
35
+
36
+
37
+
@@ -0,0 +1,111 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ /* @pareto-engineering/generator-front 1.0.12 */
4
+ import * as React from 'react';
5
+ import { useLayoutEffect, memo } from 'react';
6
+ import PropTypes from 'prop-types';
7
+ import { useField } from 'formik';
8
+ import styleNames from '@pareto-engineering/bem';
9
+ import { FormLabel } from "../../common"; // Local Definitions
10
+
11
+ const baseClassName = styleNames.base;
12
+ const componentClassName = 'task-recommendation-input';
13
+ /**
14
+ * This is the component description.
15
+ */
16
+
17
+ const TaskRecommendationInput = ({
18
+ id,
19
+ className: userClassName,
20
+ style,
21
+ name,
22
+ value,
23
+ oneLiner,
24
+ label,
25
+ color,
26
+ image // ...otherProps
27
+
28
+ }) => {
29
+ var _field$value;
30
+
31
+ useLayoutEffect(() => {
32
+ import("./styles.scss");
33
+ }, []);
34
+ const [field] = useField(name);
35
+ const isOptionSelected = !!(((_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.length) > 0 && field.value.includes(value));
36
+ return /*#__PURE__*/React.createElement("div", {
37
+ id: id,
38
+ className: [baseClassName, componentClassName, userClassName, `x-${color}`].filter(e => e).join(' '),
39
+ style: style // {...otherProps}
40
+
41
+ }, /*#__PURE__*/React.createElement("div", {
42
+ className: `task-content ${isOptionSelected ? 'b-x' : 'b-on-x'}`
43
+ }, /*#__PURE__*/React.createElement("div", {
44
+ className: "v1 p-v task"
45
+ }, /*#__PURE__*/React.createElement(FormLabel, {
46
+ className: `uc mb-v ${isOptionSelected ? styleNames.modifierActive : ''}`,
47
+ name: name
48
+ }, label), /*#__PURE__*/React.createElement("input", _extends({}, field, {
49
+ value: value,
50
+ id: name,
51
+ className: "input",
52
+ type: "checkbox"
53
+ })), /*#__PURE__*/React.createElement("img", {
54
+ className: "image",
55
+ src: image,
56
+ alt: "img"
57
+ }), /*#__PURE__*/React.createElement("p", {
58
+ className: ['uc u2 mt-u', isOptionSelected && 'c-on-x'].filter(e => e).join(' ')
59
+ }, oneLiner))));
60
+ };
61
+
62
+ TaskRecommendationInput.propTypes = {
63
+ /**
64
+ * The HTML id for this element
65
+ */
66
+ id: PropTypes.string,
67
+
68
+ /**
69
+ * The HTML class names for this element
70
+ */
71
+ className: PropTypes.string,
72
+
73
+ /**
74
+ * The React-written, css properties for this element.
75
+ */
76
+ style: PropTypes.objectOf(PropTypes.string),
77
+
78
+ /**
79
+ * The name of the input
80
+ */
81
+ name: PropTypes.string.isRequired,
82
+
83
+ /**
84
+ * The value of the input
85
+ */
86
+ value: PropTypes.string.isRequired,
87
+
88
+ /**
89
+ * The task one liner description
90
+ */
91
+ oneLiner: PropTypes.string.isRequired,
92
+
93
+ /**
94
+ * The task label
95
+ */
96
+ label: PropTypes.string.isRequired,
97
+
98
+ /**
99
+ * The color
100
+ */
101
+ color: PropTypes.string,
102
+
103
+ /**
104
+ * Task image
105
+ */
106
+ image: PropTypes.string.isRequired
107
+ };
108
+ TaskRecommendationInput.defaultProps = {
109
+ color: 'main2'
110
+ };
111
+ export default /*#__PURE__*/memo(TaskRecommendationInput);
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as TaskRecommendationInput } from "./TaskRecommendationInput";
@@ -0,0 +1,41 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ @use "@pareto-engineering/bem";
3
+
4
+ .#{bem.$base}.task-recommendation-input {
5
+
6
+ .task-content {
7
+ border-radius: var(--theme-border-radius);
8
+ border: 1px solid var(--x);
9
+ height: 100%;
10
+
11
+ .task {
12
+ position: relative;
13
+ display: flex;
14
+ flex-direction: column;
15
+ justify-content: space-around;
16
+ align-items: center;
17
+ height: 100%;
18
+
19
+ .#{bem.$modifier-active} {
20
+ color: var(--on-x);
21
+ }
22
+
23
+ .input {
24
+ appearance: none;
25
+ position: absolute;
26
+ left: 0;
27
+ top: 0;
28
+ bottom:0;
29
+ cursor: pointer;
30
+ width: 100%;
31
+ }
32
+
33
+ .image {
34
+ width: 7rem;
35
+ }
36
+ }
37
+ }
38
+ }
39
+
40
+
41
+
@@ -0,0 +1,124 @@
1
+ function _extends() { _extends = Object.assign || 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
+
3
+ /* @pareto-engineering/generator-front 1.0.12 */
4
+ import * as React from 'react';
5
+ import { useLayoutEffect } from 'react';
6
+ import PropTypes from 'prop-types';
7
+ import styleNames from '@pareto-engineering/bem';
8
+ import { useField } from 'formik'; // Local Definitions
9
+
10
+ import { FormLabel, FormDescription } from "../../common";
11
+ const baseClassName = styleNames.base;
12
+ const componentClassName = 'text-area';
13
+ /**
14
+ * This is the component description.
15
+ */
16
+
17
+ const TextArea = ({
18
+ id,
19
+ className: userClassName,
20
+ style,
21
+ name,
22
+ label,
23
+ validate,
24
+ labelAsDescription,
25
+ textAreaId,
26
+ rows,
27
+ textAreaColor,
28
+ labelColor,
29
+ description // ...otherProps
30
+
31
+ }) => {
32
+ useLayoutEffect(() => {
33
+ import("./styles.scss");
34
+ }, []);
35
+ const [field, meta] = useField({
36
+ name,
37
+ validate
38
+ });
39
+ return /*#__PURE__*/React.createElement("div", {
40
+ id: id,
41
+ className: [baseClassName, componentClassName, userClassName, `x-${textAreaColor}`, `y-${labelColor}`].filter(e => e).join(' '),
42
+ style: style // {...otherProps}
43
+
44
+ }, /*#__PURE__*/React.createElement(FormLabel, {
45
+ className: ['c-y', labelAsDescription ? 'md-s2 s0 v1 mb-v' : 'v50 mb-v'].filter(e => e).join(' '),
46
+ name: name
47
+ }, label), /*#__PURE__*/React.createElement("textarea", _extends({
48
+ id: textAreaId,
49
+ className: `textarea v50 pv-v ${meta.touched && meta.error ? 'input-border-error' : 'input-border'}`
50
+ }, field, {
51
+ rows: rows
52
+ })), (description || meta.touched && meta.error) && /*#__PURE__*/React.createElement(FormDescription, {
53
+ isError: !!meta.error,
54
+ className: "v50 mt-v s-1"
55
+ }, meta.error || description), ' ');
56
+ };
57
+
58
+ TextArea.propTypes = {
59
+ /**
60
+ * The HTML id for this element
61
+ */
62
+ id: PropTypes.string,
63
+
64
+ /**
65
+ * The HTML class names for this element
66
+ */
67
+ className: PropTypes.string,
68
+
69
+ /**
70
+ * The React-written, css properties for this element.
71
+ */
72
+ style: PropTypes.objectOf(PropTypes.string),
73
+
74
+ /**
75
+ * The input name (html - and Formik state)
76
+ */
77
+ name: PropTypes.string.isRequired,
78
+
79
+ /**
80
+ * The input label
81
+ */
82
+ label: PropTypes.string.isRequired,
83
+
84
+ /**
85
+ * The input value validator function
86
+ */
87
+ validate: PropTypes.func,
88
+
89
+ /**
90
+ * If the text area depends on it's label's text as the default description
91
+ */
92
+ labelAsDescription: PropTypes.bool,
93
+
94
+ /**
95
+ * The textarea id
96
+ */
97
+ textAreaId: PropTypes.string,
98
+
99
+ /**
100
+ * The number of rows int the text area
101
+ */
102
+ rows: PropTypes.number,
103
+
104
+ /**
105
+ * Text area base color
106
+ */
107
+ textAreaColor: PropTypes.string,
108
+
109
+ /**
110
+ * Label base color
111
+ */
112
+ labelColor: PropTypes.string,
113
+
114
+ /**
115
+ * Text area description
116
+ */
117
+ description: PropTypes.string
118
+ };
119
+ TextArea.defaultProps = {
120
+ rows: 3,
121
+ textAreaColor: 'background',
122
+ labelColor: 'main1'
123
+ };
124
+ export default TextArea;
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as TextArea } from "./TextArea";
@@ -0,0 +1,19 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ @use "@pareto-engineering/bem";
3
+
4
+ .#{bem.$base}.text-area{
5
+ display: flex;
6
+ flex-direction: column;
7
+
8
+ .textarea {
9
+ background: var(--light-x);
10
+ color: var(--on-x);
11
+
12
+ &:focus {
13
+ background: var(--dark-x);
14
+ }
15
+ }
16
+ }
17
+
18
+
19
+