@pareto-engineering/design-system 4.0.0-alpha.62 → 4.0.0-alpha.63

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 (192) hide show
  1. package/dist/cjs/f/FormInput/FormInput.js +43 -13
  2. package/dist/cjs/f/common/V2/Description/Description.js +76 -0
  3. package/dist/cjs/f/common/V2/Description/index.js +13 -0
  4. package/dist/cjs/f/common/V2/Description/styles.scss +10 -0
  5. package/dist/cjs/f/common/V2/Label/Label.js +84 -0
  6. package/dist/cjs/f/common/V2/Label/index.js +13 -0
  7. package/dist/cjs/f/common/V2/Label/styles.scss +9 -0
  8. package/dist/cjs/f/common/V2/index.js +19 -0
  9. package/dist/cjs/f/common/index.js +12 -0
  10. package/dist/cjs/f/fields/V2/Checkbox/Checkbox.js +122 -0
  11. package/dist/cjs/f/fields/V2/Checkbox/index.js +13 -0
  12. package/dist/cjs/f/fields/V2/Checkbox/styles.scss +16 -0
  13. package/dist/cjs/f/fields/V2/ChoicesInput/ChoicesInput.js +154 -0
  14. package/dist/cjs/f/fields/V2/ChoicesInput/common/Choice/Choice.js +104 -0
  15. package/dist/cjs/f/fields/V2/ChoicesInput/common/Choice/index.js +13 -0
  16. package/dist/cjs/f/fields/V2/ChoicesInput/common/index.js +12 -0
  17. package/dist/cjs/f/fields/V2/ChoicesInput/index.js +13 -0
  18. package/dist/cjs/f/fields/V2/ChoicesInput/styles.scss +79 -0
  19. package/dist/cjs/f/fields/V2/EditorInput/EditorInput.js +197 -0
  20. package/dist/cjs/f/fields/V2/EditorInput/common/Toolbar.js +257 -0
  21. package/dist/cjs/f/fields/V2/EditorInput/common/TreeViewPlugin.js +18 -0
  22. package/dist/cjs/f/fields/V2/EditorInput/common/index.js +20 -0
  23. package/dist/cjs/f/fields/V2/EditorInput/index.js +13 -0
  24. package/dist/cjs/f/fields/V2/EditorInput/styles.scss +149 -0
  25. package/dist/cjs/f/fields/V2/LinkInput/LinkInput.js +156 -0
  26. package/dist/cjs/f/fields/V2/LinkInput/index.js +13 -0
  27. package/dist/cjs/f/fields/V2/LinkInput/styles.scss +90 -0
  28. package/dist/cjs/f/fields/V2/QueryChoices/QueryChoices.js +137 -0
  29. package/dist/cjs/f/fields/V2/QueryChoices/index.js +13 -0
  30. package/dist/cjs/f/fields/V2/QueryCombobox/QueryCombobox.js +229 -0
  31. package/dist/cjs/f/fields/V2/QueryCombobox/common/Combobox/Combobox.js +236 -0
  32. package/dist/cjs/f/fields/V2/QueryCombobox/common/Combobox/index.js +13 -0
  33. package/dist/cjs/f/fields/V2/QueryCombobox/common/Menu/Menu.js +83 -0
  34. package/dist/cjs/f/fields/V2/QueryCombobox/common/Menu/index.js +13 -0
  35. package/dist/cjs/f/fields/V2/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +300 -0
  36. package/dist/cjs/f/fields/V2/QueryCombobox/common/MultipleCombobox/index.js +13 -0
  37. package/dist/cjs/f/fields/V2/QueryCombobox/common/index.js +26 -0
  38. package/dist/cjs/f/fields/V2/QueryCombobox/index.js +13 -0
  39. package/dist/cjs/f/fields/V2/QueryCombobox/styles.scss +127 -0
  40. package/dist/cjs/f/fields/V2/QuerySelect/QuerySelect.js +198 -0
  41. package/dist/cjs/f/fields/V2/QuerySelect/index.js +13 -0
  42. package/dist/cjs/f/fields/V2/RatingsInput/RatingsInput.js +130 -0
  43. package/dist/cjs/f/fields/V2/RatingsInput/common/Rating/Rating.js +117 -0
  44. package/dist/cjs/f/fields/V2/RatingsInput/common/Rating/index.js +13 -0
  45. package/dist/cjs/f/fields/V2/RatingsInput/common/index.js +12 -0
  46. package/dist/cjs/f/fields/V2/RatingsInput/index.js +13 -0
  47. package/dist/cjs/f/fields/V2/RatingsInput/styles.scss +48 -0
  48. package/dist/cjs/f/fields/V2/SelectInput/SelectInput.js +154 -0
  49. package/dist/cjs/f/fields/V2/SelectInput/index.js +13 -0
  50. package/dist/cjs/f/fields/V2/SelectInput/styles.scss +87 -0
  51. package/dist/cjs/f/fields/V2/TextInput/TextInput.js +155 -0
  52. package/dist/cjs/f/fields/V2/TextInput/index.js +13 -0
  53. package/dist/cjs/f/fields/V2/TextInput/styles.scss +78 -0
  54. package/dist/cjs/f/fields/V2/TextareaInput/TextareaInput.js +152 -0
  55. package/dist/cjs/f/fields/V2/TextareaInput/index.js +13 -0
  56. package/dist/cjs/f/fields/V2/TextareaInput/styles.scss +53 -0
  57. package/dist/cjs/f/fields/V2/index.js +82 -0
  58. package/dist/cjs/f/fields/index.js +26 -1
  59. package/dist/es/f/FormInput/FormInput.js +33 -3
  60. package/dist/es/f/common/V2/Description/Description.js +68 -0
  61. package/dist/es/f/common/V2/Description/index.js +2 -0
  62. package/dist/es/f/common/V2/Description/styles.scss +10 -0
  63. package/dist/es/f/common/V2/Label/Label.js +76 -0
  64. package/dist/es/f/common/V2/Label/index.js +2 -0
  65. package/dist/es/f/common/V2/Label/styles.scss +9 -0
  66. package/dist/es/f/common/V2/index.js +2 -0
  67. package/dist/es/f/common/index.js +2 -1
  68. package/dist/es/f/fields/V2/Checkbox/Checkbox.js +114 -0
  69. package/dist/es/f/fields/V2/Checkbox/index.js +2 -0
  70. package/dist/es/f/fields/V2/Checkbox/styles.scss +16 -0
  71. package/dist/es/f/fields/V2/ChoicesInput/ChoicesInput.js +148 -0
  72. package/dist/es/f/fields/V2/ChoicesInput/common/Choice/Choice.js +97 -0
  73. package/dist/es/f/fields/V2/ChoicesInput/common/Choice/index.js +2 -0
  74. package/dist/es/f/fields/V2/ChoicesInput/common/index.js +1 -0
  75. package/dist/es/f/fields/V2/ChoicesInput/index.js +2 -0
  76. package/dist/es/f/fields/V2/ChoicesInput/styles.scss +79 -0
  77. package/dist/es/f/fields/V2/EditorInput/EditorInput.js +192 -0
  78. package/dist/es/f/fields/V2/EditorInput/common/Toolbar.js +246 -0
  79. package/dist/es/f/fields/V2/EditorInput/common/TreeViewPlugin.js +11 -0
  80. package/dist/es/f/fields/V2/EditorInput/common/index.js +2 -0
  81. package/dist/es/f/fields/V2/EditorInput/index.js +2 -0
  82. package/dist/es/f/fields/V2/EditorInput/styles.scss +149 -0
  83. package/dist/es/f/fields/V2/LinkInput/LinkInput.js +148 -0
  84. package/dist/es/f/fields/V2/LinkInput/index.js +2 -0
  85. package/dist/es/f/fields/V2/LinkInput/styles.scss +90 -0
  86. package/dist/es/f/fields/V2/QueryChoices/QueryChoices.js +126 -0
  87. package/dist/es/f/fields/V2/QueryChoices/index.js +2 -0
  88. package/dist/es/f/fields/V2/QueryCombobox/QueryCombobox.js +221 -0
  89. package/dist/es/f/fields/V2/QueryCombobox/common/Combobox/Combobox.js +229 -0
  90. package/dist/es/f/fields/V2/QueryCombobox/common/Combobox/index.js +2 -0
  91. package/dist/es/f/fields/V2/QueryCombobox/common/Menu/Menu.js +73 -0
  92. package/dist/es/f/fields/V2/QueryCombobox/common/Menu/index.js +2 -0
  93. package/dist/es/f/fields/V2/QueryCombobox/common/MultipleCombobox/MultipleCombobox.js +293 -0
  94. package/dist/es/f/fields/V2/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  95. package/dist/es/f/fields/V2/QueryCombobox/common/index.js +3 -0
  96. package/dist/es/f/fields/V2/QueryCombobox/index.js +2 -0
  97. package/dist/es/f/fields/V2/QueryCombobox/styles.scss +127 -0
  98. package/dist/es/f/fields/V2/QuerySelect/QuerySelect.js +186 -0
  99. package/dist/es/f/fields/V2/QuerySelect/index.js +2 -0
  100. package/dist/es/f/fields/V2/RatingsInput/RatingsInput.js +124 -0
  101. package/dist/es/f/fields/V2/RatingsInput/common/Rating/Rating.js +109 -0
  102. package/dist/es/f/fields/V2/RatingsInput/common/Rating/index.js +2 -0
  103. package/dist/es/f/fields/V2/RatingsInput/common/index.js +1 -0
  104. package/dist/es/f/fields/V2/RatingsInput/index.js +2 -0
  105. package/dist/es/f/fields/V2/RatingsInput/styles.scss +48 -0
  106. package/dist/es/f/fields/V2/SelectInput/SelectInput.js +146 -0
  107. package/dist/es/f/fields/V2/SelectInput/index.js +2 -0
  108. package/dist/es/f/fields/V2/SelectInput/styles.scss +87 -0
  109. package/dist/es/f/fields/V2/TextInput/TextInput.js +147 -0
  110. package/dist/es/f/fields/V2/TextInput/index.js +2 -0
  111. package/dist/es/f/fields/V2/TextInput/styles.scss +78 -0
  112. package/dist/es/f/fields/V2/TextareaInput/TextareaInput.js +146 -0
  113. package/dist/es/f/fields/V2/TextareaInput/index.js +2 -0
  114. package/dist/es/f/fields/V2/TextareaInput/styles.scss +53 -0
  115. package/dist/es/f/fields/V2/index.js +11 -0
  116. package/dist/es/f/fields/index.js +2 -1
  117. package/package.json +3 -3
  118. package/src/stories/f/v2/Checkbox.stories.jsx +102 -0
  119. package/src/stories/f/v2/ChoicesInput.stories.jsx +139 -0
  120. package/src/stories/f/v2/EditorInput.stories.jsx +81 -0
  121. package/src/stories/f/v2/LinkInput.stories.jsx +93 -0
  122. package/src/stories/f/v2/QueryChoices.stories.jsx +144 -0
  123. package/src/stories/f/v2/QueryCombobox.stories.jsx +301 -0
  124. package/src/stories/f/v2/QuerySelect.stories.jsx +150 -0
  125. package/src/stories/f/v2/RatingsInput.stories.jsx +77 -0
  126. package/src/stories/f/v2/SelectInput.stories.jsx +95 -0
  127. package/src/stories/f/v2/TextInput.stories.jsx +120 -0
  128. package/src/stories/f/v2/TextareaInput.stories.jsx +107 -0
  129. package/src/stories/f/v2/__generated__/FormInputAllTaskStatusesQuery.graphql.js +122 -0
  130. package/src/stories/f/v2/__generated__/FormInputAllTeamsQuery.graphql.js +139 -0
  131. package/src/stories/f/v2/__generated__/QueryChoicesAllTaskStatusesQuery.graphql.js +122 -0
  132. package/src/stories/f/v2/__generated__/QueryComboboxAllTeamsQuery.graphql.js +139 -0
  133. package/src/stories/f/v2/__generated__/QuerySelectAllTaskStatusesQuery.graphql.js +122 -0
  134. package/src/ui/f/FormInput/FormInput.jsx +57 -12
  135. package/src/ui/f/common/V2/Description/Description.jsx +94 -0
  136. package/src/ui/f/common/V2/Description/index.js +2 -0
  137. package/src/ui/f/common/V2/Description/styles.scss +10 -0
  138. package/src/ui/f/common/V2/Label/Label.jsx +102 -0
  139. package/src/ui/f/common/V2/Label/index.js +2 -0
  140. package/src/ui/f/common/V2/Label/styles.scss +9 -0
  141. package/src/ui/f/common/V2/index.js +2 -0
  142. package/src/ui/f/common/index.js +1 -0
  143. package/src/ui/f/fields/V2/Checkbox/Checkbox.jsx +146 -0
  144. package/src/ui/f/fields/V2/Checkbox/index.js +2 -0
  145. package/src/ui/f/fields/V2/Checkbox/styles.scss +16 -0
  146. package/src/ui/f/fields/V2/ChoicesInput/ChoicesInput.jsx +183 -0
  147. package/src/ui/f/fields/V2/ChoicesInput/common/Choice/Choice.jsx +125 -0
  148. package/src/ui/f/fields/V2/ChoicesInput/common/Choice/index.js +2 -0
  149. package/src/ui/f/fields/V2/ChoicesInput/common/index.js +1 -0
  150. package/src/ui/f/fields/V2/ChoicesInput/index.js +2 -0
  151. package/src/ui/f/fields/V2/ChoicesInput/styles.scss +79 -0
  152. package/src/ui/f/fields/V2/EditorInput/EditorInput.jsx +244 -0
  153. package/src/ui/f/fields/V2/EditorInput/common/Toolbar.jsx +356 -0
  154. package/src/ui/f/fields/V2/EditorInput/common/TreeViewPlugin.jsx +16 -0
  155. package/src/ui/f/fields/V2/EditorInput/common/index.jsx +2 -0
  156. package/src/ui/f/fields/V2/EditorInput/index.js +2 -0
  157. package/src/ui/f/fields/V2/EditorInput/styles.scss +149 -0
  158. package/src/ui/f/fields/V2/LinkInput/LinkInput.jsx +187 -0
  159. package/src/ui/f/fields/V2/LinkInput/index.js +2 -0
  160. package/src/ui/f/fields/V2/LinkInput/styles.scss +90 -0
  161. package/src/ui/f/fields/V2/QueryChoices/QueryChoices.jsx +153 -0
  162. package/src/ui/f/fields/V2/QueryChoices/index.js +2 -0
  163. package/src/ui/f/fields/V2/QueryCombobox/QueryCombobox.jsx +254 -0
  164. package/src/ui/f/fields/V2/QueryCombobox/common/Combobox/Combobox.jsx +276 -0
  165. package/src/ui/f/fields/V2/QueryCombobox/common/Combobox/index.js +2 -0
  166. package/src/ui/f/fields/V2/QueryCombobox/common/Menu/Menu.jsx +103 -0
  167. package/src/ui/f/fields/V2/QueryCombobox/common/Menu/index.js +2 -0
  168. package/src/ui/f/fields/V2/QueryCombobox/common/MultipleCombobox/MultipleCombobox.jsx +362 -0
  169. package/src/ui/f/fields/V2/QueryCombobox/common/MultipleCombobox/index.js +2 -0
  170. package/src/ui/f/fields/V2/QueryCombobox/common/index.js +3 -0
  171. package/src/ui/f/fields/V2/QueryCombobox/index.js +2 -0
  172. package/src/ui/f/fields/V2/QueryCombobox/styles.scss +127 -0
  173. package/src/ui/f/fields/V2/QuerySelect/QuerySelect.jsx +220 -0
  174. package/src/ui/f/fields/V2/QuerySelect/index.js +2 -0
  175. package/src/ui/f/fields/V2/RatingsInput/RatingsInput.jsx +152 -0
  176. package/src/ui/f/fields/V2/RatingsInput/common/Rating/Rating.jsx +142 -0
  177. package/src/ui/f/fields/V2/RatingsInput/common/Rating/index.js +2 -0
  178. package/src/ui/f/fields/V2/RatingsInput/common/index.js +1 -0
  179. package/src/ui/f/fields/V2/RatingsInput/index.js +2 -0
  180. package/src/ui/f/fields/V2/RatingsInput/styles.scss +48 -0
  181. package/src/ui/f/fields/V2/SelectInput/SelectInput.jsx +187 -0
  182. package/src/ui/f/fields/V2/SelectInput/index.js +2 -0
  183. package/src/ui/f/fields/V2/SelectInput/styles.scss +87 -0
  184. package/src/ui/f/fields/V2/TextInput/TextInput.jsx +192 -0
  185. package/src/ui/f/fields/V2/TextInput/index.js +2 -0
  186. package/src/ui/f/fields/V2/TextInput/styles.scss +78 -0
  187. package/src/ui/f/fields/V2/TextareaInput/TextareaInput.jsx +180 -0
  188. package/src/ui/f/fields/V2/TextareaInput/index.js +2 -0
  189. package/src/ui/f/fields/V2/TextareaInput/styles.scss +53 -0
  190. package/src/ui/f/fields/V2/index.js +11 -0
  191. package/src/ui/f/fields/index.js +1 -0
  192. package/tests/__snapshots__/Storyshots.test.js.snap +5909 -0
@@ -0,0 +1,146 @@
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
+ /* @pareto-engineering/generator-front 1.0.12 */
3
+ import * as React from 'react';
4
+ import { useInsertionEffect, memo } from 'react';
5
+ import { useField } from 'formik';
6
+ import PropTypes from 'prop-types';
7
+ import styleNames from '@pareto-engineering/bem/exports';
8
+ import { LoadingCircle } from "../../../../a";
9
+ import { FormLabelV2, FormDescriptionV2 } from "../../../common";
10
+
11
+ // Local Definitions
12
+
13
+ const baseClassName = styleNames.base;
14
+ const componentClassName = 'select-input';
15
+
16
+ /**
17
+ * This is the component description.
18
+ */
19
+ const SelectInput = ({
20
+ id,
21
+ className: userClassName,
22
+ style,
23
+ name,
24
+ label,
25
+ labelColor,
26
+ color,
27
+ options,
28
+ validate,
29
+ optional,
30
+ description,
31
+ disabled,
32
+ isLoading,
33
+ autoComplete
34
+ // ...otherProps
35
+ }) => {
36
+ useInsertionEffect(() => {
37
+ import("./styles.scss");
38
+ }, []);
39
+ const [field] = useField({
40
+ name,
41
+ validate
42
+ });
43
+ return /*#__PURE__*/React.createElement("div", {
44
+ id: id,
45
+ className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' '),
46
+ style: style
47
+ }, /*#__PURE__*/React.createElement(FormLabelV2, {
48
+ name: name,
49
+ color: labelColor,
50
+ optional: optional
51
+ // {...otherProps}
52
+ }, label), /*#__PURE__*/React.createElement("div", {
53
+ className: `select-wrapper${disabled ? ' disabled' : ''}`
54
+ }, /*#__PURE__*/React.createElement("select", _extends({
55
+ className: `input y-${color}`
56
+ }, field, {
57
+ value: field.value || '',
58
+ id: name,
59
+ disabled: disabled,
60
+ autoComplete: autoComplete
61
+ }), options.map(option => {
62
+ // i.e if option is a string like "blah", return { value: "blah", label: "blah" }
63
+ const newOption = typeof option === 'string' ? {
64
+ value: option,
65
+ label: option
66
+ } : option;
67
+ return /*#__PURE__*/React.createElement("option", {
68
+ key: newOption.value,
69
+ value: newOption.value,
70
+ disabled: newOption?.disabled || false
71
+ }, newOption.label);
72
+ })), isLoading && /*#__PURE__*/React.createElement(LoadingCircle, {
73
+ className: "x-main"
74
+ })), /*#__PURE__*/React.createElement(FormDescriptionV2, {
75
+ className: "s-1",
76
+ description: description,
77
+ name: name
78
+ }));
79
+ };
80
+ SelectInput.propTypes = {
81
+ /**
82
+ * The HTML id for this element
83
+ */
84
+ id: PropTypes.string,
85
+ /**
86
+ * The HTML class names for this element
87
+ */
88
+ className: PropTypes.string,
89
+ /**
90
+ * The React-written, css properties for this element.
91
+ */
92
+ style: PropTypes.objectOf(PropTypes.string),
93
+ /**
94
+ * The name of the select input
95
+ */
96
+ name: PropTypes.string,
97
+ /**
98
+ * The label of the select input
99
+ */
100
+ label: PropTypes.string,
101
+ /**
102
+ * The input field validator function
103
+ */
104
+ validate: PropTypes.func,
105
+ /**
106
+ * The select input description
107
+ */
108
+ description: PropTypes.string,
109
+ /**
110
+ * The options of the select input
111
+ */
112
+ options: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.shape({
113
+ value: PropTypes.string,
114
+ label: PropTypes.string,
115
+ disabled: PropTypes.bool
116
+ })])),
117
+ /**
118
+ * Whether the select input should be disabled
119
+ */
120
+ disabled: PropTypes.bool,
121
+ /**
122
+ * The color of the select input
123
+ */
124
+ color: PropTypes.string,
125
+ /**
126
+ * The color of the select input label
127
+ */
128
+ labelColor: PropTypes.string,
129
+ /*
130
+ * Whether the query that is fetching the select options is still in flight
131
+ */
132
+ isLoading: PropTypes.bool,
133
+ /**
134
+ * The autoComplete value that the browser should watch for the input
135
+ */
136
+ autoComplete: PropTypes.string,
137
+ /**
138
+ * Whether the input is optional or not
139
+ */
140
+ optional: PropTypes.bool
141
+ };
142
+ SelectInput.defaultProps = {
143
+ disabled: false,
144
+ color: 'paragraph'
145
+ };
146
+ export default /*#__PURE__*/memo(SelectInput);
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as SelectInput } from "./SelectInput";
@@ -0,0 +1,87 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+
3
+
4
+ @use "@pareto-engineering/bem";
5
+ @use "@pareto-engineering/styles/src/mixins";
6
+ @use "@pareto-engineering/styles/src/globals" as *;
7
+
8
+ $default-spacing-size: 1em;
9
+ $default-padding: .55em .75em;
10
+ $default-bg-gradient: var(--background-far);
11
+ $default-input-border-radius: var(--theme-default-input-border-radius);
12
+ $default-border: var(--theme-default-input-border);
13
+ $hover-border: var(--theme-hover-input-border);
14
+ $focus-border: var(--theme-focus-input-border);
15
+ $default-background: var(--background-inputs);
16
+ $disabled-background: var(--background-inputs-30);
17
+
18
+ .#{bem.$base}.select-input {
19
+ display: flex;
20
+ flex-direction: column;
21
+
22
+ > .#{bem.$base}.form-label {
23
+ margin-bottom: var(--gap);
24
+ }
25
+
26
+ .select-wrapper {
27
+ background-color: $default-background;
28
+ border: $default-border;
29
+ border-radius: $default-input-border-radius;
30
+ display: flex;
31
+ flex-direction: column;
32
+ padding: $default-padding;
33
+ padding-right: 0;
34
+ position: relative;
35
+
36
+ &:not(.disabled) {
37
+ &:hover,
38
+ &:active {
39
+ border: $hover-border;
40
+ }
41
+
42
+ &:focus {
43
+ border: $focus-border;
44
+ }
45
+ }
46
+
47
+ &.disabled {
48
+ background: $disabled-background;
49
+ }
50
+
51
+ &::placeholder {
52
+ color: var(--metadata);
53
+ }
54
+
55
+ &::after {
56
+ border-radius: $default-input-border-radius;
57
+ }
58
+
59
+ >.#{bem.$base}.loading-circle {
60
+ position: absolute;
61
+ right: $default-spacing-size;
62
+ top: 50%;
63
+ transform: translateY(-50%);
64
+ }
65
+
66
+ select {
67
+ appearance: none;
68
+ background-color: $default-background;
69
+ background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyMCAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE5IDEuNUwxMCAxMC41TDEgMS41IiBzdHJva2U9IiM0QzRENTMiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
70
+ background-position: calc(100% - $default-spacing-size);
71
+ background-repeat: no-repeat;
72
+ background-size: $default-spacing-size;
73
+ padding-right: $default-spacing-size;
74
+
75
+ &.input {
76
+ border: none;
77
+ color: var(--y);
78
+ outline: none;
79
+ width: 100%;
80
+
81
+ &:disabled {
82
+ opacity: 0%;
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
@@ -0,0 +1,147 @@
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
+ /* @pareto-engineering/generator-front 1.0.12 */
3
+ import * as React from 'react';
4
+ import { useInsertionEffect, memo } from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import styleNames from '@pareto-engineering/bem/exports';
7
+ import { useField } from 'formik';
8
+ import { FormLabelV2, FormDescriptionV2 } from "../../../common";
9
+
10
+ // Local Definitions
11
+
12
+ const baseClassName = styleNames.base;
13
+ const componentClassName = 'text-input';
14
+
15
+ /**
16
+ * This is the component description.
17
+ */
18
+ const TextInput = ({
19
+ id,
20
+ className: userClassName,
21
+ style,
22
+ type,
23
+ name,
24
+ label,
25
+ color,
26
+ labelColor,
27
+ validate,
28
+ description,
29
+ disabled,
30
+ placeholder,
31
+ optional,
32
+ autoComplete,
33
+ symbol,
34
+ ...otherProps
35
+ }) => {
36
+ useInsertionEffect(() => {
37
+ import("./styles.scss");
38
+ }, []);
39
+ const [field] = useField({
40
+ name,
41
+ validate
42
+ });
43
+ const symbolStyle = symbol ? {
44
+ '--symbol': symbol
45
+ } : {};
46
+ const InputWrapper = symbol ? 'div' : React.Fragment;
47
+ const inputWrapperProps = symbol ? {
48
+ className: 'input-wrapper'
49
+ } : {};
50
+ return /*#__PURE__*/React.createElement("div", {
51
+ id: id,
52
+ className: [baseClassName, componentClassName, userClassName, `y-${color} ${symbol ? 'has-symbol' : ''}`].filter(e => e).join(' '),
53
+ style: {
54
+ ...symbolStyle,
55
+ ...style
56
+ }
57
+ }, /*#__PURE__*/React.createElement(FormLabelV2, {
58
+ name: name,
59
+ color: labelColor,
60
+ optional: optional
61
+ // {...otherProps}
62
+ }, label), /*#__PURE__*/React.createElement(InputWrapper, inputWrapperProps, /*#__PURE__*/React.createElement("input", _extends({
63
+ id: name,
64
+ className: "input",
65
+ type: type,
66
+ disabled: disabled,
67
+ placeholder: placeholder,
68
+ autoComplete: autoComplete
69
+ }, field, otherProps))), /*#__PURE__*/React.createElement(FormDescriptionV2, {
70
+ className: "s-1",
71
+ description: description,
72
+ name: name
73
+ }));
74
+ };
75
+ TextInput.propTypes = {
76
+ /**
77
+ * The HTML id for this element
78
+ */
79
+ id: PropTypes.string,
80
+ /**
81
+ * The HTML class names for this element
82
+ */
83
+ className: PropTypes.string,
84
+ /**
85
+ * The React-written, css properties for this element.
86
+ */
87
+ style: PropTypes.objectOf(PropTypes.string),
88
+ /**
89
+ * The input name (html - and Formik state)
90
+ */
91
+ name: PropTypes.string.isRequired,
92
+ /**
93
+ * The input label
94
+ */
95
+ label: PropTypes.string.isRequired,
96
+ /**
97
+ * The input label color
98
+ */
99
+ labelColor: PropTypes.string,
100
+ /**
101
+ * The type of the input (html)
102
+ */
103
+ type: PropTypes.oneOf(['text', 'email', 'password', 'number', 'date', 'time', 'datetime', 'month', 'tel', 'hidden', 'url']),
104
+ /**
105
+ * The input field validator function
106
+ */
107
+ validate: PropTypes.func,
108
+ /**
109
+ * If the slide will only have one input
110
+ */
111
+ oneInputLabel: PropTypes.bool,
112
+ /**
113
+ * Input description
114
+ */
115
+ description: PropTypes.string,
116
+ /**
117
+ * Whether the text input should be disabled
118
+ */
119
+ disabled: PropTypes.bool,
120
+ /**
121
+ * The placeholder text for the input
122
+ */
123
+ placeholder: PropTypes.string,
124
+ /**
125
+ * The text input color
126
+ */
127
+ color: PropTypes.string,
128
+ /**
129
+ * Whether the input is optional or not
130
+ */
131
+ optional: PropTypes.bool,
132
+ /**
133
+ * The autoComplete value that the browser should watch for the input
134
+ * `https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete`
135
+ */
136
+ autoComplete: PropTypes.string,
137
+ /**
138
+ * A symbol to be set inside the input field
139
+ */
140
+ symbol: PropTypes.string
141
+ };
142
+ TextInput.defaultProps = {
143
+ type: 'text',
144
+ color: 'paragraph',
145
+ disabled: false
146
+ };
147
+ export default /*#__PURE__*/memo(TextInput);
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as TextInput } from "./TextInput";
@@ -0,0 +1,78 @@
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-padding: .55em .75em;
8
+ $default-symbol-left: 1em;
9
+ $default-padding-with-symbol:
10
+ .55em
11
+ calc($default-symbol-left - 1em)
12
+ .55em
13
+ calc($default-symbol-left + 1em);
14
+ $default-input-border-radius: var(--theme-default-input-border-radius);
15
+ $default-border: var(--theme-default-input-border);
16
+ $hover-border: var(--theme-hover-input-border);
17
+ $focus-border: var(--theme-focus-input-border);
18
+ $default-background: var(--background-inputs);
19
+ $disabled-background: var(--background-inputs-30);
20
+
21
+ .#{bem.$base}.text-input {
22
+ display: flex;
23
+ flex-direction: column;
24
+
25
+ > .#{bem.$base}.form-label {
26
+ margin-bottom: var(--gap);
27
+ }
28
+
29
+
30
+ &.has-symbol {
31
+ > .input-wrapper {
32
+ position: relative;
33
+
34
+ &::before {
35
+ color: var(--y);
36
+ content: var(--symbol);
37
+ left: $default-symbol-left;
38
+ position: absolute;
39
+ top: 50%;
40
+ transform: translate(-50%, -50%);
41
+ }
42
+ }
43
+
44
+ input {
45
+ padding: $default-padding-with-symbol;
46
+ }
47
+ }
48
+
49
+ .input {
50
+ background-color: $default-background;
51
+ border: $default-border;
52
+ border-radius: $default-input-border-radius;
53
+ color: var(--y);
54
+ outline: none;
55
+ padding: $default-padding;
56
+ width: 100%;
57
+
58
+ &::placeholder {
59
+ color: var(--metadata);
60
+ }
61
+
62
+ &:disabled {
63
+ background-color: $disabled-background;
64
+ }
65
+
66
+ &:not(:disabled) {
67
+ &:hover,
68
+ &:active {
69
+ border: $hover-border;
70
+ }
71
+
72
+ &:focus {
73
+ border: $focus-border;
74
+ }
75
+ }
76
+ }
77
+ }
78
+
@@ -0,0 +1,146 @@
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
+ /* @pareto-engineering/generator-front 1.0.12 */
3
+ import * as React from 'react';
4
+ import { useInsertionEffect, memo } from 'react';
5
+ import PropTypes from 'prop-types';
6
+ import styleNames from '@pareto-engineering/bem/exports';
7
+ import { useField } from 'formik';
8
+
9
+ // Local Definitions
10
+
11
+ import { FormLabelV2, FormDescriptionV2 } from "../../../common";
12
+ const baseClassName = styleNames.base;
13
+ const componentClassName = 'text-area-input';
14
+
15
+ /**
16
+ * This is the component description.
17
+ */
18
+ const TextareaInput = ({
19
+ id,
20
+ className: userClassName,
21
+ style,
22
+ name,
23
+ label,
24
+ validate,
25
+ color,
26
+ rows,
27
+ optional,
28
+ labelColor,
29
+ description,
30
+ disabled,
31
+ placeholder,
32
+ autoComplete,
33
+ resize
34
+ // ...otherProps
35
+ }) => {
36
+ useInsertionEffect(() => {
37
+ import("./styles.scss");
38
+ }, []);
39
+ const [field] = useField({
40
+ name,
41
+ validate
42
+ });
43
+ return /*#__PURE__*/React.createElement("div", {
44
+ id: id,
45
+ className: [baseClassName, componentClassName, userClassName, `y-${color}`].filter(e => e).join(' '),
46
+ style: style
47
+ }, /*#__PURE__*/React.createElement(FormLabelV2, {
48
+ name: name,
49
+ color: labelColor,
50
+ optional: optional
51
+ // {...otherProps}
52
+ }, label), /*#__PURE__*/React.createElement("textarea", _extends({
53
+ id: name,
54
+ className: "textarea"
55
+ }, field, {
56
+ style: {
57
+ resize
58
+ },
59
+ placeholder: placeholder,
60
+ rows: rows,
61
+ disabled: disabled,
62
+ autoComplete: autoComplete
63
+ })), /*#__PURE__*/React.createElement(FormDescriptionV2, {
64
+ className: "s-1",
65
+ description: description,
66
+ name: name
67
+ }));
68
+ };
69
+ TextareaInput.propTypes = {
70
+ /**
71
+ * The HTML id for this element
72
+ */
73
+ id: PropTypes.string,
74
+ /**
75
+ * The HTML class names for this element
76
+ */
77
+ className: PropTypes.string,
78
+ /**
79
+ * The React-written, css properties for this element.
80
+ */
81
+ style: PropTypes.objectOf(PropTypes.string),
82
+ /**
83
+ * The input name (html - and Formik state)
84
+ */
85
+ name: PropTypes.string.isRequired,
86
+ /**
87
+ * The input label
88
+ */
89
+ label: PropTypes.string.isRequired,
90
+ /**
91
+ * The input value validator function
92
+ */
93
+ validate: PropTypes.func,
94
+ /**
95
+ * If the text area depends on it's label's text as the default description
96
+ */
97
+ labelAsDescription: PropTypes.bool,
98
+ /**
99
+ * The textarea id
100
+ */
101
+ textAreaId: PropTypes.string,
102
+ /**
103
+ * The number of rows int the text area
104
+ */
105
+ rows: PropTypes.number,
106
+ /**
107
+ * Color of the text
108
+ */
109
+ color: PropTypes.string,
110
+ /**
111
+ * Label base color
112
+ */
113
+ labelColor: PropTypes.string,
114
+ /**
115
+ * Text area description
116
+ */
117
+ description: PropTypes.string,
118
+ /**
119
+ * Whether the text area should be disabled
120
+ */
121
+ disabled: PropTypes.bool,
122
+ /**
123
+ * The textarea placeholder text
124
+ */
125
+ placeholder: PropTypes.string,
126
+ /**
127
+ * The autoComplete value that the browser should watch for the input
128
+ */
129
+ autoComplete: PropTypes.string,
130
+ /**
131
+ * Whether to disable or allow only a certain method of resizing the area
132
+ * Textarea docs - https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea
133
+ */
134
+ resize: PropTypes.string,
135
+ /**
136
+ * Whether the input is optional or not
137
+ */
138
+ optional: PropTypes.bool
139
+ };
140
+ TextareaInput.defaultProps = {
141
+ rows: 10,
142
+ disabled: false,
143
+ resize: 'vertical',
144
+ color: 'paragraph'
145
+ };
146
+ export default /*#__PURE__*/memo(TextareaInput);
@@ -0,0 +1,2 @@
1
+ /* @pareto-engineering/generator-front 1.0.12 */
2
+ export { default as TextareaInput } from "./TextareaInput";
@@ -0,0 +1,53 @@
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-padding: .55em .75em;
8
+ $default-border: 1px solid var(--outline-inputs);
9
+ $default-input-border-radius: var(--theme-default-input-border-radius);
10
+ $default-border: var(--theme-default-input-border);
11
+ $hover-border: var(--theme-hover-input-border);
12
+ $focus-border: var(--theme-focus-input-border);
13
+ $default-background: var(--background-inputs);
14
+ $disabled-background: var(--background-inputs-30);
15
+
16
+ .#{bem.$base}.text-area-input {
17
+ display: flex;
18
+ flex-direction: column;
19
+
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%;
33
+
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
+ }
47
+
48
+ &:focus {
49
+ border: $focus-border;
50
+ }
51
+ }
52
+ }
53
+ }
@@ -0,0 +1,11 @@
1
+ export { TextInput as TextInputV2 } from "./TextInput";
2
+ export { SelectInput as SelectInputV2 } from "./SelectInput";
3
+ export { ChoicesInput as ChoicesInputV2 } from "./ChoicesInput";
4
+ export { TextareaInput as TextareaInputV2 } from "./TextareaInput";
5
+ export { RatingsInput as RatingsInputV2 } from "./RatingsInput";
6
+ export { QueryCombobox as QueryComboboxV2 } from "./QueryCombobox";
7
+ export { QuerySelect as QuerySelectV2 } from "./QuerySelect";
8
+ export { Checkbox as CheckboxV2 } from "./Checkbox";
9
+ export { QueryChoices as QueryChoicesV2 } from "./QueryChoices";
10
+ export { LinkInput as LinkInputV2 } from "./LinkInput";
11
+ export { EditorInput as EditorInputV2 } from "./EditorInput";
@@ -8,4 +8,5 @@ export { QuerySelect } from "./QuerySelect";
8
8
  export { Checkbox } from "./Checkbox";
9
9
  export { QueryChoices } from "./QueryChoices";
10
10
  export { LinkInput } from "./LinkInput";
11
- export { EditorInput } from "./EditorInput";
11
+ export { EditorInput } from "./EditorInput";
12
+ export * from "./V2";