@spark-web/text-input 2.0.3 → 3.0.0

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.
@@ -29,7 +29,6 @@ var placementToPadding = {
29
29
  paddingRight: 'medium'
30
30
  }
31
31
  };
32
-
33
32
  /**
34
33
  * Places an element at the "start" or "end" of the input, only one adornment
35
34
  * may be provided for each placement. By default, the adornment element will be
@@ -45,23 +44,19 @@ var placementToPadding = {
45
44
  */
46
45
  var InputAdornment = function InputAdornment(_ref) {
47
46
  var children = _ref.children,
48
- fieldLabel = _ref.fieldLabel,
49
- placement = _ref.placement,
50
- raw = _ref.raw;
51
-
52
- var _useTheme = theme.useTheme(),
53
- sizing = _useTheme.sizing;
54
-
47
+ fieldLabel = _ref.fieldLabel,
48
+ placement = _ref.placement,
49
+ raw = _ref.raw;
50
+ var theme$1 = theme.useTheme();
55
51
  var adornmentContext = react.useMemo(function () {
56
52
  return {
57
53
  placement: placement
58
54
  };
59
55
  }, [placement]);
60
56
  var _placementToPadding$p = placementToPadding[placement],
61
- paddingLeft = _placementToPadding$p.paddingLeft,
62
- paddingRight = _placementToPadding$p.paddingRight;
57
+ paddingLeft = _placementToPadding$p.paddingLeft,
58
+ paddingRight = _placementToPadding$p.paddingRight;
63
59
  var content = children;
64
-
65
60
  if (!raw) {
66
61
  content = /*#__PURE__*/jsxRuntime.jsx(box.Box, {
67
62
  paddingLeft: paddingLeft,
@@ -71,35 +66,32 @@ var InputAdornment = function InputAdornment(_ref) {
71
66
  alignItems: "center",
72
67
  justifyContent: "center",
73
68
  style: {
74
- minWidth: sizing.xxsmall
69
+ minWidth: theme$1.sizing.xxsmall
75
70
  },
76
71
  children: children
77
72
  })
78
73
  });
79
74
  }
80
-
81
75
  var wrappedContent = /*#__PURE__*/jsxRuntime.jsx(InputAdornmentContext.Provider, {
82
76
  value: adornmentContext,
83
77
  children: content
84
78
  });
85
-
86
79
  if (fieldLabel) {
87
80
  return /*#__PURE__*/jsxRuntime.jsx(FieldAdornment, {
88
81
  fieldLabel: fieldLabel,
89
82
  children: wrappedContent
90
83
  });
91
84
  }
92
-
93
85
  return wrappedContent;
94
86
  };
87
+
95
88
  /**
96
89
  * Wrap the element with a field provider to override the parent field label.
97
90
  * Only split-out from `InputAdornment` to avoid the conditional hook rule.
98
91
  */
99
-
100
92
  var FieldAdornment = function FieldAdornment(_ref2) {
101
93
  var children = _ref2.children,
102
- fieldLabel = _ref2.fieldLabel;
94
+ fieldLabel = _ref2.fieldLabel;
103
95
  var parentFieldContext = field.useFieldContext();
104
96
  var fieldContext = react.useMemo(function () {
105
97
  return _objectSpread(_objectSpread({}, parentFieldContext), {}, {
@@ -115,17 +107,16 @@ var FieldAdornment = function FieldAdornment(_ref2) {
115
107
  var _excluded$1 = ["children", "startAdornment", "endAdornment"];
116
108
  var InputContainer = function InputContainer(_ref) {
117
109
  var children = _ref.children,
118
- startAdornment = _ref.startAdornment,
119
- endAdornment = _ref.endAdornment,
120
- boxProps = _objectWithoutProperties(_ref, _excluded$1);
121
-
110
+ startAdornment = _ref.startAdornment,
111
+ endAdornment = _ref.endAdornment,
112
+ boxProps = _objectWithoutProperties(_ref, _excluded$1);
122
113
  var _useFieldContext = field.useFieldContext(),
123
- _useFieldContext2 = _slicedToArray(_useFieldContext, 1),
124
- _useFieldContext2$ = _useFieldContext2[0],
125
- disabled = _useFieldContext2$.disabled,
126
- invalid = _useFieldContext2$.invalid;
127
-
114
+ _useFieldContext2 = _slicedToArray(_useFieldContext, 1),
115
+ _useFieldContext2$ = _useFieldContext2[0],
116
+ disabled = _useFieldContext2$.disabled,
117
+ invalid = _useFieldContext2$.invalid;
128
118
  return /*#__PURE__*/jsxRuntime.jsxs(box.Box, _objectSpread(_objectSpread({
119
+ borderRadius: "small",
129
120
  position: "relative",
130
121
  background: disabled ? 'inputDisabled' : 'input'
131
122
  }, boxProps), {}, {
@@ -134,7 +125,6 @@ var InputContainer = function InputContainer(_ref) {
134
125
  }), endAdornment]
135
126
  }));
136
127
  };
137
-
138
128
  var FocusIndicator = function FocusIndicator(_ref2) {
139
129
  var invalid = _ref2.invalid;
140
130
  return /*#__PURE__*/jsxRuntime.jsx(box.Box, {
@@ -142,7 +132,8 @@ var FocusIndicator = function FocusIndicator(_ref2) {
142
132
  as: "span",
143
133
  data: {
144
134
  'focus-indicator': 'true'
145
- } // Styles
135
+ }
136
+ // Styles
146
137
  ,
147
138
  border: invalid ? 'critical' : 'field',
148
139
  borderRadius: "small",
@@ -151,6 +142,7 @@ var FocusIndicator = function FocusIndicator(_ref2) {
151
142
  left: 0,
152
143
  right: 0,
153
144
  top: 0,
145
+ shadow: "small",
154
146
  className: css.css({
155
147
  pointerEvents: 'none'
156
148
  })
@@ -164,20 +156,17 @@ var FocusIndicator = function FocusIndicator(_ref2) {
164
156
  var childrenToAdornments = function childrenToAdornments(children) {
165
157
  var startAdornment = null;
166
158
  var endAdornment = null;
167
-
168
159
  if (!children) {
169
160
  return {
170
161
  startAdornment: startAdornment,
171
162
  endAdornment: endAdornment
172
163
  };
173
164
  }
174
-
175
165
  react.Children.forEach(children, function (child) {
176
166
  if ( /*#__PURE__*/react.isValidElement(child)) {
177
167
  if (child.props.placement === 'end') {
178
168
  endAdornment = child;
179
169
  }
180
-
181
170
  if (child.props.placement === 'start') {
182
171
  startAdornment = child;
183
172
  }
@@ -190,34 +179,29 @@ var childrenToAdornments = function childrenToAdornments(children) {
190
179
  };
191
180
 
192
181
  var _excluded = ["children", "data"];
193
-
194
182
  /** Organize and emphasize information quickly and effectively in a list of text elements. */
195
183
  var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
196
184
  var children = _ref.children,
197
- data = _ref.data,
198
- consumerProps = _objectWithoutProperties(_ref, _excluded);
199
-
185
+ data = _ref.data,
186
+ consumerProps = _objectWithoutProperties(_ref, _excluded);
200
187
  var _useFieldContext = field.useFieldContext(),
201
- _useFieldContext2 = _slicedToArray(_useFieldContext, 2),
202
- _useFieldContext2$ = _useFieldContext2[0],
203
- disabled = _useFieldContext2$.disabled,
204
- invalid = _useFieldContext2$.invalid,
205
- a11yProps = _useFieldContext2[1];
206
-
188
+ _useFieldContext2 = _slicedToArray(_useFieldContext, 2),
189
+ _useFieldContext2$ = _useFieldContext2[0],
190
+ disabled = _useFieldContext2$.disabled,
191
+ invalid = _useFieldContext2$.invalid,
192
+ a11yProps = _useFieldContext2[1];
207
193
  var _childrenToAdornments = childrenToAdornments(children),
208
- startAdornment = _childrenToAdornments.startAdornment,
209
- endAdornment = _childrenToAdornments.endAdornment;
210
-
194
+ startAdornment = _childrenToAdornments.startAdornment,
195
+ endAdornment = _childrenToAdornments.endAdornment;
211
196
  var _useInputStyles = useInputStyles({
212
- disabled: disabled,
213
- invalid: invalid,
214
- startAdornment: Boolean(startAdornment),
215
- endAdornment: Boolean(endAdornment)
216
- }),
217
- _useInputStyles2 = _slicedToArray(_useInputStyles, 2),
218
- boxProps = _useInputStyles2[0],
219
- inputStyles = _useInputStyles2[1];
220
-
197
+ disabled: disabled,
198
+ invalid: invalid,
199
+ startAdornment: Boolean(startAdornment),
200
+ endAdornment: Boolean(endAdornment)
201
+ }),
202
+ _useInputStyles2 = _slicedToArray(_useInputStyles, 2),
203
+ boxProps = _useInputStyles2[0],
204
+ inputStyles = _useInputStyles2[1];
221
205
  return /*#__PURE__*/jsxRuntime.jsx(InputContainer, {
222
206
  display: "inline-flex",
223
207
  alignItems: "center",
@@ -233,7 +217,6 @@ var TextInput = /*#__PURE__*/react.forwardRef(function (_ref, forwardedRef) {
233
217
  });
234
218
  });
235
219
  TextInput.displayName = 'TextInput';
236
-
237
220
  /**
238
221
  * Returns a tuple where the first item is an object of props to spread onto the
239
222
  * underlying Box component that our inputs are created with, and the second
@@ -241,8 +224,8 @@ TextInput.displayName = 'TextInput';
241
224
  **/
242
225
  var useInputStyles = function useInputStyles(_ref2) {
243
226
  var disabled = _ref2.disabled,
244
- startAdornment = _ref2.startAdornment,
245
- endAdornment = _ref2.endAdornment;
227
+ startAdornment = _ref2.startAdornment,
228
+ endAdornment = _ref2.endAdornment;
246
229
  var theme$1 = theme.useTheme();
247
230
  var overflowStyles = text.useOverflowStrategy('truncate');
248
231
  var focusRingStyles = a11y.useFocusRing({
@@ -254,18 +237,15 @@ var useInputStyles = function useInputStyles(_ref2) {
254
237
  size: 'standard',
255
238
  weight: 'regular'
256
239
  });
257
-
258
240
  var _textStyles = _slicedToArray(textStyles, 2),
259
- typographyStyles = _textStyles[0],
260
- responsiveStyles = _textStyles[1];
261
-
241
+ typographyStyles = _textStyles[0],
242
+ responsiveStyles = _textStyles[1];
262
243
  return [{
263
244
  flex: 1,
264
245
  position: 'relative',
265
246
  height: 'medium',
266
247
  paddingLeft: startAdornment ? 'none' : 'medium',
267
248
  paddingRight: endAdornment ? 'none' : 'medium',
268
- shadow: 'small',
269
249
  width: 'full'
270
250
  }, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles), overflowStyles), {}, {
271
251
  ':enabled': {
@@ -25,7 +25,6 @@ var placementToPadding = {
25
25
  paddingRight: 'medium'
26
26
  }
27
27
  };
28
-
29
28
  /**
30
29
  * Places an element at the "start" or "end" of the input, only one adornment
31
30
  * may be provided for each placement. By default, the adornment element will be
@@ -41,23 +40,19 @@ var placementToPadding = {
41
40
  */
42
41
  var InputAdornment = function InputAdornment(_ref) {
43
42
  var children = _ref.children,
44
- fieldLabel = _ref.fieldLabel,
45
- placement = _ref.placement,
46
- raw = _ref.raw;
47
-
48
- var _useTheme = useTheme(),
49
- sizing = _useTheme.sizing;
50
-
43
+ fieldLabel = _ref.fieldLabel,
44
+ placement = _ref.placement,
45
+ raw = _ref.raw;
46
+ var theme = useTheme();
51
47
  var adornmentContext = useMemo(function () {
52
48
  return {
53
49
  placement: placement
54
50
  };
55
51
  }, [placement]);
56
52
  var _placementToPadding$p = placementToPadding[placement],
57
- paddingLeft = _placementToPadding$p.paddingLeft,
58
- paddingRight = _placementToPadding$p.paddingRight;
53
+ paddingLeft = _placementToPadding$p.paddingLeft,
54
+ paddingRight = _placementToPadding$p.paddingRight;
59
55
  var content = children;
60
-
61
56
  if (!raw) {
62
57
  content = /*#__PURE__*/jsx(Box, {
63
58
  paddingLeft: paddingLeft,
@@ -67,35 +62,32 @@ var InputAdornment = function InputAdornment(_ref) {
67
62
  alignItems: "center",
68
63
  justifyContent: "center",
69
64
  style: {
70
- minWidth: sizing.xxsmall
65
+ minWidth: theme.sizing.xxsmall
71
66
  },
72
67
  children: children
73
68
  })
74
69
  });
75
70
  }
76
-
77
71
  var wrappedContent = /*#__PURE__*/jsx(InputAdornmentContext.Provider, {
78
72
  value: adornmentContext,
79
73
  children: content
80
74
  });
81
-
82
75
  if (fieldLabel) {
83
76
  return /*#__PURE__*/jsx(FieldAdornment, {
84
77
  fieldLabel: fieldLabel,
85
78
  children: wrappedContent
86
79
  });
87
80
  }
88
-
89
81
  return wrappedContent;
90
82
  };
83
+
91
84
  /**
92
85
  * Wrap the element with a field provider to override the parent field label.
93
86
  * Only split-out from `InputAdornment` to avoid the conditional hook rule.
94
87
  */
95
-
96
88
  var FieldAdornment = function FieldAdornment(_ref2) {
97
89
  var children = _ref2.children,
98
- fieldLabel = _ref2.fieldLabel;
90
+ fieldLabel = _ref2.fieldLabel;
99
91
  var parentFieldContext = useFieldContext();
100
92
  var fieldContext = useMemo(function () {
101
93
  return _objectSpread(_objectSpread({}, parentFieldContext), {}, {
@@ -111,17 +103,16 @@ var FieldAdornment = function FieldAdornment(_ref2) {
111
103
  var _excluded$1 = ["children", "startAdornment", "endAdornment"];
112
104
  var InputContainer = function InputContainer(_ref) {
113
105
  var children = _ref.children,
114
- startAdornment = _ref.startAdornment,
115
- endAdornment = _ref.endAdornment,
116
- boxProps = _objectWithoutProperties(_ref, _excluded$1);
117
-
106
+ startAdornment = _ref.startAdornment,
107
+ endAdornment = _ref.endAdornment,
108
+ boxProps = _objectWithoutProperties(_ref, _excluded$1);
118
109
  var _useFieldContext = useFieldContext(),
119
- _useFieldContext2 = _slicedToArray(_useFieldContext, 1),
120
- _useFieldContext2$ = _useFieldContext2[0],
121
- disabled = _useFieldContext2$.disabled,
122
- invalid = _useFieldContext2$.invalid;
123
-
110
+ _useFieldContext2 = _slicedToArray(_useFieldContext, 1),
111
+ _useFieldContext2$ = _useFieldContext2[0],
112
+ disabled = _useFieldContext2$.disabled,
113
+ invalid = _useFieldContext2$.invalid;
124
114
  return /*#__PURE__*/jsxs(Box, _objectSpread(_objectSpread({
115
+ borderRadius: "small",
125
116
  position: "relative",
126
117
  background: disabled ? 'inputDisabled' : 'input'
127
118
  }, boxProps), {}, {
@@ -130,7 +121,6 @@ var InputContainer = function InputContainer(_ref) {
130
121
  }), endAdornment]
131
122
  }));
132
123
  };
133
-
134
124
  var FocusIndicator = function FocusIndicator(_ref2) {
135
125
  var invalid = _ref2.invalid;
136
126
  return /*#__PURE__*/jsx(Box, {
@@ -138,7 +128,8 @@ var FocusIndicator = function FocusIndicator(_ref2) {
138
128
  as: "span",
139
129
  data: {
140
130
  'focus-indicator': 'true'
141
- } // Styles
131
+ }
132
+ // Styles
142
133
  ,
143
134
  border: invalid ? 'critical' : 'field',
144
135
  borderRadius: "small",
@@ -147,6 +138,7 @@ var FocusIndicator = function FocusIndicator(_ref2) {
147
138
  left: 0,
148
139
  right: 0,
149
140
  top: 0,
141
+ shadow: "small",
150
142
  className: css({
151
143
  pointerEvents: 'none'
152
144
  })
@@ -160,20 +152,17 @@ var FocusIndicator = function FocusIndicator(_ref2) {
160
152
  var childrenToAdornments = function childrenToAdornments(children) {
161
153
  var startAdornment = null;
162
154
  var endAdornment = null;
163
-
164
155
  if (!children) {
165
156
  return {
166
157
  startAdornment: startAdornment,
167
158
  endAdornment: endAdornment
168
159
  };
169
160
  }
170
-
171
161
  Children.forEach(children, function (child) {
172
162
  if ( /*#__PURE__*/isValidElement(child)) {
173
163
  if (child.props.placement === 'end') {
174
164
  endAdornment = child;
175
165
  }
176
-
177
166
  if (child.props.placement === 'start') {
178
167
  startAdornment = child;
179
168
  }
@@ -186,34 +175,29 @@ var childrenToAdornments = function childrenToAdornments(children) {
186
175
  };
187
176
 
188
177
  var _excluded = ["children", "data"];
189
-
190
178
  /** Organize and emphasize information quickly and effectively in a list of text elements. */
191
179
  var TextInput = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
192
180
  var children = _ref.children,
193
- data = _ref.data,
194
- consumerProps = _objectWithoutProperties(_ref, _excluded);
195
-
181
+ data = _ref.data,
182
+ consumerProps = _objectWithoutProperties(_ref, _excluded);
196
183
  var _useFieldContext = useFieldContext(),
197
- _useFieldContext2 = _slicedToArray(_useFieldContext, 2),
198
- _useFieldContext2$ = _useFieldContext2[0],
199
- disabled = _useFieldContext2$.disabled,
200
- invalid = _useFieldContext2$.invalid,
201
- a11yProps = _useFieldContext2[1];
202
-
184
+ _useFieldContext2 = _slicedToArray(_useFieldContext, 2),
185
+ _useFieldContext2$ = _useFieldContext2[0],
186
+ disabled = _useFieldContext2$.disabled,
187
+ invalid = _useFieldContext2$.invalid,
188
+ a11yProps = _useFieldContext2[1];
203
189
  var _childrenToAdornments = childrenToAdornments(children),
204
- startAdornment = _childrenToAdornments.startAdornment,
205
- endAdornment = _childrenToAdornments.endAdornment;
206
-
190
+ startAdornment = _childrenToAdornments.startAdornment,
191
+ endAdornment = _childrenToAdornments.endAdornment;
207
192
  var _useInputStyles = useInputStyles({
208
- disabled: disabled,
209
- invalid: invalid,
210
- startAdornment: Boolean(startAdornment),
211
- endAdornment: Boolean(endAdornment)
212
- }),
213
- _useInputStyles2 = _slicedToArray(_useInputStyles, 2),
214
- boxProps = _useInputStyles2[0],
215
- inputStyles = _useInputStyles2[1];
216
-
193
+ disabled: disabled,
194
+ invalid: invalid,
195
+ startAdornment: Boolean(startAdornment),
196
+ endAdornment: Boolean(endAdornment)
197
+ }),
198
+ _useInputStyles2 = _slicedToArray(_useInputStyles, 2),
199
+ boxProps = _useInputStyles2[0],
200
+ inputStyles = _useInputStyles2[1];
217
201
  return /*#__PURE__*/jsx(InputContainer, {
218
202
  display: "inline-flex",
219
203
  alignItems: "center",
@@ -229,7 +213,6 @@ var TextInput = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
229
213
  });
230
214
  });
231
215
  TextInput.displayName = 'TextInput';
232
-
233
216
  /**
234
217
  * Returns a tuple where the first item is an object of props to spread onto the
235
218
  * underlying Box component that our inputs are created with, and the second
@@ -237,8 +220,8 @@ TextInput.displayName = 'TextInput';
237
220
  **/
238
221
  var useInputStyles = function useInputStyles(_ref2) {
239
222
  var disabled = _ref2.disabled,
240
- startAdornment = _ref2.startAdornment,
241
- endAdornment = _ref2.endAdornment;
223
+ startAdornment = _ref2.startAdornment,
224
+ endAdornment = _ref2.endAdornment;
242
225
  var theme = useTheme();
243
226
  var overflowStyles = useOverflowStrategy('truncate');
244
227
  var focusRingStyles = useFocusRing({
@@ -250,18 +233,15 @@ var useInputStyles = function useInputStyles(_ref2) {
250
233
  size: 'standard',
251
234
  weight: 'regular'
252
235
  });
253
-
254
236
  var _textStyles = _slicedToArray(textStyles, 2),
255
- typographyStyles = _textStyles[0],
256
- responsiveStyles = _textStyles[1];
257
-
237
+ typographyStyles = _textStyles[0],
238
+ responsiveStyles = _textStyles[1];
258
239
  return [{
259
240
  flex: 1,
260
241
  position: 'relative',
261
242
  height: 'medium',
262
243
  paddingLeft: startAdornment ? 'none' : 'medium',
263
244
  paddingRight: endAdornment ? 'none' : 'medium',
264
- shadow: 'small',
265
245
  width: 'full'
266
246
  }, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, typographyStyles), responsiveStyles), overflowStyles), {}, {
267
247
  ':enabled': {
package/package.json CHANGED
@@ -1,28 +1,35 @@
1
1
  {
2
2
  "name": "@spark-web/text-input",
3
- "version": "2.0.3",
4
- "license": "MIT",
3
+ "version": "3.0.0",
4
+ "homepage": "https://github.com/brighte-labs/spark-web#readme",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/brighte-labs/spark-web.git",
8
+ "directory": "packages/text-input"
9
+ },
5
10
  "main": "dist/spark-web-text-input.cjs.js",
6
11
  "module": "dist/spark-web-text-input.esm.js",
7
12
  "files": [
8
- "dist"
13
+ "CHANGELOG.md",
14
+ "dist",
15
+ "README.md"
9
16
  ],
10
17
  "dependencies": {
11
- "@babel/runtime": "^7.18.9",
18
+ "@babel/runtime": "^7.19.0",
12
19
  "@emotion/css": "^11.9.0",
13
- "@spark-web/a11y": "^1.3.1",
14
- "@spark-web/box": "^1.0.9",
15
- "@spark-web/text": "^1.1.1",
16
- "@spark-web/theme": "^3.0.6",
17
- "@spark-web/utils": "^1.2.2"
20
+ "@spark-web/a11y": "^1.4.0",
21
+ "@spark-web/box": "^1.2.0",
22
+ "@spark-web/text": "^1.2.0",
23
+ "@spark-web/theme": "^3.2.0",
24
+ "@spark-web/utils": "^1.3.0"
18
25
  },
19
26
  "devDependencies": {
20
- "@spark-web/field": "^3.0.5",
21
- "@types/react": "^17.0.12",
22
- "react": "^17.0.2"
27
+ "@spark-web/field": "^3.1.0",
28
+ "@types/react": "^18.2.0",
29
+ "react": "^18.2.0"
23
30
  },
24
31
  "peerDependencies": {
25
- "@spark-web/field": "^3.0.5",
32
+ "@spark-web/field": "^3.1.0",
26
33
  "react": ">=17.0.2"
27
34
  },
28
35
  "engines": {